Atualização para transferir fila quando entrar em loop infinito de ura

pull/20/head
adriano 2023-06-20 14:29:54 -03:00
parent 5f385ab33c
commit 47cb2904af
1 changed files with 17 additions and 32 deletions

View File

@ -601,6 +601,9 @@ const verifyQueue = async (
//test del transfere o atendimento se entrar na ura infinita //test del transfere o atendimento se entrar na ura infinita
let ticket_message = await ShowTicketMessage(ticket.id, false); let ticket_message = await ShowTicketMessage(ticket.id, false);
console.log('ticket_message.length ', ticket_message.length)
if (ticket_message.length > 10) { if (ticket_message.length > 10) {
await UpdateTicketService({ ticketData: { status: 'pending', queueId: queues[0].id }, ticketId: ticket.id }); await UpdateTicketService({ ticketData: { status: 'pending', queueId: queues[0].id }, ticketId: ticket.id });
@ -974,44 +977,26 @@ const handleMessage = async (
console.log('okkkkkkkkkkkkkkkkkk 4') console.log('okkkkkkkkkkkkkkkkkk 4')
// TEST DEL // // TEST DEL
let test: any = await ShowTicketMessage(ticket.id, false, true, 5); // let test: any = await ShowTicketMessage(ticket.id, false, true, 5);
console.log('okkkkkkkkkkkkkkkkkk 5 test: ', test) // console.log('okkkkkkkkkkkkkkkkkk 5 test: ', test)
if (test && test.length > 0 && test[0].body.includes('Se deseja solicitar atendimento de urgência, digite *1*') && msg.body == '1') { //test del transfere o atendimento se entrar na ura infinita
let ticket_message = await ShowTicketMessage(ticket.id, false);
console.log('===================================> ENDPOINT REQUEST') console.log('ticket_message.length ', ticket_message.length)
for (let i = 0; i < test.length; i++) { if (ticket_message.length > 10) {
if (test[i].body.includes('*categoria*: INFRAESTRUTURA')) { const { queues, } = await ShowWhatsAppService(wbot.id!);
botSendMessage(ticket, contact, wbot, `Estamos direcionando seu atendimento para o Suporte. Em breve você será atendido por um de nossos atendentes!\n\nPara voltar ao atendimento *automatizado* e sair da fila de atendimento *humano* digite *0*`) await UpdateTicketService({ ticketData: { status: 'pending', queueId: queues[0].id }, ticketId: ticket.id });
await transferTicket(0, wbot, ticket, contact)
break
}
else if (test[i].body.includes('*categoria*: ELOS')) {
botSendMessage(ticket, contact, wbot, `Estamos direcionando seu atendimento para o Suporte. Em breve você será atendido por um de nossos atendentes!\n\nPara voltar ao atendimento *automatizado* e sair da fila de atendimento *humano* digite *0*`)
await transferTicket(1, wbot, ticket, contact)
break
}
}
return
} }
// else {
await sendDialogflowAwswer(wbot, ticket, msg, contact, chat);
console.log('okkkkkkkkkkkkkkkkkk 6') }
await sendDialogflowAwswer(wbot, ticket, msg, contact, chat);
} }
else if (botInfo.isOnQueue && !msg.fromMe && msg.body == '0' && ticket.status == 'pending' && ticket.queueId) { else if (botInfo.isOnQueue && !msg.fromMe && msg.body == '0' && ticket.status == 'pending' && ticket.queueId) {