mirror of
https://github.com/EvolutionAPI/evolution-api.git
synced 2025-12-25 22:57:44 -06:00
feat: adiciona painel interativo com chat e IA para análise de mensagens
- Dashboard completo com métricas em tempo real - Chat interativo com IA para consultas em linguagem natural - Análise de sentimento das mensagens - Gráficos interativos (mensagens por dia, sentimentos) - Filtros avançados por instância e data - Top contatos e timeline de mensagens - API routes para stats, mensagens, sentimento e chat - Integração com PostgreSQL via Prisma - Interface moderna com Next.js 14, TypeScript e Tailwind CSS - Documentação completa com README e QUICKSTART
This commit is contained in:
80
dashboard/prisma/schema.prisma
Normal file
80
dashboard/prisma/schema.prisma
Normal file
@@ -0,0 +1,80 @@
|
||||
generator client {
|
||||
provider = "prisma-client-js"
|
||||
}
|
||||
|
||||
datasource db {
|
||||
provider = "postgresql"
|
||||
url = env("DATABASE_URL")
|
||||
}
|
||||
|
||||
model Instance {
|
||||
id String @id @default(uuid()) @db.Uuid
|
||||
name String @unique
|
||||
connectionStatus String?
|
||||
ownerJid String?
|
||||
profilePictureUrl String?
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
|
||||
Message Message[]
|
||||
Contact Contact[]
|
||||
Chat Chat[]
|
||||
|
||||
@@map("Instance")
|
||||
}
|
||||
|
||||
model Message {
|
||||
id String @id @default(uuid()) @db.Uuid
|
||||
key Json
|
||||
pushName String?
|
||||
participant String?
|
||||
message Json
|
||||
messageType String
|
||||
messageTimestamp BigInt
|
||||
instanceId String @db.Uuid
|
||||
source String?
|
||||
fromMe Boolean @default(false)
|
||||
status String?
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
|
||||
Instance Instance @relation(fields: [instanceId], references: [id], onDelete: Cascade)
|
||||
|
||||
@@index([instanceId])
|
||||
@@index([messageTimestamp])
|
||||
@@index([fromMe])
|
||||
@@map("Message")
|
||||
}
|
||||
|
||||
model Contact {
|
||||
id String @id @default(uuid()) @db.Uuid
|
||||
remoteJid String
|
||||
pushName String?
|
||||
profilePictureUrl String?
|
||||
instanceId String @db.Uuid
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
|
||||
Instance Instance @relation(fields: [instanceId], references: [id], onDelete: Cascade)
|
||||
|
||||
@@unique([instanceId, remoteJid])
|
||||
@@index([instanceId])
|
||||
@@map("Contact")
|
||||
}
|
||||
|
||||
model Chat {
|
||||
id String @id @default(uuid()) @db.Uuid
|
||||
remoteJid String
|
||||
name String?
|
||||
unreadMessages Int @default(0)
|
||||
lastMessageTime BigInt?
|
||||
instanceId String @db.Uuid
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
|
||||
Instance Instance @relation(fields: [instanceId], references: [id], onDelete: Cascade)
|
||||
|
||||
@@unique([instanceId, remoteJid])
|
||||
@@index([instanceId])
|
||||
@@map("Chat")
|
||||
}
|
||||
Reference in New Issue
Block a user