Built motion from commit e1760111.|2.6.18
[motion2.git] / server / api / whatsappAccount / whatsappAccount.controller.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 _0x9445=['request\x20sent','WhatsappAccount,\x20%s,\x20%s,\x20%s','stringify','error','code','message','result','sendStatus','status','json','offset','limit','undefined','count','set','reject','save','update','destroy','UserProfileResource','name','send','index','Pause','mandatoryDispositionPause','map','WhatsappAccount','fieldName','type','key','model','keys','query','filters','intersection','fields','attributes','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','options','includeAll','include','rows','catch','params','rawAttributes','find','create','body','get','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','user','WhatsappAccounts','UserProfileSection','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','describe','addDisposition','WhatsappAccountId','Disposition','getDispositions','findOne','findAll','removeDispositions','ids','addAnswer','CannedAnswer','getAnswers','removeAnswers','addAgents','spread','emit','removeAgents','isArray','userWhatsappAccount:remove','User','getAgents','sequelize','Transaction','ISOLATION_LEVELS','READ_COMMITTED','WhatsappApplication','bulkCreate','findAndCountAll','priority','finally','getApplications','notify','whatsapp','Applications','account','sinch','statuses','state','WhatsappMessage','message_id','applications','orderBy','CmContact','Sequelize','ValidationError','no\x20available\x20attributes','difference','updatedAt','ListId','mobile','from','From','replace','messageId','MessageSid','notifications','isNil','from\x20is\x20mandatory','mapKey','mapKey\x20is\x20mandatory,\x20please\x20use\x20one\x20of\x20these:\x20','mapKey\x20invalid,\x20please\x20use\x20one\x20of\x20these:\x20','CmList','Contacts','DESC','omit','WhatsappInteraction','interaction','created','push','close','unmanaged','ContactId','AttachmentId','UserId','agent','waitForTheAssignedAgent','*,*,*,*','Start','startRouting','receiveMessage','entity\x20found','debug','WhatsappAccount,\x20%s,\x20%s,\x20%s,\x20%s','twilio','Content-Type','text/xml','to\x20is\x20mandatory','List','Messages','dataValues','eml-format','zip-dir','fast-json-patch','moment','bluebird','mustache','path','sox','to-csv','ejs','fs-extra','lodash','squel','jsforce','desk.js','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','redis','defaults','socket.io-emitter','./whatsappAccount.socket','register','jayson/promise','client','http','request','then','info','WhatsappAccount,\x20%s,\x20%s'];(function(_0x58db65,_0x21499e){var _0x2ba06e=function(_0x1207f4){while(--_0x1207f4){_0x58db65['push'](_0x58db65['shift']());}};_0x2ba06e(++_0x21499e);}(_0x9445,0x15b));var _0x5944=function(_0x57b54c,_0x54ce0d){_0x57b54c=_0x57b54c-0x0;var _0x59cc19=_0x9445[_0x57b54c];return _0x59cc19;};'use strict';var emlformat=require(_0x5944('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x5944('0x1'));var jsonpatch=require(_0x5944('0x2'));var rp=require('request-promise');var moment=require(_0x5944('0x3'));var BPromise=require(_0x5944('0x4'));var Mustache=require(_0x5944('0x5'));var util=require('util');var path=require(_0x5944('0x6'));var sox=require(_0x5944('0x7'));var csv=require(_0x5944('0x8'));var ejs=require(_0x5944('0x9'));var fs=require('fs');var fs_extra=require(_0x5944('0xa'));var _=require(_0x5944('0xb'));var squel=require(_0x5944('0xc'));var crypto=require('crypto');var jsforce=require(_0x5944('0xd'));var deskjs=require(_0x5944('0xe'));var toCsv=require('to-csv');var querystring=require(_0x5944('0xf'));var Papa=require(_0x5944('0x10'));var Redis=require('ioredis');var authService=require(_0x5944('0x11'));var qs=require(_0x5944('0x12'));var as=require(_0x5944('0x13'));var hardwareService=require('../../config/license/hardware');var logger=require('../../config/logger')(_0x5944('0x14'));var utils=require(_0x5944('0x15'));var config=require(_0x5944('0x16'));var licenseUtil=require(_0x5944('0x17'));var db=require(_0x5944('0x18'))['db'];config[_0x5944('0x19')]=_[_0x5944('0x1a')](config[_0x5944('0x19')],{'host':'localhost','port':0x18eb});var socket=require(_0x5944('0x1b'))(new Redis(config['redis']));require(_0x5944('0x1c'))[_0x5944('0x1d')](socket);var jayson=require(_0x5944('0x1e'));var client=jayson[_0x5944('0x1f')][_0x5944('0x20')]({'port':0x232c});function respondWithRpcPromise(_0x4d3c21,_0x3a756a,_0x5bf1f2,_0x25df44){return new BPromise(function(_0x260fb5,_0x39394a){var _0x2e8e08=_0x25df44||client;return _0x2e8e08[_0x5944('0x21')](_0x4d3c21,_0x5bf1f2)[_0x5944('0x22')](function(_0x5a80be){logger[_0x5944('0x23')](_0x5944('0x24'),_0x3a756a,_0x5944('0x25'));logger['debug'](_0x5944('0x26'),_0x3a756a,_0x5944('0x25'),JSON[_0x5944('0x27')](_0x5a80be));if(_0x5a80be[_0x5944('0x28')]){if(_0x5a80be[_0x5944('0x28')][_0x5944('0x29')]===0x1f4){logger['error'](_0x5944('0x24'),_0x3a756a,_0x5a80be[_0x5944('0x28')][_0x5944('0x2a')]);return _0x39394a(_0x5a80be[_0x5944('0x28')][_0x5944('0x2a')]);}logger[_0x5944('0x28')](_0x5944('0x24'),_0x3a756a,_0x5a80be[_0x5944('0x28')][_0x5944('0x2a')]);return _0x260fb5(_0x5a80be[_0x5944('0x28')][_0x5944('0x2a')]);}else{logger[_0x5944('0x23')]('WhatsappAccount,\x20%s,\x20%s',_0x3a756a,'request\x20sent');_0x260fb5(_0x5a80be[_0x5944('0x2b')][_0x5944('0x2a')]);}})['catch'](function(_0x3f949b){logger[_0x5944('0x28')](_0x5944('0x24'),_0x3a756a,_0x3f949b);_0x39394a(_0x3f949b);});});}function respondWithStatusCode(_0x1d07e1,_0x4d97f4){_0x4d97f4=_0x4d97f4||0xcc;return function(_0x178718){if(_0x178718){return _0x1d07e1[_0x5944('0x2c')](_0x4d97f4);}return _0x1d07e1[_0x5944('0x2d')](_0x4d97f4)['end']();};}function respondWithResult(_0x26d5b4,_0x2ef46b){_0x2ef46b=_0x2ef46b||0xc8;return function(_0x281a18){if(_0x281a18){return _0x26d5b4[_0x5944('0x2d')](_0x2ef46b)[_0x5944('0x2e')](_0x281a18);}};}function respondWithFilteredResult(_0x102646,_0x378510){return function(_0x46f770){if(_0x46f770){var _0xcf6f7e=typeof _0x378510[_0x5944('0x2f')]==='undefined'&&typeof _0x378510[_0x5944('0x30')]===_0x5944('0x31');var _0x4c1f0b=_0x46f770[_0x5944('0x32')];var _0x2fdc87=_0xcf6f7e?0x0:_0x378510[_0x5944('0x2f')];var _0x33f98a=_0xcf6f7e?_0x46f770[_0x5944('0x32')]:_0x378510[_0x5944('0x2f')]+_0x378510[_0x5944('0x30')];var _0x4a8e6d;if(_0x33f98a>=_0x4c1f0b){_0x33f98a=_0x4c1f0b;_0x4a8e6d=0xc8;}else{_0x4a8e6d=0xce;}_0x102646[_0x5944('0x2d')](_0x4a8e6d);return _0x102646[_0x5944('0x33')]('Content-Range',_0x2fdc87+'-'+_0x33f98a+'/'+_0x4c1f0b)[_0x5944('0x2e')](_0x46f770);}return null;};}function patchUpdates(_0x5c1921){return function(_0x40258d){try{jsonpatch['apply'](_0x40258d,_0x5c1921,!![]);}catch(_0x394de5){return BPromise[_0x5944('0x34')](_0x394de5);}return _0x40258d[_0x5944('0x35')]();};}function saveUpdates(_0x197864,_0xbbea8e){return function(_0x831a7e){if(_0x831a7e){return _0x831a7e[_0x5944('0x36')](_0x197864)['then'](function(_0xae9d49){return _0xae9d49;});}return null;};}function removeEntity(_0x1e37a8,_0x166b01){return function(_0x16b6e2){if(_0x16b6e2){return _0x16b6e2[_0x5944('0x37')]()['then'](function(){var _0x1b682e=_0x16b6e2['get']({'plain':!![]});var _0x5371c4='WhatsappAccounts';return db[_0x5944('0x38')][_0x5944('0x37')]({'where':{'type':_0x5371c4,'resourceId':_0x1b682e['id']}})[_0x5944('0x22')](function(){return _0x16b6e2;});})['then'](function(){_0x1e37a8['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0x2df698,_0x263c77){return function(_0x379b05){if(!_0x379b05){_0x2df698[_0x5944('0x2c')](0x194);}return _0x379b05;};}function handleError(_0xe0634d,_0x531e8a){_0x531e8a=_0x531e8a||0x1f4;return function(_0x177667){logger['error'](_0x177667['stack']);if(_0x177667[_0x5944('0x39')]){delete _0x177667[_0x5944('0x39')];}_0xe0634d['status'](_0x531e8a)[_0x5944('0x3a')](_0x177667);};}exports[_0x5944('0x3b')]=function(_0x1ecbd6,_0x36dd01){var _0x4363bf={'include':[{'model':db[_0x5944('0x3c')],'as':_0x5944('0x3d')}]},_0x36a455={},_0x34bcda={'count':0x0,'rows':[]};var _0x4da02b=_[_0x5944('0x3e')](db[_0x5944('0x3f')]['rawAttributes'],function(_0x24de1b){return{'name':_0x24de1b[_0x5944('0x40')],'type':_0x24de1b[_0x5944('0x41')][_0x5944('0x42')]};});_0x36a455[_0x5944('0x43')]=_[_0x5944('0x3e')](_0x4da02b,'name');_0x36a455['query']=_[_0x5944('0x44')](_0x1ecbd6[_0x5944('0x45')]);_0x36a455[_0x5944('0x46')]=_[_0x5944('0x47')](_0x36a455[_0x5944('0x43')],_0x36a455[_0x5944('0x45')]);_0x4363bf['attributes']=_[_0x5944('0x47')](_0x36a455[_0x5944('0x43')],qs[_0x5944('0x48')](_0x1ecbd6[_0x5944('0x45')]['fields']));_0x4363bf[_0x5944('0x49')]=_0x4363bf[_0x5944('0x49')][_0x5944('0x4a')]?_0x4363bf['attributes']:_0x36a455['model'];if(!_0x1ecbd6[_0x5944('0x45')][_0x5944('0x4b')](_0x5944('0x4c'))){_0x4363bf[_0x5944('0x30')]=qs['limit'](_0x1ecbd6[_0x5944('0x45')][_0x5944('0x30')]);_0x4363bf[_0x5944('0x2f')]=qs[_0x5944('0x2f')](_0x1ecbd6[_0x5944('0x45')][_0x5944('0x2f')]);}_0x4363bf[_0x5944('0x4d')]=qs[_0x5944('0x4e')](_0x1ecbd6[_0x5944('0x45')]['sort']);_0x4363bf[_0x5944('0x4f')]=qs['filters'](_[_0x5944('0x50')](_0x1ecbd6[_0x5944('0x45')],_0x36a455[_0x5944('0x46')]),_0x4da02b);if(_0x1ecbd6[_0x5944('0x45')][_0x5944('0x51')]){_0x4363bf[_0x5944('0x4f')]=_['merge'](_0x4363bf['where'],{'$or':_[_0x5944('0x3e')](_0x4da02b,function(_0x313dbf){if(_0x313dbf[_0x5944('0x41')]!=='VIRTUAL'){var _0x1e0d8c={};_0x1e0d8c[_0x313dbf[_0x5944('0x39')]]={'$like':'%'+_0x1ecbd6[_0x5944('0x45')][_0x5944('0x51')]+'%'};return _0x1e0d8c;}})});}_0x4363bf=_[_0x5944('0x52')]({},_0x4363bf,_0x1ecbd6[_0x5944('0x53')]);var _0x3073aa={'where':_0x4363bf[_0x5944('0x4f')]};return db['WhatsappAccount']['count'](_0x3073aa)['then'](function(_0x4437b1){_0x34bcda[_0x5944('0x32')]=_0x4437b1;if(_0x1ecbd6[_0x5944('0x45')][_0x5944('0x54')]){_0x4363bf[_0x5944('0x55')]=[{'all':!![]}];}return db['WhatsappAccount']['findAll'](_0x4363bf);})[_0x5944('0x22')](function(_0x393b75){_0x34bcda[_0x5944('0x56')]=_0x393b75;return _0x34bcda;})['then'](respondWithFilteredResult(_0x36dd01,_0x4363bf))[_0x5944('0x57')](handleError(_0x36dd01,null));};exports['show']=function(_0x59f2ce,_0x238225){var _0x5319b1={'raw':![],'where':{'id':_0x59f2ce[_0x5944('0x58')]['id']},'include':[{'model':db[_0x5944('0x3c')],'as':_0x5944('0x3d')}]},_0x4fc870={};_0x4fc870[_0x5944('0x43')]=_[_0x5944('0x44')](db[_0x5944('0x3f')][_0x5944('0x59')]);_0x4fc870[_0x5944('0x45')]=_[_0x5944('0x44')](_0x59f2ce[_0x5944('0x45')]);_0x4fc870[_0x5944('0x46')]=_[_0x5944('0x47')](_0x4fc870[_0x5944('0x43')],_0x4fc870['query']);_0x5319b1[_0x5944('0x49')]=_[_0x5944('0x47')](_0x4fc870[_0x5944('0x43')],qs['fields'](_0x59f2ce[_0x5944('0x45')][_0x5944('0x48')]));_0x5319b1[_0x5944('0x49')]=_0x5319b1[_0x5944('0x49')][_0x5944('0x4a')]?_0x5319b1[_0x5944('0x49')]:_0x4fc870[_0x5944('0x43')];if(_0x59f2ce[_0x5944('0x45')]['includeAll']){_0x5319b1['include']=[{'all':!![]}];}_0x5319b1=_[_0x5944('0x52')]({},_0x5319b1,_0x59f2ce[_0x5944('0x53')]);return db[_0x5944('0x3f')][_0x5944('0x5a')](_0x5319b1)[_0x5944('0x22')](handleEntityNotFound(_0x238225,null))['then'](respondWithResult(_0x238225,null))['catch'](handleError(_0x238225,null));};exports[_0x5944('0x5b')]=function(_0x29c0c1,_0x143223){return db['WhatsappAccount']['create'](_0x29c0c1[_0x5944('0x5c')],{})[_0x5944('0x22')](function(_0x3c5a8e){var _0x143b55=_0x29c0c1['user'][_0x5944('0x5d')]({'plain':!![]});if(!_0x143b55)throw new Error(_0x5944('0x5e'));if(_0x143b55[_0x5944('0x5f')]===_0x5944('0x60')){var _0x514621=_0x3c5a8e[_0x5944('0x5d')]({'plain':!![]});var _0x38ddeb=_0x5944('0x61');return db[_0x5944('0x62')][_0x5944('0x5a')]({'where':{'name':_0x38ddeb,'userProfileId':_0x143b55[_0x5944('0x63')]},'raw':!![]})[_0x5944('0x22')](function(_0x1ebc68){if(_0x1ebc68&&_0x1ebc68[_0x5944('0x64')]===0x0){return db[_0x5944('0x38')]['create']({'name':_0x514621[_0x5944('0x39')],'resourceId':_0x514621['id'],'type':_0x1ebc68['name'],'sectionId':_0x1ebc68['id']},{})[_0x5944('0x22')](function(){return _0x3c5a8e;});}else{return _0x3c5a8e;}})[_0x5944('0x57')](function(_0x141fdd){logger[_0x5944('0x28')](_0x5944('0x65'),_0x141fdd);throw _0x141fdd;});}return _0x3c5a8e;})[_0x5944('0x22')](respondWithResult(_0x143223,0xc9))[_0x5944('0x57')](handleError(_0x143223,null));};exports[_0x5944('0x36')]=function(_0x57208f,_0x345462){if(_0x57208f[_0x5944('0x5c')]['id']){delete _0x57208f['body']['id'];}return db['WhatsappAccount']['find']({'where':{'id':_0x57208f['params']['id']},'include':[{'model':db['Pause'],'as':_0x5944('0x3d')}]})['then'](handleEntityNotFound(_0x345462,null))[_0x5944('0x22')](saveUpdates(_0x57208f['body'],null))[_0x5944('0x22')](respondWithResult(_0x345462,null))['catch'](handleError(_0x345462,null));};exports[_0x5944('0x37')]=function(_0x18baca,_0x3eae63){return db['WhatsappAccount'][_0x5944('0x5a')]({'where':{'id':_0x18baca[_0x5944('0x58')]['id']}})[_0x5944('0x22')](handleEntityNotFound(_0x3eae63,null))['then'](removeEntity(_0x3eae63,null))['catch'](handleError(_0x3eae63,null));};exports['describe']=function(_0x3dacf5,_0x435d4b){return db[_0x5944('0x3f')][_0x5944('0x66')]()['then'](respondWithResult(_0x435d4b,null))['catch'](handleError(_0x435d4b,null));};exports[_0x5944('0x67')]=function(_0x2a435e,_0x1d2d17,_0x1b10da){if(_0x2a435e['body']['id']){delete _0x2a435e[_0x5944('0x5c')]['id'];}return db[_0x5944('0x3f')]['find']({'where':{'id':_0x2a435e[_0x5944('0x58')]['id']}})[_0x5944('0x22')](handleEntityNotFound(_0x1d2d17,null))[_0x5944('0x22')](function(_0x1d27ce){if(_0x1d27ce){_0x2a435e[_0x5944('0x5c')][_0x5944('0x68')]=_0x1d27ce['id'];return db[_0x5944('0x69')][_0x5944('0x5b')](_0x2a435e['body']);}})[_0x5944('0x22')](respondWithResult(_0x1d2d17,null))['catch'](handleError(_0x1d2d17,null));};exports[_0x5944('0x6a')]=function(_0x3a5767,_0x355b4b,_0x6013ae){var _0x5a3508={'raw':![],'where':{}};var _0x9552d={};var _0x12e7aa={'count':0x0,'rows':[]};return db['WhatsappAccount'][_0x5944('0x6b')]({'where':{'id':_0x3a5767[_0x5944('0x58')]['id']}})['then'](handleEntityNotFound(_0x355b4b,null))[_0x5944('0x22')](function(_0x52df90){if(_0x52df90){_0x9552d[_0x5944('0x43')]=_['keys'](db[_0x5944('0x69')][_0x5944('0x59')]);_0x9552d[_0x5944('0x45')]=_[_0x5944('0x44')](_0x3a5767['query']);_0x9552d[_0x5944('0x46')]=_[_0x5944('0x47')](_0x9552d[_0x5944('0x43')],_0x9552d['query']);_0x5a3508['attributes']=_[_0x5944('0x47')](_0x9552d[_0x5944('0x43')],qs['fields'](_0x3a5767[_0x5944('0x45')][_0x5944('0x48')]));_0x5a3508[_0x5944('0x49')]=_0x5a3508[_0x5944('0x49')][_0x5944('0x4a')]?_0x5a3508[_0x5944('0x49')]:_0x9552d['model'];if(!_0x3a5767[_0x5944('0x45')]['hasOwnProperty'](_0x5944('0x4c'))){_0x5a3508[_0x5944('0x30')]=qs['limit'](_0x3a5767[_0x5944('0x45')][_0x5944('0x30')]);_0x5a3508['offset']=qs[_0x5944('0x2f')](_0x3a5767[_0x5944('0x45')][_0x5944('0x2f')]);}_0x5a3508[_0x5944('0x4d')]=qs[_0x5944('0x4e')](_0x3a5767[_0x5944('0x45')][_0x5944('0x4e')]);_0x5a3508['where']=qs['filters'](_[_0x5944('0x50')](_0x3a5767[_0x5944('0x45')],_0x9552d[_0x5944('0x46')]));_0x5a3508[_0x5944('0x4f')][_0x5944('0x68')]=_0x52df90['id'];if(_0x3a5767[_0x5944('0x45')][_0x5944('0x51')]){_0x5a3508['where']=_[_0x5944('0x52')](_0x5a3508[_0x5944('0x4f')],{'$or':_['map'](_0x5a3508[_0x5944('0x49')],function(_0x3bb993){var _0xcdeab3={};_0xcdeab3[_0x3bb993]={'$like':'%'+_0x3a5767[_0x5944('0x45')][_0x5944('0x51')]+'%'};return _0xcdeab3;})});}_0x5a3508=_[_0x5944('0x52')]({},_0x5a3508,_0x3a5767[_0x5944('0x53')]);return db[_0x5944('0x69')][_0x5944('0x32')]({'where':_0x5a3508['where']})[_0x5944('0x22')](function(_0x2f3905){_0x12e7aa[_0x5944('0x32')]=_0x2f3905;if(_0x3a5767[_0x5944('0x45')][_0x5944('0x54')]){_0x5a3508[_0x5944('0x55')]=[{'all':!![]}];}return db[_0x5944('0x69')][_0x5944('0x6c')](_0x5a3508);})['then'](function(_0x1498e2){_0x12e7aa[_0x5944('0x56')]=_0x1498e2;return _0x12e7aa;});}})[_0x5944('0x22')](respondWithFilteredResult(_0x355b4b,_0x5a3508))[_0x5944('0x57')](handleError(_0x355b4b,null));};exports[_0x5944('0x6d')]=function(_0x52c26d,_0x37f223,_0x522d2d){return db[_0x5944('0x3f')]['find']({'where':{'id':_0x52c26d[_0x5944('0x58')]['id']}})['then'](handleEntityNotFound(_0x37f223,null))[_0x5944('0x22')](function(_0x2f31cb){if(_0x2f31cb){return _0x2f31cb[_0x5944('0x6d')](_0x52c26d[_0x5944('0x45')][_0x5944('0x6e')]);}})[_0x5944('0x22')](respondWithStatusCode(_0x37f223,null))[_0x5944('0x57')](handleError(_0x37f223,null));};exports[_0x5944('0x6f')]=function(_0x2bca56,_0xd31951,_0x206df9){if(_0x2bca56[_0x5944('0x5c')]['id']){delete _0x2bca56[_0x5944('0x5c')]['id'];}return db[_0x5944('0x3f')][_0x5944('0x5a')]({'where':{'id':_0x2bca56[_0x5944('0x58')]['id']}})[_0x5944('0x22')](handleEntityNotFound(_0xd31951,null))[_0x5944('0x22')](function(_0xf900ad){if(_0xf900ad){_0x2bca56['body']['WhatsappAccountId']=_0xf900ad['id'];return db[_0x5944('0x70')][_0x5944('0x5b')](_0x2bca56['body']);}})[_0x5944('0x22')](respondWithResult(_0xd31951,null))[_0x5944('0x57')](handleError(_0xd31951,null));};exports[_0x5944('0x71')]=function(_0x1039d1,_0xb42a9b,_0x5c94b5){var _0x2492cb={'raw':![],'where':{}};var _0x4bc7b9={};var _0x11af19={'count':0x0,'rows':[]};return db[_0x5944('0x3f')]['findOne']({'where':{'id':_0x1039d1[_0x5944('0x58')]['id']}})['then'](handleEntityNotFound(_0xb42a9b,null))[_0x5944('0x22')](function(_0x4e3d2f){if(_0x4e3d2f){_0x4bc7b9['model']=_[_0x5944('0x44')](db[_0x5944('0x70')][_0x5944('0x59')]);_0x4bc7b9[_0x5944('0x45')]=_['keys'](_0x1039d1[_0x5944('0x45')]);_0x4bc7b9[_0x5944('0x46')]=_[_0x5944('0x47')](_0x4bc7b9['model'],_0x4bc7b9['query']);_0x2492cb[_0x5944('0x49')]=_[_0x5944('0x47')](_0x4bc7b9['model'],qs[_0x5944('0x48')](_0x1039d1[_0x5944('0x45')][_0x5944('0x48')]));_0x2492cb['attributes']=_0x2492cb[_0x5944('0x49')][_0x5944('0x4a')]?_0x2492cb['attributes']:_0x4bc7b9[_0x5944('0x43')];if(!_0x1039d1['query'][_0x5944('0x4b')](_0x5944('0x4c'))){_0x2492cb[_0x5944('0x30')]=qs['limit'](_0x1039d1[_0x5944('0x45')]['limit']);_0x2492cb[_0x5944('0x2f')]=qs[_0x5944('0x2f')](_0x1039d1['query'][_0x5944('0x2f')]);}_0x2492cb[_0x5944('0x4d')]=qs[_0x5944('0x4e')](_0x1039d1[_0x5944('0x45')][_0x5944('0x4e')]);_0x2492cb['where']=qs[_0x5944('0x46')](_[_0x5944('0x50')](_0x1039d1[_0x5944('0x45')],_0x4bc7b9[_0x5944('0x46')]));_0x2492cb[_0x5944('0x4f')][_0x5944('0x68')]=_0x4e3d2f['id'];if(_0x1039d1[_0x5944('0x45')][_0x5944('0x51')]){_0x2492cb['where']=_[_0x5944('0x52')](_0x2492cb[_0x5944('0x4f')],{'$or':_[_0x5944('0x3e')](_0x2492cb['attributes'],function(_0x1027e4){var _0x33bb2f={};_0x33bb2f[_0x1027e4]={'$like':'%'+_0x1039d1[_0x5944('0x45')][_0x5944('0x51')]+'%'};return _0x33bb2f;})});}_0x2492cb=_['merge']({},_0x2492cb,_0x1039d1[_0x5944('0x53')]);return db[_0x5944('0x70')][_0x5944('0x32')]({'where':_0x2492cb[_0x5944('0x4f')]})['then'](function(_0x43e51a){_0x11af19[_0x5944('0x32')]=_0x43e51a;if(_0x1039d1[_0x5944('0x45')][_0x5944('0x54')]){_0x2492cb['include']=[{'all':!![]}];}return db[_0x5944('0x70')][_0x5944('0x6c')](_0x2492cb);})['then'](function(_0x33b2f4){_0x11af19[_0x5944('0x56')]=_0x33b2f4;return _0x11af19;});}})['then'](respondWithFilteredResult(_0xb42a9b,_0x2492cb))[_0x5944('0x57')](handleError(_0xb42a9b,null));};exports[_0x5944('0x72')]=function(_0x1ff9bd,_0x43e7d1,_0x473e43){return db[_0x5944('0x3f')]['find']({'where':{'id':_0x1ff9bd[_0x5944('0x58')]['id']}})[_0x5944('0x22')](handleEntityNotFound(_0x43e7d1,null))[_0x5944('0x22')](function(_0x3f7fbd){if(_0x3f7fbd){return _0x3f7fbd[_0x5944('0x72')](_0x1ff9bd['query'][_0x5944('0x6e')]);}})[_0x5944('0x22')](respondWithStatusCode(_0x43e7d1,null))[_0x5944('0x57')](handleError(_0x43e7d1,null));};exports['addAgents']=function(_0x37394f,_0x27789c,_0xa5ce3a){return db[_0x5944('0x3f')][_0x5944('0x5a')]({'where':{'id':_0x37394f['params']['id']}})['then'](handleEntityNotFound(_0x27789c,null))['then'](function(_0xe561e7){if(_0xe561e7){return _0xe561e7[_0x5944('0x73')](_0x37394f[_0x5944('0x5c')][_0x5944('0x6e')],_['omit'](_0x37394f[_0x5944('0x5c')],[_0x5944('0x6e'),'id'])||{})[_0x5944('0x74')](function(_0x4d3438){for(var _0x1e9436=0x0;_0x1e9436<_0x37394f[_0x5944('0x5c')][_0x5944('0x6e')]['length'];_0x1e9436+=0x1){socket[_0x5944('0x75')]('userWhatsappAccount:save',{'UserId':Number(_0x37394f[_0x5944('0x5c')]['ids'][_0x1e9436]),'WhatsappAccountId':Number(_0x37394f[_0x5944('0x58')]['id'])});}return _0x4d3438;});}})['then'](respondWithResult(_0x27789c,null))[_0x5944('0x57')](handleError(_0x27789c,null));};exports[_0x5944('0x76')]=function(_0x4f31be,_0x5661f9,_0x11cf00){return db[_0x5944('0x3f')][_0x5944('0x5a')]({'where':{'id':_0x4f31be[_0x5944('0x58')]['id']}})['then'](handleEntityNotFound(_0x5661f9,null))[_0x5944('0x22')](function(_0x54b57f){if(_0x54b57f){return _0x54b57f['removeAgents'](_0x4f31be[_0x5944('0x45')][_0x5944('0x6e')])[_0x5944('0x22')](function(){if(_[_0x5944('0x77')](_0x4f31be['query']['ids'])){for(var _0x175d08=0x0;_0x175d08<_0x4f31be['query'][_0x5944('0x6e')]['length'];_0x175d08+=0x1){socket['emit'](_0x5944('0x78'),{'UserId':Number(_0x4f31be['query'][_0x5944('0x6e')][_0x175d08]),'WhatsappAccountId':Number(_0x4f31be[_0x5944('0x58')]['id'])});}}else{socket[_0x5944('0x75')](_0x5944('0x78'),{'UserId':Number(_0x4f31be['query'][_0x5944('0x6e')]),'WhatsappAccountId':Number(_0x4f31be[_0x5944('0x58')]['id'])});}});}})[_0x5944('0x22')](respondWithStatusCode(_0x5661f9,null))['catch'](handleError(_0x5661f9,null));};exports['getAgents']=function(_0x4320da,_0x3c6435,_0x2e7bbe){var _0x373edb={};var _0x51f51a={};var _0x2baffc;var _0x2fb34b;return db[_0x5944('0x3f')][_0x5944('0x6b')]({'where':{'id':_0x4320da[_0x5944('0x58')]['id']}})[_0x5944('0x22')](handleEntityNotFound(_0x3c6435,null))[_0x5944('0x22')](function(_0x4b57e2){if(_0x4b57e2){_0x2baffc=_0x4b57e2;_0x51f51a[_0x5944('0x43')]=_['keys'](db[_0x5944('0x79')]['rawAttributes']);_0x51f51a[_0x5944('0x45')]=_[_0x5944('0x44')](_0x4320da['query']);_0x51f51a[_0x5944('0x46')]=_[_0x5944('0x47')](_0x51f51a[_0x5944('0x43')],_0x51f51a['query']);_0x373edb[_0x5944('0x49')]=_[_0x5944('0x47')](_0x51f51a[_0x5944('0x43')],qs[_0x5944('0x48')](_0x4320da[_0x5944('0x45')][_0x5944('0x48')]));_0x373edb[_0x5944('0x49')]=_0x373edb['attributes'][_0x5944('0x4a')]?_0x373edb['attributes']:_0x51f51a['model'];_0x373edb[_0x5944('0x4d')]=qs[_0x5944('0x4e')](_0x4320da[_0x5944('0x45')][_0x5944('0x4e')]);_0x373edb[_0x5944('0x4f')]=qs[_0x5944('0x46')](_[_0x5944('0x50')](_0x4320da[_0x5944('0x45')],_0x51f51a[_0x5944('0x46')]));if(_0x4320da[_0x5944('0x45')][_0x5944('0x51')]){_0x373edb['where']=_[_0x5944('0x52')](_0x373edb[_0x5944('0x4f')],{'$or':_[_0x5944('0x3e')](_0x373edb[_0x5944('0x49')],function(_0x529676){var _0x364d1a={};_0x364d1a[_0x529676]={'$like':'%'+_0x4320da['query'][_0x5944('0x51')]+'%'};return _0x364d1a;})});}_0x373edb=_[_0x5944('0x52')]({},_0x373edb,_0x4320da[_0x5944('0x53')]);return _0x2baffc[_0x5944('0x7a')](_0x373edb);}})[_0x5944('0x22')](function(_0x465617){if(_0x465617){_0x2fb34b=_0x465617[_0x5944('0x4a')];if(!_0x4320da[_0x5944('0x45')][_0x5944('0x4b')](_0x5944('0x4c'))){_0x373edb[_0x5944('0x30')]=qs[_0x5944('0x30')](_0x4320da['query'][_0x5944('0x30')]);_0x373edb[_0x5944('0x2f')]=qs[_0x5944('0x2f')](_0x4320da[_0x5944('0x45')][_0x5944('0x2f')]);}return _0x2baffc['getAgents'](_0x373edb);}})[_0x5944('0x22')](function(_0x19ef8d){if(_0x19ef8d){return _0x19ef8d?{'count':_0x2fb34b,'rows':_0x19ef8d}:null;}})[_0x5944('0x22')](respondWithResult(_0x3c6435,null))[_0x5944('0x57')](handleError(_0x3c6435,null));};exports['addApplications']=function(_0x14ca94,_0x4334d4){var _0x523cb4=_0x14ca94['params']['id'];var _0x371df3=_0x14ca94[_0x5944('0x5c')];var _0x2d103b=0xc8;var _0x501b06=null;return db[_0x5944('0x7b')]['transaction']({'isolationLevel':db[_0x5944('0x7b')][_0x5944('0x7c')][_0x5944('0x7d')][_0x5944('0x7e')]},function(_0x5ea5d8){return db[_0x5944('0x3f')]['findOne']({'where':{'id':_0x523cb4},'transaction':_0x5ea5d8})['then'](function(_0x1da46d){if(_0x1da46d){return db[_0x5944('0x7f')][_0x5944('0x37')]({'where':{'WhatsappAccountId':_0x523cb4},'transaction':_0x5ea5d8})[_0x5944('0x22')](function(){var _0x111308=_['map'](_0x371df3,function(_0x1c656b){_0x1c656b[_0x5944('0x68')]=_0x523cb4;return _0x1c656b;});return db[_0x5944('0x7f')][_0x5944('0x80')](_0x111308,{'transaction':_0x5ea5d8});});}else{_0x2d103b=0x194;_0x501b06=[];}});})[_0x5944('0x22')](function(){if(_0x2d103b!==0x194){return db[_0x5944('0x7f')][_0x5944('0x81')]({'where':{'WhatsappAccountId':_0x523cb4},'order':_0x5944('0x82')})[_0x5944('0x22')](function(_0x302ef5){_0x501b06=_0x302ef5;});}})[_0x5944('0x57')](function(_0x4daebf){_0x2d103b=0x1f4;logger['error'](_0x4daebf['stack']);if(_0x4daebf[_0x5944('0x39')]){delete _0x4daebf[_0x5944('0x39')];}_0x501b06=_0x4daebf;})[_0x5944('0x83')](function(){if(_0x501b06===null){_0x4334d4[_0x5944('0x2c')](_0x2d103b);}else{if(_0x2d103b===0x1f4){_0x4334d4[_0x5944('0x2d')](_0x2d103b)[_0x5944('0x3a')](_0x501b06);}else{_0x4334d4[_0x5944('0x2d')](_0x2d103b)['json'](_0x501b06);}}});};exports[_0x5944('0x84')]=function(_0xfdab83,_0x122d5a,_0x2edd0f){var _0x474580={};var _0x2ebc14={};var _0xfd6038;var _0x745a9;return db[_0x5944('0x3f')][_0x5944('0x6b')]({'where':{'id':_0xfdab83[_0x5944('0x58')]['id']}})[_0x5944('0x22')](handleEntityNotFound(_0x122d5a,null))[_0x5944('0x22')](function(_0x207a4f){if(_0x207a4f){_0xfd6038=_0x207a4f;_0x2ebc14[_0x5944('0x43')]=_['keys'](db[_0x5944('0x7f')][_0x5944('0x59')]);_0x2ebc14[_0x5944('0x45')]=_['keys'](_0xfdab83[_0x5944('0x45')]);_0x2ebc14[_0x5944('0x46')]=_[_0x5944('0x47')](_0x2ebc14[_0x5944('0x43')],_0x2ebc14[_0x5944('0x45')]);_0x474580[_0x5944('0x49')]=_['intersection'](_0x2ebc14['model'],qs[_0x5944('0x48')](_0xfdab83[_0x5944('0x45')]['fields']));_0x474580[_0x5944('0x49')]=_0x474580[_0x5944('0x49')][_0x5944('0x4a')]?_0x474580[_0x5944('0x49')]:_0x2ebc14['model'];_0x474580[_0x5944('0x4d')]=qs['sort'](_0xfdab83['query'][_0x5944('0x4e')]);_0x474580['where']=qs[_0x5944('0x46')](_[_0x5944('0x50')](_0xfdab83[_0x5944('0x45')],_0x2ebc14[_0x5944('0x46')]));if(_0xfdab83[_0x5944('0x45')][_0x5944('0x51')]){_0x474580['where']=_[_0x5944('0x52')](_0x474580['where'],{'$or':_[_0x5944('0x3e')](_0x474580[_0x5944('0x49')],function(_0x5484df){var _0xf66a1b={};_0xf66a1b[_0x5484df]={'$like':'%'+_0xfdab83[_0x5944('0x45')][_0x5944('0x51')]+'%'};return _0xf66a1b;})});}_0x474580=_[_0x5944('0x52')]({},_0x474580,_0xfdab83[_0x5944('0x53')]);return _0xfd6038['getApplications'](_0x474580);}})['then'](function(_0x514ac9){if(_0x514ac9){_0x745a9=_0x514ac9['length'];if(!_0xfdab83[_0x5944('0x45')][_0x5944('0x4b')](_0x5944('0x4c'))){_0x474580['limit']=qs[_0x5944('0x30')](_0xfdab83[_0x5944('0x45')][_0x5944('0x30')]);_0x474580['offset']=qs[_0x5944('0x2f')](_0xfdab83['query'][_0x5944('0x2f')]);}return _0xfd6038['getApplications'](_0x474580);}})[_0x5944('0x22')](function(_0x3f365c){if(_0x3f365c){return _0x3f365c?{'count':_0x745a9,'rows':_0x3f365c}:null;}})[_0x5944('0x22')](respondWithResult(_0x122d5a,null))[_0x5944('0x57')](handleError(_0x122d5a,null));};exports[_0x5944('0x85')]=function(_0x1f21a9,_0x4e82e9,_0xf663da){var _0x24598b={'channel':_0x5944('0x86')};var _0x5e866c=[];var _0x49806f=[];var _0x5c5854={};return db['WhatsappAccount']['find']({'where':{'id':_0x1f21a9['params']['id']},'include':[{'model':db[_0x5944('0x7f')],'as':_0x5944('0x87')}]})[_0x5944('0x22')](handleEntityNotFound(_0x4e82e9,null))[_0x5944('0x22')](function(_0x44f622){_0x24598b['account']=_0x44f622;if(_0x24598b[_0x5944('0x88')]&&_0x24598b[_0x5944('0x88')][_0x5944('0x41')]===_0x5944('0x89')&&_0x1f21a9[_0x5944('0x5c')][_0x5944('0x8a')]){if(_0x1f21a9[_0x5944('0x5c')]['statuses'][_0x5944('0x4a')]===0x0)return;if(_0x1f21a9[_0x5944('0x5c')][_0x5944('0x8a')][0x0][_0x5944('0x8b')]!=='read')return;return db[_0x5944('0x8c')][_0x5944('0x36')]({'read':!![],'readAt':_0x1f21a9[_0x5944('0x5c')]['statuses'][0x0]['timestamp']},{'where':{'messageId':_0x1f21a9[_0x5944('0x5c')][_0x5944('0x8a')][0x0][_0x5944('0x8d')]},'individualHooks':!![]})[_0x5944('0x22')](function(_0x22df97){return _0x4e82e9['status'](0xc8)[_0x5944('0x2e')](_0x22df97);});}_0x24598b[_0x5944('0x8e')]=_[_0x5944('0x8f')](_0x44f622['Applications'],[_0x5944('0x82')],['asc']);if(_0x24598b[_0x5944('0x88')][_0x5944('0x87')]){delete _0x24598b[_0x5944('0x88')]['Applications'];}return db[_0x5944('0x90')][_0x5944('0x66')]()['then'](function(_0x329105){if(!_0x329105){throw new db[(_0x5944('0x91'))][(_0x5944('0x92'))](_0x5944('0x93'));}_0x5e866c=_[_0x5944('0x94')](_[_0x5944('0x44')](_0x329105),['createdAt',_0x5944('0x95')]);_0x49806f=_[_0x5944('0x94')](_['keys'](_0x329105),['createdAt','updatedAt','CompanyId',_0x5944('0x96')]);_0x24598b[_0x5944('0x5c')]={'mapKey':_0x5944('0x97')};if(_0x24598b[_0x5944('0x88')]&&_0x24598b[_0x5944('0x88')]['type']==='twilio'){_0x24598b[_0x5944('0x5c')][_0x5944('0x98')]=_0x1f21a9[_0x5944('0x5c')][_0x5944('0x99')][_0x5944('0x9a')]('whatsapp:','');_0x24598b[_0x5944('0x5c')]['body']=_0x1f21a9[_0x5944('0x5c')]['Body'];_0x24598b[_0x5944('0x5c')][_0x5944('0x9b')]=_0x1f21a9[_0x5944('0x5c')][_0x5944('0x9c')];}if(_0x24598b[_0x5944('0x88')]&&_0x24598b[_0x5944('0x88')][_0x5944('0x41')]==='sinch'){_0x24598b[_0x5944('0x5c')]['from']=_0x1f21a9[_0x5944('0x5c')][_0x5944('0x9d')][0x0][_0x5944('0x98')];_0x24598b[_0x5944('0x5c')][_0x5944('0x5c')]=_0x1f21a9[_0x5944('0x5c')][_0x5944('0x9d')][0x0][_0x5944('0x2a')][_0x5944('0x5c')];_0x24598b['body'][_0x5944('0x9b')]=_0x1f21a9[_0x5944('0x5c')][_0x5944('0x9d')][0x0][_0x5944('0x8d')];}if(_0x24598b[_0x5944('0x5c')]['id']){delete _0x24598b[_0x5944('0x5c')]['id'];}if(_[_0x5944('0x9e')](_0x24598b[_0x5944('0x5c')][_0x5944('0x98')])){throw new db[(_0x5944('0x91'))][(_0x5944('0x92'))](_0x5944('0x9f'));}if(_[_0x5944('0x9e')](_0x24598b['body'][_0x5944('0x5c')])||_0x24598b['body'][_0x5944('0x5c')]===''){throw new db[(_0x5944('0x91'))]['ValidationError']('body\x20is\x20mandatory\x20and\x20not\x20empty');}if(_[_0x5944('0x9e')](_0x24598b[_0x5944('0x5c')][_0x5944('0xa0')])){throw new db['Sequelize']['ValidationError'](_0x5944('0xa1')+_0x49806f);}if(!_['includes'](_0x49806f,_0x24598b[_0x5944('0x5c')]['mapKey'])){throw new db[(_0x5944('0x91'))]['ValidationError'](_0x5944('0xa2')+_0x49806f);}_0x5c5854[_0x24598b[_0x5944('0x5c')][_0x5944('0xa0')]]=_0x24598b[_0x5944('0x5c')][_0x5944('0x98')];return db[_0x5944('0xa3')][_0x5944('0x5a')]({'where':{'id':_0x24598b[_0x5944('0x88')][_0x5944('0x96')]},'include':[{'model':db[_0x5944('0x90')],'as':_0x5944('0xa4'),'where':_0x5c5854,'limit':0x1,'order':[['updatedAt',_0x5944('0xa5')]]}]});})[_0x5944('0x22')](handleEntityNotFound(_0x4e82e9,null))[_0x5944('0x22')](function(_0x2ec904){if(_0x2ec904){_0x24598b['list']=_[_0x5944('0xa6')](_0x2ec904,[_0x5944('0xa4')]);if(_0x2ec904[_0x5944('0xa4')]['length']){return _0x2ec904[_0x5944('0xa4')][0x0];}var _0xd9f3d5=_[_0x5944('0x1a')](_0x24598b[_0x5944('0x5c')],{'firstName':_0x24598b['body'][_0x5944('0x98')],'ListId':_0x2ec904['id']});_0xd9f3d5[_0x24598b[_0x5944('0x5c')]['mapKey']]=_0x24598b[_0x5944('0x5c')][_0x5944('0x98')];return db['CmContact']['create'](_0xd9f3d5,{'fields':_0x5e866c,'raw':!![]});}})[_0x5944('0x22')](handleEntityNotFound(_0x4e82e9,null))[_0x5944('0x22')](function(_0x202f40){if(_0x202f40){_0x24598b['contact']=_0x202f40;var _0x45e43a={'ContactId':_0x202f40['id'],'phone':_0x24598b['body'][_0x5944('0x98')],'WhatsappAccountId':_0x1f21a9[_0x5944('0x58')]['id']};var _0x1d66a4={'ContactId':_0x202f40['id'],'WhatsappAccountId':_0x1f21a9[_0x5944('0x58')]['id'],'closed':![]};return db[_0x5944('0xa7')][_0x5944('0x5a')]({'where':_0x1d66a4})['then'](function(_0x11e38f){if(_0x11e38f){return[_0x11e38f,![]];}return db[_0x5944('0xa7')][_0x5944('0x5b')](_0x45e43a)[_0x5944('0x22')](function(_0x576ced){return[_0x576ced,!![]];});});}})[_0x5944('0x74')](function(_0x38b4db,_0x28dc95){_0x24598b[_0x5944('0xa8')]=_0x38b4db[_0x5944('0x5d')]({'plain':!![]});_0x24598b[_0x5944('0xa8')][_0x5944('0xa9')]=![];if(_0x28dc95){if(_0x24598b[_0x5944('0x88')]['autoclose']){_0x24598b['applications'][_0x5944('0xaa')]({'id':0x0,'priority':_0x24598b[_0x5944('0x8e')]['length']+0x1,'app':_0x5944('0xab'),'appdata':_0x5944('0xac'),'interval':'*,*,*,*'});}_0x24598b[_0x5944('0xa8')][_0x5944('0xa9')]=!![];}return db[_0x5944('0x8c')]['create']({'phone':_0x24598b['body'][_0x5944('0x98')],'messageId':_0x24598b[_0x5944('0x5c')][_0x5944('0x9b')],'body':_0x24598b[_0x5944('0x5c')][_0x5944('0x5c')],'WhatsappAccountId':_0x1f21a9[_0x5944('0x58')]['id'],'WhatsappInteractionId':_0x38b4db['id'],'direction':'in','ContactId':_0x38b4db[_0x5944('0xad')],'AttachmentId':_0x24598b[_0x5944('0x5c')][_0x5944('0xae')]});})[_0x5944('0x22')](function(_0x5eb7b0){_0x24598b[_0x5944('0x2a')]=_0x5eb7b0;if(_0x24598b['interaction']['UserId']){return db[_0x5944('0x79')][_0x5944('0x5a')]({'attributes':['id',_0x5944('0x39')],'where':{'id':_0x24598b[_0x5944('0xa8')][_0x5944('0xaf')]}})[_0x5944('0x22')](function(_0x22f14b){if(_0x22f14b){_0x24598b[_0x5944('0x8e')]['unshift']({'id':0x0,'priority':0x0,'app':_0x5944('0xb0'),'appdata':_0x22f14b['name']+','+(_0x24598b['account'][_0x5944('0xb1')]||0xa),'interval':_0x5944('0xb2')});}return respondWithRpcPromise(_0x5944('0xb3'),_0x5944('0xb4'),_0x24598b);});}return respondWithRpcPromise('Start',_0x5944('0xb4'),_0x24598b);})[_0x5944('0x22')](function(_0xb97cc1){if(_0xb97cc1){var _0x4e7f58=0xc8;var _0x115d18=_0x5944('0xb5');logger[_0x5944('0x23')](_0x5944('0x26'),_0x115d18,_0x4e7f58,_0x5944('0xb6'));logger[_0x5944('0xb7')](_0x5944('0xb8'),_0x115d18,_0x4e7f58,_0x5944('0xb6'),JSON[_0x5944('0x27')](_0xb97cc1));if(_0x24598b[_0x5944('0x88')]['type']===_0x5944('0xb9')){return _0x4e82e9[_0x5944('0x2d')](_0x4e7f58)[_0x5944('0x33')](_0x5944('0xba'),_0x5944('0xbb'))[_0x5944('0x3a')]('<?xml\x20version=\x221.0\x22\x20encoding=\x22UTF-8\x22?>\x0a<Response></Response>');}else{return _0x4e82e9[_0x5944('0x2d')](_0x4e7f58)[_0x5944('0x2e')](_0xb97cc1);}}});})[_0x5944('0x57')](handleError(_0x4e82e9,null));};exports['send']=function(_0x267aae,_0x3dc022,_0x2afc2c){var _0x2505bc,_0x5cdc33,_0x46740b;if(_[_0x5944('0x9e')](_0x267aae[_0x5944('0x5c')]['body'])||_0x267aae[_0x5944('0x5c')][_0x5944('0x5c')]===''){throw new db[(_0x5944('0x91'))][(_0x5944('0x92'))]('body\x20is\x20mandatory\x20and\x20not\x20empty');}if(_[_0x5944('0x9e')](_0x267aae[_0x5944('0x5c')]['to'])){throw new db[(_0x5944('0x91'))][(_0x5944('0x92'))](_0x5944('0xbc'));}_0x2505bc=_0x267aae[_0x5944('0x5c')]['to'];return db[_0x5944('0x3f')][_0x5944('0x5a')]({'where':{'id':_0x267aae[_0x5944('0x58')]['id']},'include':[{'model':db[_0x5944('0xa3')],'as':_0x5944('0xbd'),'include':[{'model':db['CmContact'],'as':_0x5944('0xa4'),'where':{'mobile':_0x2505bc},'limit':0x1,'order':[[_0x5944('0x95'),'DESC']]}]}]})['then'](handleEntityNotFound(_0x3dc022,null))[_0x5944('0x22')](function(_0x53ea96){if(_0x53ea96&&_0x53ea96[_0x5944('0xbd')]){_0x5cdc33=_0x53ea96[_0x5944('0x5d')]({'plain':!![]});if(_0x5cdc33[_0x5944('0xbd')]&&_0x5cdc33[_0x5944('0xbd')]['Contacts']['length']){return _0x5cdc33[_0x5944('0xbd')][_0x5944('0xa4')][0x0];}return db[_0x5944('0x90')][_0x5944('0x5b')](_[_0x5944('0x1a')](_0x267aae['body'],{'firstName':_0x2505bc,'mobile':_0x2505bc,'phone':_0x2505bc,'ListId':_0x5cdc33[_0x5944('0x96')]}));}})[_0x5944('0x22')](handleEntityNotFound(_0x3dc022,null))['then'](function(_0x3fee30){if(_0x3fee30){_0x46740b=_0x3fee30;return db[_0x5944('0xa7')]['find']({'where':{'ContactId':_0x46740b['id'],'closed':![],'WhatsappAccountId':_0x5cdc33['id']}})['then'](function(_0x5a36c9){if(_0x5a36c9){return[_0x5a36c9,![]];}return db['WhatsappInteraction'][_0x5944('0x5b')]({'UserId':_0x267aae['user']['id'],'ContactId':_0x46740b['id'],'WhatsappAccountId':_0x5cdc33['id'],'phone':_0x2505bc,'firstMsgDirection':'out','Messages':[_['merge'](_0x267aae[_0x5944('0x5c')],{'read':![],'body':_0x267aae[_0x5944('0x5c')]['body'],'phone':_0x2505bc,'WhatsappAccountId':_0x5cdc33['id'],'UserId':_0x267aae[_0x5944('0x60')]['id'],'ContactId':_0x46740b['id']})]},{'include':[{'model':db[_0x5944('0x8c')],'as':_0x5944('0xbe')}]})[_0x5944('0x22')](function(_0x5459af){return[_0x5459af,!![]];});});}})[_0x5944('0x74')](function(_0x474e69,_0x3a854d){if(_0x3a854d){return _0x474e69;}return db['WhatsappMessage'][_0x5944('0x5b')](_['merge'](_0x267aae[_0x5944('0x5c')],{'read':![],'body':_0x267aae[_0x5944('0x5c')][_0x5944('0x5c')],'phone':_0x2505bc,'WhatsappAccountId':_0x5cdc33['id'],'WhatsappInteractionId':_0x474e69['id'],'UserId':_0x267aae[_0x5944('0x60')]['id'],'ContactId':_0x46740b['id']}))[_0x5944('0x22')](function(_0x56c78a){_0x474e69[_0x5944('0xbf')][_0x5944('0xbe')]=[];_0x474e69[_0x5944('0xbf')]['Messages'][_0x5944('0xaa')](_0x56c78a['dataValues']);return _0x474e69;});})[_0x5944('0x22')](respondWithResult(_0x3dc022,null))['catch'](handleError(_0x3dc022,null));};