Built motion from commit 10af8726.|2.6.34
[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 _0xd04a=['queue','waitForTheAssignedQueue','Start','receiveMessage','WhatsappAccount,\x20%s,\x20%s,\x20%s,\x20%s','entity\x20found','twilio','Content-Type','text/xml','<?xml\x20version=\x221.0\x22\x20encoding=\x22UTF-8\x22?>\x0a<Response></Response>','to\x20is\x20mandatory','List','Messages','dataValues','push','zip-dir','fast-json-patch','moment','mustache','util','path','sox','to-csv','fs-extra','lodash','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','redis','localhost','socket.io-emitter','register','jayson/promise','http','info','WhatsappAccount,\x20%s,\x20%s','debug','WhatsappAccount,\x20%s,\x20%s,\x20%s','request\x20sent','stringify','error','code','message','result','catch','sendStatus','status','end','json','offset','limit','count','set','Content-Range','apply','reject','save','update','then','destroy','get','WhatsappAccounts','UserProfileResource','stack','name','send','index','Pause','mandatoryDispositionPause','map','WhatsappAccount','rawAttributes','fieldName','type','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','sort','where','pick','merge','VIRTUAL','includeAll','include','findAll','rows','show','params','find','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','user','UserProfileSection','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','body','describe','addDisposition','create','getDispositions','findOne','Disposition','nolimit','order','filter','options','removeDispositions','ids','addAnswer','WhatsappAccountId','CannedAnswer','getAnswers','removeAnswers','addAgents','omit','spread','emit','userWhatsappAccount:save','removeAgents','isArray','userWhatsappAccount:remove','getAgents','User','sequelize','transaction','READ_COMMITTED','WhatsappApplication','bulkCreate','findAndCountAll','priority','finally','getApplications','notify','whatsapp','Applications','account','sinch','statuses','state','read','WhatsappMessage','orderBy','CmContact','ValidationError','difference','createdAt','updatedAt','CompanyId','ListId','mobile','from','replace','Body','MessageSid','notifications','messageId','message_id','isNil','Sequelize','from\x20is\x20mandatory','body\x20is\x20mandatory\x20and\x20not\x20empty','mapKey','mapKey\x20is\x20mandatory,\x20please\x20use\x20one\x20of\x20these:\x20','includes','mapKey\x20invalid,\x20please\x20use\x20one\x20of\x20these:\x20','CmList','Contacts','DESC','list','defaults','contact','WhatsappInteraction','interaction','created','applications','close','unmanaged','*,*,*,*','ContactId','UserId','unshift','agent','waitForTheAssignedAgent','queueId'];(function(_0x552ab0,_0x5130a4){var _0x479068=function(_0x16fe15){while(--_0x16fe15){_0x552ab0['push'](_0x552ab0['shift']());}};_0x479068(++_0x5130a4);}(_0xd04a,0xd6));var _0xad04=function(_0x1d8ed8,_0x59188e){_0x1d8ed8=_0x1d8ed8-0x0;var _0xe7d983=_0xd04a[_0x1d8ed8];return _0xe7d983;};'use strict';var emlformat=require('eml-format');var rimraf=require('rimraf');var zipdir=require(_0xad04('0x0'));var jsonpatch=require(_0xad04('0x1'));var rp=require('request-promise');var moment=require(_0xad04('0x2'));var BPromise=require('bluebird');var Mustache=require(_0xad04('0x3'));var util=require(_0xad04('0x4'));var path=require(_0xad04('0x5'));var sox=require(_0xad04('0x6'));var csv=require(_0xad04('0x7'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0xad04('0x8'));var _=require(_0xad04('0x9'));var squel=require('squel');var crypto=require('crypto');var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require(_0xad04('0x7'));var querystring=require(_0xad04('0xa'));var Papa=require('papaparse');var Redis=require(_0xad04('0xb'));var authService=require(_0xad04('0xc'));var qs=require(_0xad04('0xd'));var as=require(_0xad04('0xe'));var hardwareService=require(_0xad04('0xf'));var logger=require(_0xad04('0x10'))(_0xad04('0x11'));var utils=require(_0xad04('0x12'));var config=require(_0xad04('0x13'));var licenseUtil=require(_0xad04('0x14'));var db=require('../../mysqldb')['db'];config['redis']=_['defaults'](config[_0xad04('0x15')],{'host':_0xad04('0x16'),'port':0x18eb});var socket=require(_0xad04('0x17'))(new Redis(config[_0xad04('0x15')]));require('./whatsappAccount.socket')[_0xad04('0x18')](socket);var jayson=require(_0xad04('0x19'));var client=jayson['client'][_0xad04('0x1a')]({'port':0x232c});function respondWithRpcPromise(_0x3f207c,_0xf4ff4d,_0xd13025,_0x465167){return new BPromise(function(_0x3bb4aa,_0x2ac132){var _0x319e76=_0x465167||client;return _0x319e76['request'](_0x3f207c,_0xd13025)['then'](function(_0x5c30a5){logger[_0xad04('0x1b')](_0xad04('0x1c'),_0xf4ff4d,'request\x20sent');logger[_0xad04('0x1d')](_0xad04('0x1e'),_0xf4ff4d,_0xad04('0x1f'),JSON[_0xad04('0x20')](_0x5c30a5));if(_0x5c30a5[_0xad04('0x21')]){if(_0x5c30a5[_0xad04('0x21')][_0xad04('0x22')]===0x1f4){logger['error'](_0xad04('0x1c'),_0xf4ff4d,_0x5c30a5[_0xad04('0x21')][_0xad04('0x23')]);return _0x2ac132(_0x5c30a5[_0xad04('0x21')][_0xad04('0x23')]);}logger[_0xad04('0x21')](_0xad04('0x1c'),_0xf4ff4d,_0x5c30a5[_0xad04('0x21')][_0xad04('0x23')]);return _0x3bb4aa(_0x5c30a5[_0xad04('0x21')]['message']);}else{logger['info']('WhatsappAccount,\x20%s,\x20%s',_0xf4ff4d,'request\x20sent');_0x3bb4aa(_0x5c30a5[_0xad04('0x24')]['message']);}})[_0xad04('0x25')](function(_0x3f93c5){logger[_0xad04('0x21')]('WhatsappAccount,\x20%s,\x20%s',_0xf4ff4d,_0x3f93c5);_0x2ac132(_0x3f93c5);});});}function respondWithStatusCode(_0xdfad6d,_0x15d006){_0x15d006=_0x15d006||0xcc;return function(_0x497576){if(_0x497576){return _0xdfad6d[_0xad04('0x26')](_0x15d006);}return _0xdfad6d[_0xad04('0x27')](_0x15d006)[_0xad04('0x28')]();};}function respondWithResult(_0x425c43,_0x32444e){_0x32444e=_0x32444e||0xc8;return function(_0x4dc9ac){if(_0x4dc9ac){return _0x425c43['status'](_0x32444e)[_0xad04('0x29')](_0x4dc9ac);}};}function respondWithFilteredResult(_0x53efa5,_0x18d24a){return function(_0x5176f6){if(_0x5176f6){var _0x57db11=typeof _0x18d24a[_0xad04('0x2a')]==='undefined'&&typeof _0x18d24a[_0xad04('0x2b')]==='undefined';var _0x26f4f3=_0x5176f6[_0xad04('0x2c')];var _0x116f32=_0x57db11?0x0:_0x18d24a[_0xad04('0x2a')];var _0xf54675=_0x57db11?_0x5176f6[_0xad04('0x2c')]:_0x18d24a[_0xad04('0x2a')]+_0x18d24a[_0xad04('0x2b')];var _0x4c0143;if(_0xf54675>=_0x26f4f3){_0xf54675=_0x26f4f3;_0x4c0143=0xc8;}else{_0x4c0143=0xce;}_0x53efa5[_0xad04('0x27')](_0x4c0143);return _0x53efa5[_0xad04('0x2d')](_0xad04('0x2e'),_0x116f32+'-'+_0xf54675+'/'+_0x26f4f3)['json'](_0x5176f6);}return null;};}function patchUpdates(_0x280b3e){return function(_0x173887){try{jsonpatch[_0xad04('0x2f')](_0x173887,_0x280b3e,!![]);}catch(_0x48ae96){return BPromise[_0xad04('0x30')](_0x48ae96);}return _0x173887[_0xad04('0x31')]();};}function saveUpdates(_0x409421,_0x3dd6a5){return function(_0x3cf953){if(_0x3cf953){return _0x3cf953[_0xad04('0x32')](_0x409421)[_0xad04('0x33')](function(_0x28e610){return _0x28e610;});}return null;};}function removeEntity(_0x5d4115,_0x5c40c5){return function(_0x5799fe){if(_0x5799fe){return _0x5799fe[_0xad04('0x34')]()['then'](function(){var _0x5b863b=_0x5799fe[_0xad04('0x35')]({'plain':!![]});var _0xd6c16d=_0xad04('0x36');return db[_0xad04('0x37')][_0xad04('0x34')]({'where':{'type':_0xd6c16d,'resourceId':_0x5b863b['id']}})[_0xad04('0x33')](function(){return _0x5799fe;});})[_0xad04('0x33')](function(){_0x5d4115[_0xad04('0x27')](0xcc)[_0xad04('0x28')]();});}};}function handleEntityNotFound(_0x592d98,_0x1df9bc){return function(_0x56f405){if(!_0x56f405){_0x592d98['sendStatus'](0x194);}return _0x56f405;};}function handleError(_0x5b4238,_0x351d37){_0x351d37=_0x351d37||0x1f4;return function(_0x3e3f8f){logger['error'](_0x3e3f8f[_0xad04('0x38')]);if(_0x3e3f8f['name']){delete _0x3e3f8f[_0xad04('0x39')];}_0x5b4238[_0xad04('0x27')](_0x351d37)[_0xad04('0x3a')](_0x3e3f8f);};}exports[_0xad04('0x3b')]=function(_0x3b65f1,_0x215531){var _0x492156={'include':[{'model':db[_0xad04('0x3c')],'as':_0xad04('0x3d')}]},_0x3ab91d={},_0x561106={'count':0x0,'rows':[]};var _0xaa0249=_[_0xad04('0x3e')](db[_0xad04('0x3f')][_0xad04('0x40')],function(_0x5ea1a1){return{'name':_0x5ea1a1[_0xad04('0x41')],'type':_0x5ea1a1[_0xad04('0x42')]['key']};});_0x3ab91d[_0xad04('0x43')]=_['map'](_0xaa0249,_0xad04('0x39'));_0x3ab91d[_0xad04('0x44')]=_[_0xad04('0x45')](_0x3b65f1['query']);_0x3ab91d[_0xad04('0x46')]=_[_0xad04('0x47')](_0x3ab91d['model'],_0x3ab91d[_0xad04('0x44')]);_0x492156[_0xad04('0x48')]=_['intersection'](_0x3ab91d[_0xad04('0x43')],qs[_0xad04('0x49')](_0x3b65f1['query'][_0xad04('0x49')]));_0x492156[_0xad04('0x48')]=_0x492156[_0xad04('0x48')][_0xad04('0x4a')]?_0x492156[_0xad04('0x48')]:_0x3ab91d[_0xad04('0x43')];if(!_0x3b65f1[_0xad04('0x44')][_0xad04('0x4b')]('nolimit')){_0x492156[_0xad04('0x2b')]=qs[_0xad04('0x2b')](_0x3b65f1[_0xad04('0x44')]['limit']);_0x492156['offset']=qs[_0xad04('0x2a')](_0x3b65f1[_0xad04('0x44')][_0xad04('0x2a')]);}_0x492156['order']=qs[_0xad04('0x4c')](_0x3b65f1[_0xad04('0x44')][_0xad04('0x4c')]);_0x492156[_0xad04('0x4d')]=qs['filters'](_[_0xad04('0x4e')](_0x3b65f1[_0xad04('0x44')],_0x3ab91d[_0xad04('0x46')]),_0xaa0249);if(_0x3b65f1[_0xad04('0x44')]['filter']){_0x492156[_0xad04('0x4d')]=_[_0xad04('0x4f')](_0x492156['where'],{'$or':_[_0xad04('0x3e')](_0xaa0249,function(_0x3c631b){if(_0x3c631b[_0xad04('0x42')]!==_0xad04('0x50')){var _0x1deb6c={};_0x1deb6c[_0x3c631b[_0xad04('0x39')]]={'$like':'%'+_0x3b65f1[_0xad04('0x44')]['filter']+'%'};return _0x1deb6c;}})});}_0x492156=_[_0xad04('0x4f')]({},_0x492156,_0x3b65f1['options']);var _0x4bd6fc={'where':_0x492156[_0xad04('0x4d')]};return db[_0xad04('0x3f')][_0xad04('0x2c')](_0x4bd6fc)[_0xad04('0x33')](function(_0x2d514c){_0x561106[_0xad04('0x2c')]=_0x2d514c;if(_0x3b65f1[_0xad04('0x44')][_0xad04('0x51')]){_0x492156[_0xad04('0x52')]=[{'all':!![]}];}return db[_0xad04('0x3f')][_0xad04('0x53')](_0x492156);})[_0xad04('0x33')](function(_0xc920a2){_0x561106[_0xad04('0x54')]=_0xc920a2;return _0x561106;})[_0xad04('0x33')](respondWithFilteredResult(_0x215531,_0x492156))[_0xad04('0x25')](handleError(_0x215531,null));};exports[_0xad04('0x55')]=function(_0xc9cab1,_0x2ed95e){var _0x52b037={'raw':![],'where':{'id':_0xc9cab1[_0xad04('0x56')]['id']},'include':[{'model':db['Pause'],'as':_0xad04('0x3d')}]},_0x3ee75e={};_0x3ee75e[_0xad04('0x43')]=_['keys'](db[_0xad04('0x3f')][_0xad04('0x40')]);_0x3ee75e[_0xad04('0x44')]=_[_0xad04('0x45')](_0xc9cab1[_0xad04('0x44')]);_0x3ee75e[_0xad04('0x46')]=_['intersection'](_0x3ee75e['model'],_0x3ee75e[_0xad04('0x44')]);_0x52b037[_0xad04('0x48')]=_[_0xad04('0x47')](_0x3ee75e[_0xad04('0x43')],qs[_0xad04('0x49')](_0xc9cab1[_0xad04('0x44')][_0xad04('0x49')]));_0x52b037[_0xad04('0x48')]=_0x52b037[_0xad04('0x48')][_0xad04('0x4a')]?_0x52b037[_0xad04('0x48')]:_0x3ee75e['model'];if(_0xc9cab1['query'][_0xad04('0x51')]){_0x52b037[_0xad04('0x52')]=[{'all':!![]}];}_0x52b037=_[_0xad04('0x4f')]({},_0x52b037,_0xc9cab1['options']);return db[_0xad04('0x3f')][_0xad04('0x57')](_0x52b037)['then'](handleEntityNotFound(_0x2ed95e,null))['then'](respondWithResult(_0x2ed95e,null))[_0xad04('0x25')](handleError(_0x2ed95e,null));};exports['create']=function(_0x40fde9,_0x302805){return db['WhatsappAccount']['create'](_0x40fde9['body'],{})['then'](function(_0x4b41cd){var _0x941e48=_0x40fde9['user'][_0xad04('0x35')]({'plain':!![]});if(!_0x941e48)throw new Error(_0xad04('0x58'));if(_0x941e48[_0xad04('0x59')]===_0xad04('0x5a')){var _0x2ba59a=_0x4b41cd[_0xad04('0x35')]({'plain':!![]});var _0x29ae57=_0xad04('0x36');return db[_0xad04('0x5b')][_0xad04('0x57')]({'where':{'name':_0x29ae57,'userProfileId':_0x941e48[_0xad04('0x5c')]},'raw':!![]})[_0xad04('0x33')](function(_0x14249d){if(_0x14249d&&_0x14249d[_0xad04('0x5d')]===0x0){return db[_0xad04('0x37')]['create']({'name':_0x2ba59a['name'],'resourceId':_0x2ba59a['id'],'type':_0x14249d[_0xad04('0x39')],'sectionId':_0x14249d['id']},{})[_0xad04('0x33')](function(){return _0x4b41cd;});}else{return _0x4b41cd;}})[_0xad04('0x25')](function(_0x4fc8ce){logger[_0xad04('0x21')](_0xad04('0x5e'),_0x4fc8ce);throw _0x4fc8ce;});}return _0x4b41cd;})[_0xad04('0x33')](respondWithResult(_0x302805,0xc9))[_0xad04('0x25')](handleError(_0x302805,null));};exports[_0xad04('0x32')]=function(_0x259c84,_0x2a3c2f){if(_0x259c84[_0xad04('0x5f')]['id']){delete _0x259c84[_0xad04('0x5f')]['id'];}return db['WhatsappAccount'][_0xad04('0x57')]({'where':{'id':_0x259c84[_0xad04('0x56')]['id']},'include':[{'model':db[_0xad04('0x3c')],'as':_0xad04('0x3d')}]})[_0xad04('0x33')](handleEntityNotFound(_0x2a3c2f,null))[_0xad04('0x33')](saveUpdates(_0x259c84[_0xad04('0x5f')],null))[_0xad04('0x33')](respondWithResult(_0x2a3c2f,null))['catch'](handleError(_0x2a3c2f,null));};exports['destroy']=function(_0x4302f1,_0x180e25){return db[_0xad04('0x3f')]['find']({'where':{'id':_0x4302f1[_0xad04('0x56')]['id']}})['then'](handleEntityNotFound(_0x180e25,null))[_0xad04('0x33')](removeEntity(_0x180e25,null))['catch'](handleError(_0x180e25,null));};exports[_0xad04('0x60')]=function(_0x403157,_0x19fc67){return db[_0xad04('0x3f')][_0xad04('0x60')]()[_0xad04('0x33')](respondWithResult(_0x19fc67,null))[_0xad04('0x25')](handleError(_0x19fc67,null));};exports[_0xad04('0x61')]=function(_0x1cee38,_0x45222e,_0x19bddd){if(_0x1cee38[_0xad04('0x5f')]['id']){delete _0x1cee38['body']['id'];}return db['WhatsappAccount'][_0xad04('0x57')]({'where':{'id':_0x1cee38['params']['id']}})['then'](handleEntityNotFound(_0x45222e,null))[_0xad04('0x33')](function(_0x565bb2){if(_0x565bb2){_0x1cee38['body']['WhatsappAccountId']=_0x565bb2['id'];return db['Disposition'][_0xad04('0x62')](_0x1cee38['body']);}})['then'](respondWithResult(_0x45222e,null))[_0xad04('0x25')](handleError(_0x45222e,null));};exports[_0xad04('0x63')]=function(_0x16b88e,_0x386f3c,_0x1cb04a){var _0x30edc6={'raw':![],'where':{}};var _0x132153={};var _0x5ec103={'count':0x0,'rows':[]};return db[_0xad04('0x3f')][_0xad04('0x64')]({'where':{'id':_0x16b88e[_0xad04('0x56')]['id']}})[_0xad04('0x33')](handleEntityNotFound(_0x386f3c,null))['then'](function(_0x3b3a81){if(_0x3b3a81){_0x132153['model']=_[_0xad04('0x45')](db[_0xad04('0x65')][_0xad04('0x40')]);_0x132153[_0xad04('0x44')]=_['keys'](_0x16b88e[_0xad04('0x44')]);_0x132153[_0xad04('0x46')]=_['intersection'](_0x132153[_0xad04('0x43')],_0x132153['query']);_0x30edc6[_0xad04('0x48')]=_['intersection'](_0x132153[_0xad04('0x43')],qs['fields'](_0x16b88e[_0xad04('0x44')][_0xad04('0x49')]));_0x30edc6[_0xad04('0x48')]=_0x30edc6[_0xad04('0x48')][_0xad04('0x4a')]?_0x30edc6[_0xad04('0x48')]:_0x132153[_0xad04('0x43')];if(!_0x16b88e[_0xad04('0x44')][_0xad04('0x4b')](_0xad04('0x66'))){_0x30edc6[_0xad04('0x2b')]=qs[_0xad04('0x2b')](_0x16b88e[_0xad04('0x44')][_0xad04('0x2b')]);_0x30edc6[_0xad04('0x2a')]=qs[_0xad04('0x2a')](_0x16b88e[_0xad04('0x44')]['offset']);}_0x30edc6[_0xad04('0x67')]=qs['sort'](_0x16b88e[_0xad04('0x44')]['sort']);_0x30edc6[_0xad04('0x4d')]=qs[_0xad04('0x46')](_[_0xad04('0x4e')](_0x16b88e[_0xad04('0x44')],_0x132153[_0xad04('0x46')]));_0x30edc6[_0xad04('0x4d')]['WhatsappAccountId']=_0x3b3a81['id'];if(_0x16b88e['query']['filter']){_0x30edc6[_0xad04('0x4d')]=_[_0xad04('0x4f')](_0x30edc6[_0xad04('0x4d')],{'$or':_['map'](_0x30edc6['attributes'],function(_0x39c494){var _0x2ec174={};_0x2ec174[_0x39c494]={'$like':'%'+_0x16b88e[_0xad04('0x44')][_0xad04('0x68')]+'%'};return _0x2ec174;})});}_0x30edc6=_[_0xad04('0x4f')]({},_0x30edc6,_0x16b88e[_0xad04('0x69')]);return db[_0xad04('0x65')][_0xad04('0x2c')]({'where':_0x30edc6[_0xad04('0x4d')]})[_0xad04('0x33')](function(_0x1b9fb2){_0x5ec103[_0xad04('0x2c')]=_0x1b9fb2;if(_0x16b88e['query'][_0xad04('0x51')]){_0x30edc6[_0xad04('0x52')]=[{'all':!![]}];}return db['Disposition'][_0xad04('0x53')](_0x30edc6);})[_0xad04('0x33')](function(_0x18ff86){_0x5ec103[_0xad04('0x54')]=_0x18ff86;return _0x5ec103;});}})['then'](respondWithFilteredResult(_0x386f3c,_0x30edc6))[_0xad04('0x25')](handleError(_0x386f3c,null));};exports[_0xad04('0x6a')]=function(_0x5dc2e1,_0x4dae05,_0x3b3210){return db['WhatsappAccount'][_0xad04('0x57')]({'where':{'id':_0x5dc2e1[_0xad04('0x56')]['id']}})[_0xad04('0x33')](handleEntityNotFound(_0x4dae05,null))[_0xad04('0x33')](function(_0x2357b6){if(_0x2357b6){return _0x2357b6[_0xad04('0x6a')](_0x5dc2e1[_0xad04('0x44')][_0xad04('0x6b')]);}})[_0xad04('0x33')](respondWithStatusCode(_0x4dae05,null))[_0xad04('0x25')](handleError(_0x4dae05,null));};exports[_0xad04('0x6c')]=function(_0x268a5b,_0x2b1500,_0x48e8d3){if(_0x268a5b[_0xad04('0x5f')]['id']){delete _0x268a5b[_0xad04('0x5f')]['id'];}return db[_0xad04('0x3f')][_0xad04('0x57')]({'where':{'id':_0x268a5b[_0xad04('0x56')]['id']}})['then'](handleEntityNotFound(_0x2b1500,null))[_0xad04('0x33')](function(_0x162a9c){if(_0x162a9c){_0x268a5b[_0xad04('0x5f')][_0xad04('0x6d')]=_0x162a9c['id'];return db[_0xad04('0x6e')][_0xad04('0x62')](_0x268a5b[_0xad04('0x5f')]);}})[_0xad04('0x33')](respondWithResult(_0x2b1500,null))[_0xad04('0x25')](handleError(_0x2b1500,null));};exports[_0xad04('0x6f')]=function(_0x41e3be,_0x5c5011,_0x433c05){var _0x50c59e={'raw':![],'where':{}};var _0x4b2927={};var _0x149ed2={'count':0x0,'rows':[]};return db[_0xad04('0x3f')][_0xad04('0x64')]({'where':{'id':_0x41e3be['params']['id']}})[_0xad04('0x33')](handleEntityNotFound(_0x5c5011,null))['then'](function(_0x5e4d4d){if(_0x5e4d4d){_0x4b2927[_0xad04('0x43')]=_[_0xad04('0x45')](db[_0xad04('0x6e')][_0xad04('0x40')]);_0x4b2927[_0xad04('0x44')]=_['keys'](_0x41e3be['query']);_0x4b2927[_0xad04('0x46')]=_[_0xad04('0x47')](_0x4b2927[_0xad04('0x43')],_0x4b2927[_0xad04('0x44')]);_0x50c59e[_0xad04('0x48')]=_['intersection'](_0x4b2927[_0xad04('0x43')],qs[_0xad04('0x49')](_0x41e3be[_0xad04('0x44')][_0xad04('0x49')]));_0x50c59e[_0xad04('0x48')]=_0x50c59e[_0xad04('0x48')][_0xad04('0x4a')]?_0x50c59e[_0xad04('0x48')]:_0x4b2927[_0xad04('0x43')];if(!_0x41e3be[_0xad04('0x44')]['hasOwnProperty']('nolimit')){_0x50c59e['limit']=qs[_0xad04('0x2b')](_0x41e3be[_0xad04('0x44')][_0xad04('0x2b')]);_0x50c59e[_0xad04('0x2a')]=qs[_0xad04('0x2a')](_0x41e3be[_0xad04('0x44')][_0xad04('0x2a')]);}_0x50c59e['order']=qs[_0xad04('0x4c')](_0x41e3be[_0xad04('0x44')][_0xad04('0x4c')]);_0x50c59e[_0xad04('0x4d')]=qs['filters'](_['pick'](_0x41e3be[_0xad04('0x44')],_0x4b2927[_0xad04('0x46')]));_0x50c59e[_0xad04('0x4d')][_0xad04('0x6d')]=_0x5e4d4d['id'];if(_0x41e3be[_0xad04('0x44')]['filter']){_0x50c59e[_0xad04('0x4d')]=_[_0xad04('0x4f')](_0x50c59e['where'],{'$or':_[_0xad04('0x3e')](_0x50c59e[_0xad04('0x48')],function(_0x47c386){var _0x75c83c={};_0x75c83c[_0x47c386]={'$like':'%'+_0x41e3be['query'][_0xad04('0x68')]+'%'};return _0x75c83c;})});}_0x50c59e=_[_0xad04('0x4f')]({},_0x50c59e,_0x41e3be[_0xad04('0x69')]);return db[_0xad04('0x6e')]['count']({'where':_0x50c59e[_0xad04('0x4d')]})['then'](function(_0x35eb86){_0x149ed2[_0xad04('0x2c')]=_0x35eb86;if(_0x41e3be[_0xad04('0x44')]['includeAll']){_0x50c59e[_0xad04('0x52')]=[{'all':!![]}];}return db[_0xad04('0x6e')][_0xad04('0x53')](_0x50c59e);})[_0xad04('0x33')](function(_0x34d530){_0x149ed2[_0xad04('0x54')]=_0x34d530;return _0x149ed2;});}})[_0xad04('0x33')](respondWithFilteredResult(_0x5c5011,_0x50c59e))[_0xad04('0x25')](handleError(_0x5c5011,null));};exports[_0xad04('0x70')]=function(_0x2529ac,_0x207a2d,_0x46b4b3){return db['WhatsappAccount']['find']({'where':{'id':_0x2529ac[_0xad04('0x56')]['id']}})[_0xad04('0x33')](handleEntityNotFound(_0x207a2d,null))[_0xad04('0x33')](function(_0x299d44){if(_0x299d44){return _0x299d44[_0xad04('0x70')](_0x2529ac[_0xad04('0x44')][_0xad04('0x6b')]);}})['then'](respondWithStatusCode(_0x207a2d,null))[_0xad04('0x25')](handleError(_0x207a2d,null));};exports[_0xad04('0x71')]=function(_0x5ecbc1,_0x9e5616,_0x30a148){return db[_0xad04('0x3f')]['find']({'where':{'id':_0x5ecbc1[_0xad04('0x56')]['id']}})[_0xad04('0x33')](handleEntityNotFound(_0x9e5616,null))[_0xad04('0x33')](function(_0x2b5aa9){if(_0x2b5aa9){return _0x2b5aa9[_0xad04('0x71')](_0x5ecbc1[_0xad04('0x5f')][_0xad04('0x6b')],_[_0xad04('0x72')](_0x5ecbc1[_0xad04('0x5f')],[_0xad04('0x6b'),'id'])||{})[_0xad04('0x73')](function(_0x2ba817){for(var _0x27d8ef=0x0;_0x27d8ef<_0x5ecbc1[_0xad04('0x5f')][_0xad04('0x6b')][_0xad04('0x4a')];_0x27d8ef+=0x1){socket[_0xad04('0x74')](_0xad04('0x75'),{'UserId':Number(_0x5ecbc1['body'][_0xad04('0x6b')][_0x27d8ef]),'WhatsappAccountId':Number(_0x5ecbc1[_0xad04('0x56')]['id'])});}return _0x2ba817;});}})[_0xad04('0x33')](respondWithResult(_0x9e5616,null))[_0xad04('0x25')](handleError(_0x9e5616,null));};exports[_0xad04('0x76')]=function(_0x2e2de1,_0x41fba2,_0x1a7e81){return db[_0xad04('0x3f')][_0xad04('0x57')]({'where':{'id':_0x2e2de1['params']['id']}})[_0xad04('0x33')](handleEntityNotFound(_0x41fba2,null))[_0xad04('0x33')](function(_0x5830d3){if(_0x5830d3){return _0x5830d3[_0xad04('0x76')](_0x2e2de1['query'][_0xad04('0x6b')])['then'](function(){if(_[_0xad04('0x77')](_0x2e2de1[_0xad04('0x44')][_0xad04('0x6b')])){for(var _0x2c18f8=0x0;_0x2c18f8<_0x2e2de1[_0xad04('0x44')][_0xad04('0x6b')][_0xad04('0x4a')];_0x2c18f8+=0x1){socket[_0xad04('0x74')](_0xad04('0x78'),{'UserId':Number(_0x2e2de1[_0xad04('0x44')][_0xad04('0x6b')][_0x2c18f8]),'WhatsappAccountId':Number(_0x2e2de1[_0xad04('0x56')]['id'])});}}else{socket[_0xad04('0x74')](_0xad04('0x78'),{'UserId':Number(_0x2e2de1[_0xad04('0x44')][_0xad04('0x6b')]),'WhatsappAccountId':Number(_0x2e2de1[_0xad04('0x56')]['id'])});}});}})[_0xad04('0x33')](respondWithStatusCode(_0x41fba2,null))[_0xad04('0x25')](handleError(_0x41fba2,null));};exports[_0xad04('0x79')]=function(_0x4fb0cf,_0xf177f1,_0x3a4b51){var _0x544146={};var _0x30e48b={};var _0x1e06be;var _0x1c025e;return db['WhatsappAccount'][_0xad04('0x64')]({'where':{'id':_0x4fb0cf[_0xad04('0x56')]['id']}})[_0xad04('0x33')](handleEntityNotFound(_0xf177f1,null))[_0xad04('0x33')](function(_0x87e1b0){if(_0x87e1b0){_0x1e06be=_0x87e1b0;_0x30e48b[_0xad04('0x43')]=_['keys'](db[_0xad04('0x7a')][_0xad04('0x40')]);_0x30e48b['query']=_[_0xad04('0x45')](_0x4fb0cf['query']);_0x30e48b['filters']=_[_0xad04('0x47')](_0x30e48b[_0xad04('0x43')],_0x30e48b[_0xad04('0x44')]);_0x544146[_0xad04('0x48')]=_[_0xad04('0x47')](_0x30e48b[_0xad04('0x43')],qs[_0xad04('0x49')](_0x4fb0cf[_0xad04('0x44')][_0xad04('0x49')]));_0x544146[_0xad04('0x48')]=_0x544146[_0xad04('0x48')][_0xad04('0x4a')]?_0x544146[_0xad04('0x48')]:_0x30e48b[_0xad04('0x43')];_0x544146[_0xad04('0x67')]=qs[_0xad04('0x4c')](_0x4fb0cf[_0xad04('0x44')]['sort']);_0x544146[_0xad04('0x4d')]=qs['filters'](_[_0xad04('0x4e')](_0x4fb0cf[_0xad04('0x44')],_0x30e48b['filters']));if(_0x4fb0cf['query'][_0xad04('0x68')]){_0x544146[_0xad04('0x4d')]=_[_0xad04('0x4f')](_0x544146[_0xad04('0x4d')],{'$or':_[_0xad04('0x3e')](_0x544146[_0xad04('0x48')],function(_0x466ae6){var _0x250021={};_0x250021[_0x466ae6]={'$like':'%'+_0x4fb0cf['query'][_0xad04('0x68')]+'%'};return _0x250021;})});}_0x544146=_[_0xad04('0x4f')]({},_0x544146,_0x4fb0cf[_0xad04('0x69')]);return _0x1e06be['getAgents'](_0x544146);}})[_0xad04('0x33')](function(_0x42d3a0){if(_0x42d3a0){_0x1c025e=_0x42d3a0[_0xad04('0x4a')];if(!_0x4fb0cf['query'][_0xad04('0x4b')](_0xad04('0x66'))){_0x544146[_0xad04('0x2b')]=qs[_0xad04('0x2b')](_0x4fb0cf[_0xad04('0x44')][_0xad04('0x2b')]);_0x544146[_0xad04('0x2a')]=qs[_0xad04('0x2a')](_0x4fb0cf[_0xad04('0x44')][_0xad04('0x2a')]);}return _0x1e06be['getAgents'](_0x544146);}})[_0xad04('0x33')](function(_0x96bc1){if(_0x96bc1){return _0x96bc1?{'count':_0x1c025e,'rows':_0x96bc1}:null;}})[_0xad04('0x33')](respondWithResult(_0xf177f1,null))[_0xad04('0x25')](handleError(_0xf177f1,null));};exports['addApplications']=function(_0xa9bf87,_0x46d82f){var _0x2aab7b=_0xa9bf87[_0xad04('0x56')]['id'];var _0x39d8c4=_0xa9bf87[_0xad04('0x5f')];var _0x4fbea5=0xc8;var _0x4b324f=null;return db[_0xad04('0x7b')][_0xad04('0x7c')]({'isolationLevel':db[_0xad04('0x7b')]['Transaction']['ISOLATION_LEVELS'][_0xad04('0x7d')]},function(_0x1e31f5){return db[_0xad04('0x3f')][_0xad04('0x64')]({'where':{'id':_0x2aab7b},'transaction':_0x1e31f5})[_0xad04('0x33')](function(_0x4c055e){if(_0x4c055e){return db[_0xad04('0x7e')][_0xad04('0x34')]({'where':{'WhatsappAccountId':_0x2aab7b},'transaction':_0x1e31f5})[_0xad04('0x33')](function(){var _0x1e25a3=_['map'](_0x39d8c4,function(_0x36b0a6){_0x36b0a6[_0xad04('0x6d')]=_0x2aab7b;return _0x36b0a6;});return db['WhatsappApplication'][_0xad04('0x7f')](_0x1e25a3,{'transaction':_0x1e31f5});});}else{_0x4fbea5=0x194;_0x4b324f=[];}});})[_0xad04('0x33')](function(){if(_0x4fbea5!==0x194){return db['WhatsappApplication'][_0xad04('0x80')]({'where':{'WhatsappAccountId':_0x2aab7b},'order':_0xad04('0x81')})[_0xad04('0x33')](function(_0x5aab09){_0x4b324f=_0x5aab09;});}})['catch'](function(_0x801746){_0x4fbea5=0x1f4;logger[_0xad04('0x21')](_0x801746[_0xad04('0x38')]);if(_0x801746[_0xad04('0x39')]){delete _0x801746['name'];}_0x4b324f=_0x801746;})[_0xad04('0x82')](function(){if(_0x4b324f===null){_0x46d82f['sendStatus'](_0x4fbea5);}else{if(_0x4fbea5===0x1f4){_0x46d82f[_0xad04('0x27')](_0x4fbea5)[_0xad04('0x3a')](_0x4b324f);}else{_0x46d82f[_0xad04('0x27')](_0x4fbea5)[_0xad04('0x29')](_0x4b324f);}}});};exports[_0xad04('0x83')]=function(_0x33a933,_0x5d7848,_0x5a305a){var _0x114ff3={};var _0x2fe608={};var _0x4aa55f;var _0x27a56d;return db[_0xad04('0x3f')][_0xad04('0x64')]({'where':{'id':_0x33a933[_0xad04('0x56')]['id']}})['then'](handleEntityNotFound(_0x5d7848,null))[_0xad04('0x33')](function(_0x275093){if(_0x275093){_0x4aa55f=_0x275093;_0x2fe608[_0xad04('0x43')]=_[_0xad04('0x45')](db[_0xad04('0x7e')]['rawAttributes']);_0x2fe608[_0xad04('0x44')]=_['keys'](_0x33a933[_0xad04('0x44')]);_0x2fe608[_0xad04('0x46')]=_[_0xad04('0x47')](_0x2fe608['model'],_0x2fe608[_0xad04('0x44')]);_0x114ff3[_0xad04('0x48')]=_[_0xad04('0x47')](_0x2fe608[_0xad04('0x43')],qs['fields'](_0x33a933[_0xad04('0x44')][_0xad04('0x49')]));_0x114ff3[_0xad04('0x48')]=_0x114ff3[_0xad04('0x48')]['length']?_0x114ff3[_0xad04('0x48')]:_0x2fe608['model'];_0x114ff3[_0xad04('0x67')]=qs[_0xad04('0x4c')](_0x33a933['query'][_0xad04('0x4c')]);_0x114ff3['where']=qs['filters'](_[_0xad04('0x4e')](_0x33a933['query'],_0x2fe608['filters']));if(_0x33a933[_0xad04('0x44')][_0xad04('0x68')]){_0x114ff3[_0xad04('0x4d')]=_['merge'](_0x114ff3[_0xad04('0x4d')],{'$or':_[_0xad04('0x3e')](_0x114ff3[_0xad04('0x48')],function(_0x3575d2){var _0x492a58={};_0x492a58[_0x3575d2]={'$like':'%'+_0x33a933[_0xad04('0x44')][_0xad04('0x68')]+'%'};return _0x492a58;})});}_0x114ff3=_[_0xad04('0x4f')]({},_0x114ff3,_0x33a933[_0xad04('0x69')]);return _0x4aa55f[_0xad04('0x83')](_0x114ff3);}})[_0xad04('0x33')](function(_0x15bcb3){if(_0x15bcb3){_0x27a56d=_0x15bcb3[_0xad04('0x4a')];if(!_0x33a933['query'][_0xad04('0x4b')](_0xad04('0x66'))){_0x114ff3[_0xad04('0x2b')]=qs[_0xad04('0x2b')](_0x33a933['query'][_0xad04('0x2b')]);_0x114ff3['offset']=qs[_0xad04('0x2a')](_0x33a933[_0xad04('0x44')]['offset']);}return _0x4aa55f['getApplications'](_0x114ff3);}})[_0xad04('0x33')](function(_0x2a5686){if(_0x2a5686){return _0x2a5686?{'count':_0x27a56d,'rows':_0x2a5686}:null;}})[_0xad04('0x33')](respondWithResult(_0x5d7848,null))['catch'](handleError(_0x5d7848,null));};exports[_0xad04('0x84')]=function(_0x58371c,_0x4bfbac,_0x155814){var _0x52cc8c={'channel':_0xad04('0x85')};var _0x1ff352=[];var _0x39cedc=[];var _0x12af57={};return db[_0xad04('0x3f')][_0xad04('0x57')]({'where':{'id':_0x58371c[_0xad04('0x56')]['id']},'include':[{'model':db[_0xad04('0x7e')],'as':_0xad04('0x86')}]})['then'](handleEntityNotFound(_0x4bfbac,null))[_0xad04('0x33')](function(_0x1001a8){_0x52cc8c[_0xad04('0x87')]=_0x1001a8;if(_0x52cc8c[_0xad04('0x87')]&&_0x52cc8c[_0xad04('0x87')]['type']===_0xad04('0x88')&&_0x58371c[_0xad04('0x5f')][_0xad04('0x89')]){if(_0x58371c[_0xad04('0x5f')][_0xad04('0x89')][_0xad04('0x4a')]===0x0)return;if(_0x58371c[_0xad04('0x5f')][_0xad04('0x89')][0x0][_0xad04('0x8a')]!==_0xad04('0x8b'))return;return db[_0xad04('0x8c')]['update']({'read':!![],'readAt':_0x58371c[_0xad04('0x5f')][_0xad04('0x89')][0x0]['timestamp']},{'where':{'messageId':_0x58371c[_0xad04('0x5f')][_0xad04('0x89')][0x0]['message_id']},'individualHooks':!![]})[_0xad04('0x33')](function(_0x2c1137){return _0x4bfbac[_0xad04('0x27')](0xc8)[_0xad04('0x29')](_0x2c1137);});}_0x52cc8c['applications']=_[_0xad04('0x8d')](_0x1001a8[_0xad04('0x86')],['priority'],['asc']);if(_0x52cc8c[_0xad04('0x87')]['Applications']){delete _0x52cc8c[_0xad04('0x87')][_0xad04('0x86')];}return db[_0xad04('0x8e')][_0xad04('0x60')]()['then'](function(_0x4bc321){if(!_0x4bc321){throw new db['Sequelize'][(_0xad04('0x8f'))]('no\x20available\x20attributes');}_0x1ff352=_[_0xad04('0x90')](_[_0xad04('0x45')](_0x4bc321),[_0xad04('0x91'),_0xad04('0x92')]);_0x39cedc=_[_0xad04('0x90')](_[_0xad04('0x45')](_0x4bc321),[_0xad04('0x91'),_0xad04('0x92'),_0xad04('0x93'),_0xad04('0x94')]);_0x52cc8c['body']={'mapKey':_0xad04('0x95')};if(_0x52cc8c['account']&&_0x52cc8c[_0xad04('0x87')][_0xad04('0x42')]==='twilio'){_0x52cc8c['body'][_0xad04('0x96')]=_0x58371c[_0xad04('0x5f')]['From'][_0xad04('0x97')]('whatsapp:','');_0x52cc8c['body'][_0xad04('0x5f')]=_0x58371c[_0xad04('0x5f')][_0xad04('0x98')];_0x52cc8c['body']['messageId']=_0x58371c[_0xad04('0x5f')][_0xad04('0x99')];}if(_0x52cc8c[_0xad04('0x87')]&&_0x52cc8c['account'][_0xad04('0x42')]===_0xad04('0x88')){_0x52cc8c[_0xad04('0x5f')][_0xad04('0x96')]=_0x58371c[_0xad04('0x5f')][_0xad04('0x9a')][0x0][_0xad04('0x96')];_0x52cc8c[_0xad04('0x5f')][_0xad04('0x5f')]=_0x58371c[_0xad04('0x5f')][_0xad04('0x9a')][0x0]['message']['body'];_0x52cc8c[_0xad04('0x5f')][_0xad04('0x9b')]=_0x58371c[_0xad04('0x5f')]['notifications'][0x0][_0xad04('0x9c')];}if(_0x52cc8c['body']['id']){delete _0x52cc8c['body']['id'];}if(_[_0xad04('0x9d')](_0x52cc8c[_0xad04('0x5f')][_0xad04('0x96')])){throw new db[(_0xad04('0x9e'))]['ValidationError'](_0xad04('0x9f'));}if(_[_0xad04('0x9d')](_0x52cc8c['body'][_0xad04('0x5f')])||_0x52cc8c[_0xad04('0x5f')]['body']===''){throw new db[(_0xad04('0x9e'))][(_0xad04('0x8f'))](_0xad04('0xa0'));}if(_[_0xad04('0x9d')](_0x52cc8c[_0xad04('0x5f')][_0xad04('0xa1')])){throw new db['Sequelize'][(_0xad04('0x8f'))](_0xad04('0xa2')+_0x39cedc);}if(!_[_0xad04('0xa3')](_0x39cedc,_0x52cc8c[_0xad04('0x5f')][_0xad04('0xa1')])){throw new db[(_0xad04('0x9e'))][(_0xad04('0x8f'))](_0xad04('0xa4')+_0x39cedc);}_0x12af57[_0x52cc8c['body'][_0xad04('0xa1')]]=_0x52cc8c['body'][_0xad04('0x96')];return db[_0xad04('0xa5')][_0xad04('0x57')]({'where':{'id':_0x52cc8c[_0xad04('0x87')][_0xad04('0x94')]},'include':[{'model':db[_0xad04('0x8e')],'as':_0xad04('0xa6'),'where':_0x12af57,'limit':0x1,'order':[[_0xad04('0x92'),_0xad04('0xa7')]]}]});})[_0xad04('0x33')](handleEntityNotFound(_0x4bfbac,null))['then'](function(_0xd1caa2){if(_0xd1caa2){_0x52cc8c[_0xad04('0xa8')]=_[_0xad04('0x72')](_0xd1caa2,[_0xad04('0xa6')]);if(_0xd1caa2[_0xad04('0xa6')][_0xad04('0x4a')]){return _0xd1caa2[_0xad04('0xa6')][0x0];}var _0x5318c5=_[_0xad04('0xa9')](_0x52cc8c[_0xad04('0x5f')],{'firstName':_0x52cc8c[_0xad04('0x5f')]['from'],'ListId':_0xd1caa2['id']});_0x5318c5[_0x52cc8c['body']['mapKey']]=_0x52cc8c[_0xad04('0x5f')][_0xad04('0x96')];return db[_0xad04('0x8e')]['create'](_0x5318c5,{'fields':_0x1ff352,'raw':!![]});}})['then'](handleEntityNotFound(_0x4bfbac,null))[_0xad04('0x33')](function(_0x21a099){if(_0x21a099){_0x52cc8c[_0xad04('0xaa')]=_0x21a099;var _0x235478={'ContactId':_0x21a099['id'],'phone':_0x52cc8c['body'][_0xad04('0x96')],'WhatsappAccountId':_0x58371c[_0xad04('0x56')]['id']};var _0x40a880={'ContactId':_0x21a099['id'],'WhatsappAccountId':_0x58371c['params']['id'],'closed':![]};return db[_0xad04('0xab')][_0xad04('0x57')]({'where':_0x40a880})['then'](function(_0x52d83d){if(_0x52d83d){return[_0x52d83d,![]];}return db[_0xad04('0xab')]['create'](_0x235478)[_0xad04('0x33')](function(_0x2f89dc){return[_0x2f89dc,!![]];});});}})[_0xad04('0x73')](function(_0x5483a4,_0x10d61f){_0x52cc8c[_0xad04('0xac')]=_0x5483a4[_0xad04('0x35')]({'plain':!![]});_0x52cc8c[_0xad04('0xac')][_0xad04('0xad')]=![];if(_0x10d61f){if(_0x52cc8c[_0xad04('0x87')]['autoclose']){_0x52cc8c[_0xad04('0xae')]['push']({'id':0x0,'priority':_0x52cc8c[_0xad04('0xae')][_0xad04('0x4a')]+0x1,'app':_0xad04('0xaf'),'appdata':_0xad04('0xb0'),'interval':_0xad04('0xb1')});}_0x52cc8c[_0xad04('0xac')][_0xad04('0xad')]=!![];}return db[_0xad04('0x8c')][_0xad04('0x62')]({'phone':_0x52cc8c['body'][_0xad04('0x96')],'messageId':_0x52cc8c['body']['messageId'],'body':_0x52cc8c[_0xad04('0x5f')][_0xad04('0x5f')],'WhatsappAccountId':_0x58371c[_0xad04('0x56')]['id'],'WhatsappInteractionId':_0x5483a4['id'],'direction':'in','ContactId':_0x5483a4[_0xad04('0xb2')],'AttachmentId':_0x52cc8c[_0xad04('0x5f')]['AttachmentId']});})[_0xad04('0x33')](function(_0x1d8485){_0x52cc8c[_0xad04('0x23')]=_0x1d8485;if(!_0x52cc8c[_0xad04('0xac')][_0xad04('0xb3')])return;return db[_0xad04('0x7a')][_0xad04('0x57')]({'attributes':['id',_0xad04('0x39')],'where':{'id':_0x52cc8c['interaction'][_0xad04('0xb3')]}});})[_0xad04('0x33')](function(_0x24fe51){if(_0x24fe51){_0x52cc8c[_0xad04('0xae')][_0xad04('0xb4')]({'id':0x0,'priority':0x0,'app':_0xad04('0xb5'),'appdata':_0x24fe51['name']+','+(_0x52cc8c[_0xad04('0x87')][_0xad04('0xb6')]||0xa),'interval':_0xad04('0xb1')});}if(!_0x52cc8c['interaction'][_0xad04('0xb7')])return;return db['WhatsappQueue'][_0xad04('0x57')]({'attributes':['id',_0xad04('0x39')],'where':{'id':_0x52cc8c[_0xad04('0xac')][_0xad04('0xb7')]}});})[_0xad04('0x33')](function(_0xf93510){if(_0xf93510){_0x52cc8c[_0xad04('0xae')][_0xad04('0xb4')]({'id':0x0,'priority':0x1,'app':_0xad04('0xb8'),'appdata':_0xf93510['name']+','+(_0x52cc8c[_0xad04('0x87')][_0xad04('0xb9')]||0x12c),'interval':_0xad04('0xb1')});}return respondWithRpcPromise(_0xad04('0xba'),'startRouting',_0x52cc8c);})[_0xad04('0x33')](function(_0x144543){if(_0x144543){var _0x17ceaa=0xc8;var _0x252a4c=_0xad04('0xbb');logger[_0xad04('0x1b')](_0xad04('0x1e'),_0x252a4c,_0x17ceaa,'entity\x20found');logger[_0xad04('0x1d')](_0xad04('0xbc'),_0x252a4c,_0x17ceaa,_0xad04('0xbd'),JSON[_0xad04('0x20')](_0x144543));if(_0x52cc8c[_0xad04('0x87')]['type']===_0xad04('0xbe')){return _0x4bfbac[_0xad04('0x27')](_0x17ceaa)['set'](_0xad04('0xbf'),_0xad04('0xc0'))[_0xad04('0x3a')](_0xad04('0xc1'));}else{return _0x4bfbac[_0xad04('0x27')](_0x17ceaa)[_0xad04('0x29')](_0x144543);}}});})['catch'](handleError(_0x4bfbac,null));};exports[_0xad04('0x3a')]=function(_0x286ba3,_0x2e31aa,_0x269e41){var _0x303b90,_0x2ce5c1,_0x272e0e;if(_[_0xad04('0x9d')](_0x286ba3[_0xad04('0x5f')][_0xad04('0x5f')])||_0x286ba3[_0xad04('0x5f')][_0xad04('0x5f')]===''){throw new db[(_0xad04('0x9e'))][(_0xad04('0x8f'))]('body\x20is\x20mandatory\x20and\x20not\x20empty');}if(_['isNil'](_0x286ba3[_0xad04('0x5f')]['to'])){throw new db[(_0xad04('0x9e'))][(_0xad04('0x8f'))](_0xad04('0xc2'));}_0x303b90=_0x286ba3[_0xad04('0x5f')]['to'];return db[_0xad04('0x3f')]['find']({'where':{'id':_0x286ba3[_0xad04('0x56')]['id']},'include':[{'model':db[_0xad04('0xa5')],'as':'List','include':[{'model':db['CmContact'],'as':_0xad04('0xa6'),'where':{'mobile':_0x303b90},'limit':0x1,'order':[[_0xad04('0x92'),_0xad04('0xa7')]]}]}]})[_0xad04('0x33')](handleEntityNotFound(_0x2e31aa,null))[_0xad04('0x33')](function(_0x4f073e){if(_0x4f073e&&_0x4f073e['List']){_0x2ce5c1=_0x4f073e['get']({'plain':!![]});if(_0x2ce5c1[_0xad04('0xc3')]&&_0x2ce5c1[_0xad04('0xc3')]['Contacts'][_0xad04('0x4a')]){return _0x2ce5c1[_0xad04('0xc3')][_0xad04('0xa6')][0x0];}return db['CmContact'][_0xad04('0x62')](_[_0xad04('0xa9')](_0x286ba3[_0xad04('0x5f')],{'firstName':_0x303b90,'mobile':_0x303b90,'phone':_0x303b90,'ListId':_0x2ce5c1[_0xad04('0x94')]}));}})[_0xad04('0x33')](handleEntityNotFound(_0x2e31aa,null))['then'](function(_0x41c5f1){if(_0x41c5f1){_0x272e0e=_0x41c5f1;return db[_0xad04('0xab')][_0xad04('0x57')]({'where':{'ContactId':_0x272e0e['id'],'closed':![],'WhatsappAccountId':_0x2ce5c1['id']}})[_0xad04('0x33')](function(_0x12fe86){if(_0x12fe86){return[_0x12fe86,![]];}return db[_0xad04('0xab')][_0xad04('0x62')]({'UserId':_0x286ba3['user']['id'],'ContactId':_0x272e0e['id'],'WhatsappAccountId':_0x2ce5c1['id'],'phone':_0x303b90,'firstMsgDirection':'out','Messages':[_[_0xad04('0x4f')](_0x286ba3[_0xad04('0x5f')],{'read':![],'body':_0x286ba3[_0xad04('0x5f')]['body'],'phone':_0x303b90,'WhatsappAccountId':_0x2ce5c1['id'],'UserId':_0x286ba3[_0xad04('0x5a')]['id'],'ContactId':_0x272e0e['id']})]},{'include':[{'model':db['WhatsappMessage'],'as':_0xad04('0xc4')}]})[_0xad04('0x33')](function(_0x590878){return[_0x590878,!![]];});});}})[_0xad04('0x73')](function(_0x1e730b,_0x3e2427){if(_0x3e2427){return _0x1e730b;}return db[_0xad04('0x8c')][_0xad04('0x62')](_[_0xad04('0x4f')](_0x286ba3['body'],{'read':![],'body':_0x286ba3[_0xad04('0x5f')][_0xad04('0x5f')],'phone':_0x303b90,'WhatsappAccountId':_0x2ce5c1['id'],'WhatsappInteractionId':_0x1e730b['id'],'UserId':_0x286ba3[_0xad04('0x5a')]['id'],'ContactId':_0x272e0e['id']}))[_0xad04('0x33')](function(_0xff17ed){_0x1e730b[_0xad04('0xc5')]['Messages']=[];_0x1e730b[_0xad04('0xc5')][_0xad04('0xc4')][_0xad04('0xc6')](_0xff17ed[_0xad04('0xc5')]);return _0x1e730b;});})[_0xad04('0x33')](respondWithResult(_0x2e31aa,null))[_0xad04('0x25')](handleError(_0x2e31aa,null));};