Built motion from commit 14588770.|2.5.38
[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 _0x2a3f=['bulkCreate','findAndCountAll','priority','finally','getApplications','notify','account','sinch','statuses','state','read','WhatsappMessage','timestamp','message_id','orderBy','CmContact','ValidationError','no\x20available\x20attributes','difference','createdAt','updatedAt','ListId','mobile','twilio','from','From','replace','whatsapp:','Body','MessageSid','notifications','isNil','Sequelize','from\x20is\x20mandatory','body\x20is\x20mandatory\x20and\x20not\x20empty','mapKey','CmList','Contacts','DESC','omit','contact','WhatsappInteraction','interaction','created','autoclose','applications','push','close','unmanaged','*,*,*,*','messageId','ContactId','AttachmentId','UserId','unshift','waitForTheAssignedAgent','Start','startRouting','receiveMessage','WhatsappAccount,\x20%s,\x20%s,\x20%s,\x20%s','entity\x20found','Content-Type','text/xml','to\x20is\x20mandatory','List','Messages','dataValues','eml-format','rimraf','zip-dir','fast-json-patch','moment','bluebird','mustache','util','path','to-csv','ejs','fs-extra','lodash','jsforce','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/environment','../../config/license/util','../../mysqldb','redis','socket.io-emitter','register','jayson/promise','client','http','request','then','info','WhatsappAccount,\x20%s,\x20%s','request\x20sent','debug','WhatsappAccount,\x20%s,\x20%s,\x20%s','stringify','error','message','sendStatus','status','end','json','offset','count','limit','set','Content-Range','apply','save','update','destroy','get','UserProfileResource','stack','name','send','index','Pause','mandatoryDispositionPause','WhatsappAccount','rawAttributes','type','key','map','query','filters','intersection','model','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','filter','merge','options','includeAll','include','findAll','catch','show','params','keys','find','create','body','user','role','WhatsappAccounts','UserProfileSection','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','describe','addDisposition','Disposition','getDispositions','findOne','WhatsappAccountId','rows','removeDispositions','ids','addAnswer','CannedAnswer','getAnswers','pick','removeAnswers','addAgents','spread','emit','userWhatsappAccount:save','removeAgents','isArray','userWhatsappAccount:remove','getAgents','User','addApplications','sequelize','transaction','Transaction','READ_COMMITTED','WhatsappApplication'];(function(_0x3e3012,_0x46fe06){var _0x5dfc61=function(_0x4737b8){while(--_0x4737b8){_0x3e3012['push'](_0x3e3012['shift']());}};_0x5dfc61(++_0x46fe06);}(_0x2a3f,0x1cb));var _0xf2a3=function(_0x38f5f8,_0xefe164){_0x38f5f8=_0x38f5f8-0x0;var _0x34e820=_0x2a3f[_0x38f5f8];return _0x34e820;};'use strict';var emlformat=require(_0xf2a3('0x0'));var rimraf=require(_0xf2a3('0x1'));var zipdir=require(_0xf2a3('0x2'));var jsonpatch=require(_0xf2a3('0x3'));var rp=require('request-promise');var moment=require(_0xf2a3('0x4'));var BPromise=require(_0xf2a3('0x5'));var Mustache=require(_0xf2a3('0x6'));var util=require(_0xf2a3('0x7'));var path=require(_0xf2a3('0x8'));var sox=require('sox');var csv=require(_0xf2a3('0x9'));var ejs=require(_0xf2a3('0xa'));var fs=require('fs');var fs_extra=require(_0xf2a3('0xb'));var _=require(_0xf2a3('0xc'));var squel=require('squel');var crypto=require('crypto');var jsforce=require(_0xf2a3('0xd'));var deskjs=require('desk.js');var toCsv=require(_0xf2a3('0x9'));var querystring=require(_0xf2a3('0xe'));var Papa=require(_0xf2a3('0xf'));var Redis=require(_0xf2a3('0x10'));var authService=require(_0xf2a3('0x11'));var qs=require(_0xf2a3('0x12'));var as=require(_0xf2a3('0x13'));var hardwareService=require(_0xf2a3('0x14'));var logger=require(_0xf2a3('0x15'))(_0xf2a3('0x16'));var utils=require('../../config/utils');var config=require(_0xf2a3('0x17'));var licenseUtil=require(_0xf2a3('0x18'));var db=require(_0xf2a3('0x19'))['db'];config['redis']=_['defaults'](config[_0xf2a3('0x1a')],{'host':'localhost','port':0x18eb});var socket=require(_0xf2a3('0x1b'))(new Redis(config[_0xf2a3('0x1a')]));require('./whatsappAccount.socket')[_0xf2a3('0x1c')](socket);var jayson=require(_0xf2a3('0x1d'));var client=jayson[_0xf2a3('0x1e')][_0xf2a3('0x1f')]({'port':0x232c});function respondWithRpcPromise(_0x4a4d37,_0xdacb4,_0x4f2bc7,_0x225600){return new BPromise(function(_0x57aeee,_0x23ebc2){var _0x539058=_0x225600||client;return _0x539058[_0xf2a3('0x20')](_0x4a4d37,_0x4f2bc7)[_0xf2a3('0x21')](function(_0x389d41){logger[_0xf2a3('0x22')](_0xf2a3('0x23'),_0xdacb4,_0xf2a3('0x24'));logger[_0xf2a3('0x25')](_0xf2a3('0x26'),_0xdacb4,_0xf2a3('0x24'),JSON[_0xf2a3('0x27')](_0x389d41));if(_0x389d41[_0xf2a3('0x28')]){if(_0x389d41[_0xf2a3('0x28')]['code']===0x1f4){logger[_0xf2a3('0x28')](_0xf2a3('0x23'),_0xdacb4,_0x389d41[_0xf2a3('0x28')][_0xf2a3('0x29')]);return _0x23ebc2(_0x389d41[_0xf2a3('0x28')][_0xf2a3('0x29')]);}logger['error'](_0xf2a3('0x23'),_0xdacb4,_0x389d41[_0xf2a3('0x28')]['message']);return _0x57aeee(_0x389d41['error'][_0xf2a3('0x29')]);}else{logger['info']('WhatsappAccount,\x20%s,\x20%s',_0xdacb4,_0xf2a3('0x24'));_0x57aeee(_0x389d41['result']['message']);}})['catch'](function(_0x2144d2){logger[_0xf2a3('0x28')](_0xf2a3('0x23'),_0xdacb4,_0x2144d2);_0x23ebc2(_0x2144d2);});});}function respondWithStatusCode(_0x5673c6,_0x2bc99c){_0x2bc99c=_0x2bc99c||0xcc;return function(_0x12a04a){if(_0x12a04a){return _0x5673c6[_0xf2a3('0x2a')](_0x2bc99c);}return _0x5673c6[_0xf2a3('0x2b')](_0x2bc99c)[_0xf2a3('0x2c')]();};}function respondWithResult(_0x3ee04c,_0x13d713){_0x13d713=_0x13d713||0xc8;return function(_0x256536){if(_0x256536){return _0x3ee04c[_0xf2a3('0x2b')](_0x13d713)[_0xf2a3('0x2d')](_0x256536);}};}function respondWithFilteredResult(_0x51fe5e,_0x409e18){return function(_0x2ebca8){if(_0x2ebca8){var _0x1bf827=typeof _0x409e18[_0xf2a3('0x2e')]==='undefined'&&typeof _0x409e18['limit']==='undefined';var _0x533efd=_0x2ebca8[_0xf2a3('0x2f')];var _0x41a86b=_0x1bf827?0x0:_0x409e18[_0xf2a3('0x2e')];var _0x58e440=_0x1bf827?_0x2ebca8[_0xf2a3('0x2f')]:_0x409e18[_0xf2a3('0x2e')]+_0x409e18[_0xf2a3('0x30')];var _0x5f0a87;if(_0x58e440>=_0x533efd){_0x58e440=_0x533efd;_0x5f0a87=0xc8;}else{_0x5f0a87=0xce;}_0x51fe5e['status'](_0x5f0a87);return _0x51fe5e[_0xf2a3('0x31')](_0xf2a3('0x32'),_0x41a86b+'-'+_0x58e440+'/'+_0x533efd)[_0xf2a3('0x2d')](_0x2ebca8);}return null;};}function patchUpdates(_0x576487){return function(_0x3ca1a0){try{jsonpatch[_0xf2a3('0x33')](_0x3ca1a0,_0x576487,!![]);}catch(_0xa0e04e){return BPromise['reject'](_0xa0e04e);}return _0x3ca1a0[_0xf2a3('0x34')]();};}function saveUpdates(_0x46de36,_0x43a48c){return function(_0x2dca8f){if(_0x2dca8f){return _0x2dca8f[_0xf2a3('0x35')](_0x46de36)['then'](function(_0x18265d){return _0x18265d;});}return null;};}function removeEntity(_0x9d0fed,_0x348707){return function(_0x1d8a58){if(_0x1d8a58){return _0x1d8a58[_0xf2a3('0x36')]()[_0xf2a3('0x21')](function(){var _0x2f527a=_0x1d8a58[_0xf2a3('0x37')]({'plain':!![]});var _0x29300e='WhatsappAccounts';return db[_0xf2a3('0x38')][_0xf2a3('0x36')]({'where':{'type':_0x29300e,'resourceId':_0x2f527a['id']}})[_0xf2a3('0x21')](function(){return _0x1d8a58;});})[_0xf2a3('0x21')](function(){_0x9d0fed[_0xf2a3('0x2b')](0xcc)[_0xf2a3('0x2c')]();});}};}function handleEntityNotFound(_0x66465d,_0x9d9d3e){return function(_0x5536ed){if(!_0x5536ed){_0x66465d['sendStatus'](0x194);}return _0x5536ed;};}function handleError(_0x212c4b,_0x295f2f){_0x295f2f=_0x295f2f||0x1f4;return function(_0x10a0cf){logger[_0xf2a3('0x28')](_0x10a0cf[_0xf2a3('0x39')]);if(_0x10a0cf[_0xf2a3('0x3a')]){delete _0x10a0cf['name'];}_0x212c4b[_0xf2a3('0x2b')](_0x295f2f)[_0xf2a3('0x3b')](_0x10a0cf);};}exports[_0xf2a3('0x3c')]=function(_0xef76a4,_0x20dbd3){var _0x3767bf={'include':[{'model':db[_0xf2a3('0x3d')],'as':_0xf2a3('0x3e')}]},_0x5d6bd3={},_0x38aca7={'count':0x0,'rows':[]};var _0x41c778=_['map'](db[_0xf2a3('0x3f')][_0xf2a3('0x40')],function(_0x39acc6){return{'name':_0x39acc6['fieldName'],'type':_0x39acc6[_0xf2a3('0x41')][_0xf2a3('0x42')]};});_0x5d6bd3['model']=_[_0xf2a3('0x43')](_0x41c778,_0xf2a3('0x3a'));_0x5d6bd3[_0xf2a3('0x44')]=_['keys'](_0xef76a4[_0xf2a3('0x44')]);_0x5d6bd3[_0xf2a3('0x45')]=_[_0xf2a3('0x46')](_0x5d6bd3[_0xf2a3('0x47')],_0x5d6bd3[_0xf2a3('0x44')]);_0x3767bf[_0xf2a3('0x48')]=_[_0xf2a3('0x46')](_0x5d6bd3[_0xf2a3('0x47')],qs[_0xf2a3('0x49')](_0xef76a4[_0xf2a3('0x44')][_0xf2a3('0x49')]));_0x3767bf['attributes']=_0x3767bf[_0xf2a3('0x48')][_0xf2a3('0x4a')]?_0x3767bf[_0xf2a3('0x48')]:_0x5d6bd3['model'];if(!_0xef76a4[_0xf2a3('0x44')][_0xf2a3('0x4b')](_0xf2a3('0x4c'))){_0x3767bf['limit']=qs[_0xf2a3('0x30')](_0xef76a4[_0xf2a3('0x44')][_0xf2a3('0x30')]);_0x3767bf[_0xf2a3('0x2e')]=qs['offset'](_0xef76a4[_0xf2a3('0x44')][_0xf2a3('0x2e')]);}_0x3767bf[_0xf2a3('0x4d')]=qs[_0xf2a3('0x4e')](_0xef76a4[_0xf2a3('0x44')][_0xf2a3('0x4e')]);_0x3767bf[_0xf2a3('0x4f')]=qs[_0xf2a3('0x45')](_['pick'](_0xef76a4['query'],_0x5d6bd3[_0xf2a3('0x45')]),_0x41c778);if(_0xef76a4[_0xf2a3('0x44')][_0xf2a3('0x50')]){_0x3767bf[_0xf2a3('0x4f')]=_[_0xf2a3('0x51')](_0x3767bf[_0xf2a3('0x4f')],{'$or':_[_0xf2a3('0x43')](_0x41c778,function(_0x5f0bda){if(_0x5f0bda[_0xf2a3('0x41')]!=='VIRTUAL'){var _0x16a8b2={};_0x16a8b2[_0x5f0bda[_0xf2a3('0x3a')]]={'$like':'%'+_0xef76a4['query']['filter']+'%'};return _0x16a8b2;}})});}_0x3767bf=_[_0xf2a3('0x51')]({},_0x3767bf,_0xef76a4[_0xf2a3('0x52')]);var _0x4f6f0b={'where':_0x3767bf[_0xf2a3('0x4f')]};return db[_0xf2a3('0x3f')]['count'](_0x4f6f0b)[_0xf2a3('0x21')](function(_0x5abd75){_0x38aca7['count']=_0x5abd75;if(_0xef76a4[_0xf2a3('0x44')][_0xf2a3('0x53')]){_0x3767bf[_0xf2a3('0x54')]=[{'all':!![]}];}return db['WhatsappAccount'][_0xf2a3('0x55')](_0x3767bf);})[_0xf2a3('0x21')](function(_0x59c184){_0x38aca7['rows']=_0x59c184;return _0x38aca7;})[_0xf2a3('0x21')](respondWithFilteredResult(_0x20dbd3,_0x3767bf))[_0xf2a3('0x56')](handleError(_0x20dbd3,null));};exports[_0xf2a3('0x57')]=function(_0x48a192,_0x3fb61a){var _0x4485a8={'raw':![],'where':{'id':_0x48a192[_0xf2a3('0x58')]['id']},'include':[{'model':db['Pause'],'as':_0xf2a3('0x3e')}]},_0x5e64af={};_0x5e64af[_0xf2a3('0x47')]=_[_0xf2a3('0x59')](db[_0xf2a3('0x3f')][_0xf2a3('0x40')]);_0x5e64af[_0xf2a3('0x44')]=_['keys'](_0x48a192['query']);_0x5e64af['filters']=_[_0xf2a3('0x46')](_0x5e64af[_0xf2a3('0x47')],_0x5e64af[_0xf2a3('0x44')]);_0x4485a8[_0xf2a3('0x48')]=_[_0xf2a3('0x46')](_0x5e64af[_0xf2a3('0x47')],qs[_0xf2a3('0x49')](_0x48a192['query'][_0xf2a3('0x49')]));_0x4485a8['attributes']=_0x4485a8[_0xf2a3('0x48')][_0xf2a3('0x4a')]?_0x4485a8[_0xf2a3('0x48')]:_0x5e64af['model'];if(_0x48a192[_0xf2a3('0x44')][_0xf2a3('0x53')]){_0x4485a8[_0xf2a3('0x54')]=[{'all':!![]}];}_0x4485a8=_['merge']({},_0x4485a8,_0x48a192[_0xf2a3('0x52')]);return db[_0xf2a3('0x3f')][_0xf2a3('0x5a')](_0x4485a8)['then'](handleEntityNotFound(_0x3fb61a,null))[_0xf2a3('0x21')](respondWithResult(_0x3fb61a,null))[_0xf2a3('0x56')](handleError(_0x3fb61a,null));};exports['create']=function(_0x32e3c2,_0x35dc03){return db['WhatsappAccount'][_0xf2a3('0x5b')](_0x32e3c2[_0xf2a3('0x5c')],{})[_0xf2a3('0x21')](function(_0x12c4dd){var _0x44bcbf=_0x32e3c2[_0xf2a3('0x5d')][_0xf2a3('0x37')]({'plain':!![]});if(!_0x44bcbf)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x44bcbf[_0xf2a3('0x5e')]==='user'){var _0x27d5a4=_0x12c4dd['get']({'plain':!![]});var _0x7a35c0=_0xf2a3('0x5f');return db[_0xf2a3('0x60')][_0xf2a3('0x5a')]({'where':{'name':_0x7a35c0,'userProfileId':_0x44bcbf[_0xf2a3('0x61')]},'raw':!![]})[_0xf2a3('0x21')](function(_0x473a81){if(_0x473a81&&_0x473a81[_0xf2a3('0x62')]===0x0){return db['UserProfileResource'][_0xf2a3('0x5b')]({'name':_0x27d5a4[_0xf2a3('0x3a')],'resourceId':_0x27d5a4['id'],'type':_0x473a81[_0xf2a3('0x3a')],'sectionId':_0x473a81['id']},{})[_0xf2a3('0x21')](function(){return _0x12c4dd;});}else{return _0x12c4dd;}})['catch'](function(_0x1e9b7b){logger[_0xf2a3('0x28')](_0xf2a3('0x63'),_0x1e9b7b);throw _0x1e9b7b;});}return _0x12c4dd;})['then'](respondWithResult(_0x35dc03,0xc9))[_0xf2a3('0x56')](handleError(_0x35dc03,null));};exports[_0xf2a3('0x35')]=function(_0x139fb2,_0x3c25c9){if(_0x139fb2[_0xf2a3('0x5c')]['id']){delete _0x139fb2[_0xf2a3('0x5c')]['id'];}return db['WhatsappAccount'][_0xf2a3('0x5a')]({'where':{'id':_0x139fb2[_0xf2a3('0x58')]['id']},'include':[{'model':db['Pause'],'as':_0xf2a3('0x3e')}]})['then'](handleEntityNotFound(_0x3c25c9,null))[_0xf2a3('0x21')](saveUpdates(_0x139fb2[_0xf2a3('0x5c')],null))['then'](respondWithResult(_0x3c25c9,null))[_0xf2a3('0x56')](handleError(_0x3c25c9,null));};exports[_0xf2a3('0x36')]=function(_0x546e01,_0x3f0fd7){return db[_0xf2a3('0x3f')][_0xf2a3('0x5a')]({'where':{'id':_0x546e01[_0xf2a3('0x58')]['id']}})[_0xf2a3('0x21')](handleEntityNotFound(_0x3f0fd7,null))[_0xf2a3('0x21')](removeEntity(_0x3f0fd7,null))[_0xf2a3('0x56')](handleError(_0x3f0fd7,null));};exports[_0xf2a3('0x64')]=function(_0x44905c,_0x328a10){return db[_0xf2a3('0x3f')][_0xf2a3('0x64')]()[_0xf2a3('0x21')](respondWithResult(_0x328a10,null))[_0xf2a3('0x56')](handleError(_0x328a10,null));};exports[_0xf2a3('0x65')]=function(_0x56fb02,_0x36c15f,_0xa1c23){if(_0x56fb02[_0xf2a3('0x5c')]['id']){delete _0x56fb02[_0xf2a3('0x5c')]['id'];}return db['WhatsappAccount'][_0xf2a3('0x5a')]({'where':{'id':_0x56fb02[_0xf2a3('0x58')]['id']}})[_0xf2a3('0x21')](handleEntityNotFound(_0x36c15f,null))['then'](function(_0x3b330f){if(_0x3b330f){_0x56fb02[_0xf2a3('0x5c')]['WhatsappAccountId']=_0x3b330f['id'];return db[_0xf2a3('0x66')][_0xf2a3('0x5b')](_0x56fb02['body']);}})[_0xf2a3('0x21')](respondWithResult(_0x36c15f,null))[_0xf2a3('0x56')](handleError(_0x36c15f,null));};exports[_0xf2a3('0x67')]=function(_0x186ecb,_0x1d97a4,_0x5e55f8){var _0x1aba59={'raw':![],'where':{}};var _0x181904={};var _0xd1cf2c={'count':0x0,'rows':[]};return db[_0xf2a3('0x3f')][_0xf2a3('0x68')]({'where':{'id':_0x186ecb['params']['id']}})[_0xf2a3('0x21')](handleEntityNotFound(_0x1d97a4,null))['then'](function(_0x37f58f){if(_0x37f58f){_0x181904[_0xf2a3('0x47')]=_['keys'](db[_0xf2a3('0x66')]['rawAttributes']);_0x181904['query']=_[_0xf2a3('0x59')](_0x186ecb[_0xf2a3('0x44')]);_0x181904['filters']=_['intersection'](_0x181904[_0xf2a3('0x47')],_0x181904[_0xf2a3('0x44')]);_0x1aba59[_0xf2a3('0x48')]=_['intersection'](_0x181904[_0xf2a3('0x47')],qs[_0xf2a3('0x49')](_0x186ecb[_0xf2a3('0x44')][_0xf2a3('0x49')]));_0x1aba59[_0xf2a3('0x48')]=_0x1aba59[_0xf2a3('0x48')][_0xf2a3('0x4a')]?_0x1aba59[_0xf2a3('0x48')]:_0x181904[_0xf2a3('0x47')];if(!_0x186ecb['query'][_0xf2a3('0x4b')]('nolimit')){_0x1aba59[_0xf2a3('0x30')]=qs[_0xf2a3('0x30')](_0x186ecb['query']['limit']);_0x1aba59[_0xf2a3('0x2e')]=qs['offset'](_0x186ecb['query'][_0xf2a3('0x2e')]);}_0x1aba59['order']=qs['sort'](_0x186ecb['query'][_0xf2a3('0x4e')]);_0x1aba59[_0xf2a3('0x4f')]=qs[_0xf2a3('0x45')](_['pick'](_0x186ecb[_0xf2a3('0x44')],_0x181904['filters']));_0x1aba59['where'][_0xf2a3('0x69')]=_0x37f58f['id'];if(_0x186ecb[_0xf2a3('0x44')][_0xf2a3('0x50')]){_0x1aba59[_0xf2a3('0x4f')]=_[_0xf2a3('0x51')](_0x1aba59[_0xf2a3('0x4f')],{'$or':_['map'](_0x1aba59[_0xf2a3('0x48')],function(_0x5a665f){var _0x1995ba={};_0x1995ba[_0x5a665f]={'$like':'%'+_0x186ecb['query'][_0xf2a3('0x50')]+'%'};return _0x1995ba;})});}_0x1aba59=_[_0xf2a3('0x51')]({},_0x1aba59,_0x186ecb[_0xf2a3('0x52')]);return db['Disposition'][_0xf2a3('0x2f')]({'where':_0x1aba59['where']})['then'](function(_0x587ab8){_0xd1cf2c[_0xf2a3('0x2f')]=_0x587ab8;if(_0x186ecb['query'][_0xf2a3('0x53')]){_0x1aba59['include']=[{'all':!![]}];}return db['Disposition'][_0xf2a3('0x55')](_0x1aba59);})['then'](function(_0x136264){_0xd1cf2c[_0xf2a3('0x6a')]=_0x136264;return _0xd1cf2c;});}})['then'](respondWithFilteredResult(_0x1d97a4,_0x1aba59))['catch'](handleError(_0x1d97a4,null));};exports['removeDispositions']=function(_0x430d98,_0x10e39d,_0x4bbb46){return db['WhatsappAccount'][_0xf2a3('0x5a')]({'where':{'id':_0x430d98['params']['id']}})['then'](handleEntityNotFound(_0x10e39d,null))[_0xf2a3('0x21')](function(_0x37594b){if(_0x37594b){return _0x37594b[_0xf2a3('0x6b')](_0x430d98[_0xf2a3('0x44')][_0xf2a3('0x6c')]);}})['then'](respondWithStatusCode(_0x10e39d,null))[_0xf2a3('0x56')](handleError(_0x10e39d,null));};exports[_0xf2a3('0x6d')]=function(_0x1ead10,_0x4d2f92,_0x403e6a){if(_0x1ead10[_0xf2a3('0x5c')]['id']){delete _0x1ead10[_0xf2a3('0x5c')]['id'];}return db['WhatsappAccount'][_0xf2a3('0x5a')]({'where':{'id':_0x1ead10[_0xf2a3('0x58')]['id']}})[_0xf2a3('0x21')](handleEntityNotFound(_0x4d2f92,null))[_0xf2a3('0x21')](function(_0x1f782d){if(_0x1f782d){_0x1ead10['body'][_0xf2a3('0x69')]=_0x1f782d['id'];return db[_0xf2a3('0x6e')][_0xf2a3('0x5b')](_0x1ead10[_0xf2a3('0x5c')]);}})[_0xf2a3('0x21')](respondWithResult(_0x4d2f92,null))[_0xf2a3('0x56')](handleError(_0x4d2f92,null));};exports[_0xf2a3('0x6f')]=function(_0x2d6ca9,_0x445654,_0x111ec0){var _0x524cb7={'raw':![],'where':{}};var _0x292856={};var _0x4ea5e4={'count':0x0,'rows':[]};return db['WhatsappAccount'][_0xf2a3('0x68')]({'where':{'id':_0x2d6ca9['params']['id']}})[_0xf2a3('0x21')](handleEntityNotFound(_0x445654,null))[_0xf2a3('0x21')](function(_0x3bd965){if(_0x3bd965){_0x292856[_0xf2a3('0x47')]=_[_0xf2a3('0x59')](db[_0xf2a3('0x6e')][_0xf2a3('0x40')]);_0x292856[_0xf2a3('0x44')]=_[_0xf2a3('0x59')](_0x2d6ca9[_0xf2a3('0x44')]);_0x292856[_0xf2a3('0x45')]=_['intersection'](_0x292856['model'],_0x292856['query']);_0x524cb7[_0xf2a3('0x48')]=_[_0xf2a3('0x46')](_0x292856[_0xf2a3('0x47')],qs['fields'](_0x2d6ca9[_0xf2a3('0x44')][_0xf2a3('0x49')]));_0x524cb7['attributes']=_0x524cb7[_0xf2a3('0x48')][_0xf2a3('0x4a')]?_0x524cb7[_0xf2a3('0x48')]:_0x292856[_0xf2a3('0x47')];if(!_0x2d6ca9['query'][_0xf2a3('0x4b')](_0xf2a3('0x4c'))){_0x524cb7[_0xf2a3('0x30')]=qs[_0xf2a3('0x30')](_0x2d6ca9[_0xf2a3('0x44')][_0xf2a3('0x30')]);_0x524cb7['offset']=qs[_0xf2a3('0x2e')](_0x2d6ca9[_0xf2a3('0x44')]['offset']);}_0x524cb7['order']=qs[_0xf2a3('0x4e')](_0x2d6ca9['query'][_0xf2a3('0x4e')]);_0x524cb7[_0xf2a3('0x4f')]=qs[_0xf2a3('0x45')](_[_0xf2a3('0x70')](_0x2d6ca9['query'],_0x292856[_0xf2a3('0x45')]));_0x524cb7[_0xf2a3('0x4f')][_0xf2a3('0x69')]=_0x3bd965['id'];if(_0x2d6ca9[_0xf2a3('0x44')]['filter']){_0x524cb7['where']=_[_0xf2a3('0x51')](_0x524cb7['where'],{'$or':_[_0xf2a3('0x43')](_0x524cb7[_0xf2a3('0x48')],function(_0x4bb202){var _0x44b84c={};_0x44b84c[_0x4bb202]={'$like':'%'+_0x2d6ca9[_0xf2a3('0x44')][_0xf2a3('0x50')]+'%'};return _0x44b84c;})});}_0x524cb7=_[_0xf2a3('0x51')]({},_0x524cb7,_0x2d6ca9['options']);return db['CannedAnswer'][_0xf2a3('0x2f')]({'where':_0x524cb7[_0xf2a3('0x4f')]})['then'](function(_0x4bcd70){_0x4ea5e4[_0xf2a3('0x2f')]=_0x4bcd70;if(_0x2d6ca9[_0xf2a3('0x44')][_0xf2a3('0x53')]){_0x524cb7[_0xf2a3('0x54')]=[{'all':!![]}];}return db['CannedAnswer']['findAll'](_0x524cb7);})[_0xf2a3('0x21')](function(_0x1b2417){_0x4ea5e4[_0xf2a3('0x6a')]=_0x1b2417;return _0x4ea5e4;});}})[_0xf2a3('0x21')](respondWithFilteredResult(_0x445654,_0x524cb7))[_0xf2a3('0x56')](handleError(_0x445654,null));};exports[_0xf2a3('0x71')]=function(_0x5f2d67,_0x42e533,_0x290d00){return db[_0xf2a3('0x3f')][_0xf2a3('0x5a')]({'where':{'id':_0x5f2d67['params']['id']}})[_0xf2a3('0x21')](handleEntityNotFound(_0x42e533,null))[_0xf2a3('0x21')](function(_0x122c3c){if(_0x122c3c){return _0x122c3c[_0xf2a3('0x71')](_0x5f2d67[_0xf2a3('0x44')]['ids']);}})[_0xf2a3('0x21')](respondWithStatusCode(_0x42e533,null))[_0xf2a3('0x56')](handleError(_0x42e533,null));};exports[_0xf2a3('0x72')]=function(_0x16dc77,_0x198b2c,_0x1f1cf6){return db[_0xf2a3('0x3f')][_0xf2a3('0x5a')]({'where':{'id':_0x16dc77[_0xf2a3('0x58')]['id']}})['then'](handleEntityNotFound(_0x198b2c,null))[_0xf2a3('0x21')](function(_0x11ec62){if(_0x11ec62){return _0x11ec62['addAgents'](_0x16dc77[_0xf2a3('0x5c')][_0xf2a3('0x6c')],_['omit'](_0x16dc77['body'],[_0xf2a3('0x6c'),'id'])||{})[_0xf2a3('0x73')](function(_0x5eb570){for(var _0x651638=0x0;_0x651638<_0x16dc77[_0xf2a3('0x5c')][_0xf2a3('0x6c')]['length'];_0x651638+=0x1){socket[_0xf2a3('0x74')](_0xf2a3('0x75'),{'UserId':Number(_0x16dc77[_0xf2a3('0x5c')][_0xf2a3('0x6c')][_0x651638]),'WhatsappAccountId':Number(_0x16dc77[_0xf2a3('0x58')]['id'])});}return _0x5eb570;});}})[_0xf2a3('0x21')](respondWithResult(_0x198b2c,null))[_0xf2a3('0x56')](handleError(_0x198b2c,null));};exports['removeAgents']=function(_0x23dca4,_0x4de6c5,_0x401d1a){return db[_0xf2a3('0x3f')]['find']({'where':{'id':_0x23dca4[_0xf2a3('0x58')]['id']}})['then'](handleEntityNotFound(_0x4de6c5,null))[_0xf2a3('0x21')](function(_0x3e3a34){if(_0x3e3a34){return _0x3e3a34[_0xf2a3('0x76')](_0x23dca4['query'][_0xf2a3('0x6c')])[_0xf2a3('0x21')](function(){if(_[_0xf2a3('0x77')](_0x23dca4[_0xf2a3('0x44')][_0xf2a3('0x6c')])){for(var _0xdfa9ec=0x0;_0xdfa9ec<_0x23dca4[_0xf2a3('0x44')][_0xf2a3('0x6c')][_0xf2a3('0x4a')];_0xdfa9ec+=0x1){socket[_0xf2a3('0x74')](_0xf2a3('0x78'),{'UserId':Number(_0x23dca4[_0xf2a3('0x44')]['ids'][_0xdfa9ec]),'WhatsappAccountId':Number(_0x23dca4[_0xf2a3('0x58')]['id'])});}}else{socket[_0xf2a3('0x74')](_0xf2a3('0x78'),{'UserId':Number(_0x23dca4[_0xf2a3('0x44')]['ids']),'WhatsappAccountId':Number(_0x23dca4['params']['id'])});}});}})[_0xf2a3('0x21')](respondWithStatusCode(_0x4de6c5,null))[_0xf2a3('0x56')](handleError(_0x4de6c5,null));};exports[_0xf2a3('0x79')]=function(_0x2c2f8c,_0x3d5467,_0x3d6679){var _0x41e0a5={};var _0x476e28={};var _0x381381;var _0x14d3ea;return db['WhatsappAccount'][_0xf2a3('0x68')]({'where':{'id':_0x2c2f8c['params']['id']}})[_0xf2a3('0x21')](handleEntityNotFound(_0x3d5467,null))['then'](function(_0x1003c8){if(_0x1003c8){_0x381381=_0x1003c8;_0x476e28[_0xf2a3('0x47')]=_['keys'](db[_0xf2a3('0x7a')]['rawAttributes']);_0x476e28['query']=_[_0xf2a3('0x59')](_0x2c2f8c[_0xf2a3('0x44')]);_0x476e28['filters']=_['intersection'](_0x476e28[_0xf2a3('0x47')],_0x476e28[_0xf2a3('0x44')]);_0x41e0a5['attributes']=_[_0xf2a3('0x46')](_0x476e28[_0xf2a3('0x47')],qs[_0xf2a3('0x49')](_0x2c2f8c[_0xf2a3('0x44')]['fields']));_0x41e0a5[_0xf2a3('0x48')]=_0x41e0a5[_0xf2a3('0x48')][_0xf2a3('0x4a')]?_0x41e0a5[_0xf2a3('0x48')]:_0x476e28[_0xf2a3('0x47')];_0x41e0a5['order']=qs[_0xf2a3('0x4e')](_0x2c2f8c[_0xf2a3('0x44')][_0xf2a3('0x4e')]);_0x41e0a5['where']=qs[_0xf2a3('0x45')](_[_0xf2a3('0x70')](_0x2c2f8c[_0xf2a3('0x44')],_0x476e28[_0xf2a3('0x45')]));if(_0x2c2f8c['query'][_0xf2a3('0x50')]){_0x41e0a5['where']=_[_0xf2a3('0x51')](_0x41e0a5[_0xf2a3('0x4f')],{'$or':_['map'](_0x41e0a5[_0xf2a3('0x48')],function(_0x155a9b){var _0x13a321={};_0x13a321[_0x155a9b]={'$like':'%'+_0x2c2f8c[_0xf2a3('0x44')][_0xf2a3('0x50')]+'%'};return _0x13a321;})});}_0x41e0a5=_[_0xf2a3('0x51')]({},_0x41e0a5,_0x2c2f8c[_0xf2a3('0x52')]);return _0x381381[_0xf2a3('0x79')](_0x41e0a5);}})['then'](function(_0x1552b5){if(_0x1552b5){_0x14d3ea=_0x1552b5['length'];if(!_0x2c2f8c['query']['hasOwnProperty'](_0xf2a3('0x4c'))){_0x41e0a5[_0xf2a3('0x30')]=qs[_0xf2a3('0x30')](_0x2c2f8c['query'][_0xf2a3('0x30')]);_0x41e0a5['offset']=qs[_0xf2a3('0x2e')](_0x2c2f8c['query'][_0xf2a3('0x2e')]);}return _0x381381[_0xf2a3('0x79')](_0x41e0a5);}})[_0xf2a3('0x21')](function(_0x44233d){if(_0x44233d){return _0x44233d?{'count':_0x14d3ea,'rows':_0x44233d}:null;}})[_0xf2a3('0x21')](respondWithResult(_0x3d5467,null))[_0xf2a3('0x56')](handleError(_0x3d5467,null));};exports[_0xf2a3('0x7b')]=function(_0x46d584,_0x2b8ece){var _0xb04137=_0x46d584[_0xf2a3('0x58')]['id'];var _0xe45fb2=_0x46d584[_0xf2a3('0x5c')];var _0x4056a2=0xc8;var _0xe17581=null;return db[_0xf2a3('0x7c')][_0xf2a3('0x7d')]({'isolationLevel':db[_0xf2a3('0x7c')][_0xf2a3('0x7e')]['ISOLATION_LEVELS'][_0xf2a3('0x7f')]},function(_0x569ad7){return db['WhatsappAccount'][_0xf2a3('0x68')]({'where':{'id':_0xb04137},'transaction':_0x569ad7})[_0xf2a3('0x21')](function(_0x4d47a3){if(_0x4d47a3){return db['WhatsappApplication'][_0xf2a3('0x36')]({'where':{'WhatsappAccountId':_0xb04137},'transaction':_0x569ad7})[_0xf2a3('0x21')](function(){var _0x595221=_[_0xf2a3('0x43')](_0xe45fb2,function(_0x262723){_0x262723['WhatsappAccountId']=_0xb04137;return _0x262723;});return db[_0xf2a3('0x80')][_0xf2a3('0x81')](_0x595221,{'transaction':_0x569ad7});});}else{_0x4056a2=0x194;_0xe17581=[];}});})[_0xf2a3('0x21')](function(){if(_0x4056a2!==0x194){return db[_0xf2a3('0x80')][_0xf2a3('0x82')]({'where':{'WhatsappAccountId':_0xb04137},'order':_0xf2a3('0x83')})['then'](function(_0x3f439d){_0xe17581=_0x3f439d;});}})[_0xf2a3('0x56')](function(_0x430b4c){_0x4056a2=0x1f4;logger[_0xf2a3('0x28')](_0x430b4c[_0xf2a3('0x39')]);if(_0x430b4c[_0xf2a3('0x3a')]){delete _0x430b4c[_0xf2a3('0x3a')];}_0xe17581=_0x430b4c;})[_0xf2a3('0x84')](function(){if(_0xe17581===null){_0x2b8ece['sendStatus'](_0x4056a2);}else{if(_0x4056a2===0x1f4){_0x2b8ece['status'](_0x4056a2)[_0xf2a3('0x3b')](_0xe17581);}else{_0x2b8ece['status'](_0x4056a2)['json'](_0xe17581);}}});};exports[_0xf2a3('0x85')]=function(_0x8b21ae,_0x2442fc,_0x731987){var _0x17b4ba={};var _0x1384a1={};var _0x36eff8;var _0x2cd8df;return db[_0xf2a3('0x3f')][_0xf2a3('0x68')]({'where':{'id':_0x8b21ae[_0xf2a3('0x58')]['id']}})[_0xf2a3('0x21')](handleEntityNotFound(_0x2442fc,null))[_0xf2a3('0x21')](function(_0x54063c){if(_0x54063c){_0x36eff8=_0x54063c;_0x1384a1[_0xf2a3('0x47')]=_[_0xf2a3('0x59')](db[_0xf2a3('0x80')][_0xf2a3('0x40')]);_0x1384a1[_0xf2a3('0x44')]=_[_0xf2a3('0x59')](_0x8b21ae['query']);_0x1384a1[_0xf2a3('0x45')]=_['intersection'](_0x1384a1[_0xf2a3('0x47')],_0x1384a1['query']);_0x17b4ba[_0xf2a3('0x48')]=_[_0xf2a3('0x46')](_0x1384a1[_0xf2a3('0x47')],qs['fields'](_0x8b21ae[_0xf2a3('0x44')][_0xf2a3('0x49')]));_0x17b4ba['attributes']=_0x17b4ba[_0xf2a3('0x48')][_0xf2a3('0x4a')]?_0x17b4ba['attributes']:_0x1384a1[_0xf2a3('0x47')];_0x17b4ba[_0xf2a3('0x4d')]=qs[_0xf2a3('0x4e')](_0x8b21ae[_0xf2a3('0x44')]['sort']);_0x17b4ba[_0xf2a3('0x4f')]=qs['filters'](_[_0xf2a3('0x70')](_0x8b21ae[_0xf2a3('0x44')],_0x1384a1['filters']));if(_0x8b21ae[_0xf2a3('0x44')][_0xf2a3('0x50')]){_0x17b4ba[_0xf2a3('0x4f')]=_['merge'](_0x17b4ba[_0xf2a3('0x4f')],{'$or':_['map'](_0x17b4ba['attributes'],function(_0x9ee782){var _0x52ab3e={};_0x52ab3e[_0x9ee782]={'$like':'%'+_0x8b21ae[_0xf2a3('0x44')][_0xf2a3('0x50')]+'%'};return _0x52ab3e;})});}_0x17b4ba=_['merge']({},_0x17b4ba,_0x8b21ae[_0xf2a3('0x52')]);return _0x36eff8[_0xf2a3('0x85')](_0x17b4ba);}})[_0xf2a3('0x21')](function(_0x50e518){if(_0x50e518){_0x2cd8df=_0x50e518[_0xf2a3('0x4a')];if(!_0x8b21ae[_0xf2a3('0x44')][_0xf2a3('0x4b')](_0xf2a3('0x4c'))){_0x17b4ba['limit']=qs[_0xf2a3('0x30')](_0x8b21ae['query'][_0xf2a3('0x30')]);_0x17b4ba[_0xf2a3('0x2e')]=qs[_0xf2a3('0x2e')](_0x8b21ae[_0xf2a3('0x44')][_0xf2a3('0x2e')]);}return _0x36eff8[_0xf2a3('0x85')](_0x17b4ba);}})['then'](function(_0x446b90){if(_0x446b90){return _0x446b90?{'count':_0x2cd8df,'rows':_0x446b90}:null;}})[_0xf2a3('0x21')](respondWithResult(_0x2442fc,null))[_0xf2a3('0x56')](handleError(_0x2442fc,null));};exports[_0xf2a3('0x86')]=function(_0x4b22a5,_0x4dd64a,_0x5a374c){var _0x1c3799={'channel':'whatsapp'};var _0x2226fb=[];var _0x501e7d=[];var _0x4fabe3={};return db[_0xf2a3('0x3f')][_0xf2a3('0x5a')]({'where':{'id':_0x4b22a5['params']['id']},'include':[{'model':db[_0xf2a3('0x80')],'as':'Applications'}]})[_0xf2a3('0x21')](handleEntityNotFound(_0x4dd64a,null))['then'](function(_0x41e5af){_0x1c3799[_0xf2a3('0x87')]=_0x41e5af;if(_0x1c3799[_0xf2a3('0x87')]&&_0x1c3799[_0xf2a3('0x87')]['type']===_0xf2a3('0x88')&&_0x4b22a5['body'][_0xf2a3('0x89')]){if(_0x4b22a5['body'][_0xf2a3('0x89')][_0xf2a3('0x4a')]===0x0)return;if(_0x4b22a5['body']['statuses'][0x0][_0xf2a3('0x8a')]!==_0xf2a3('0x8b'))return;return db[_0xf2a3('0x8c')][_0xf2a3('0x35')]({'read':!![],'readAt':_0x4b22a5[_0xf2a3('0x5c')][_0xf2a3('0x89')][0x0][_0xf2a3('0x8d')]},{'where':{'messageId':_0x4b22a5['body']['statuses'][0x0][_0xf2a3('0x8e')]},'individualHooks':!![]})[_0xf2a3('0x21')](function(_0x20e876){return _0x4dd64a[_0xf2a3('0x2b')](0xc8)[_0xf2a3('0x2d')](_0x20e876);});}_0x1c3799['applications']=_[_0xf2a3('0x8f')](_0x41e5af['Applications'],['priority'],['asc']);if(_0x1c3799[_0xf2a3('0x87')]['Applications']){delete _0x1c3799[_0xf2a3('0x87')]['Applications'];}return db[_0xf2a3('0x90')][_0xf2a3('0x64')]()[_0xf2a3('0x21')](function(_0x317462){if(!_0x317462){throw new db['Sequelize'][(_0xf2a3('0x91'))](_0xf2a3('0x92'));}_0x2226fb=_[_0xf2a3('0x93')](_['keys'](_0x317462),[_0xf2a3('0x94'),_0xf2a3('0x95')]);_0x501e7d=_[_0xf2a3('0x93')](_[_0xf2a3('0x59')](_0x317462),['createdAt',_0xf2a3('0x95'),'CompanyId',_0xf2a3('0x96')]);_0x1c3799[_0xf2a3('0x5c')]={'mapKey':_0xf2a3('0x97')};if(_0x1c3799['account']&&_0x1c3799['account'][_0xf2a3('0x41')]===_0xf2a3('0x98')){_0x1c3799['body'][_0xf2a3('0x99')]=_0x4b22a5[_0xf2a3('0x5c')][_0xf2a3('0x9a')][_0xf2a3('0x9b')](_0xf2a3('0x9c'),'');_0x1c3799[_0xf2a3('0x5c')][_0xf2a3('0x5c')]=_0x4b22a5[_0xf2a3('0x5c')][_0xf2a3('0x9d')];_0x1c3799[_0xf2a3('0x5c')]['messageId']=_0x4b22a5[_0xf2a3('0x5c')][_0xf2a3('0x9e')];}if(_0x1c3799['account']&&_0x1c3799['account'][_0xf2a3('0x41')]===_0xf2a3('0x88')){_0x1c3799['body'][_0xf2a3('0x99')]=_0x4b22a5[_0xf2a3('0x5c')][_0xf2a3('0x9f')][0x0][_0xf2a3('0x99')];_0x1c3799[_0xf2a3('0x5c')]['body']=_0x4b22a5['body'][_0xf2a3('0x9f')][0x0][_0xf2a3('0x29')][_0xf2a3('0x5c')];_0x1c3799[_0xf2a3('0x5c')]['messageId']=_0x4b22a5[_0xf2a3('0x5c')]['notifications'][0x0]['message_id'];}if(_0x1c3799[_0xf2a3('0x5c')]['id']){delete _0x1c3799[_0xf2a3('0x5c')]['id'];}if(_[_0xf2a3('0xa0')](_0x1c3799[_0xf2a3('0x5c')]['from'])){throw new db[(_0xf2a3('0xa1'))][(_0xf2a3('0x91'))](_0xf2a3('0xa2'));}if(_[_0xf2a3('0xa0')](_0x1c3799['body'][_0xf2a3('0x5c')])||_0x1c3799[_0xf2a3('0x5c')][_0xf2a3('0x5c')]===''){throw new db[(_0xf2a3('0xa1'))][(_0xf2a3('0x91'))](_0xf2a3('0xa3'));}if(_['isNil'](_0x1c3799[_0xf2a3('0x5c')][_0xf2a3('0xa4')])){throw new db['Sequelize'][(_0xf2a3('0x91'))]('mapKey\x20is\x20mandatory,\x20please\x20use\x20one\x20of\x20these:\x20'+_0x501e7d);}if(!_['includes'](_0x501e7d,_0x1c3799['body'][_0xf2a3('0xa4')])){throw new db['Sequelize'][(_0xf2a3('0x91'))]('mapKey\x20invalid,\x20please\x20use\x20one\x20of\x20these:\x20'+_0x501e7d);}_0x4fabe3[_0x1c3799[_0xf2a3('0x5c')][_0xf2a3('0xa4')]]=_0x1c3799[_0xf2a3('0x5c')][_0xf2a3('0x99')];return db[_0xf2a3('0xa5')][_0xf2a3('0x5a')]({'where':{'id':_0x1c3799['account'][_0xf2a3('0x96')]},'include':[{'model':db['CmContact'],'as':_0xf2a3('0xa6'),'where':_0x4fabe3,'limit':0x1,'order':[['updatedAt',_0xf2a3('0xa7')]]}]});})['then'](handleEntityNotFound(_0x4dd64a,null))[_0xf2a3('0x21')](function(_0x33a60a){if(_0x33a60a){_0x1c3799['list']=_[_0xf2a3('0xa8')](_0x33a60a,[_0xf2a3('0xa6')]);if(_0x33a60a['Contacts']['length']){return _0x33a60a[_0xf2a3('0xa6')][0x0];}var _0x5c127a=_['defaults'](_0x1c3799['body'],{'firstName':_0x1c3799[_0xf2a3('0x5c')][_0xf2a3('0x99')],'ListId':_0x33a60a['id']});_0x5c127a[_0x1c3799[_0xf2a3('0x5c')][_0xf2a3('0xa4')]]=_0x1c3799[_0xf2a3('0x5c')][_0xf2a3('0x99')];return db[_0xf2a3('0x90')][_0xf2a3('0x5b')](_0x5c127a,{'fields':_0x2226fb,'raw':!![]});}})[_0xf2a3('0x21')](handleEntityNotFound(_0x4dd64a,null))[_0xf2a3('0x21')](function(_0x176ad6){if(_0x176ad6){_0x1c3799[_0xf2a3('0xa9')]=_0x176ad6;var _0x4073ef={'ContactId':_0x176ad6['id'],'phone':_0x1c3799['body'][_0xf2a3('0x99')],'WhatsappAccountId':_0x4b22a5['params']['id']};var _0x135ecf={'ContactId':_0x176ad6['id'],'WhatsappAccountId':_0x4b22a5['params']['id'],'closed':![]};return db[_0xf2a3('0xaa')]['find']({'where':_0x135ecf})[_0xf2a3('0x21')](function(_0x480ca2){if(_0x480ca2){return[_0x480ca2,![]];}return db[_0xf2a3('0xaa')]['create'](_0x4073ef)['then'](function(_0x4e3e11){return[_0x4e3e11,!![]];});});}})[_0xf2a3('0x73')](function(_0x40804d,_0x9374fd){_0x1c3799[_0xf2a3('0xab')]=_0x40804d[_0xf2a3('0x37')]({'plain':!![]});_0x1c3799['interaction'][_0xf2a3('0xac')]=![];if(_0x9374fd){if(_0x1c3799[_0xf2a3('0x87')][_0xf2a3('0xad')]){_0x1c3799[_0xf2a3('0xae')][_0xf2a3('0xaf')]({'id':0x0,'priority':_0x1c3799['applications'][_0xf2a3('0x4a')]+0x1,'app':_0xf2a3('0xb0'),'appdata':_0xf2a3('0xb1'),'interval':_0xf2a3('0xb2')});}_0x1c3799['interaction']['created']=!![];}return db[_0xf2a3('0x8c')][_0xf2a3('0x5b')]({'phone':_0x1c3799[_0xf2a3('0x5c')][_0xf2a3('0x99')],'messageId':_0x1c3799['body'][_0xf2a3('0xb3')],'body':_0x1c3799[_0xf2a3('0x5c')][_0xf2a3('0x5c')],'WhatsappAccountId':_0x4b22a5[_0xf2a3('0x58')]['id'],'WhatsappInteractionId':_0x40804d['id'],'direction':'in','ContactId':_0x40804d[_0xf2a3('0xb4')],'AttachmentId':_0x1c3799['body'][_0xf2a3('0xb5')]});})[_0xf2a3('0x21')](function(_0x1b2eb6){_0x1c3799['message']=_0x1b2eb6;if(_0x1c3799[_0xf2a3('0xab')][_0xf2a3('0xb6')]){return db[_0xf2a3('0x7a')][_0xf2a3('0x5a')]({'attributes':['id',_0xf2a3('0x3a')],'where':{'id':_0x1c3799[_0xf2a3('0xab')][_0xf2a3('0xb6')]}})[_0xf2a3('0x21')](function(_0x420d6a){if(_0x420d6a){_0x1c3799[_0xf2a3('0xae')][_0xf2a3('0xb7')]({'id':0x0,'priority':0x0,'app':'agent','appdata':_0x420d6a[_0xf2a3('0x3a')]+','+(_0x1c3799[_0xf2a3('0x87')][_0xf2a3('0xb8')]||0xa),'interval':'*,*,*,*'});}return respondWithRpcPromise(_0xf2a3('0xb9'),_0xf2a3('0xba'),_0x1c3799);});}return respondWithRpcPromise(_0xf2a3('0xb9'),'startRouting',_0x1c3799);})[_0xf2a3('0x21')](function(_0x523bb9){if(_0x523bb9){var _0x509548=0xc8;var _0xa77cda=_0xf2a3('0xbb');logger[_0xf2a3('0x22')](_0xf2a3('0x26'),_0xa77cda,_0x509548,'entity\x20found');logger[_0xf2a3('0x25')](_0xf2a3('0xbc'),_0xa77cda,_0x509548,_0xf2a3('0xbd'),JSON[_0xf2a3('0x27')](_0x523bb9));if(_0x1c3799['account'][_0xf2a3('0x41')]===_0xf2a3('0x98')){return _0x4dd64a[_0xf2a3('0x2b')](_0x509548)[_0xf2a3('0x31')](_0xf2a3('0xbe'),_0xf2a3('0xbf'))[_0xf2a3('0x3b')]('<?xml\x20version=\x221.0\x22\x20encoding=\x22UTF-8\x22?>\x0a<Response></Response>');}else{return _0x4dd64a['status'](_0x509548)['json'](_0x523bb9);}}});})[_0xf2a3('0x56')](handleError(_0x4dd64a,null));};exports[_0xf2a3('0x3b')]=function(_0x508f34,_0x546d72,_0x19a367){var _0x165ca5,_0x28c1c8,_0x168a83;if(_['isNil'](_0x508f34['body'][_0xf2a3('0x5c')])||_0x508f34['body'][_0xf2a3('0x5c')]===''){throw new db[(_0xf2a3('0xa1'))][(_0xf2a3('0x91'))](_0xf2a3('0xa3'));}if(_['isNil'](_0x508f34[_0xf2a3('0x5c')]['to'])){throw new db[(_0xf2a3('0xa1'))][(_0xf2a3('0x91'))](_0xf2a3('0xc0'));}_0x165ca5=_0x508f34[_0xf2a3('0x5c')]['to'];return db['WhatsappAccount'][_0xf2a3('0x5a')]({'where':{'id':_0x508f34[_0xf2a3('0x58')]['id']},'include':[{'model':db['CmList'],'as':'List','include':[{'model':db[_0xf2a3('0x90')],'as':_0xf2a3('0xa6'),'where':{'mobile':_0x165ca5},'limit':0x1,'order':[[_0xf2a3('0x95'),_0xf2a3('0xa7')]]}]}]})[_0xf2a3('0x21')](handleEntityNotFound(_0x546d72,null))['then'](function(_0x98d0ed){if(_0x98d0ed&&_0x98d0ed[_0xf2a3('0xc1')]){_0x28c1c8=_0x98d0ed['get']({'plain':!![]});if(_0x28c1c8[_0xf2a3('0xc1')]&&_0x28c1c8['List'][_0xf2a3('0xa6')][_0xf2a3('0x4a')]){return _0x28c1c8[_0xf2a3('0xc1')]['Contacts'][0x0];}return db[_0xf2a3('0x90')][_0xf2a3('0x5b')](_['defaults'](_0x508f34['body'],{'firstName':_0x165ca5,'mobile':_0x165ca5,'phone':_0x165ca5,'ListId':_0x28c1c8[_0xf2a3('0x96')]}));}})['then'](handleEntityNotFound(_0x546d72,null))[_0xf2a3('0x21')](function(_0x1dd58c){if(_0x1dd58c){_0x168a83=_0x1dd58c;return db[_0xf2a3('0xaa')][_0xf2a3('0x5a')]({'where':{'ContactId':_0x168a83['id'],'closed':![],'WhatsappAccountId':_0x28c1c8['id']}})[_0xf2a3('0x21')](function(_0x54a2c5){if(_0x54a2c5){return[_0x54a2c5,![]];}return db['WhatsappInteraction']['create']({'UserId':_0x508f34['user']['id'],'ContactId':_0x168a83['id'],'WhatsappAccountId':_0x28c1c8['id'],'phone':_0x165ca5,'firstMsgDirection':'out','Messages':[_[_0xf2a3('0x51')](_0x508f34[_0xf2a3('0x5c')],{'read':![],'body':_0x508f34['body']['body'],'phone':_0x165ca5,'WhatsappAccountId':_0x28c1c8['id'],'UserId':_0x508f34[_0xf2a3('0x5d')]['id'],'ContactId':_0x168a83['id']})]},{'include':[{'model':db[_0xf2a3('0x8c')],'as':_0xf2a3('0xc2')}]})[_0xf2a3('0x21')](function(_0x547ab9){return[_0x547ab9,!![]];});});}})[_0xf2a3('0x73')](function(_0x1027e5,_0x3f45c2){if(_0x3f45c2){return _0x1027e5;}return db[_0xf2a3('0x8c')][_0xf2a3('0x5b')](_[_0xf2a3('0x51')](_0x508f34['body'],{'read':![],'body':_0x508f34['body'][_0xf2a3('0x5c')],'phone':_0x165ca5,'WhatsappAccountId':_0x28c1c8['id'],'WhatsappInteractionId':_0x1027e5['id'],'UserId':_0x508f34[_0xf2a3('0x5d')]['id'],'ContactId':_0x168a83['id']}))[_0xf2a3('0x21')](function(_0x1e3175){_0x1027e5['dataValues'][_0xf2a3('0xc2')]=[];_0x1027e5[_0xf2a3('0xc3')][_0xf2a3('0xc2')]['push'](_0x1e3175[_0xf2a3('0xc3')]);return _0x1027e5;});})[_0xf2a3('0x21')](respondWithResult(_0x546d72,null))[_0xf2a3('0x56')](handleError(_0x546d72,null));};