Compare commits

...

3 Commits

6 changed files with 63 additions and 46 deletions

View File

@ -93,7 +93,7 @@ export const index = async (req: Request, res: Response): Promise<Response> => {
let queueIds: number[] = []; let queueIds: number[] = [];
if (queueIdsStringified) { if (queueIdsStringified && queueIdsStringified.trim().length > 0) {
queueIds = JSON.parse(queueIdsStringified); queueIds = JSON.parse(queueIdsStringified);
} }

View File

@ -265,6 +265,10 @@ export const weebhook = async (
}); });
if (type == "text") { if (type == "text") {
if (!message?.text?.body) {
return res.status(400).json({ error: "body not found" });
}
type = "chat"; type = "chat";
msg = { msg = {
...msg, ...msg,
@ -272,6 +276,10 @@ export const weebhook = async (
type type
}; };
} else { } else {
if (!message[message?.type]?.id) {
return res.status(400).json({ error: "id not found" });
}
const mediaId = message[message.type].id; const mediaId = message[message.type].id;
const mimetype = message[message.type].mime_type; const mimetype = message[message.type].mime_type;

View File

@ -25,7 +25,7 @@ const GetDefaultWhatsApp = async ({
where: { isDefault: true } where: { isDefault: true }
}); });
if (!defaultWhatsapp && !ignoreNoWhatsappFound) { if (!defaultWhatsapp) {
if (userId) { if (userId) {
let whatsapps = await wbotByUserQueue({ userId, queueId }); let whatsapps = await wbotByUserQueue({ userId, queueId });

View File

@ -27,9 +27,13 @@ const CheckIsValidContact = async (
} }
try { try {
let _status: any;
if (!isValidNumber) { if (!isValidNumber) {
const { data } = await axios.post( console.log('kkkkkkkkkkkkkkkkkkkkkkkkkkkkk ')
const { data, status } = await axios.post(
`${process.env.WHATS_NUMBER_VALIDATOR_URL}/api/validate`, `${process.env.WHATS_NUMBER_VALIDATOR_URL}/api/validate`,
{ mobile: number }, { mobile: number },
{ {
@ -40,10 +44,14 @@ const CheckIsValidContact = async (
); );
isValidNumber = data; isValidNumber = data;
_status = status;
} }
if (ignoreThrow) return isValidNumber?.number; if (ignoreThrow) return isValidNumber?.number;
console.log('_status: ', _status)
if (_status && _status == 422) throw new AppError("ERR_NO_WAPP_FOUND");
if (!isValidNumber || (isValidNumber && !isValidNumber.isValid)) { if (!isValidNumber || (isValidNumber && !isValidNumber.isValid)) {
throw new AppError("invalidNumber"); throw new AppError("invalidNumber");
} }

View File

@ -98,7 +98,7 @@ import FindOrCreateTicketServiceBot from "../TicketServices/FindOrCreateTicketSe
import ShowTicketService from "../TicketServices/ShowTicketService"; import ShowTicketService from "../TicketServices/ShowTicketService";
import ShowQueuesByUser from "../UserServices/ShowQueuesByUser"; import ShowQueuesByUser from "../UserServices/ShowQueuesByUser";
import ListWhatsappQueuesByUserQueue from "../UserServices/ListWhatsappQueuesByUserQueue"; import ListWhatsappQueuesByUserQueue from "../UserServices/ListWhatsappQueuesByUserQueue";
import CreateContactService from "../ContactServices/CreateContactService" import CreateContactService from "../ContactServices/CreateContactService";
var lst: any[] = getWhatsappIds(); var lst: any[] = getWhatsappIds();
@ -318,14 +318,15 @@ const verifyQueue = async (
selectedOption = 1; selectedOption = 1;
choosenQueue = queues[+selectedOption - 1]; choosenQueue = queues[+selectedOption - 1];
} else { } else {
selectedOption = msg.body; selectedOption = msg?.body;
if (selectedOption && selectedOption.trim().length > 0) {
//////////////// EXTRAIR APENAS O NÚMERO /////////////////// //////////////// EXTRAIR APENAS O NÚMERO ///////////////////
selectedOption = selectedOption.replace(/[^1-9]/g, ""); selectedOption = selectedOption.replace(/[^1-9]/g, "");
/////////////////////////////////// ///////////////////////////////////
choosenQueue = queues[+selectedOption - 1]; choosenQueue = queues[+selectedOption - 1];
} }
}
if (choosenQueue) { if (choosenQueue) {
// Atualizando o status do ticket para mostrar notificação para o atendente da fila escolhida pelo usuário. De queueChoice para pending // Atualizando o status do ticket para mostrar notificação para o atendente da fila escolhida pelo usuário. De queueChoice para pending

View File

@ -126,10 +126,10 @@ const ContactModal = ({ open, onClose, contactId, initialValues, onSave }) => {
handleClose() handleClose()
} }
toast.success(i18n.t("contactModal.success")) toast.success(i18n.t("contactModal.success"))
setSaving(false)
} catch (err) { } catch (err) {
toastError(err) toastError(err)
} }
setSaving(false)
} }
return ( return (