feat: Optimize database by reopening bot tickets instead of creating new ones
parent
853f537361
commit
7bab4bf6b9
|
@ -89,6 +89,8 @@ import SettingTicket from "../../models/SettingTicket";
|
|||
import mostRepeatedPhrase from "../../helpers/MostRepeatedPhrase";
|
||||
import ListWhatsAppsNumber from "../WhatsappService/ListWhatsAppsNumber";
|
||||
import { createObject, findObject, get } from "../../helpers/RedisClient";
|
||||
import FindOrCreateTicketServiceBot from "../TicketServices/FindOrCreateTicketServiceBot"
|
||||
import ShowTicketService from "../TicketServices/ShowTicketService"
|
||||
|
||||
var lst: any[] = getWhatsappIds();
|
||||
|
||||
|
@ -663,12 +665,39 @@ const handleMessage = async (
|
|||
)
|
||||
return;
|
||||
|
||||
const ticket = await FindOrCreateTicketService(
|
||||
contact,
|
||||
wbot.id!,
|
||||
unreadMessages
|
||||
// groupContact
|
||||
);
|
||||
let ticket;
|
||||
|
||||
const _botInfo = await BotIsOnQueue("botqueue");
|
||||
|
||||
if (_botInfo.isOnQueue) {
|
||||
let ticket_obj: any = await FindOrCreateTicketServiceBot(
|
||||
contact,
|
||||
wbot.id!,
|
||||
unreadMessages
|
||||
// groupContact
|
||||
);
|
||||
|
||||
ticket = ticket_obj.ticket;
|
||||
|
||||
if (ticket_obj.created) {
|
||||
let queue = await ShowQueueService(_botInfo.botQueueId);
|
||||
|
||||
await UpdateTicketService({
|
||||
ticketData: { queueId: queue.id },
|
||||
ticketId: ticket.id
|
||||
});
|
||||
|
||||
ticket = await ShowTicketService(ticket.id);
|
||||
}
|
||||
} else {
|
||||
ticket = await FindOrCreateTicketService(
|
||||
contact,
|
||||
wbot.id!,
|
||||
unreadMessages
|
||||
// groupContact
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
if (getSettingValue("oneContactChatWithManyWhats")?.value == "disabled") {
|
||||
// Para responder para o cliente pelo mesmo whatsapp que ele enviou a mensagen
|
||||
|
@ -739,6 +768,22 @@ const handleMessage = async (
|
|||
} else {
|
||||
console.log("MSG body: ", msg.body);
|
||||
|
||||
if (msg.type != "chat") {
|
||||
botSendMessage(
|
||||
ticket,
|
||||
`Desculpe, nao compreendi!\nEnvie apenas texto quando estiver interagindo com o bot!\n _Digite *0* para voltar ao menu principal._`
|
||||
);
|
||||
return;
|
||||
}
|
||||
|
||||
if (msg.type == "chat" && String(msg.body).length > 120) {
|
||||
botSendMessage(
|
||||
ticket,
|
||||
`Desculpe, nao compreendi!\nTexto acima de 120 caracteres!\n _Digite *0* para voltar ao menu principal._`
|
||||
);
|
||||
return;
|
||||
}
|
||||
|
||||
const menuMsg: any = await menu(msg.body, wbot.id, contact.id);
|
||||
|
||||
console.log("menuMsg: ", menuMsg);
|
||||
|
|
Loading…
Reference in New Issue