diff --git a/prisma/schema.prisma b/prisma/schema.prisma index a9e829a..0a53d03 100644 --- a/prisma/schema.prisma +++ b/prisma/schema.prisma @@ -19,14 +19,17 @@ model Session { callId String @unique callerPhone String @unique - receiverPhone String? @unique + + operatorPhone String? @unique + operator Operator? @relation(fields: [operatorPhone], references: [phoneNumber]) + messages Message[] } enum Role { USER BOT - REP + OPERATOR } model Message { @@ -39,3 +42,12 @@ model Message { session Session @relation(fields: [sessionId], references: [id]) sessionId String @db.ObjectId } + +model Operator { + id String @id @default(auto()) @map("_id") @db.ObjectId + name String + phoneNumber String @unique + email String @unique + + sessions Session[] +} diff --git a/src/session.js b/src/session.js index 8867cd5..5fe4256 100644 --- a/src/session.js +++ b/src/session.js @@ -18,14 +18,14 @@ export const findSessionByCallId = async (callId) => { }) } -export const transferSession = async (callId, receiverPhone) => { +export const transferSession = async (callId, operatorPhone) => { return await db.session.update({ where: { callId: callId }, data: { transferedAt: new Date(), - receiverPhone: receiverPhone + operatorPhone: operatorPhone } }) }