mirror of
https://github.com/EvolutionAPI/evolution-api.git
synced 2025-12-20 20:32:23 -06:00
- 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
81 lines
2.1 KiB
Plaintext
81 lines
2.1 KiB
Plaintext
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")
|
|
}
|