ff03b3647db547ff1d3d5536abfed0e16b4e4a9e
[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 _0xda3e=['sinch','statuses','state','read','WhatsappMessage','timestamp','message_id','orderBy','Applications','asc','account','Sequelize','ValidationError','no\x20available\x20attributes','difference','updatedAt','CompanyId','ListId','mobile','from','From','whatsapp:','Body','messageId','MessageSid','notifications','isNil','from\x20is\x20mandatory','mapKey\x20is\x20mandatory,\x20please\x20use\x20one\x20of\x20these:\x20','includes','mapKey','mapKey\x20invalid,\x20please\x20use\x20one\x20of\x20these:\x20','CmContact','Contacts','list','defaults','contact','WhatsappInteraction','interaction','created','applications','push','close','*,*,*,*','ContactId','AttachmentId','UserId','unshift','agent','Start','startRouting','receiveMessage','entity\x20found','debug','WhatsappAccount,\x20%s,\x20%s,\x20%s,\x20%s','Content-Type','<?xml\x20version=\x221.0\x22\x20encoding=\x22UTF-8\x22?>\x0a<Response></Response>','body\x20is\x20mandatory\x20and\x20not\x20empty','to\x20is\x20mandatory','List','out','Messages','dataValues','zip-dir','request-promise','moment','bluebird','util','path','sox','squel','jsforce','to-csv','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/license/util','../../mysqldb','redis','localhost','./whatsappAccount.socket','register','jayson/promise','http','request','then','WhatsappAccount,\x20%s,\x20%s','request\x20sent','WhatsappAccount,\x20%s,\x20%s,\x20%s','stringify','error','code','message','info','result','catch','status','end','json','limit','undefined','count','offset','set','Content-Range','apply','reject','save','update','destroy','get','WhatsappAccounts','sendStatus','name','send','index','Pause','mandatoryDispositionPause','WhatsappAccount','rawAttributes','type','key','map','query','keys','filters','intersection','model','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','VIRTUAL','options','include','findAll','rows','params','includeAll','find','create','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','userProfileId','autoAssociation','UserProfileResource','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','describe','addDisposition','WhatsappAccountId','Disposition','getDispositions','findOne','removeDispositions','ids','addAnswer','getAnswers','CannedAnswer','removeAnswers','addAgents','spread','emit','userWhatsappAccount:save','removeAgents','isArray','userWhatsappAccount:remove','getAgents','User','addApplications','sequelize','transaction','Transaction','READ_COMMITTED','WhatsappApplication','priority','stack','getApplications','whatsapp'];(function(_0x3af0d0,_0xee84f9){var _0x5533a7=function(_0xe0d1c7){while(--_0xe0d1c7){_0x3af0d0['push'](_0x3af0d0['shift']());}};_0x5533a7(++_0xee84f9);}(_0xda3e,0x1bf));var _0xeda3=function(_0x451da1,_0x4109ac){_0x451da1=_0x451da1-0x0;var _0x2057d2=_0xda3e[_0x451da1];return _0x2057d2;};'use strict';var emlformat=require('eml-format');var rimraf=require('rimraf');var zipdir=require(_0xeda3('0x0'));var jsonpatch=require('fast-json-patch');var rp=require(_0xeda3('0x1'));var moment=require(_0xeda3('0x2'));var BPromise=require(_0xeda3('0x3'));var Mustache=require('mustache');var util=require(_0xeda3('0x4'));var path=require(_0xeda3('0x5'));var sox=require(_0xeda3('0x6'));var csv=require('to-csv');var ejs=require('ejs');var fs=require('fs');var fs_extra=require('fs-extra');var _=require('lodash');var squel=require(_0xeda3('0x7'));var crypto=require('crypto');var jsforce=require(_0xeda3('0x8'));var deskjs=require('desk.js');var toCsv=require(_0xeda3('0x9'));var querystring=require(_0xeda3('0xa'));var Papa=require(_0xeda3('0xb'));var Redis=require(_0xeda3('0xc'));var authService=require(_0xeda3('0xd'));var qs=require('../../components/parsers/qs');var as=require(_0xeda3('0xe'));var hardwareService=require(_0xeda3('0xf'));var logger=require('../../config/logger')(_0xeda3('0x10'));var utils=require('../../config/utils');var config=require('../../config/environment');var licenseUtil=require(_0xeda3('0x11'));var db=require(_0xeda3('0x12'))['db'];config[_0xeda3('0x13')]=_['defaults'](config[_0xeda3('0x13')],{'host':_0xeda3('0x14'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0xeda3('0x13')]));require(_0xeda3('0x15'))[_0xeda3('0x16')](socket);var jayson=require(_0xeda3('0x17'));var client=jayson['client'][_0xeda3('0x18')]({'port':0x232c});function respondWithRpcPromise(_0x4d75d9,_0x2888f8,_0xc7d5cd,_0x5ec849){return new BPromise(function(_0x43750f,_0x4b4591){var _0x250252=_0x5ec849||client;return _0x250252[_0xeda3('0x19')](_0x4d75d9,_0xc7d5cd)[_0xeda3('0x1a')](function(_0x1802ff){logger['info'](_0xeda3('0x1b'),_0x2888f8,_0xeda3('0x1c'));logger['debug'](_0xeda3('0x1d'),_0x2888f8,_0xeda3('0x1c'),JSON[_0xeda3('0x1e')](_0x1802ff));if(_0x1802ff[_0xeda3('0x1f')]){if(_0x1802ff[_0xeda3('0x1f')][_0xeda3('0x20')]===0x1f4){logger[_0xeda3('0x1f')](_0xeda3('0x1b'),_0x2888f8,_0x1802ff[_0xeda3('0x1f')][_0xeda3('0x21')]);return _0x4b4591(_0x1802ff[_0xeda3('0x1f')][_0xeda3('0x21')]);}logger['error']('WhatsappAccount,\x20%s,\x20%s',_0x2888f8,_0x1802ff[_0xeda3('0x1f')][_0xeda3('0x21')]);return _0x43750f(_0x1802ff[_0xeda3('0x1f')][_0xeda3('0x21')]);}else{logger[_0xeda3('0x22')](_0xeda3('0x1b'),_0x2888f8,_0xeda3('0x1c'));_0x43750f(_0x1802ff[_0xeda3('0x23')][_0xeda3('0x21')]);}})[_0xeda3('0x24')](function(_0x5c1a2){logger[_0xeda3('0x1f')](_0xeda3('0x1b'),_0x2888f8,_0x5c1a2);_0x4b4591(_0x5c1a2);});});}function respondWithStatusCode(_0x7c1e19,_0x22d3e1){_0x22d3e1=_0x22d3e1||0xcc;return function(_0x366418){if(_0x366418){return _0x7c1e19['sendStatus'](_0x22d3e1);}return _0x7c1e19[_0xeda3('0x25')](_0x22d3e1)[_0xeda3('0x26')]();};}function respondWithResult(_0x3c49f8,_0x168b1b){_0x168b1b=_0x168b1b||0xc8;return function(_0x2fa7c5){if(_0x2fa7c5){return _0x3c49f8[_0xeda3('0x25')](_0x168b1b)[_0xeda3('0x27')](_0x2fa7c5);}};}function respondWithFilteredResult(_0x2c228f,_0x3338a8){return function(_0x24e75c){if(_0x24e75c){var _0x5017e3=typeof _0x3338a8['offset']==='undefined'&&typeof _0x3338a8[_0xeda3('0x28')]===_0xeda3('0x29');var _0x5b1f4c=_0x24e75c[_0xeda3('0x2a')];var _0x111ef4=_0x5017e3?0x0:_0x3338a8[_0xeda3('0x2b')];var _0x1dd6be=_0x5017e3?_0x24e75c[_0xeda3('0x2a')]:_0x3338a8[_0xeda3('0x2b')]+_0x3338a8[_0xeda3('0x28')];var _0x4ad467;if(_0x1dd6be>=_0x5b1f4c){_0x1dd6be=_0x5b1f4c;_0x4ad467=0xc8;}else{_0x4ad467=0xce;}_0x2c228f[_0xeda3('0x25')](_0x4ad467);return _0x2c228f[_0xeda3('0x2c')](_0xeda3('0x2d'),_0x111ef4+'-'+_0x1dd6be+'/'+_0x5b1f4c)[_0xeda3('0x27')](_0x24e75c);}return null;};}function patchUpdates(_0x499546){return function(_0x2ec341){try{jsonpatch[_0xeda3('0x2e')](_0x2ec341,_0x499546,!![]);}catch(_0x355f6e){return BPromise[_0xeda3('0x2f')](_0x355f6e);}return _0x2ec341[_0xeda3('0x30')]();};}function saveUpdates(_0x44342d,_0xd01973){return function(_0x254c6b){if(_0x254c6b){return _0x254c6b[_0xeda3('0x31')](_0x44342d)['then'](function(_0x17cbe6){return _0x17cbe6;});}return null;};}function removeEntity(_0x2fdeaa,_0x56b2eb){return function(_0x17a9cd){if(_0x17a9cd){return _0x17a9cd[_0xeda3('0x32')]()[_0xeda3('0x1a')](function(){var _0x3f3c46=_0x17a9cd[_0xeda3('0x33')]({'plain':!![]});var _0x4280ac=_0xeda3('0x34');return db['UserProfileResource'][_0xeda3('0x32')]({'where':{'type':_0x4280ac,'resourceId':_0x3f3c46['id']}})[_0xeda3('0x1a')](function(){return _0x17a9cd;});})[_0xeda3('0x1a')](function(){_0x2fdeaa[_0xeda3('0x25')](0xcc)['end']();});}};}function handleEntityNotFound(_0x196f81,_0x3ad114){return function(_0x519cd0){if(!_0x519cd0){_0x196f81[_0xeda3('0x35')](0x194);}return _0x519cd0;};}function handleError(_0x413dfc,_0x25f220){_0x25f220=_0x25f220||0x1f4;return function(_0x350e26){logger[_0xeda3('0x1f')](_0x350e26['stack']);if(_0x350e26['name']){delete _0x350e26[_0xeda3('0x36')];}_0x413dfc['status'](_0x25f220)[_0xeda3('0x37')](_0x350e26);};}exports[_0xeda3('0x38')]=function(_0x1c3d2c,_0x582fd6){var _0x2f6a4a={'include':[{'model':db[_0xeda3('0x39')],'as':_0xeda3('0x3a')}]},_0x112f86={},_0x379576={'count':0x0,'rows':[]};var _0x142a49=_['map'](db[_0xeda3('0x3b')][_0xeda3('0x3c')],function(_0x5c61eb){return{'name':_0x5c61eb['fieldName'],'type':_0x5c61eb[_0xeda3('0x3d')][_0xeda3('0x3e')]};});_0x112f86['model']=_[_0xeda3('0x3f')](_0x142a49,_0xeda3('0x36'));_0x112f86[_0xeda3('0x40')]=_[_0xeda3('0x41')](_0x1c3d2c['query']);_0x112f86[_0xeda3('0x42')]=_[_0xeda3('0x43')](_0x112f86[_0xeda3('0x44')],_0x112f86[_0xeda3('0x40')]);_0x2f6a4a[_0xeda3('0x45')]=_['intersection'](_0x112f86[_0xeda3('0x44')],qs[_0xeda3('0x46')](_0x1c3d2c[_0xeda3('0x40')][_0xeda3('0x46')]));_0x2f6a4a['attributes']=_0x2f6a4a[_0xeda3('0x45')][_0xeda3('0x47')]?_0x2f6a4a[_0xeda3('0x45')]:_0x112f86[_0xeda3('0x44')];if(!_0x1c3d2c[_0xeda3('0x40')][_0xeda3('0x48')](_0xeda3('0x49'))){_0x2f6a4a[_0xeda3('0x28')]=qs[_0xeda3('0x28')](_0x1c3d2c[_0xeda3('0x40')][_0xeda3('0x28')]);_0x2f6a4a['offset']=qs['offset'](_0x1c3d2c[_0xeda3('0x40')][_0xeda3('0x2b')]);}_0x2f6a4a[_0xeda3('0x4a')]=qs[_0xeda3('0x4b')](_0x1c3d2c['query'][_0xeda3('0x4b')]);_0x2f6a4a[_0xeda3('0x4c')]=qs[_0xeda3('0x42')](_[_0xeda3('0x4d')](_0x1c3d2c[_0xeda3('0x40')],_0x112f86['filters']),_0x142a49);if(_0x1c3d2c[_0xeda3('0x40')][_0xeda3('0x4e')]){_0x2f6a4a[_0xeda3('0x4c')]=_[_0xeda3('0x4f')](_0x2f6a4a['where'],{'$or':_[_0xeda3('0x3f')](_0x142a49,function(_0x165ccd){if(_0x165ccd[_0xeda3('0x3d')]!==_0xeda3('0x50')){var _0xa7f3aa={};_0xa7f3aa[_0x165ccd[_0xeda3('0x36')]]={'$like':'%'+_0x1c3d2c[_0xeda3('0x40')][_0xeda3('0x4e')]+'%'};return _0xa7f3aa;}})});}_0x2f6a4a=_[_0xeda3('0x4f')]({},_0x2f6a4a,_0x1c3d2c[_0xeda3('0x51')]);var _0xa1fd9={'where':_0x2f6a4a[_0xeda3('0x4c')]};return db[_0xeda3('0x3b')][_0xeda3('0x2a')](_0xa1fd9)['then'](function(_0x2d220c){_0x379576[_0xeda3('0x2a')]=_0x2d220c;if(_0x1c3d2c[_0xeda3('0x40')]['includeAll']){_0x2f6a4a[_0xeda3('0x52')]=[{'all':!![]}];}return db[_0xeda3('0x3b')][_0xeda3('0x53')](_0x2f6a4a);})['then'](function(_0x204357){_0x379576[_0xeda3('0x54')]=_0x204357;return _0x379576;})['then'](respondWithFilteredResult(_0x582fd6,_0x2f6a4a))[_0xeda3('0x24')](handleError(_0x582fd6,null));};exports['show']=function(_0xa3cdf,_0x31808f){var _0x2a7c42={'raw':![],'where':{'id':_0xa3cdf[_0xeda3('0x55')]['id']},'include':[{'model':db[_0xeda3('0x39')],'as':'mandatoryDispositionPause'}]},_0x1ae34a={};_0x1ae34a[_0xeda3('0x44')]=_[_0xeda3('0x41')](db[_0xeda3('0x3b')][_0xeda3('0x3c')]);_0x1ae34a['query']=_[_0xeda3('0x41')](_0xa3cdf[_0xeda3('0x40')]);_0x1ae34a[_0xeda3('0x42')]=_[_0xeda3('0x43')](_0x1ae34a[_0xeda3('0x44')],_0x1ae34a[_0xeda3('0x40')]);_0x2a7c42['attributes']=_[_0xeda3('0x43')](_0x1ae34a['model'],qs[_0xeda3('0x46')](_0xa3cdf[_0xeda3('0x40')][_0xeda3('0x46')]));_0x2a7c42[_0xeda3('0x45')]=_0x2a7c42['attributes']['length']?_0x2a7c42['attributes']:_0x1ae34a[_0xeda3('0x44')];if(_0xa3cdf['query'][_0xeda3('0x56')]){_0x2a7c42['include']=[{'all':!![]}];}_0x2a7c42=_['merge']({},_0x2a7c42,_0xa3cdf[_0xeda3('0x51')]);return db[_0xeda3('0x3b')][_0xeda3('0x57')](_0x2a7c42)[_0xeda3('0x1a')](handleEntityNotFound(_0x31808f,null))['then'](respondWithResult(_0x31808f,null))[_0xeda3('0x24')](handleError(_0x31808f,null));};exports[_0xeda3('0x58')]=function(_0x34d303,_0x1ea0e8){return db['WhatsappAccount'][_0xeda3('0x58')](_0x34d303[_0xeda3('0x59')],{})[_0xeda3('0x1a')](function(_0x15197b){var _0x45d2df=_0x34d303[_0xeda3('0x5a')][_0xeda3('0x33')]({'plain':!![]});if(!_0x45d2df)throw new Error(_0xeda3('0x5b'));if(_0x45d2df[_0xeda3('0x5c')]===_0xeda3('0x5a')){var _0x38a47c=_0x15197b[_0xeda3('0x33')]({'plain':!![]});var _0x36314d=_0xeda3('0x34');return db[_0xeda3('0x5d')]['find']({'where':{'name':_0x36314d,'userProfileId':_0x45d2df[_0xeda3('0x5e')]},'raw':!![]})[_0xeda3('0x1a')](function(_0x21e390){if(_0x21e390&&_0x21e390[_0xeda3('0x5f')]===0x0){return db[_0xeda3('0x60')]['create']({'name':_0x38a47c[_0xeda3('0x36')],'resourceId':_0x38a47c['id'],'type':_0x21e390['name'],'sectionId':_0x21e390['id']},{})['then'](function(){return _0x15197b;});}else{return _0x15197b;}})[_0xeda3('0x24')](function(_0x404177){logger[_0xeda3('0x1f')](_0xeda3('0x61'),_0x404177);throw _0x404177;});}return _0x15197b;})[_0xeda3('0x1a')](respondWithResult(_0x1ea0e8,0xc9))['catch'](handleError(_0x1ea0e8,null));};exports['update']=function(_0x286a1f,_0x461b4d){if(_0x286a1f[_0xeda3('0x59')]['id']){delete _0x286a1f[_0xeda3('0x59')]['id'];}return db[_0xeda3('0x3b')][_0xeda3('0x57')]({'where':{'id':_0x286a1f[_0xeda3('0x55')]['id']},'include':[{'model':db['Pause'],'as':'mandatoryDispositionPause'}]})['then'](handleEntityNotFound(_0x461b4d,null))['then'](saveUpdates(_0x286a1f[_0xeda3('0x59')],null))[_0xeda3('0x1a')](respondWithResult(_0x461b4d,null))[_0xeda3('0x24')](handleError(_0x461b4d,null));};exports[_0xeda3('0x32')]=function(_0x44bfb3,_0x25c299){return db['WhatsappAccount'][_0xeda3('0x57')]({'where':{'id':_0x44bfb3['params']['id']}})[_0xeda3('0x1a')](handleEntityNotFound(_0x25c299,null))['then'](removeEntity(_0x25c299,null))['catch'](handleError(_0x25c299,null));};exports['describe']=function(_0x343596,_0x2c8adb){return db[_0xeda3('0x3b')][_0xeda3('0x62')]()[_0xeda3('0x1a')](respondWithResult(_0x2c8adb,null))['catch'](handleError(_0x2c8adb,null));};exports[_0xeda3('0x63')]=function(_0x4091b0,_0x1334cf,_0x735391){if(_0x4091b0[_0xeda3('0x59')]['id']){delete _0x4091b0[_0xeda3('0x59')]['id'];}return db[_0xeda3('0x3b')]['find']({'where':{'id':_0x4091b0[_0xeda3('0x55')]['id']}})[_0xeda3('0x1a')](handleEntityNotFound(_0x1334cf,null))[_0xeda3('0x1a')](function(_0xeb305){if(_0xeb305){_0x4091b0[_0xeda3('0x59')][_0xeda3('0x64')]=_0xeb305['id'];return db[_0xeda3('0x65')][_0xeda3('0x58')](_0x4091b0[_0xeda3('0x59')]);}})[_0xeda3('0x1a')](respondWithResult(_0x1334cf,null))[_0xeda3('0x24')](handleError(_0x1334cf,null));};exports[_0xeda3('0x66')]=function(_0x2ce820,_0x4d6c12,_0x2f254c){var _0x1fae86={'raw':![],'where':{}};var _0x1bb322={};var _0x7686a={'count':0x0,'rows':[]};return db[_0xeda3('0x3b')][_0xeda3('0x67')]({'where':{'id':_0x2ce820[_0xeda3('0x55')]['id']}})[_0xeda3('0x1a')](handleEntityNotFound(_0x4d6c12,null))[_0xeda3('0x1a')](function(_0x49c992){if(_0x49c992){_0x1bb322[_0xeda3('0x44')]=_[_0xeda3('0x41')](db[_0xeda3('0x65')][_0xeda3('0x3c')]);_0x1bb322[_0xeda3('0x40')]=_[_0xeda3('0x41')](_0x2ce820[_0xeda3('0x40')]);_0x1bb322['filters']=_[_0xeda3('0x43')](_0x1bb322[_0xeda3('0x44')],_0x1bb322[_0xeda3('0x40')]);_0x1fae86[_0xeda3('0x45')]=_['intersection'](_0x1bb322[_0xeda3('0x44')],qs[_0xeda3('0x46')](_0x2ce820[_0xeda3('0x40')][_0xeda3('0x46')]));_0x1fae86[_0xeda3('0x45')]=_0x1fae86[_0xeda3('0x45')]['length']?_0x1fae86['attributes']:_0x1bb322[_0xeda3('0x44')];if(!_0x2ce820['query'][_0xeda3('0x48')](_0xeda3('0x49'))){_0x1fae86[_0xeda3('0x28')]=qs[_0xeda3('0x28')](_0x2ce820['query'][_0xeda3('0x28')]);_0x1fae86[_0xeda3('0x2b')]=qs['offset'](_0x2ce820['query'][_0xeda3('0x2b')]);}_0x1fae86[_0xeda3('0x4a')]=qs[_0xeda3('0x4b')](_0x2ce820[_0xeda3('0x40')]['sort']);_0x1fae86[_0xeda3('0x4c')]=qs[_0xeda3('0x42')](_[_0xeda3('0x4d')](_0x2ce820[_0xeda3('0x40')],_0x1bb322[_0xeda3('0x42')]));_0x1fae86[_0xeda3('0x4c')]['WhatsappAccountId']=_0x49c992['id'];if(_0x2ce820[_0xeda3('0x40')][_0xeda3('0x4e')]){_0x1fae86[_0xeda3('0x4c')]=_[_0xeda3('0x4f')](_0x1fae86[_0xeda3('0x4c')],{'$or':_[_0xeda3('0x3f')](_0x1fae86[_0xeda3('0x45')],function(_0x1d2ddb){var _0x57db6e={};_0x57db6e[_0x1d2ddb]={'$like':'%'+_0x2ce820[_0xeda3('0x40')]['filter']+'%'};return _0x57db6e;})});}_0x1fae86=_[_0xeda3('0x4f')]({},_0x1fae86,_0x2ce820[_0xeda3('0x51')]);return db[_0xeda3('0x65')][_0xeda3('0x2a')]({'where':_0x1fae86[_0xeda3('0x4c')]})['then'](function(_0xe66ae3){_0x7686a['count']=_0xe66ae3;if(_0x2ce820[_0xeda3('0x40')]['includeAll']){_0x1fae86['include']=[{'all':!![]}];}return db[_0xeda3('0x65')][_0xeda3('0x53')](_0x1fae86);})[_0xeda3('0x1a')](function(_0x3d568e){_0x7686a[_0xeda3('0x54')]=_0x3d568e;return _0x7686a;});}})[_0xeda3('0x1a')](respondWithFilteredResult(_0x4d6c12,_0x1fae86))[_0xeda3('0x24')](handleError(_0x4d6c12,null));};exports['removeDispositions']=function(_0x30b7e1,_0x550e2a,_0x457ff8){return db[_0xeda3('0x3b')][_0xeda3('0x57')]({'where':{'id':_0x30b7e1['params']['id']}})[_0xeda3('0x1a')](handleEntityNotFound(_0x550e2a,null))['then'](function(_0xf44368){if(_0xf44368){return _0xf44368[_0xeda3('0x68')](_0x30b7e1[_0xeda3('0x40')][_0xeda3('0x69')]);}})[_0xeda3('0x1a')](respondWithStatusCode(_0x550e2a,null))[_0xeda3('0x24')](handleError(_0x550e2a,null));};exports[_0xeda3('0x6a')]=function(_0x26d94a,_0x301416,_0x5da483){if(_0x26d94a[_0xeda3('0x59')]['id']){delete _0x26d94a[_0xeda3('0x59')]['id'];}return db[_0xeda3('0x3b')]['find']({'where':{'id':_0x26d94a['params']['id']}})[_0xeda3('0x1a')](handleEntityNotFound(_0x301416,null))[_0xeda3('0x1a')](function(_0x177498){if(_0x177498){_0x26d94a[_0xeda3('0x59')][_0xeda3('0x64')]=_0x177498['id'];return db['CannedAnswer'][_0xeda3('0x58')](_0x26d94a['body']);}})['then'](respondWithResult(_0x301416,null))[_0xeda3('0x24')](handleError(_0x301416,null));};exports[_0xeda3('0x6b')]=function(_0x2dd144,_0x1dda08,_0x143289){var _0x4030c1={'raw':![],'where':{}};var _0x2c88ed={};var _0x2d9033={'count':0x0,'rows':[]};return db[_0xeda3('0x3b')][_0xeda3('0x67')]({'where':{'id':_0x2dd144[_0xeda3('0x55')]['id']}})['then'](handleEntityNotFound(_0x1dda08,null))['then'](function(_0x45dfdb){if(_0x45dfdb){_0x2c88ed[_0xeda3('0x44')]=_[_0xeda3('0x41')](db[_0xeda3('0x6c')][_0xeda3('0x3c')]);_0x2c88ed[_0xeda3('0x40')]=_[_0xeda3('0x41')](_0x2dd144[_0xeda3('0x40')]);_0x2c88ed[_0xeda3('0x42')]=_[_0xeda3('0x43')](_0x2c88ed[_0xeda3('0x44')],_0x2c88ed[_0xeda3('0x40')]);_0x4030c1[_0xeda3('0x45')]=_['intersection'](_0x2c88ed[_0xeda3('0x44')],qs[_0xeda3('0x46')](_0x2dd144['query']['fields']));_0x4030c1[_0xeda3('0x45')]=_0x4030c1[_0xeda3('0x45')][_0xeda3('0x47')]?_0x4030c1[_0xeda3('0x45')]:_0x2c88ed['model'];if(!_0x2dd144[_0xeda3('0x40')]['hasOwnProperty'](_0xeda3('0x49'))){_0x4030c1[_0xeda3('0x28')]=qs[_0xeda3('0x28')](_0x2dd144[_0xeda3('0x40')]['limit']);_0x4030c1[_0xeda3('0x2b')]=qs['offset'](_0x2dd144['query'][_0xeda3('0x2b')]);}_0x4030c1[_0xeda3('0x4a')]=qs[_0xeda3('0x4b')](_0x2dd144[_0xeda3('0x40')][_0xeda3('0x4b')]);_0x4030c1['where']=qs[_0xeda3('0x42')](_[_0xeda3('0x4d')](_0x2dd144[_0xeda3('0x40')],_0x2c88ed[_0xeda3('0x42')]));_0x4030c1['where'][_0xeda3('0x64')]=_0x45dfdb['id'];if(_0x2dd144[_0xeda3('0x40')][_0xeda3('0x4e')]){_0x4030c1['where']=_[_0xeda3('0x4f')](_0x4030c1[_0xeda3('0x4c')],{'$or':_[_0xeda3('0x3f')](_0x4030c1[_0xeda3('0x45')],function(_0x3056cb){var _0x4e9272={};_0x4e9272[_0x3056cb]={'$like':'%'+_0x2dd144['query'][_0xeda3('0x4e')]+'%'};return _0x4e9272;})});}_0x4030c1=_[_0xeda3('0x4f')]({},_0x4030c1,_0x2dd144[_0xeda3('0x51')]);return db[_0xeda3('0x6c')][_0xeda3('0x2a')]({'where':_0x4030c1[_0xeda3('0x4c')]})['then'](function(_0xe5f2e0){_0x2d9033['count']=_0xe5f2e0;if(_0x2dd144[_0xeda3('0x40')][_0xeda3('0x56')]){_0x4030c1[_0xeda3('0x52')]=[{'all':!![]}];}return db['CannedAnswer'][_0xeda3('0x53')](_0x4030c1);})[_0xeda3('0x1a')](function(_0x461386){_0x2d9033[_0xeda3('0x54')]=_0x461386;return _0x2d9033;});}})[_0xeda3('0x1a')](respondWithFilteredResult(_0x1dda08,_0x4030c1))[_0xeda3('0x24')](handleError(_0x1dda08,null));};exports['removeAnswers']=function(_0x3a1eae,_0x3d02f6,_0xbc2a07){return db[_0xeda3('0x3b')][_0xeda3('0x57')]({'where':{'id':_0x3a1eae[_0xeda3('0x55')]['id']}})[_0xeda3('0x1a')](handleEntityNotFound(_0x3d02f6,null))[_0xeda3('0x1a')](function(_0x2fbfbf){if(_0x2fbfbf){return _0x2fbfbf[_0xeda3('0x6d')](_0x3a1eae[_0xeda3('0x40')][_0xeda3('0x69')]);}})[_0xeda3('0x1a')](respondWithStatusCode(_0x3d02f6,null))[_0xeda3('0x24')](handleError(_0x3d02f6,null));};exports[_0xeda3('0x6e')]=function(_0x2ec764,_0xf62081,_0x44197c){return db[_0xeda3('0x3b')][_0xeda3('0x57')]({'where':{'id':_0x2ec764[_0xeda3('0x55')]['id']}})[_0xeda3('0x1a')](handleEntityNotFound(_0xf62081,null))['then'](function(_0xadd24c){if(_0xadd24c){return _0xadd24c[_0xeda3('0x6e')](_0x2ec764[_0xeda3('0x59')][_0xeda3('0x69')],_['omit'](_0x2ec764['body'],[_0xeda3('0x69'),'id'])||{})[_0xeda3('0x6f')](function(_0x56e70c){for(var _0x1baee4=0x0;_0x1baee4<_0x2ec764[_0xeda3('0x59')]['ids'][_0xeda3('0x47')];_0x1baee4+=0x1){socket[_0xeda3('0x70')](_0xeda3('0x71'),{'UserId':Number(_0x2ec764[_0xeda3('0x59')][_0xeda3('0x69')][_0x1baee4]),'WhatsappAccountId':Number(_0x2ec764[_0xeda3('0x55')]['id'])});}return _0x56e70c;});}})[_0xeda3('0x1a')](respondWithResult(_0xf62081,null))['catch'](handleError(_0xf62081,null));};exports['removeAgents']=function(_0x1ca0a4,_0xe3a70e,_0xb2f0e6){return db[_0xeda3('0x3b')][_0xeda3('0x57')]({'where':{'id':_0x1ca0a4[_0xeda3('0x55')]['id']}})[_0xeda3('0x1a')](handleEntityNotFound(_0xe3a70e,null))['then'](function(_0x13c509){if(_0x13c509){return _0x13c509[_0xeda3('0x72')](_0x1ca0a4[_0xeda3('0x40')][_0xeda3('0x69')])[_0xeda3('0x1a')](function(){if(_[_0xeda3('0x73')](_0x1ca0a4['query'][_0xeda3('0x69')])){for(var _0x8de404=0x0;_0x8de404<_0x1ca0a4[_0xeda3('0x40')][_0xeda3('0x69')][_0xeda3('0x47')];_0x8de404+=0x1){socket[_0xeda3('0x70')](_0xeda3('0x74'),{'UserId':Number(_0x1ca0a4[_0xeda3('0x40')]['ids'][_0x8de404]),'WhatsappAccountId':Number(_0x1ca0a4[_0xeda3('0x55')]['id'])});}}else{socket[_0xeda3('0x70')](_0xeda3('0x74'),{'UserId':Number(_0x1ca0a4[_0xeda3('0x40')][_0xeda3('0x69')]),'WhatsappAccountId':Number(_0x1ca0a4[_0xeda3('0x55')]['id'])});}});}})[_0xeda3('0x1a')](respondWithStatusCode(_0xe3a70e,null))['catch'](handleError(_0xe3a70e,null));};exports[_0xeda3('0x75')]=function(_0x41dab7,_0x1221a1,_0x821f){var _0x4389bc={};var _0x5bae90={};var _0x1e8113;var _0x5c4847;return db[_0xeda3('0x3b')][_0xeda3('0x67')]({'where':{'id':_0x41dab7[_0xeda3('0x55')]['id']}})[_0xeda3('0x1a')](handleEntityNotFound(_0x1221a1,null))[_0xeda3('0x1a')](function(_0x3b9cdf){if(_0x3b9cdf){_0x1e8113=_0x3b9cdf;_0x5bae90[_0xeda3('0x44')]=_['keys'](db[_0xeda3('0x76')][_0xeda3('0x3c')]);_0x5bae90[_0xeda3('0x40')]=_[_0xeda3('0x41')](_0x41dab7[_0xeda3('0x40')]);_0x5bae90[_0xeda3('0x42')]=_[_0xeda3('0x43')](_0x5bae90['model'],_0x5bae90['query']);_0x4389bc[_0xeda3('0x45')]=_[_0xeda3('0x43')](_0x5bae90['model'],qs[_0xeda3('0x46')](_0x41dab7['query'][_0xeda3('0x46')]));_0x4389bc['attributes']=_0x4389bc[_0xeda3('0x45')][_0xeda3('0x47')]?_0x4389bc[_0xeda3('0x45')]:_0x5bae90[_0xeda3('0x44')];_0x4389bc[_0xeda3('0x4a')]=qs[_0xeda3('0x4b')](_0x41dab7['query'][_0xeda3('0x4b')]);_0x4389bc[_0xeda3('0x4c')]=qs[_0xeda3('0x42')](_[_0xeda3('0x4d')](_0x41dab7[_0xeda3('0x40')],_0x5bae90[_0xeda3('0x42')]));if(_0x41dab7[_0xeda3('0x40')][_0xeda3('0x4e')]){_0x4389bc[_0xeda3('0x4c')]=_['merge'](_0x4389bc[_0xeda3('0x4c')],{'$or':_['map'](_0x4389bc[_0xeda3('0x45')],function(_0x2a1300){var _0x18bffd={};_0x18bffd[_0x2a1300]={'$like':'%'+_0x41dab7[_0xeda3('0x40')]['filter']+'%'};return _0x18bffd;})});}_0x4389bc=_['merge']({},_0x4389bc,_0x41dab7['options']);return _0x1e8113['getAgents'](_0x4389bc);}})[_0xeda3('0x1a')](function(_0x2c9630){if(_0x2c9630){_0x5c4847=_0x2c9630[_0xeda3('0x47')];if(!_0x41dab7[_0xeda3('0x40')][_0xeda3('0x48')](_0xeda3('0x49'))){_0x4389bc[_0xeda3('0x28')]=qs[_0xeda3('0x28')](_0x41dab7['query'][_0xeda3('0x28')]);_0x4389bc[_0xeda3('0x2b')]=qs['offset'](_0x41dab7[_0xeda3('0x40')]['offset']);}return _0x1e8113[_0xeda3('0x75')](_0x4389bc);}})[_0xeda3('0x1a')](function(_0x1006f7){if(_0x1006f7){return _0x1006f7?{'count':_0x5c4847,'rows':_0x1006f7}:null;}})[_0xeda3('0x1a')](respondWithResult(_0x1221a1,null))[_0xeda3('0x24')](handleError(_0x1221a1,null));};exports[_0xeda3('0x77')]=function(_0x440076,_0x4947f3){var _0xd75028=_0x440076[_0xeda3('0x55')]['id'];var _0x4dd622=_0x440076[_0xeda3('0x59')];var _0x45367c=0xc8;var _0xc19295=null;return db[_0xeda3('0x78')][_0xeda3('0x79')]({'isolationLevel':db[_0xeda3('0x78')][_0xeda3('0x7a')]['ISOLATION_LEVELS'][_0xeda3('0x7b')]},function(_0x3782b2){return db[_0xeda3('0x3b')][_0xeda3('0x67')]({'where':{'id':_0xd75028},'transaction':_0x3782b2})['then'](function(_0x52dfae){if(_0x52dfae){return db['WhatsappApplication']['destroy']({'where':{'WhatsappAccountId':_0xd75028},'transaction':_0x3782b2})[_0xeda3('0x1a')](function(){var _0x6b1866=_[_0xeda3('0x3f')](_0x4dd622,function(_0x4f2f39){_0x4f2f39['WhatsappAccountId']=_0xd75028;return _0x4f2f39;});return db[_0xeda3('0x7c')]['bulkCreate'](_0x6b1866,{'transaction':_0x3782b2});});}else{_0x45367c=0x194;_0xc19295=[];}});})[_0xeda3('0x1a')](function(){if(_0x45367c!==0x194){return db[_0xeda3('0x7c')]['findAndCountAll']({'where':{'WhatsappAccountId':_0xd75028},'order':_0xeda3('0x7d')})['then'](function(_0x3ffe28){_0xc19295=_0x3ffe28;});}})[_0xeda3('0x24')](function(_0x40fd4f){_0x45367c=0x1f4;logger[_0xeda3('0x1f')](_0x40fd4f[_0xeda3('0x7e')]);if(_0x40fd4f[_0xeda3('0x36')]){delete _0x40fd4f[_0xeda3('0x36')];}_0xc19295=_0x40fd4f;})['finally'](function(){if(_0xc19295===null){_0x4947f3[_0xeda3('0x35')](_0x45367c);}else{if(_0x45367c===0x1f4){_0x4947f3['status'](_0x45367c)['send'](_0xc19295);}else{_0x4947f3[_0xeda3('0x25')](_0x45367c)[_0xeda3('0x27')](_0xc19295);}}});};exports['getApplications']=function(_0x229fa5,_0x45ebd0,_0x20875e){var _0x1aae29={};var _0xe1764e={};var _0x470aa5;var _0x4976a0;return db[_0xeda3('0x3b')][_0xeda3('0x67')]({'where':{'id':_0x229fa5['params']['id']}})[_0xeda3('0x1a')](handleEntityNotFound(_0x45ebd0,null))[_0xeda3('0x1a')](function(_0x369c60){if(_0x369c60){_0x470aa5=_0x369c60;_0xe1764e[_0xeda3('0x44')]=_[_0xeda3('0x41')](db[_0xeda3('0x7c')][_0xeda3('0x3c')]);_0xe1764e[_0xeda3('0x40')]=_['keys'](_0x229fa5[_0xeda3('0x40')]);_0xe1764e['filters']=_[_0xeda3('0x43')](_0xe1764e['model'],_0xe1764e[_0xeda3('0x40')]);_0x1aae29[_0xeda3('0x45')]=_[_0xeda3('0x43')](_0xe1764e[_0xeda3('0x44')],qs[_0xeda3('0x46')](_0x229fa5[_0xeda3('0x40')][_0xeda3('0x46')]));_0x1aae29[_0xeda3('0x45')]=_0x1aae29[_0xeda3('0x45')][_0xeda3('0x47')]?_0x1aae29[_0xeda3('0x45')]:_0xe1764e[_0xeda3('0x44')];_0x1aae29[_0xeda3('0x4a')]=qs['sort'](_0x229fa5[_0xeda3('0x40')][_0xeda3('0x4b')]);_0x1aae29[_0xeda3('0x4c')]=qs[_0xeda3('0x42')](_[_0xeda3('0x4d')](_0x229fa5['query'],_0xe1764e[_0xeda3('0x42')]));if(_0x229fa5['query']['filter']){_0x1aae29[_0xeda3('0x4c')]=_[_0xeda3('0x4f')](_0x1aae29['where'],{'$or':_[_0xeda3('0x3f')](_0x1aae29['attributes'],function(_0x2841b1){var _0x5ada9f={};_0x5ada9f[_0x2841b1]={'$like':'%'+_0x229fa5[_0xeda3('0x40')][_0xeda3('0x4e')]+'%'};return _0x5ada9f;})});}_0x1aae29=_['merge']({},_0x1aae29,_0x229fa5[_0xeda3('0x51')]);return _0x470aa5[_0xeda3('0x7f')](_0x1aae29);}})['then'](function(_0x48de83){if(_0x48de83){_0x4976a0=_0x48de83[_0xeda3('0x47')];if(!_0x229fa5['query'][_0xeda3('0x48')](_0xeda3('0x49'))){_0x1aae29[_0xeda3('0x28')]=qs[_0xeda3('0x28')](_0x229fa5[_0xeda3('0x40')][_0xeda3('0x28')]);_0x1aae29[_0xeda3('0x2b')]=qs[_0xeda3('0x2b')](_0x229fa5[_0xeda3('0x40')][_0xeda3('0x2b')]);}return _0x470aa5[_0xeda3('0x7f')](_0x1aae29);}})[_0xeda3('0x1a')](function(_0x8becf7){if(_0x8becf7){return _0x8becf7?{'count':_0x4976a0,'rows':_0x8becf7}:null;}})['then'](respondWithResult(_0x45ebd0,null))[_0xeda3('0x24')](handleError(_0x45ebd0,null));};exports['notify']=function(_0x207faf,_0x3cda7d,_0x4ac4eb){var _0x1e51d5={'channel':_0xeda3('0x80')};var _0x1fd715=[];var _0x2169f2=[];var _0x397663={};return db['WhatsappAccount']['find']({'where':{'id':_0x207faf[_0xeda3('0x55')]['id']},'include':[{'model':db[_0xeda3('0x7c')],'as':'Applications'}]})[_0xeda3('0x1a')](handleEntityNotFound(_0x3cda7d,null))[_0xeda3('0x1a')](function(_0x2cfac9){_0x1e51d5['account']=_0x2cfac9;if(_0x1e51d5['account']&&_0x1e51d5['account'][_0xeda3('0x3d')]===_0xeda3('0x81')&&_0x207faf[_0xeda3('0x59')][_0xeda3('0x82')]){if(_0x207faf[_0xeda3('0x59')]['statuses'][_0xeda3('0x47')]===0x0)return;if(_0x207faf[_0xeda3('0x59')][_0xeda3('0x82')][0x0][_0xeda3('0x83')]!==_0xeda3('0x84'))return;return db[_0xeda3('0x85')][_0xeda3('0x31')]({'read':!![],'readAt':_0x207faf['body']['statuses'][0x0][_0xeda3('0x86')]},{'where':{'messageId':_0x207faf['body']['statuses'][0x0][_0xeda3('0x87')]},'individualHooks':!![]})[_0xeda3('0x1a')](function(_0x5b4af0){return _0x3cda7d[_0xeda3('0x25')](0xc8)['json'](_0x5b4af0);});}_0x1e51d5['applications']=_[_0xeda3('0x88')](_0x2cfac9[_0xeda3('0x89')],['priority'],[_0xeda3('0x8a')]);if(_0x1e51d5[_0xeda3('0x8b')][_0xeda3('0x89')]){delete _0x1e51d5[_0xeda3('0x8b')]['Applications'];}return db['CmContact'][_0xeda3('0x62')]()[_0xeda3('0x1a')](function(_0x1dd551){if(!_0x1dd551){throw new db[(_0xeda3('0x8c'))][(_0xeda3('0x8d'))](_0xeda3('0x8e'));}_0x1fd715=_[_0xeda3('0x8f')](_[_0xeda3('0x41')](_0x1dd551),['createdAt','updatedAt']);_0x2169f2=_['difference'](_[_0xeda3('0x41')](_0x1dd551),['createdAt',_0xeda3('0x90'),_0xeda3('0x91'),_0xeda3('0x92')]);_0x1e51d5[_0xeda3('0x59')]={'mapKey':_0xeda3('0x93')};if(_0x1e51d5[_0xeda3('0x8b')]&&_0x1e51d5[_0xeda3('0x8b')]['type']==='twilio'){_0x1e51d5[_0xeda3('0x59')][_0xeda3('0x94')]=_0x207faf[_0xeda3('0x59')][_0xeda3('0x95')]['replace'](_0xeda3('0x96'),'');_0x1e51d5[_0xeda3('0x59')][_0xeda3('0x59')]=_0x207faf[_0xeda3('0x59')][_0xeda3('0x97')];_0x1e51d5[_0xeda3('0x59')][_0xeda3('0x98')]=_0x207faf[_0xeda3('0x59')][_0xeda3('0x99')];}if(_0x1e51d5[_0xeda3('0x8b')]&&_0x1e51d5['account'][_0xeda3('0x3d')]===_0xeda3('0x81')){_0x1e51d5[_0xeda3('0x59')][_0xeda3('0x94')]=_0x207faf['body'][_0xeda3('0x9a')][0x0][_0xeda3('0x94')];_0x1e51d5[_0xeda3('0x59')][_0xeda3('0x59')]=_0x207faf[_0xeda3('0x59')][_0xeda3('0x9a')][0x0][_0xeda3('0x21')][_0xeda3('0x59')];_0x1e51d5[_0xeda3('0x59')][_0xeda3('0x98')]=_0x207faf[_0xeda3('0x59')][_0xeda3('0x9a')][0x0][_0xeda3('0x87')];}if(_0x1e51d5[_0xeda3('0x59')]['id']){delete _0x1e51d5[_0xeda3('0x59')]['id'];}if(_[_0xeda3('0x9b')](_0x1e51d5[_0xeda3('0x59')]['from'])){throw new db['Sequelize'][(_0xeda3('0x8d'))](_0xeda3('0x9c'));}if(_['isNil'](_0x1e51d5['body'][_0xeda3('0x59')])||_0x1e51d5[_0xeda3('0x59')][_0xeda3('0x59')]===''){throw new db['Sequelize'][(_0xeda3('0x8d'))]('body\x20is\x20mandatory\x20and\x20not\x20empty');}if(_['isNil'](_0x1e51d5[_0xeda3('0x59')]['mapKey'])){throw new db[(_0xeda3('0x8c'))][(_0xeda3('0x8d'))](_0xeda3('0x9d')+_0x2169f2);}if(!_[_0xeda3('0x9e')](_0x2169f2,_0x1e51d5[_0xeda3('0x59')][_0xeda3('0x9f')])){throw new db[(_0xeda3('0x8c'))][(_0xeda3('0x8d'))](_0xeda3('0xa0')+_0x2169f2);}_0x397663[_0x1e51d5[_0xeda3('0x59')][_0xeda3('0x9f')]]=_0x1e51d5[_0xeda3('0x59')][_0xeda3('0x94')];return db['CmList'][_0xeda3('0x57')]({'where':{'id':_0x1e51d5['account'][_0xeda3('0x92')]},'include':[{'model':db[_0xeda3('0xa1')],'as':_0xeda3('0xa2'),'where':_0x397663,'limit':0x1,'order':[[_0xeda3('0x90'),'DESC']]}]});})[_0xeda3('0x1a')](handleEntityNotFound(_0x3cda7d,null))['then'](function(_0x29ea25){if(_0x29ea25){_0x1e51d5[_0xeda3('0xa3')]=_['omit'](_0x29ea25,[_0xeda3('0xa2')]);if(_0x29ea25[_0xeda3('0xa2')][_0xeda3('0x47')]){return _0x29ea25['Contacts'][0x0];}var _0x33b25a=_[_0xeda3('0xa4')](_0x1e51d5[_0xeda3('0x59')],{'firstName':_0x1e51d5[_0xeda3('0x59')][_0xeda3('0x94')],'ListId':_0x29ea25['id']});_0x33b25a[_0x1e51d5[_0xeda3('0x59')][_0xeda3('0x9f')]]=_0x1e51d5[_0xeda3('0x59')][_0xeda3('0x94')];return db[_0xeda3('0xa1')][_0xeda3('0x58')](_0x33b25a,{'fields':_0x1fd715,'raw':!![]});}})[_0xeda3('0x1a')](handleEntityNotFound(_0x3cda7d,null))['then'](function(_0x90b934){if(_0x90b934){_0x1e51d5[_0xeda3('0xa5')]=_0x90b934;var _0x8a6a6f={'ContactId':_0x90b934['id'],'phone':_0x1e51d5[_0xeda3('0x59')][_0xeda3('0x94')],'WhatsappAccountId':_0x207faf[_0xeda3('0x55')]['id']};var _0x4955bb={'ContactId':_0x90b934['id'],'WhatsappAccountId':_0x207faf[_0xeda3('0x55')]['id'],'closed':![]};return db[_0xeda3('0xa6')]['find']({'where':_0x4955bb})[_0xeda3('0x1a')](function(_0x1ee059){if(_0x1ee059){return[_0x1ee059,![]];}return db['WhatsappInteraction']['create'](_0x8a6a6f)[_0xeda3('0x1a')](function(_0x1a3cff){return[_0x1a3cff,!![]];});});}})[_0xeda3('0x6f')](function(_0x5b5911,_0x478730){_0x1e51d5[_0xeda3('0xa7')]=_0x5b5911['get']({'plain':!![]});_0x1e51d5[_0xeda3('0xa7')][_0xeda3('0xa8')]=![];if(_0x478730){if(_0x1e51d5[_0xeda3('0x8b')]['autoclose']){_0x1e51d5[_0xeda3('0xa9')][_0xeda3('0xaa')]({'id':0x0,'priority':_0x1e51d5[_0xeda3('0xa9')]['length']+0x1,'app':_0xeda3('0xab'),'appdata':'unmanaged','interval':_0xeda3('0xac')});}_0x1e51d5[_0xeda3('0xa7')][_0xeda3('0xa8')]=!![];}return db['WhatsappMessage'][_0xeda3('0x58')]({'phone':_0x1e51d5[_0xeda3('0x59')]['from'],'messageId':_0x1e51d5[_0xeda3('0x59')][_0xeda3('0x98')],'body':_0x1e51d5['body'][_0xeda3('0x59')],'WhatsappAccountId':_0x207faf['params']['id'],'WhatsappInteractionId':_0x5b5911['id'],'direction':'in','ContactId':_0x5b5911[_0xeda3('0xad')],'AttachmentId':_0x1e51d5[_0xeda3('0x59')][_0xeda3('0xae')]});})['then'](function(_0x398880){_0x1e51d5[_0xeda3('0x21')]=_0x398880;if(_0x1e51d5[_0xeda3('0xa7')][_0xeda3('0xaf')]){return db[_0xeda3('0x76')][_0xeda3('0x57')]({'attributes':['id',_0xeda3('0x36')],'where':{'id':_0x1e51d5['interaction'][_0xeda3('0xaf')]}})['then'](function(_0x31a030){if(_0x31a030){_0x1e51d5[_0xeda3('0xa9')][_0xeda3('0xb0')]({'id':0x0,'priority':0x0,'app':_0xeda3('0xb1'),'appdata':_0x31a030['name']+','+(_0x1e51d5['account']['waitForTheAssignedAgent']||0xa),'interval':_0xeda3('0xac')});}return respondWithRpcPromise(_0xeda3('0xb2'),_0xeda3('0xb3'),_0x1e51d5);});}return respondWithRpcPromise('Start','startRouting',_0x1e51d5);})[_0xeda3('0x1a')](function(_0x20e6f9){if(_0x20e6f9){var _0x10950b=0xc8;var _0x1b4f24=_0xeda3('0xb4');logger[_0xeda3('0x22')](_0xeda3('0x1d'),_0x1b4f24,_0x10950b,_0xeda3('0xb5'));logger[_0xeda3('0xb6')](_0xeda3('0xb7'),_0x1b4f24,_0x10950b,_0xeda3('0xb5'),JSON[_0xeda3('0x1e')](_0x20e6f9));if(_0x1e51d5['account'][_0xeda3('0x3d')]==='twilio'){return _0x3cda7d['status'](_0x10950b)[_0xeda3('0x2c')](_0xeda3('0xb8'),'text/xml')[_0xeda3('0x37')](_0xeda3('0xb9'));}else{return _0x3cda7d['status'](_0x10950b)[_0xeda3('0x27')](_0x20e6f9);}}});})[_0xeda3('0x24')](handleError(_0x3cda7d,null));};exports[_0xeda3('0x37')]=function(_0x5b86ea,_0x4e1b61,_0x1ddffd){var _0xf02efd,_0x28c5ee,_0x4148f1;if(_[_0xeda3('0x9b')](_0x5b86ea[_0xeda3('0x59')][_0xeda3('0x59')])||_0x5b86ea[_0xeda3('0x59')][_0xeda3('0x59')]===''){throw new db[(_0xeda3('0x8c'))][(_0xeda3('0x8d'))](_0xeda3('0xba'));}if(_[_0xeda3('0x9b')](_0x5b86ea[_0xeda3('0x59')]['to'])){throw new db[(_0xeda3('0x8c'))][(_0xeda3('0x8d'))](_0xeda3('0xbb'));}_0xf02efd=_0x5b86ea[_0xeda3('0x59')]['to'];return db['WhatsappAccount'][_0xeda3('0x57')]({'where':{'id':_0x5b86ea[_0xeda3('0x55')]['id']},'include':[{'model':db['CmList'],'as':_0xeda3('0xbc'),'include':[{'model':db['CmContact'],'as':_0xeda3('0xa2'),'where':{'mobile':_0xf02efd},'limit':0x1,'order':[[_0xeda3('0x90'),'DESC']]}]}]})[_0xeda3('0x1a')](handleEntityNotFound(_0x4e1b61,null))[_0xeda3('0x1a')](function(_0x205c0e){if(_0x205c0e&&_0x205c0e[_0xeda3('0xbc')]){_0x28c5ee=_0x205c0e[_0xeda3('0x33')]({'plain':!![]});if(_0x28c5ee[_0xeda3('0xbc')]&&_0x28c5ee[_0xeda3('0xbc')][_0xeda3('0xa2')][_0xeda3('0x47')]){return _0x28c5ee['List']['Contacts'][0x0];}return db[_0xeda3('0xa1')][_0xeda3('0x58')](_[_0xeda3('0xa4')](_0x5b86ea[_0xeda3('0x59')],{'firstName':_0xf02efd,'mobile':_0xf02efd,'phone':_0xf02efd,'ListId':_0x28c5ee[_0xeda3('0x92')]}));}})[_0xeda3('0x1a')](handleEntityNotFound(_0x4e1b61,null))[_0xeda3('0x1a')](function(_0x5faad5){if(_0x5faad5){_0x4148f1=_0x5faad5;return db[_0xeda3('0xa6')][_0xeda3('0x57')]({'where':{'ContactId':_0x4148f1['id'],'closed':![],'WhatsappAccountId':_0x28c5ee['id']}})[_0xeda3('0x1a')](function(_0x16aca4){if(_0x16aca4){return[_0x16aca4,![]];}return db[_0xeda3('0xa6')][_0xeda3('0x58')]({'UserId':_0x5b86ea[_0xeda3('0x5a')]['id'],'ContactId':_0x4148f1['id'],'WhatsappAccountId':_0x28c5ee['id'],'phone':_0xf02efd,'firstMsgDirection':_0xeda3('0xbd'),'Messages':[_[_0xeda3('0x4f')](_0x5b86ea[_0xeda3('0x59')],{'read':![],'body':_0x5b86ea[_0xeda3('0x59')][_0xeda3('0x59')],'phone':_0xf02efd,'WhatsappAccountId':_0x28c5ee['id'],'UserId':_0x5b86ea[_0xeda3('0x5a')]['id'],'ContactId':_0x4148f1['id']})]},{'include':[{'model':db[_0xeda3('0x85')],'as':_0xeda3('0xbe')}]})[_0xeda3('0x1a')](function(_0xcc632){return[_0xcc632,!![]];});});}})[_0xeda3('0x6f')](function(_0x1da56b,_0x966886){if(_0x966886){return _0x1da56b;}return db['WhatsappMessage'][_0xeda3('0x58')](_[_0xeda3('0x4f')](_0x5b86ea['body'],{'read':![],'body':_0x5b86ea['body'][_0xeda3('0x59')],'phone':_0xf02efd,'WhatsappAccountId':_0x28c5ee['id'],'WhatsappInteractionId':_0x1da56b['id'],'UserId':_0x5b86ea[_0xeda3('0x5a')]['id'],'ContactId':_0x4148f1['id']}))[_0xeda3('0x1a')](function(_0x4e8539){_0x1da56b[_0xeda3('0xbf')][_0xeda3('0xbe')]=[];_0x1da56b[_0xeda3('0xbf')][_0xeda3('0xbe')][_0xeda3('0xaa')](_0x4e8539['dataValues']);return _0x1da56b;});})[_0xeda3('0x1a')](respondWithResult(_0x4e1b61,null))['catch'](handleError(_0x4e1b61,null));};