|
|
|
|
@ -106,22 +106,20 @@ const setupMessageHandler = () => {
|
|
|
|
|
try {
|
|
|
|
|
const now = new Date(new Date().getTime() + 60 * 60 * 1000).toISOString();
|
|
|
|
|
|
|
|
|
|
const m = await getOutboundMessage({ id: messageData.id });
|
|
|
|
|
const bixFields = pick(m, ['actionId', 'externalId', 'message_origin']);
|
|
|
|
|
const savedMsg = await getOutboundMessage({ id: messageData.id });
|
|
|
|
|
const bixFields = pick(m, ['actionId', 'externalId']);
|
|
|
|
|
logger.info('message evt NOT pending \n', m, bixFields);
|
|
|
|
|
|
|
|
|
|
const webhookBody = webhookBodyBuilder({ ...messageData, ...bixFields, savedMsg: m }, eventName);
|
|
|
|
|
const webhookBody = webhookBodyBuilder({ ...messageData, ...bixFields }, eventName);
|
|
|
|
|
const { waiMessage } = webhookBody;
|
|
|
|
|
|
|
|
|
|
const timeFields = pick(waiMessage, [...Object.values(timeField), 'createTime', 'updateTime']);
|
|
|
|
|
// timeFields.msgtime = m?.msgtime || now;
|
|
|
|
|
// timeFields.createTime = messageData?.createTime || m?.createTime || now;
|
|
|
|
|
const upsertFields = pick(waiMessage, ['direction', 'wamid', 'id', 'status']);
|
|
|
|
|
upsertFields.evt_id = webhookBody.id;
|
|
|
|
|
const pusher = { customerProfile_id: waiMessage.customerProfile?.id || '', customerProfile_name: waiMessage.customerProfile?.name || '' };
|
|
|
|
|
const record = objectMapper(waiMessage, { from: 'froms', to: 'tos', status: 'msg_status', type: 'msgtype' }, false);
|
|
|
|
|
const contentFields = waiMessage.type === 'text' ? { text_body: waiMessage.text.body } : {};
|
|
|
|
|
await upsertOutboundMessage(m.sn || null, { ...timeFields, ...upsertFields, ...pusher, ...contentFields, ...record, message_origin: bixFields?.message_origin || JSON.stringify(messageData) });
|
|
|
|
|
await upsertOutboundMessage(m.sn || null, { ...timeFields, ...upsertFields, ...pusher, ...contentFields, ...record, message_origin: savedMsg?.message_origin || JSON.stringify(messageData) });
|
|
|
|
|
// console.log('upsert=========================', upsert);
|
|
|
|
|
await callWebhook(webhookBody);
|
|
|
|
|
} catch (error) {
|
|
|
|
|
|