b35a3f757b75c8e860c26d57a7d0498233accb0e
[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 _0xf095=['VIRTUAL','includeAll','rows','params','keys','rawAttributes','length','include','options','find','create','body','Unable\x20to\x20retrieve\x20the\x20current\x20user','UserProfileSection','userProfileId','autoAssociation','describe','WhatsappAccountId','Disposition','findOne','hasOwnProperty','findAll','removeDispositions','addAnswer','CannedAnswer','getAnswers','removeAnswers','addAgents','ids','spread','emit','userWhatsappAccount:save','isArray','userWhatsappAccount:remove','getAgents','User','addApplications','sequelize','transaction','Transaction','ISOLATION_LEVELS','READ_COMMITTED','WhatsappApplication','findAndCountAll','priority','finally','getApplications','notify','whatsapp','Applications','account','statuses','state','read','WhatsappMessage','timestamp','applications','orderBy','asc','CmContact','Sequelize','ValidationError','no\x20available\x20attributes','difference','createdAt','updatedAt','CompanyId','ListId','mobile','twilio','from','replace','Body','MessageSid','sinch','notifications','messageId','isNil','body\x20is\x20mandatory\x20and\x20not\x20empty','mapKey','mapKey\x20invalid,\x20please\x20use\x20one\x20of\x20these:\x20','CmList','Contacts','DESC','omit','contact','WhatsappInteraction','interaction','autoclose','push','created','ContactId','AttachmentId','UserId','unshift','waitForTheAssignedAgent','Start','startRouting','receiveMessage','debug','WhatsappAccount,\x20%s,\x20%s,\x20%s,\x20%s','entity\x20found','Content-Type','text/xml','List','user','out','dataValues','Messages','rimraf','zip-dir','request-promise','bluebird','util','path','sox','to-csv','ejs','querystring','papaparse','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','redis','defaults','localhost','socket.io-emitter','./whatsappAccount.socket','register','jayson/promise','client','http','request','then','info','request\x20sent','stringify','error','code','WhatsappAccount,\x20%s,\x20%s','message','result','catch','sendStatus','status','end','json','offset','undefined','limit','count','apply','reject','save','update','destroy','get','WhatsappAccounts','UserProfileResource','stack','name','send','index','Pause','mandatoryDispositionPause','map','WhatsappAccount','fieldName','type','key','model','query','intersection','attributes','fields','nolimit','order','sort','where','filters','pick','filter','merge'];(function(_0xa388a2,_0x40bde6){var _0x7ce7f6=function(_0x5a242a){while(--_0x5a242a){_0xa388a2['push'](_0xa388a2['shift']());}};_0x7ce7f6(++_0x40bde6);}(_0xf095,0x129));var _0x5f09=function(_0x20f9bc,_0x1057f0){_0x20f9bc=_0x20f9bc-0x0;var _0x2060a4=_0xf095[_0x20f9bc];return _0x2060a4;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x5f09('0x0'));var zipdir=require(_0x5f09('0x1'));var jsonpatch=require('fast-json-patch');var rp=require(_0x5f09('0x2'));var moment=require('moment');var BPromise=require(_0x5f09('0x3'));var Mustache=require('mustache');var util=require(_0x5f09('0x4'));var path=require(_0x5f09('0x5'));var sox=require(_0x5f09('0x6'));var csv=require(_0x5f09('0x7'));var ejs=require(_0x5f09('0x8'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require('lodash');var squel=require('squel');var crypto=require('crypto');var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require(_0x5f09('0x7'));var querystring=require(_0x5f09('0x9'));var Papa=require(_0x5f09('0xa'));var Redis=require('ioredis');var authService=require('../../components/auth/service');var qs=require('../../components/parsers/qs');var as=require(_0x5f09('0xb'));var hardwareService=require(_0x5f09('0xc'));var logger=require(_0x5f09('0xd'))(_0x5f09('0xe'));var utils=require(_0x5f09('0xf'));var config=require(_0x5f09('0x10'));var licenseUtil=require(_0x5f09('0x11'));var db=require(_0x5f09('0x12'))['db'];config[_0x5f09('0x13')]=_[_0x5f09('0x14')](config[_0x5f09('0x13')],{'host':_0x5f09('0x15'),'port':0x18eb});var socket=require(_0x5f09('0x16'))(new Redis(config['redis']));require(_0x5f09('0x17'))[_0x5f09('0x18')](socket);var jayson=require(_0x5f09('0x19'));var client=jayson[_0x5f09('0x1a')][_0x5f09('0x1b')]({'port':0x232c});function respondWithRpcPromise(_0x3dca13,_0x40faa6,_0x2be9ac,_0xd9a698){return new BPromise(function(_0x19ffa7,_0x406bd5){var _0x11b96a=_0xd9a698||client;return _0x11b96a[_0x5f09('0x1c')](_0x3dca13,_0x2be9ac)[_0x5f09('0x1d')](function(_0x4b2e43){logger[_0x5f09('0x1e')]('WhatsappAccount,\x20%s,\x20%s',_0x40faa6,_0x5f09('0x1f'));logger['debug']('WhatsappAccount,\x20%s,\x20%s,\x20%s',_0x40faa6,_0x5f09('0x1f'),JSON[_0x5f09('0x20')](_0x4b2e43));if(_0x4b2e43[_0x5f09('0x21')]){if(_0x4b2e43['error'][_0x5f09('0x22')]===0x1f4){logger[_0x5f09('0x21')](_0x5f09('0x23'),_0x40faa6,_0x4b2e43[_0x5f09('0x21')][_0x5f09('0x24')]);return _0x406bd5(_0x4b2e43['error'][_0x5f09('0x24')]);}logger[_0x5f09('0x21')](_0x5f09('0x23'),_0x40faa6,_0x4b2e43[_0x5f09('0x21')][_0x5f09('0x24')]);return _0x19ffa7(_0x4b2e43['error']['message']);}else{logger['info'](_0x5f09('0x23'),_0x40faa6,_0x5f09('0x1f'));_0x19ffa7(_0x4b2e43[_0x5f09('0x25')]['message']);}})[_0x5f09('0x26')](function(_0x510adf){logger[_0x5f09('0x21')](_0x5f09('0x23'),_0x40faa6,_0x510adf);_0x406bd5(_0x510adf);});});}function respondWithStatusCode(_0x5a4912,_0x48b4ea){_0x48b4ea=_0x48b4ea||0xcc;return function(_0x871304){if(_0x871304){return _0x5a4912[_0x5f09('0x27')](_0x48b4ea);}return _0x5a4912[_0x5f09('0x28')](_0x48b4ea)[_0x5f09('0x29')]();};}function respondWithResult(_0x6c96fb,_0x368dad){_0x368dad=_0x368dad||0xc8;return function(_0x434ee6){if(_0x434ee6){return _0x6c96fb[_0x5f09('0x28')](_0x368dad)[_0x5f09('0x2a')](_0x434ee6);}};}function respondWithFilteredResult(_0x5b0b2f,_0x42c1bc){return function(_0x4d6b09){if(_0x4d6b09){var _0x539f40=typeof _0x42c1bc[_0x5f09('0x2b')]===_0x5f09('0x2c')&&typeof _0x42c1bc[_0x5f09('0x2d')]===_0x5f09('0x2c');var _0x5d791f=_0x4d6b09[_0x5f09('0x2e')];var _0x2bd9a4=_0x539f40?0x0:_0x42c1bc['offset'];var _0x4608ab=_0x539f40?_0x4d6b09[_0x5f09('0x2e')]:_0x42c1bc[_0x5f09('0x2b')]+_0x42c1bc[_0x5f09('0x2d')];var _0x4702ae;if(_0x4608ab>=_0x5d791f){_0x4608ab=_0x5d791f;_0x4702ae=0xc8;}else{_0x4702ae=0xce;}_0x5b0b2f[_0x5f09('0x28')](_0x4702ae);return _0x5b0b2f['set']('Content-Range',_0x2bd9a4+'-'+_0x4608ab+'/'+_0x5d791f)['json'](_0x4d6b09);}return null;};}function patchUpdates(_0x1310ee){return function(_0x4514a8){try{jsonpatch[_0x5f09('0x2f')](_0x4514a8,_0x1310ee,!![]);}catch(_0x308cd7){return BPromise[_0x5f09('0x30')](_0x308cd7);}return _0x4514a8[_0x5f09('0x31')]();};}function saveUpdates(_0x1b5fa2,_0x5825f1){return function(_0x3d70a2){if(_0x3d70a2){return _0x3d70a2[_0x5f09('0x32')](_0x1b5fa2)[_0x5f09('0x1d')](function(_0x2d19cc){return _0x2d19cc;});}return null;};}function removeEntity(_0xfc5373,_0xa874f1){return function(_0xd7a298){if(_0xd7a298){return _0xd7a298[_0x5f09('0x33')]()[_0x5f09('0x1d')](function(){var _0x2dccdf=_0xd7a298[_0x5f09('0x34')]({'plain':!![]});var _0x62f7cd=_0x5f09('0x35');return db[_0x5f09('0x36')]['destroy']({'where':{'type':_0x62f7cd,'resourceId':_0x2dccdf['id']}})['then'](function(){return _0xd7a298;});})[_0x5f09('0x1d')](function(){_0xfc5373[_0x5f09('0x28')](0xcc)[_0x5f09('0x29')]();});}};}function handleEntityNotFound(_0x578f86,_0x15ff5d){return function(_0x3cc353){if(!_0x3cc353){_0x578f86[_0x5f09('0x27')](0x194);}return _0x3cc353;};}function handleError(_0x158f51,_0x2bcd2f){_0x2bcd2f=_0x2bcd2f||0x1f4;return function(_0x2c8bce){logger[_0x5f09('0x21')](_0x2c8bce[_0x5f09('0x37')]);if(_0x2c8bce[_0x5f09('0x38')]){delete _0x2c8bce[_0x5f09('0x38')];}_0x158f51[_0x5f09('0x28')](_0x2bcd2f)[_0x5f09('0x39')](_0x2c8bce);};}exports[_0x5f09('0x3a')]=function(_0x20cbdc,_0x38b28c){var _0x8d92e9={'include':[{'model':db[_0x5f09('0x3b')],'as':_0x5f09('0x3c')}]},_0x33f361={},_0x50fe2b={'count':0x0,'rows':[]};var _0x40ec50=_[_0x5f09('0x3d')](db[_0x5f09('0x3e')]['rawAttributes'],function(_0x691583){return{'name':_0x691583[_0x5f09('0x3f')],'type':_0x691583[_0x5f09('0x40')][_0x5f09('0x41')]};});_0x33f361[_0x5f09('0x42')]=_[_0x5f09('0x3d')](_0x40ec50,_0x5f09('0x38'));_0x33f361[_0x5f09('0x43')]=_['keys'](_0x20cbdc[_0x5f09('0x43')]);_0x33f361['filters']=_[_0x5f09('0x44')](_0x33f361[_0x5f09('0x42')],_0x33f361[_0x5f09('0x43')]);_0x8d92e9[_0x5f09('0x45')]=_[_0x5f09('0x44')](_0x33f361['model'],qs[_0x5f09('0x46')](_0x20cbdc[_0x5f09('0x43')]['fields']));_0x8d92e9['attributes']=_0x8d92e9['attributes']['length']?_0x8d92e9[_0x5f09('0x45')]:_0x33f361[_0x5f09('0x42')];if(!_0x20cbdc[_0x5f09('0x43')]['hasOwnProperty'](_0x5f09('0x47'))){_0x8d92e9[_0x5f09('0x2d')]=qs[_0x5f09('0x2d')](_0x20cbdc[_0x5f09('0x43')][_0x5f09('0x2d')]);_0x8d92e9['offset']=qs[_0x5f09('0x2b')](_0x20cbdc[_0x5f09('0x43')][_0x5f09('0x2b')]);}_0x8d92e9[_0x5f09('0x48')]=qs[_0x5f09('0x49')](_0x20cbdc[_0x5f09('0x43')]['sort']);_0x8d92e9[_0x5f09('0x4a')]=qs[_0x5f09('0x4b')](_[_0x5f09('0x4c')](_0x20cbdc[_0x5f09('0x43')],_0x33f361[_0x5f09('0x4b')]),_0x40ec50);if(_0x20cbdc[_0x5f09('0x43')][_0x5f09('0x4d')]){_0x8d92e9['where']=_[_0x5f09('0x4e')](_0x8d92e9[_0x5f09('0x4a')],{'$or':_[_0x5f09('0x3d')](_0x40ec50,function(_0x12649f){if(_0x12649f[_0x5f09('0x40')]!==_0x5f09('0x4f')){var _0x1c5e2b={};_0x1c5e2b[_0x12649f[_0x5f09('0x38')]]={'$like':'%'+_0x20cbdc['query']['filter']+'%'};return _0x1c5e2b;}})});}_0x8d92e9=_[_0x5f09('0x4e')]({},_0x8d92e9,_0x20cbdc['options']);var _0x5122c7={'where':_0x8d92e9[_0x5f09('0x4a')]};return db[_0x5f09('0x3e')][_0x5f09('0x2e')](_0x5122c7)[_0x5f09('0x1d')](function(_0x7eb702){_0x50fe2b['count']=_0x7eb702;if(_0x20cbdc[_0x5f09('0x43')][_0x5f09('0x50')]){_0x8d92e9['include']=[{'all':!![]}];}return db['WhatsappAccount']['findAll'](_0x8d92e9);})[_0x5f09('0x1d')](function(_0x408160){_0x50fe2b[_0x5f09('0x51')]=_0x408160;return _0x50fe2b;})[_0x5f09('0x1d')](respondWithFilteredResult(_0x38b28c,_0x8d92e9))[_0x5f09('0x26')](handleError(_0x38b28c,null));};exports['show']=function(_0x4f9a6f,_0x3918fb){var _0x368289={'raw':![],'where':{'id':_0x4f9a6f[_0x5f09('0x52')]['id']},'include':[{'model':db['Pause'],'as':_0x5f09('0x3c')}]},_0x232f02={};_0x232f02[_0x5f09('0x42')]=_[_0x5f09('0x53')](db[_0x5f09('0x3e')][_0x5f09('0x54')]);_0x232f02['query']=_[_0x5f09('0x53')](_0x4f9a6f[_0x5f09('0x43')]);_0x232f02[_0x5f09('0x4b')]=_[_0x5f09('0x44')](_0x232f02['model'],_0x232f02[_0x5f09('0x43')]);_0x368289[_0x5f09('0x45')]=_[_0x5f09('0x44')](_0x232f02[_0x5f09('0x42')],qs[_0x5f09('0x46')](_0x4f9a6f[_0x5f09('0x43')]['fields']));_0x368289[_0x5f09('0x45')]=_0x368289[_0x5f09('0x45')][_0x5f09('0x55')]?_0x368289[_0x5f09('0x45')]:_0x232f02[_0x5f09('0x42')];if(_0x4f9a6f[_0x5f09('0x43')][_0x5f09('0x50')]){_0x368289[_0x5f09('0x56')]=[{'all':!![]}];}_0x368289=_[_0x5f09('0x4e')]({},_0x368289,_0x4f9a6f[_0x5f09('0x57')]);return db[_0x5f09('0x3e')][_0x5f09('0x58')](_0x368289)['then'](handleEntityNotFound(_0x3918fb,null))[_0x5f09('0x1d')](respondWithResult(_0x3918fb,null))[_0x5f09('0x26')](handleError(_0x3918fb,null));};exports[_0x5f09('0x59')]=function(_0x27e2fa,_0x2b0e52){return db['WhatsappAccount'][_0x5f09('0x59')](_0x27e2fa[_0x5f09('0x5a')],{})[_0x5f09('0x1d')](function(_0x36c32b){var _0x40f2a2=_0x27e2fa['user'][_0x5f09('0x34')]({'plain':!![]});if(!_0x40f2a2)throw new Error(_0x5f09('0x5b'));if(_0x40f2a2['role']==='user'){var _0x2affee=_0x36c32b[_0x5f09('0x34')]({'plain':!![]});var _0x292202=_0x5f09('0x35');return db[_0x5f09('0x5c')]['find']({'where':{'name':_0x292202,'userProfileId':_0x40f2a2[_0x5f09('0x5d')]},'raw':!![]})[_0x5f09('0x1d')](function(_0x911449){if(_0x911449&&_0x911449[_0x5f09('0x5e')]===0x0){return db[_0x5f09('0x36')]['create']({'name':_0x2affee[_0x5f09('0x38')],'resourceId':_0x2affee['id'],'type':_0x911449[_0x5f09('0x38')],'sectionId':_0x911449['id']},{})['then'](function(){return _0x36c32b;});}else{return _0x36c32b;}})[_0x5f09('0x26')](function(_0x22e795){logger[_0x5f09('0x21')]('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x22e795);throw _0x22e795;});}return _0x36c32b;})[_0x5f09('0x1d')](respondWithResult(_0x2b0e52,0xc9))['catch'](handleError(_0x2b0e52,null));};exports[_0x5f09('0x32')]=function(_0x507c9c,_0x1a58db){if(_0x507c9c[_0x5f09('0x5a')]['id']){delete _0x507c9c[_0x5f09('0x5a')]['id'];}return db['WhatsappAccount']['find']({'where':{'id':_0x507c9c[_0x5f09('0x52')]['id']},'include':[{'model':db[_0x5f09('0x3b')],'as':_0x5f09('0x3c')}]})['then'](handleEntityNotFound(_0x1a58db,null))[_0x5f09('0x1d')](saveUpdates(_0x507c9c['body'],null))[_0x5f09('0x1d')](respondWithResult(_0x1a58db,null))[_0x5f09('0x26')](handleError(_0x1a58db,null));};exports[_0x5f09('0x33')]=function(_0xb38eb1,_0x8832aa){return db[_0x5f09('0x3e')][_0x5f09('0x58')]({'where':{'id':_0xb38eb1[_0x5f09('0x52')]['id']}})[_0x5f09('0x1d')](handleEntityNotFound(_0x8832aa,null))[_0x5f09('0x1d')](removeEntity(_0x8832aa,null))[_0x5f09('0x26')](handleError(_0x8832aa,null));};exports['describe']=function(_0x120a5a,_0x5408f0){return db['WhatsappAccount'][_0x5f09('0x5f')]()[_0x5f09('0x1d')](respondWithResult(_0x5408f0,null))[_0x5f09('0x26')](handleError(_0x5408f0,null));};exports['addDisposition']=function(_0x687034,_0x59b8ec,_0x445987){if(_0x687034[_0x5f09('0x5a')]['id']){delete _0x687034['body']['id'];}return db[_0x5f09('0x3e')][_0x5f09('0x58')]({'where':{'id':_0x687034[_0x5f09('0x52')]['id']}})[_0x5f09('0x1d')](handleEntityNotFound(_0x59b8ec,null))[_0x5f09('0x1d')](function(_0x240d63){if(_0x240d63){_0x687034[_0x5f09('0x5a')][_0x5f09('0x60')]=_0x240d63['id'];return db[_0x5f09('0x61')][_0x5f09('0x59')](_0x687034[_0x5f09('0x5a')]);}})[_0x5f09('0x1d')](respondWithResult(_0x59b8ec,null))[_0x5f09('0x26')](handleError(_0x59b8ec,null));};exports['getDispositions']=function(_0x2b107d,_0x4ac4b9,_0x1d8fb4){var _0x283ecd={'raw':![],'where':{}};var _0x25dbb0={};var _0x564e48={'count':0x0,'rows':[]};return db['WhatsappAccount'][_0x5f09('0x62')]({'where':{'id':_0x2b107d['params']['id']}})['then'](handleEntityNotFound(_0x4ac4b9,null))[_0x5f09('0x1d')](function(_0x2c52ea){if(_0x2c52ea){_0x25dbb0[_0x5f09('0x42')]=_[_0x5f09('0x53')](db[_0x5f09('0x61')][_0x5f09('0x54')]);_0x25dbb0[_0x5f09('0x43')]=_[_0x5f09('0x53')](_0x2b107d[_0x5f09('0x43')]);_0x25dbb0[_0x5f09('0x4b')]=_[_0x5f09('0x44')](_0x25dbb0[_0x5f09('0x42')],_0x25dbb0[_0x5f09('0x43')]);_0x283ecd[_0x5f09('0x45')]=_[_0x5f09('0x44')](_0x25dbb0[_0x5f09('0x42')],qs[_0x5f09('0x46')](_0x2b107d[_0x5f09('0x43')][_0x5f09('0x46')]));_0x283ecd[_0x5f09('0x45')]=_0x283ecd[_0x5f09('0x45')][_0x5f09('0x55')]?_0x283ecd['attributes']:_0x25dbb0[_0x5f09('0x42')];if(!_0x2b107d['query'][_0x5f09('0x63')]('nolimit')){_0x283ecd[_0x5f09('0x2d')]=qs['limit'](_0x2b107d['query'][_0x5f09('0x2d')]);_0x283ecd[_0x5f09('0x2b')]=qs[_0x5f09('0x2b')](_0x2b107d[_0x5f09('0x43')][_0x5f09('0x2b')]);}_0x283ecd[_0x5f09('0x48')]=qs['sort'](_0x2b107d[_0x5f09('0x43')]['sort']);_0x283ecd[_0x5f09('0x4a')]=qs[_0x5f09('0x4b')](_[_0x5f09('0x4c')](_0x2b107d[_0x5f09('0x43')],_0x25dbb0[_0x5f09('0x4b')]));_0x283ecd['where'][_0x5f09('0x60')]=_0x2c52ea['id'];if(_0x2b107d[_0x5f09('0x43')][_0x5f09('0x4d')]){_0x283ecd[_0x5f09('0x4a')]=_[_0x5f09('0x4e')](_0x283ecd[_0x5f09('0x4a')],{'$or':_[_0x5f09('0x3d')](_0x283ecd[_0x5f09('0x45')],function(_0x20fa1d){var _0x8fdb45={};_0x8fdb45[_0x20fa1d]={'$like':'%'+_0x2b107d['query'][_0x5f09('0x4d')]+'%'};return _0x8fdb45;})});}_0x283ecd=_[_0x5f09('0x4e')]({},_0x283ecd,_0x2b107d['options']);return db['Disposition'][_0x5f09('0x2e')]({'where':_0x283ecd[_0x5f09('0x4a')]})['then'](function(_0x50f3b2){_0x564e48['count']=_0x50f3b2;if(_0x2b107d[_0x5f09('0x43')][_0x5f09('0x50')]){_0x283ecd[_0x5f09('0x56')]=[{'all':!![]}];}return db[_0x5f09('0x61')][_0x5f09('0x64')](_0x283ecd);})[_0x5f09('0x1d')](function(_0x144aad){_0x564e48[_0x5f09('0x51')]=_0x144aad;return _0x564e48;});}})['then'](respondWithFilteredResult(_0x4ac4b9,_0x283ecd))[_0x5f09('0x26')](handleError(_0x4ac4b9,null));};exports[_0x5f09('0x65')]=function(_0x3a4db4,_0x150376,_0x153fbc){return db[_0x5f09('0x3e')][_0x5f09('0x58')]({'where':{'id':_0x3a4db4[_0x5f09('0x52')]['id']}})[_0x5f09('0x1d')](handleEntityNotFound(_0x150376,null))[_0x5f09('0x1d')](function(_0x29a31c){if(_0x29a31c){return _0x29a31c['removeDispositions'](_0x3a4db4['query']['ids']);}})[_0x5f09('0x1d')](respondWithStatusCode(_0x150376,null))[_0x5f09('0x26')](handleError(_0x150376,null));};exports[_0x5f09('0x66')]=function(_0x525797,_0x26bb60,_0x18d5e0){if(_0x525797[_0x5f09('0x5a')]['id']){delete _0x525797['body']['id'];}return db['WhatsappAccount']['find']({'where':{'id':_0x525797[_0x5f09('0x52')]['id']}})[_0x5f09('0x1d')](handleEntityNotFound(_0x26bb60,null))[_0x5f09('0x1d')](function(_0x2eea64){if(_0x2eea64){_0x525797['body']['WhatsappAccountId']=_0x2eea64['id'];return db[_0x5f09('0x67')][_0x5f09('0x59')](_0x525797[_0x5f09('0x5a')]);}})[_0x5f09('0x1d')](respondWithResult(_0x26bb60,null))[_0x5f09('0x26')](handleError(_0x26bb60,null));};exports[_0x5f09('0x68')]=function(_0x4396e1,_0x23a1a0,_0x20bf32){var _0x25c3ec={'raw':![],'where':{}};var _0x5c9605={};var _0xdf8140={'count':0x0,'rows':[]};return db[_0x5f09('0x3e')][_0x5f09('0x62')]({'where':{'id':_0x4396e1[_0x5f09('0x52')]['id']}})[_0x5f09('0x1d')](handleEntityNotFound(_0x23a1a0,null))[_0x5f09('0x1d')](function(_0x34f120){if(_0x34f120){_0x5c9605[_0x5f09('0x42')]=_[_0x5f09('0x53')](db[_0x5f09('0x67')][_0x5f09('0x54')]);_0x5c9605[_0x5f09('0x43')]=_[_0x5f09('0x53')](_0x4396e1['query']);_0x5c9605['filters']=_[_0x5f09('0x44')](_0x5c9605[_0x5f09('0x42')],_0x5c9605[_0x5f09('0x43')]);_0x25c3ec[_0x5f09('0x45')]=_[_0x5f09('0x44')](_0x5c9605['model'],qs[_0x5f09('0x46')](_0x4396e1[_0x5f09('0x43')]['fields']));_0x25c3ec[_0x5f09('0x45')]=_0x25c3ec[_0x5f09('0x45')][_0x5f09('0x55')]?_0x25c3ec[_0x5f09('0x45')]:_0x5c9605[_0x5f09('0x42')];if(!_0x4396e1['query'][_0x5f09('0x63')](_0x5f09('0x47'))){_0x25c3ec[_0x5f09('0x2d')]=qs[_0x5f09('0x2d')](_0x4396e1['query'][_0x5f09('0x2d')]);_0x25c3ec['offset']=qs['offset'](_0x4396e1['query'][_0x5f09('0x2b')]);}_0x25c3ec[_0x5f09('0x48')]=qs[_0x5f09('0x49')](_0x4396e1[_0x5f09('0x43')][_0x5f09('0x49')]);_0x25c3ec[_0x5f09('0x4a')]=qs[_0x5f09('0x4b')](_[_0x5f09('0x4c')](_0x4396e1[_0x5f09('0x43')],_0x5c9605[_0x5f09('0x4b')]));_0x25c3ec[_0x5f09('0x4a')]['WhatsappAccountId']=_0x34f120['id'];if(_0x4396e1[_0x5f09('0x43')][_0x5f09('0x4d')]){_0x25c3ec['where']=_[_0x5f09('0x4e')](_0x25c3ec[_0x5f09('0x4a')],{'$or':_['map'](_0x25c3ec[_0x5f09('0x45')],function(_0x415104){var _0x109a72={};_0x109a72[_0x415104]={'$like':'%'+_0x4396e1[_0x5f09('0x43')][_0x5f09('0x4d')]+'%'};return _0x109a72;})});}_0x25c3ec=_['merge']({},_0x25c3ec,_0x4396e1[_0x5f09('0x57')]);return db['CannedAnswer'][_0x5f09('0x2e')]({'where':_0x25c3ec[_0x5f09('0x4a')]})[_0x5f09('0x1d')](function(_0x12edb8){_0xdf8140[_0x5f09('0x2e')]=_0x12edb8;if(_0x4396e1['query'][_0x5f09('0x50')]){_0x25c3ec[_0x5f09('0x56')]=[{'all':!![]}];}return db[_0x5f09('0x67')][_0x5f09('0x64')](_0x25c3ec);})[_0x5f09('0x1d')](function(_0x1b286d){_0xdf8140['rows']=_0x1b286d;return _0xdf8140;});}})['then'](respondWithFilteredResult(_0x23a1a0,_0x25c3ec))['catch'](handleError(_0x23a1a0,null));};exports[_0x5f09('0x69')]=function(_0x54d739,_0x40046f,_0x4ec27f){return db[_0x5f09('0x3e')][_0x5f09('0x58')]({'where':{'id':_0x54d739['params']['id']}})[_0x5f09('0x1d')](handleEntityNotFound(_0x40046f,null))[_0x5f09('0x1d')](function(_0x189b92){if(_0x189b92){return _0x189b92[_0x5f09('0x69')](_0x54d739['query']['ids']);}})[_0x5f09('0x1d')](respondWithStatusCode(_0x40046f,null))[_0x5f09('0x26')](handleError(_0x40046f,null));};exports['addAgents']=function(_0x493997,_0x2c9b1e,_0x4a1fe2){return db[_0x5f09('0x3e')][_0x5f09('0x58')]({'where':{'id':_0x493997[_0x5f09('0x52')]['id']}})[_0x5f09('0x1d')](handleEntityNotFound(_0x2c9b1e,null))[_0x5f09('0x1d')](function(_0x3e480f){if(_0x3e480f){return _0x3e480f[_0x5f09('0x6a')](_0x493997[_0x5f09('0x5a')]['ids'],_['omit'](_0x493997[_0x5f09('0x5a')],[_0x5f09('0x6b'),'id'])||{})[_0x5f09('0x6c')](function(_0x47d180){for(var _0x412d02=0x0;_0x412d02<_0x493997[_0x5f09('0x5a')]['ids'][_0x5f09('0x55')];_0x412d02+=0x1){socket[_0x5f09('0x6d')](_0x5f09('0x6e'),{'UserId':Number(_0x493997[_0x5f09('0x5a')][_0x5f09('0x6b')][_0x412d02]),'WhatsappAccountId':Number(_0x493997['params']['id'])});}return _0x47d180;});}})['then'](respondWithResult(_0x2c9b1e,null))[_0x5f09('0x26')](handleError(_0x2c9b1e,null));};exports['removeAgents']=function(_0xdacd7e,_0x2ae4ec,_0x54e8b9){return db[_0x5f09('0x3e')][_0x5f09('0x58')]({'where':{'id':_0xdacd7e['params']['id']}})[_0x5f09('0x1d')](handleEntityNotFound(_0x2ae4ec,null))['then'](function(_0x4b80d8){if(_0x4b80d8){return _0x4b80d8['removeAgents'](_0xdacd7e[_0x5f09('0x43')][_0x5f09('0x6b')])['then'](function(){if(_[_0x5f09('0x6f')](_0xdacd7e[_0x5f09('0x43')]['ids'])){for(var _0xef08e9=0x0;_0xef08e9<_0xdacd7e[_0x5f09('0x43')][_0x5f09('0x6b')][_0x5f09('0x55')];_0xef08e9+=0x1){socket[_0x5f09('0x6d')](_0x5f09('0x70'),{'UserId':Number(_0xdacd7e[_0x5f09('0x43')][_0x5f09('0x6b')][_0xef08e9]),'WhatsappAccountId':Number(_0xdacd7e[_0x5f09('0x52')]['id'])});}}else{socket[_0x5f09('0x6d')](_0x5f09('0x70'),{'UserId':Number(_0xdacd7e[_0x5f09('0x43')][_0x5f09('0x6b')]),'WhatsappAccountId':Number(_0xdacd7e['params']['id'])});}});}})['then'](respondWithStatusCode(_0x2ae4ec,null))[_0x5f09('0x26')](handleError(_0x2ae4ec,null));};exports[_0x5f09('0x71')]=function(_0x2556e7,_0x4ffd8d,_0x3a1ab2){var _0x167fda={};var _0x5ee763={};var _0x17e9ed;var _0x492493;return db[_0x5f09('0x3e')][_0x5f09('0x62')]({'where':{'id':_0x2556e7[_0x5f09('0x52')]['id']}})[_0x5f09('0x1d')](handleEntityNotFound(_0x4ffd8d,null))[_0x5f09('0x1d')](function(_0x5512e6){if(_0x5512e6){_0x17e9ed=_0x5512e6;_0x5ee763['model']=_[_0x5f09('0x53')](db[_0x5f09('0x72')][_0x5f09('0x54')]);_0x5ee763[_0x5f09('0x43')]=_[_0x5f09('0x53')](_0x2556e7[_0x5f09('0x43')]);_0x5ee763['filters']=_[_0x5f09('0x44')](_0x5ee763[_0x5f09('0x42')],_0x5ee763[_0x5f09('0x43')]);_0x167fda[_0x5f09('0x45')]=_['intersection'](_0x5ee763['model'],qs['fields'](_0x2556e7[_0x5f09('0x43')][_0x5f09('0x46')]));_0x167fda[_0x5f09('0x45')]=_0x167fda[_0x5f09('0x45')][_0x5f09('0x55')]?_0x167fda[_0x5f09('0x45')]:_0x5ee763[_0x5f09('0x42')];_0x167fda[_0x5f09('0x48')]=qs[_0x5f09('0x49')](_0x2556e7[_0x5f09('0x43')][_0x5f09('0x49')]);_0x167fda['where']=qs['filters'](_['pick'](_0x2556e7[_0x5f09('0x43')],_0x5ee763[_0x5f09('0x4b')]));if(_0x2556e7[_0x5f09('0x43')][_0x5f09('0x4d')]){_0x167fda[_0x5f09('0x4a')]=_[_0x5f09('0x4e')](_0x167fda[_0x5f09('0x4a')],{'$or':_[_0x5f09('0x3d')](_0x167fda[_0x5f09('0x45')],function(_0x1913f6){var _0x176fca={};_0x176fca[_0x1913f6]={'$like':'%'+_0x2556e7[_0x5f09('0x43')][_0x5f09('0x4d')]+'%'};return _0x176fca;})});}_0x167fda=_[_0x5f09('0x4e')]({},_0x167fda,_0x2556e7['options']);return _0x17e9ed[_0x5f09('0x71')](_0x167fda);}})[_0x5f09('0x1d')](function(_0x3839db){if(_0x3839db){_0x492493=_0x3839db[_0x5f09('0x55')];if(!_0x2556e7['query'][_0x5f09('0x63')](_0x5f09('0x47'))){_0x167fda[_0x5f09('0x2d')]=qs[_0x5f09('0x2d')](_0x2556e7[_0x5f09('0x43')][_0x5f09('0x2d')]);_0x167fda['offset']=qs[_0x5f09('0x2b')](_0x2556e7[_0x5f09('0x43')][_0x5f09('0x2b')]);}return _0x17e9ed[_0x5f09('0x71')](_0x167fda);}})[_0x5f09('0x1d')](function(_0x59958e){if(_0x59958e){return _0x59958e?{'count':_0x492493,'rows':_0x59958e}:null;}})[_0x5f09('0x1d')](respondWithResult(_0x4ffd8d,null))[_0x5f09('0x26')](handleError(_0x4ffd8d,null));};exports[_0x5f09('0x73')]=function(_0x132f68,_0x4c2269){var _0x4eb51c=_0x132f68[_0x5f09('0x52')]['id'];var _0x44add5=_0x132f68[_0x5f09('0x5a')];var _0x26d131=0xc8;var _0x237aa5=null;return db[_0x5f09('0x74')][_0x5f09('0x75')]({'isolationLevel':db[_0x5f09('0x74')][_0x5f09('0x76')][_0x5f09('0x77')][_0x5f09('0x78')]},function(_0x4a9d10){return db[_0x5f09('0x3e')][_0x5f09('0x62')]({'where':{'id':_0x4eb51c},'transaction':_0x4a9d10})[_0x5f09('0x1d')](function(_0x3a10b6){if(_0x3a10b6){return db['WhatsappApplication']['destroy']({'where':{'WhatsappAccountId':_0x4eb51c},'transaction':_0x4a9d10})[_0x5f09('0x1d')](function(){var _0x212bf7=_[_0x5f09('0x3d')](_0x44add5,function(_0x235e9a){_0x235e9a['WhatsappAccountId']=_0x4eb51c;return _0x235e9a;});return db[_0x5f09('0x79')]['bulkCreate'](_0x212bf7,{'transaction':_0x4a9d10});});}else{_0x26d131=0x194;_0x237aa5=[];}});})[_0x5f09('0x1d')](function(){if(_0x26d131!==0x194){return db[_0x5f09('0x79')][_0x5f09('0x7a')]({'where':{'WhatsappAccountId':_0x4eb51c},'order':_0x5f09('0x7b')})['then'](function(_0x4114f7){_0x237aa5=_0x4114f7;});}})[_0x5f09('0x26')](function(_0x2424f1){_0x26d131=0x1f4;logger[_0x5f09('0x21')](_0x2424f1[_0x5f09('0x37')]);if(_0x2424f1['name']){delete _0x2424f1['name'];}_0x237aa5=_0x2424f1;})[_0x5f09('0x7c')](function(){if(_0x237aa5===null){_0x4c2269[_0x5f09('0x27')](_0x26d131);}else{if(_0x26d131===0x1f4){_0x4c2269[_0x5f09('0x28')](_0x26d131)[_0x5f09('0x39')](_0x237aa5);}else{_0x4c2269[_0x5f09('0x28')](_0x26d131)[_0x5f09('0x2a')](_0x237aa5);}}});};exports[_0x5f09('0x7d')]=function(_0x1079e3,_0x7bc464,_0x42a1b5){var _0x302b23={};var _0x1c0f11={};var _0x4d84a8;var _0x3970c1;return db[_0x5f09('0x3e')]['findOne']({'where':{'id':_0x1079e3[_0x5f09('0x52')]['id']}})[_0x5f09('0x1d')](handleEntityNotFound(_0x7bc464,null))['then'](function(_0x3e331a){if(_0x3e331a){_0x4d84a8=_0x3e331a;_0x1c0f11['model']=_[_0x5f09('0x53')](db[_0x5f09('0x79')][_0x5f09('0x54')]);_0x1c0f11[_0x5f09('0x43')]=_[_0x5f09('0x53')](_0x1079e3[_0x5f09('0x43')]);_0x1c0f11[_0x5f09('0x4b')]=_[_0x5f09('0x44')](_0x1c0f11[_0x5f09('0x42')],_0x1c0f11[_0x5f09('0x43')]);_0x302b23[_0x5f09('0x45')]=_[_0x5f09('0x44')](_0x1c0f11[_0x5f09('0x42')],qs[_0x5f09('0x46')](_0x1079e3[_0x5f09('0x43')][_0x5f09('0x46')]));_0x302b23[_0x5f09('0x45')]=_0x302b23['attributes'][_0x5f09('0x55')]?_0x302b23['attributes']:_0x1c0f11[_0x5f09('0x42')];_0x302b23[_0x5f09('0x48')]=qs[_0x5f09('0x49')](_0x1079e3[_0x5f09('0x43')][_0x5f09('0x49')]);_0x302b23[_0x5f09('0x4a')]=qs['filters'](_[_0x5f09('0x4c')](_0x1079e3[_0x5f09('0x43')],_0x1c0f11[_0x5f09('0x4b')]));if(_0x1079e3[_0x5f09('0x43')]['filter']){_0x302b23['where']=_[_0x5f09('0x4e')](_0x302b23[_0x5f09('0x4a')],{'$or':_[_0x5f09('0x3d')](_0x302b23[_0x5f09('0x45')],function(_0x11b2e4){var _0x4956d3={};_0x4956d3[_0x11b2e4]={'$like':'%'+_0x1079e3['query']['filter']+'%'};return _0x4956d3;})});}_0x302b23=_['merge']({},_0x302b23,_0x1079e3[_0x5f09('0x57')]);return _0x4d84a8[_0x5f09('0x7d')](_0x302b23);}})[_0x5f09('0x1d')](function(_0x4ae457){if(_0x4ae457){_0x3970c1=_0x4ae457[_0x5f09('0x55')];if(!_0x1079e3[_0x5f09('0x43')][_0x5f09('0x63')]('nolimit')){_0x302b23[_0x5f09('0x2d')]=qs['limit'](_0x1079e3['query']['limit']);_0x302b23[_0x5f09('0x2b')]=qs['offset'](_0x1079e3[_0x5f09('0x43')]['offset']);}return _0x4d84a8[_0x5f09('0x7d')](_0x302b23);}})[_0x5f09('0x1d')](function(_0x47b24d){if(_0x47b24d){return _0x47b24d?{'count':_0x3970c1,'rows':_0x47b24d}:null;}})[_0x5f09('0x1d')](respondWithResult(_0x7bc464,null))[_0x5f09('0x26')](handleError(_0x7bc464,null));};exports[_0x5f09('0x7e')]=function(_0x16b904,_0x35a448,_0xdab4f6){var _0xc4f2a={'channel':_0x5f09('0x7f')};var _0x5345bb=[];var _0x49826a=[];var _0x5bc3a1={};return db[_0x5f09('0x3e')][_0x5f09('0x58')]({'where':{'id':_0x16b904[_0x5f09('0x52')]['id']},'include':[{'model':db['WhatsappApplication'],'as':_0x5f09('0x80')}]})[_0x5f09('0x1d')](handleEntityNotFound(_0x35a448,null))[_0x5f09('0x1d')](function(_0x5eb100){_0xc4f2a[_0x5f09('0x81')]=_0x5eb100;if(_0xc4f2a[_0x5f09('0x81')]&&_0xc4f2a['account'][_0x5f09('0x40')]==='sinch'&&_0x16b904['body']['statuses']){if(_0x16b904[_0x5f09('0x5a')]['statuses'][_0x5f09('0x55')]===0x0)return;if(_0x16b904['body'][_0x5f09('0x82')][0x0][_0x5f09('0x83')]!==_0x5f09('0x84'))return;return db[_0x5f09('0x85')]['update']({'read':!![],'readAt':_0x16b904[_0x5f09('0x5a')][_0x5f09('0x82')][0x0][_0x5f09('0x86')]},{'where':{'messageId':_0x16b904[_0x5f09('0x5a')]['statuses'][0x0]['message_id']},'individualHooks':!![]})[_0x5f09('0x1d')](function(_0x321f64){return _0x35a448[_0x5f09('0x28')](0xc8)[_0x5f09('0x2a')](_0x321f64);});}_0xc4f2a[_0x5f09('0x87')]=_[_0x5f09('0x88')](_0x5eb100['Applications'],['priority'],[_0x5f09('0x89')]);if(_0xc4f2a[_0x5f09('0x81')]['Applications']){delete _0xc4f2a[_0x5f09('0x81')][_0x5f09('0x80')];}return db[_0x5f09('0x8a')]['describe']()[_0x5f09('0x1d')](function(_0x2ea456){if(!_0x2ea456){throw new db[(_0x5f09('0x8b'))][(_0x5f09('0x8c'))](_0x5f09('0x8d'));}_0x5345bb=_[_0x5f09('0x8e')](_[_0x5f09('0x53')](_0x2ea456),[_0x5f09('0x8f'),_0x5f09('0x90')]);_0x49826a=_['difference'](_[_0x5f09('0x53')](_0x2ea456),[_0x5f09('0x8f'),'updatedAt',_0x5f09('0x91'),_0x5f09('0x92')]);_0xc4f2a['body']={'mapKey':_0x5f09('0x93')};if(_0xc4f2a['account']&&_0xc4f2a['account'][_0x5f09('0x40')]===_0x5f09('0x94')){_0xc4f2a[_0x5f09('0x5a')][_0x5f09('0x95')]=_0x16b904[_0x5f09('0x5a')]['From'][_0x5f09('0x96')]('whatsapp:','');_0xc4f2a['body'][_0x5f09('0x5a')]=_0x16b904['body'][_0x5f09('0x97')];_0xc4f2a[_0x5f09('0x5a')]['messageId']=_0x16b904[_0x5f09('0x5a')][_0x5f09('0x98')];}if(_0xc4f2a[_0x5f09('0x81')]&&_0xc4f2a[_0x5f09('0x81')]['type']===_0x5f09('0x99')){_0xc4f2a[_0x5f09('0x5a')][_0x5f09('0x95')]=_0x16b904[_0x5f09('0x5a')][_0x5f09('0x9a')][0x0][_0x5f09('0x95')];_0xc4f2a[_0x5f09('0x5a')]['body']=_0x16b904[_0x5f09('0x5a')][_0x5f09('0x9a')][0x0][_0x5f09('0x24')][_0x5f09('0x5a')];_0xc4f2a[_0x5f09('0x5a')][_0x5f09('0x9b')]=_0x16b904['body'][_0x5f09('0x9a')][0x0]['message_id'];}if(_0xc4f2a['body']['id']){delete _0xc4f2a[_0x5f09('0x5a')]['id'];}if(_[_0x5f09('0x9c')](_0xc4f2a[_0x5f09('0x5a')][_0x5f09('0x95')])){throw new db[(_0x5f09('0x8b'))][(_0x5f09('0x8c'))]('from\x20is\x20mandatory');}if(_['isNil'](_0xc4f2a[_0x5f09('0x5a')][_0x5f09('0x5a')])||_0xc4f2a[_0x5f09('0x5a')][_0x5f09('0x5a')]===''){throw new db[(_0x5f09('0x8b'))][(_0x5f09('0x8c'))](_0x5f09('0x9d'));}if(_['isNil'](_0xc4f2a[_0x5f09('0x5a')]['mapKey'])){throw new db[(_0x5f09('0x8b'))][(_0x5f09('0x8c'))]('mapKey\x20is\x20mandatory,\x20please\x20use\x20one\x20of\x20these:\x20'+_0x49826a);}if(!_['includes'](_0x49826a,_0xc4f2a[_0x5f09('0x5a')][_0x5f09('0x9e')])){throw new db[(_0x5f09('0x8b'))][(_0x5f09('0x8c'))](_0x5f09('0x9f')+_0x49826a);}_0x5bc3a1[_0xc4f2a['body']['mapKey']]=_0xc4f2a[_0x5f09('0x5a')]['from'];return db[_0x5f09('0xa0')][_0x5f09('0x58')]({'where':{'id':_0xc4f2a[_0x5f09('0x81')][_0x5f09('0x92')]},'include':[{'model':db[_0x5f09('0x8a')],'as':_0x5f09('0xa1'),'where':_0x5bc3a1,'limit':0x1,'order':[['updatedAt',_0x5f09('0xa2')]]}]});})[_0x5f09('0x1d')](handleEntityNotFound(_0x35a448,null))[_0x5f09('0x1d')](function(_0x183707){if(_0x183707){_0xc4f2a['list']=_[_0x5f09('0xa3')](_0x183707,[_0x5f09('0xa1')]);if(_0x183707['Contacts'][_0x5f09('0x55')]){return _0x183707[_0x5f09('0xa1')][0x0];}var _0x389f57=_[_0x5f09('0x14')](_0xc4f2a[_0x5f09('0x5a')],{'firstName':_0xc4f2a[_0x5f09('0x5a')][_0x5f09('0x95')],'ListId':_0x183707['id']});_0x389f57[_0xc4f2a[_0x5f09('0x5a')][_0x5f09('0x9e')]]=_0xc4f2a[_0x5f09('0x5a')][_0x5f09('0x95')];return db[_0x5f09('0x8a')][_0x5f09('0x59')](_0x389f57,{'fields':_0x5345bb,'raw':!![]});}})['then'](handleEntityNotFound(_0x35a448,null))[_0x5f09('0x1d')](function(_0x3e11bc){if(_0x3e11bc){_0xc4f2a[_0x5f09('0xa4')]=_0x3e11bc;var _0x2e4143={'ContactId':_0x3e11bc['id'],'phone':_0xc4f2a[_0x5f09('0x5a')][_0x5f09('0x95')],'WhatsappAccountId':_0x16b904[_0x5f09('0x52')]['id']};var _0xf433ba={'ContactId':_0x3e11bc['id'],'WhatsappAccountId':_0x16b904[_0x5f09('0x52')]['id'],'closed':![]};return db[_0x5f09('0xa5')][_0x5f09('0x58')]({'where':_0xf433ba})[_0x5f09('0x1d')](function(_0x2b8d7d){if(_0x2b8d7d){return[_0x2b8d7d,![]];}return db[_0x5f09('0xa5')]['create'](_0x2e4143)[_0x5f09('0x1d')](function(_0x4b7f7f){return[_0x4b7f7f,!![]];});});}})[_0x5f09('0x6c')](function(_0x59f245,_0x3e0b7c){_0xc4f2a[_0x5f09('0xa6')]=_0x59f245[_0x5f09('0x34')]({'plain':!![]});_0xc4f2a['interaction']['created']=![];if(_0x3e0b7c){if(_0xc4f2a['account'][_0x5f09('0xa7')]){_0xc4f2a[_0x5f09('0x87')][_0x5f09('0xa8')]({'id':0x0,'priority':_0xc4f2a['applications'][_0x5f09('0x55')]+0x1,'app':'close','appdata':'unmanaged','interval':'*,*,*,*'});}_0xc4f2a['interaction'][_0x5f09('0xa9')]=!![];}return db[_0x5f09('0x85')][_0x5f09('0x59')]({'phone':_0xc4f2a[_0x5f09('0x5a')][_0x5f09('0x95')],'messageId':_0xc4f2a[_0x5f09('0x5a')][_0x5f09('0x9b')],'body':_0xc4f2a[_0x5f09('0x5a')]['body'],'WhatsappAccountId':_0x16b904[_0x5f09('0x52')]['id'],'WhatsappInteractionId':_0x59f245['id'],'direction':'in','ContactId':_0x59f245[_0x5f09('0xaa')],'AttachmentId':_0xc4f2a[_0x5f09('0x5a')][_0x5f09('0xab')]});})[_0x5f09('0x1d')](function(_0x15b9c0){_0xc4f2a[_0x5f09('0x24')]=_0x15b9c0;if(_0xc4f2a['interaction'][_0x5f09('0xac')]){return db[_0x5f09('0x72')][_0x5f09('0x58')]({'attributes':['id',_0x5f09('0x38')],'where':{'id':_0xc4f2a['interaction'][_0x5f09('0xac')]}})[_0x5f09('0x1d')](function(_0x5d857f){if(_0x5d857f){_0xc4f2a[_0x5f09('0x87')][_0x5f09('0xad')]({'id':0x0,'priority':0x0,'app':'agent','appdata':_0x5d857f[_0x5f09('0x38')]+','+(_0xc4f2a[_0x5f09('0x81')][_0x5f09('0xae')]||0xa),'interval':'*,*,*,*'});}return respondWithRpcPromise(_0x5f09('0xaf'),_0x5f09('0xb0'),_0xc4f2a);});}return respondWithRpcPromise(_0x5f09('0xaf'),'startRouting',_0xc4f2a);})['then'](function(_0x2cf5d9){if(_0x2cf5d9){var _0x679a09=0xc8;var _0xd03252=_0x5f09('0xb1');logger[_0x5f09('0x1e')]('WhatsappAccount,\x20%s,\x20%s,\x20%s',_0xd03252,_0x679a09,'entity\x20found');logger[_0x5f09('0xb2')](_0x5f09('0xb3'),_0xd03252,_0x679a09,_0x5f09('0xb4'),JSON['stringify'](_0x2cf5d9));if(_0xc4f2a['account'][_0x5f09('0x40')]==='twilio'){return _0x35a448[_0x5f09('0x28')](_0x679a09)['set'](_0x5f09('0xb5'),_0x5f09('0xb6'))[_0x5f09('0x39')]('<?xml\x20version=\x221.0\x22\x20encoding=\x22UTF-8\x22?>\x0a<Response></Response>');}else{return _0x35a448['status'](_0x679a09)['json'](_0x2cf5d9);}}});})['catch'](handleError(_0x35a448,null));};exports['send']=function(_0x110379,_0x197b6f,_0x3d496c){var _0x4866c7,_0x2ad347,_0x580417;if(_[_0x5f09('0x9c')](_0x110379[_0x5f09('0x5a')][_0x5f09('0x5a')])||_0x110379[_0x5f09('0x5a')]['body']===''){throw new db[(_0x5f09('0x8b'))][(_0x5f09('0x8c'))](_0x5f09('0x9d'));}if(_['isNil'](_0x110379[_0x5f09('0x5a')]['to'])){throw new db[(_0x5f09('0x8b'))][(_0x5f09('0x8c'))]('to\x20is\x20mandatory');}_0x4866c7=_0x110379['body']['to'];return db[_0x5f09('0x3e')][_0x5f09('0x58')]({'where':{'id':_0x110379[_0x5f09('0x52')]['id']},'include':[{'model':db['CmList'],'as':'List','include':[{'model':db['CmContact'],'as':_0x5f09('0xa1'),'where':{'mobile':_0x4866c7},'limit':0x1,'order':[[_0x5f09('0x90'),_0x5f09('0xa2')]]}]}]})[_0x5f09('0x1d')](handleEntityNotFound(_0x197b6f,null))[_0x5f09('0x1d')](function(_0x3ddb9){if(_0x3ddb9&&_0x3ddb9['List']){_0x2ad347=_0x3ddb9[_0x5f09('0x34')]({'plain':!![]});if(_0x2ad347[_0x5f09('0xb7')]&&_0x2ad347[_0x5f09('0xb7')]['Contacts'][_0x5f09('0x55')]){return _0x2ad347[_0x5f09('0xb7')]['Contacts'][0x0];}return db[_0x5f09('0x8a')][_0x5f09('0x59')](_['defaults'](_0x110379[_0x5f09('0x5a')],{'firstName':_0x4866c7,'mobile':_0x4866c7,'phone':_0x4866c7,'ListId':_0x2ad347[_0x5f09('0x92')]}));}})[_0x5f09('0x1d')](handleEntityNotFound(_0x197b6f,null))[_0x5f09('0x1d')](function(_0xb364c6){if(_0xb364c6){_0x580417=_0xb364c6;return db[_0x5f09('0xa5')]['find']({'where':{'ContactId':_0x580417['id'],'closed':![],'WhatsappAccountId':_0x2ad347['id']}})[_0x5f09('0x1d')](function(_0x5b3685){if(_0x5b3685){return[_0x5b3685,![]];}return db[_0x5f09('0xa5')][_0x5f09('0x59')]({'UserId':_0x110379[_0x5f09('0xb8')]['id'],'ContactId':_0x580417['id'],'WhatsappAccountId':_0x2ad347['id'],'phone':_0x4866c7,'firstMsgDirection':_0x5f09('0xb9'),'Messages':[_[_0x5f09('0x4e')](_0x110379[_0x5f09('0x5a')],{'read':![],'body':_0x110379[_0x5f09('0x5a')][_0x5f09('0x5a')],'phone':_0x4866c7,'WhatsappAccountId':_0x2ad347['id'],'UserId':_0x110379[_0x5f09('0xb8')]['id'],'ContactId':_0x580417['id']})]},{'include':[{'model':db[_0x5f09('0x85')],'as':'Messages'}]})[_0x5f09('0x1d')](function(_0x2e991b){return[_0x2e991b,!![]];});});}})[_0x5f09('0x6c')](function(_0x22a724,_0x4c80af){if(_0x4c80af){return _0x22a724;}return db[_0x5f09('0x85')][_0x5f09('0x59')](_[_0x5f09('0x4e')](_0x110379[_0x5f09('0x5a')],{'read':![],'body':_0x110379['body']['body'],'phone':_0x4866c7,'WhatsappAccountId':_0x2ad347['id'],'WhatsappInteractionId':_0x22a724['id'],'UserId':_0x110379['user']['id'],'ContactId':_0x580417['id']}))[_0x5f09('0x1d')](function(_0x59243e){_0x22a724[_0x5f09('0xba')][_0x5f09('0xbb')]=[];_0x22a724[_0x5f09('0xba')][_0x5f09('0xbb')][_0x5f09('0xa8')](_0x59243e[_0x5f09('0xba')]);return _0x22a724;});})[_0x5f09('0x1d')](respondWithResult(_0x197b6f,null))[_0x5f09('0x26')](handleError(_0x197b6f,null));};