diff --git a/backend/src/services/WbotServices/wbotMessageListener.ts b/backend/src/services/WbotServices/wbotMessageListener.ts index 309a4ce..e269cc2 100644 --- a/backend/src/services/WbotServices/wbotMessageListener.ts +++ b/backend/src/services/WbotServices/wbotMessageListener.ts @@ -759,6 +759,41 @@ const handleMessage = async ( await verifyQueue(wbot, msg, ticket, contact); } + // Transfer to agent + if (!msg.fromMe) { + const listUser = await findByContain(); + + let filteredUsers = listUser.filter(user => + msg?.body?.trim()?.toLowerCase().includes(user.name) + ); + + if (filteredUsers && filteredUsers.length > 0) { + const whatsappQueues = await ListWhatsappQueuesByUserQueue( + +filteredUsers[0].id + ); + + const obj: any = whatsappQueues.find( + (ob: any) => ob.whatsappId == wbot.id + ); + + if (obj) { + await botTransferTicketToUser( + +filteredUsers[0].id, + ticket, + +obj.queueId + ); + + await botSendMessage( + ticket, + `Você foi transferido para falar com o agente ${filteredUsers[0].name}` + ); + } + + return; + } + } + // + // O bot interage com o cliente e encaminha o atendimento para fila de atendende quando o usuário escolhe a opção falar com atendente //Habilitar esse caso queira usar o bot @@ -802,39 +837,6 @@ const handleMessage = async ( return; } - // Transfer to agent - const listUser = await findByContain(); - - let filteredUsers = listUser.filter(user => - msg?.body?.trim()?.toLowerCase().includes(user.name) - ); - - if (filteredUsers && filteredUsers.length > 0) { - const whatsappQueues = await ListWhatsappQueuesByUserQueue( - +filteredUsers[0].id - ); - - const obj: any = whatsappQueues.find( - (ob: any) => ob.whatsappId == wbot.id - ); - - if (obj) { - await botTransferTicketToUser( - +filteredUsers[0].id, - ticket, - +obj.queueId - ); - - botSendMessage( - ticket, - `Você foi transferido para falar com o agente ${filteredUsers[0].name}` - ); - } - - return; - } - // - const menuMsg: any = await menu(msg.body, wbot.id, contact.id); console.log("menuMsg: ", menuMsg);