Built motion from commit (unavailable).|2.5.21
[motion2.git] / server / api / whatsappMessage / whatsappMessage.model.js
1 // *************************************************************************
2 // *                                                                       *
3 // * xCALLY Motion -  The Omnichannel Contact Center                       *
4 // * Copyright (c) Xenialab s.r.l. All Rights Reserved                     *
5 // *                                                                       *
6 // *************************************************************************
7 // *                                                                       *
8 // * Email: info@xcally.com                                                *
9 // * Website: https://www.xcally.com                                       *
10 // *                                                                       *
11 // *************************************************************************
12 // *                                                                       *
13 // * The SOFTWARE PRODUCT is protected by copyright laws and international *
14 // * copyright treaties, as well as other intellectual property laws and   *
15 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                         *
16 // *                                                                       *
17 // *************************************************************************
18 var _0x706a=['util','../../config/logger','api','moment','bluebird','request-promise','rimraf','../../config/environment','./whatsappMessage.attributes','exports','define','WhatsappMessage','whatsapp_messages','messageId','fti_whatsapp_messages','body','FULLTEXT','models','direction','toLowerCase','out','secret','UserId','WhatsappInteraction','then','update','catch','WhatsappAccount','find','WhatsappAccountId','type','twilio','accountSid','authToken','phone','messages','remote','/api/whatsapp/messages/','/status?token=','token','sid','error','afterCreate','Missing\x20parameters:\x20phone,\x20accountSid\x20or\x20authToken','finally','utf8mb4'];(function(_0xd03c16,_0x4999d1){var _0x2d9e4c=function(_0x162c2f){while(--_0x162c2f){_0xd03c16['push'](_0xd03c16['shift']());}};_0x2d9e4c(++_0x4999d1);}(_0x706a,0x1cc));var _0xa706=function(_0xdd827a,_0x482ad2){_0xdd827a=_0xdd827a-0x0;var _0x2f46f1=_0x706a[_0xdd827a];return _0x2f46f1;};'use strict';var _=require('lodash');var util=require(_0xa706('0x0'));var logger=require(_0xa706('0x1'))(_0xa706('0x2'));var moment=require(_0xa706('0x3'));var BPromise=require(_0xa706('0x4'));var rp=require(_0xa706('0x5'));var fs=require('fs');var path=require('path');var rimraf=require(_0xa706('0x6'));var config=require(_0xa706('0x7'));var attributes=require(_0xa706('0x8'));module[_0xa706('0x9')]=function(_0x59bcca,_0x537d98){return _0x59bcca[_0xa706('0xa')](_0xa706('0xb'),attributes,{'tableName':_0xa706('0xc'),'paranoid':![],'indexes':[{'name':_0xa706('0xd'),'fields':[_0xa706('0xd')]},{'name':_0xa706('0xe'),'fields':[_0xa706('0xf')],'type':_0xa706('0x10')}],'timestamps':!![],'hooks':{'afterCreate':function(_0x2a2863,_0x49ee72,_0x5e0908){var _0x19a720=_0x59bcca[_0xa706('0x11')];var _0x31d97d=_0x2a2863['get']({'plain':!![]});if(_0x31d97d[_0xa706('0x12')]['toLowerCase']()==='in'||_0x31d97d[_0xa706('0x12')][_0xa706('0x13')]()===_0xa706('0x14')&&!_0x31d97d[_0xa706('0x15')]&&!_['isNil'](_0x31d97d[_0xa706('0x16')])){_0x19a720[_0xa706('0x17')]['findOne']({'where':{'id':_0x31d97d['WhatsappInteractionId']}})[_0xa706('0x18')](function(_0x433624){if(_0x433624){_0x433624[_0xa706('0x19')]({'lastMsgAt':_0x31d97d['createdAt'],'lastMsgDirection':_0x31d97d['direction'][_0xa706('0x13')]()});}})[_0xa706('0x1a')](function(_0x267f93){console['error'](_0x267f93);});}if(_0x31d97d[_0xa706('0x12')]===_0xa706('0x14')&&!_0x31d97d[_0xa706('0x15')]){var _0x4db4c2;_0x19a720[_0xa706('0x1b')][_0xa706('0x1c')]({'where':{'id':_0x31d97d[_0xa706('0x1d')]},'raw':!![]})[_0xa706('0x18')](function(_0x2a7a3c){_0x4db4c2=_0x2a7a3c;if(_0x4db4c2&&_0x4db4c2[_0xa706('0x1e')]){switch(_0x4db4c2[_0xa706('0x1e')]){case _0xa706('0x1f'):var _0x1277b4=require(_0xa706('0x1f'));if(_0x4db4c2[_0xa706('0x20')]&&_0x4db4c2[_0xa706('0x21')]&&_0x4db4c2[_0xa706('0x22')]){var _0x4934ec=new _0x1277b4(_0x4db4c2[_0xa706('0x20')],_0x4db4c2[_0xa706('0x21')]);_0x4934ec[_0xa706('0x23')]['create']({'body':_0x31d97d[_0xa706('0xf')],'to':'whatsapp:'+_0x31d97d[_0xa706('0x22')],'from':'whatsapp:'+_0x4db4c2[_0xa706('0x22')],'statusCallback':_0x4db4c2[_0xa706('0x24')]+_0xa706('0x25')+_0x31d97d['id']+_0xa706('0x26')+_0x4db4c2[_0xa706('0x27')]})['then'](function(_0x2cae31){if(_0x2cae31[_0xa706('0x28')]){return _0x2a2863[_0xa706('0x19')]({'messageId':_0x2cae31['sid']});}})[_0xa706('0x1a')](function(_0x18e44a){logger[_0xa706('0x29')]('WhatsappMessage,\x20%s,\x20%s,\x20%s',_0xa706('0x2a'),_0xa706('0x1f'),util['inspect'](_0x18e44a,{'showHidden':![],'depth':null}));});}else{logger[_0xa706('0x29')]('WhatsappMessage,\x20%s,\x20%s,\x20%s','afterCreate',_0xa706('0x1f'),_0xa706('0x2b'));}break;}}})[_0xa706('0x2c')](function(){_0x5e0908();});}else{_0x5e0908();}}},'charset':_0xa706('0x2d'),'collate':'utf8mb4_unicode_ci'});};