235336a3fae584cc92a66b26280f3ef3c935ea86
[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 _0x63ad=['fields','attributes','length','order','sort','where','pick','filter','merge','options','WhatsappAccount','includeAll','include','findAll','rows','show','create','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','user','UserProfileSection','userProfileId','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','body','find','mandatoryDispositionPause','describe','addDisposition','params','Disposition','getDispositions','hasOwnProperty','nolimit','removeDispositions','ids','WhatsappAccountId','CannedAnswer','getAnswers','removeAnswers','addAgents','omit','spread','emit','userWhatsappAccount:save','removeAgents','isArray','userWhatsappAccount:remove','findOne','User','getAgents','addApplications','sequelize','transaction','Transaction','READ_COMMITTED','WhatsappApplication','findAndCountAll','getApplications','notify','whatsapp','Applications','account','statuses','state','read','WhatsappMessage','update','message_id','applications','orderBy','priority','CmContact','Sequelize','ValidationError','no\x20available\x20attributes','createdAt','difference','updatedAt','CompanyId','ListId','mobile','twilio','From','whatsapp:','Body','messageId','MessageSid','from','notifications','isNil','from\x20is\x20mandatory','body\x20is\x20mandatory\x20and\x20not\x20empty','includes','mapKey','mapKey\x20invalid,\x20please\x20use\x20one\x20of\x20these:\x20','CmList','Contacts','contact','WhatsappInteraction','interaction','created','autoclose','unmanaged','*,*,*,*','ContactId','AttachmentId','unshift','agent','waitForTheAssignedAgent','WhatsappQueue','queue','waitForTheAssignedQueue','Start','WhatsappAccount,\x20%s,\x20%s,\x20%s','entity\x20found','WhatsappAccount,\x20%s,\x20%s,\x20%s,\x20%s','stringify','Content-Type','text/xml','<?xml\x20version=\x221.0\x22\x20encoding=\x22UTF-8\x22?>\x0a<Response></Response>','List','out','Messages','dataValues','push','rimraf','zip-dir','mustache','util','sox','to-csv','ejs','fs-extra','lodash','squel','jsforce','papaparse','ioredis','../../components/auth/service','../../config/logger','../../config/utils','../../config/environment','../../mysqldb','redis','defaults','localhost','socket.io-emitter','register','jayson/promise','client','http','request','then','info','WhatsappAccount,\x20%s,\x20%s','request\x20sent','debug','error','message','catch','sendStatus','status','end','json','offset','undefined','limit','count','set','Content-Range','save','get','WhatsappAccounts','UserProfileResource','destroy','stack','name','send','Pause','map','rawAttributes','fieldName','type','key','model','query','keys','filters','intersection'];(function(_0x28e9fe,_0x394a7c){var _0x175e37=function(_0x5ba389){while(--_0x5ba389){_0x28e9fe['push'](_0x28e9fe['shift']());}};_0x175e37(++_0x394a7c);}(_0x63ad,0x7d));var _0xd63a=function(_0x5a2e7a,_0x15e1fd){_0x5a2e7a=_0x5a2e7a-0x0;var _0x13d1a9=_0x63ad[_0x5a2e7a];return _0x13d1a9;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0xd63a('0x0'));var zipdir=require(_0xd63a('0x1'));var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require('moment');var BPromise=require('bluebird');var Mustache=require(_0xd63a('0x2'));var util=require(_0xd63a('0x3'));var path=require('path');var sox=require(_0xd63a('0x4'));var csv=require(_0xd63a('0x5'));var ejs=require(_0xd63a('0x6'));var fs=require('fs');var fs_extra=require(_0xd63a('0x7'));var _=require(_0xd63a('0x8'));var squel=require(_0xd63a('0x9'));var crypto=require('crypto');var jsforce=require(_0xd63a('0xa'));var deskjs=require('desk.js');var toCsv=require(_0xd63a('0x5'));var querystring=require('querystring');var Papa=require(_0xd63a('0xb'));var Redis=require(_0xd63a('0xc'));var authService=require(_0xd63a('0xd'));var qs=require('../../components/parsers/qs');var as=require('../../components/parsers/advancedSearch');var hardwareService=require('../../config/license/hardware');var logger=require(_0xd63a('0xe'))('api');var utils=require(_0xd63a('0xf'));var config=require(_0xd63a('0x10'));var licenseUtil=require('../../config/license/util');var db=require(_0xd63a('0x11'))['db'];config[_0xd63a('0x12')]=_[_0xd63a('0x13')](config[_0xd63a('0x12')],{'host':_0xd63a('0x14'),'port':0x18eb});var socket=require(_0xd63a('0x15'))(new Redis(config[_0xd63a('0x12')]));require('./whatsappAccount.socket')[_0xd63a('0x16')](socket);var jayson=require(_0xd63a('0x17'));var client=jayson[_0xd63a('0x18')][_0xd63a('0x19')]({'port':0x232c});function respondWithRpcPromise(_0x1284cf,_0x2c4ff8,_0x2d9b2b,_0x59423d){return new BPromise(function(_0x3a0ce1,_0x5f37a1){var _0x11c164=_0x59423d||client;return _0x11c164[_0xd63a('0x1a')](_0x1284cf,_0x2d9b2b)[_0xd63a('0x1b')](function(_0x268908){logger[_0xd63a('0x1c')](_0xd63a('0x1d'),_0x2c4ff8,_0xd63a('0x1e'));logger[_0xd63a('0x1f')]('WhatsappAccount,\x20%s,\x20%s,\x20%s',_0x2c4ff8,_0xd63a('0x1e'),JSON['stringify'](_0x268908));if(_0x268908[_0xd63a('0x20')]){if(_0x268908[_0xd63a('0x20')]['code']===0x1f4){logger['error'](_0xd63a('0x1d'),_0x2c4ff8,_0x268908[_0xd63a('0x20')][_0xd63a('0x21')]);return _0x5f37a1(_0x268908[_0xd63a('0x20')]['message']);}logger[_0xd63a('0x20')](_0xd63a('0x1d'),_0x2c4ff8,_0x268908[_0xd63a('0x20')][_0xd63a('0x21')]);return _0x3a0ce1(_0x268908['error'][_0xd63a('0x21')]);}else{logger['info'](_0xd63a('0x1d'),_0x2c4ff8,_0xd63a('0x1e'));_0x3a0ce1(_0x268908['result'][_0xd63a('0x21')]);}})[_0xd63a('0x22')](function(_0x1924c6){logger['error']('WhatsappAccount,\x20%s,\x20%s',_0x2c4ff8,_0x1924c6);_0x5f37a1(_0x1924c6);});});}function respondWithStatusCode(_0x3d7ba5,_0x4a488c){_0x4a488c=_0x4a488c||0xcc;return function(_0x4e56be){if(_0x4e56be){return _0x3d7ba5[_0xd63a('0x23')](_0x4a488c);}return _0x3d7ba5[_0xd63a('0x24')](_0x4a488c)[_0xd63a('0x25')]();};}function respondWithResult(_0x487037,_0x20fb37){_0x20fb37=_0x20fb37||0xc8;return function(_0x14ada0){if(_0x14ada0){return _0x487037['status'](_0x20fb37)[_0xd63a('0x26')](_0x14ada0);}};}function respondWithFilteredResult(_0x4d2cf4,_0x533370){return function(_0x49c815){if(_0x49c815){var _0x5b52c2=typeof _0x533370[_0xd63a('0x27')]===_0xd63a('0x28')&&typeof _0x533370[_0xd63a('0x29')]===_0xd63a('0x28');var _0x2b1a0d=_0x49c815['count'];var _0x246f46=_0x5b52c2?0x0:_0x533370[_0xd63a('0x27')];var _0x2735af=_0x5b52c2?_0x49c815[_0xd63a('0x2a')]:_0x533370[_0xd63a('0x27')]+_0x533370[_0xd63a('0x29')];var _0x551524;if(_0x2735af>=_0x2b1a0d){_0x2735af=_0x2b1a0d;_0x551524=0xc8;}else{_0x551524=0xce;}_0x4d2cf4['status'](_0x551524);return _0x4d2cf4[_0xd63a('0x2b')](_0xd63a('0x2c'),_0x246f46+'-'+_0x2735af+'/'+_0x2b1a0d)['json'](_0x49c815);}return null;};}function patchUpdates(_0x23c274){return function(_0x539ec6){try{jsonpatch['apply'](_0x539ec6,_0x23c274,!![]);}catch(_0x4e8030){return BPromise['reject'](_0x4e8030);}return _0x539ec6[_0xd63a('0x2d')]();};}function saveUpdates(_0x5158a8,_0x3c8438){return function(_0x1b13ad){if(_0x1b13ad){return _0x1b13ad['update'](_0x5158a8)[_0xd63a('0x1b')](function(_0x28c3cf){return _0x28c3cf;});}return null;};}function removeEntity(_0x530d9a,_0x3f546f){return function(_0x316c2c){if(_0x316c2c){return _0x316c2c['destroy']()[_0xd63a('0x1b')](function(){var _0x981d6d=_0x316c2c[_0xd63a('0x2e')]({'plain':!![]});var _0x56d122=_0xd63a('0x2f');return db[_0xd63a('0x30')][_0xd63a('0x31')]({'where':{'type':_0x56d122,'resourceId':_0x981d6d['id']}})[_0xd63a('0x1b')](function(){return _0x316c2c;});})[_0xd63a('0x1b')](function(){_0x530d9a[_0xd63a('0x24')](0xcc)[_0xd63a('0x25')]();});}};}function handleEntityNotFound(_0x4521ef,_0x168070){return function(_0x503c14){if(!_0x503c14){_0x4521ef[_0xd63a('0x23')](0x194);}return _0x503c14;};}function handleError(_0x13a75f,_0x4d522a){_0x4d522a=_0x4d522a||0x1f4;return function(_0x23cefa){logger[_0xd63a('0x20')](_0x23cefa[_0xd63a('0x32')]);if(_0x23cefa[_0xd63a('0x33')]){delete _0x23cefa[_0xd63a('0x33')];}_0x13a75f[_0xd63a('0x24')](_0x4d522a)[_0xd63a('0x34')](_0x23cefa);};}exports['index']=function(_0x589218,_0x30dfb5){var _0x1b2c80={'include':[{'model':db[_0xd63a('0x35')],'as':'mandatoryDispositionPause'}]},_0x59c4e2={},_0x196c1f={'count':0x0,'rows':[]};var _0x2d9007=_[_0xd63a('0x36')](db['WhatsappAccount'][_0xd63a('0x37')],function(_0x1d2391){return{'name':_0x1d2391[_0xd63a('0x38')],'type':_0x1d2391[_0xd63a('0x39')][_0xd63a('0x3a')]};});_0x59c4e2[_0xd63a('0x3b')]=_[_0xd63a('0x36')](_0x2d9007,_0xd63a('0x33'));_0x59c4e2[_0xd63a('0x3c')]=_[_0xd63a('0x3d')](_0x589218[_0xd63a('0x3c')]);_0x59c4e2[_0xd63a('0x3e')]=_[_0xd63a('0x3f')](_0x59c4e2[_0xd63a('0x3b')],_0x59c4e2[_0xd63a('0x3c')]);_0x1b2c80['attributes']=_[_0xd63a('0x3f')](_0x59c4e2[_0xd63a('0x3b')],qs['fields'](_0x589218[_0xd63a('0x3c')][_0xd63a('0x40')]));_0x1b2c80[_0xd63a('0x41')]=_0x1b2c80[_0xd63a('0x41')][_0xd63a('0x42')]?_0x1b2c80[_0xd63a('0x41')]:_0x59c4e2[_0xd63a('0x3b')];if(!_0x589218['query']['hasOwnProperty']('nolimit')){_0x1b2c80['limit']=qs[_0xd63a('0x29')](_0x589218[_0xd63a('0x3c')][_0xd63a('0x29')]);_0x1b2c80['offset']=qs[_0xd63a('0x27')](_0x589218[_0xd63a('0x3c')][_0xd63a('0x27')]);}_0x1b2c80[_0xd63a('0x43')]=qs[_0xd63a('0x44')](_0x589218[_0xd63a('0x3c')]['sort']);_0x1b2c80[_0xd63a('0x45')]=qs[_0xd63a('0x3e')](_[_0xd63a('0x46')](_0x589218[_0xd63a('0x3c')],_0x59c4e2['filters']),_0x2d9007);if(_0x589218[_0xd63a('0x3c')][_0xd63a('0x47')]){_0x1b2c80[_0xd63a('0x45')]=_[_0xd63a('0x48')](_0x1b2c80[_0xd63a('0x45')],{'$or':_[_0xd63a('0x36')](_0x2d9007,function(_0x590798){if(_0x590798[_0xd63a('0x39')]!=='VIRTUAL'){var _0x4b9f99={};_0x4b9f99[_0x590798[_0xd63a('0x33')]]={'$like':'%'+_0x589218['query'][_0xd63a('0x47')]+'%'};return _0x4b9f99;}})});}_0x1b2c80=_[_0xd63a('0x48')]({},_0x1b2c80,_0x589218[_0xd63a('0x49')]);var _0x5cff6b={'where':_0x1b2c80[_0xd63a('0x45')]};return db[_0xd63a('0x4a')]['count'](_0x5cff6b)[_0xd63a('0x1b')](function(_0x48ed92){_0x196c1f['count']=_0x48ed92;if(_0x589218[_0xd63a('0x3c')][_0xd63a('0x4b')]){_0x1b2c80[_0xd63a('0x4c')]=[{'all':!![]}];}return db['WhatsappAccount'][_0xd63a('0x4d')](_0x1b2c80);})[_0xd63a('0x1b')](function(_0x33fcca){_0x196c1f[_0xd63a('0x4e')]=_0x33fcca;return _0x196c1f;})[_0xd63a('0x1b')](respondWithFilteredResult(_0x30dfb5,_0x1b2c80))[_0xd63a('0x22')](handleError(_0x30dfb5,null));};exports[_0xd63a('0x4f')]=function(_0x47d588,_0x430ff2){var _0x154ebe={'raw':![],'where':{'id':_0x47d588['params']['id']},'include':[{'model':db[_0xd63a('0x35')],'as':'mandatoryDispositionPause'}]},_0x23628a={};_0x23628a[_0xd63a('0x3b')]=_[_0xd63a('0x3d')](db[_0xd63a('0x4a')][_0xd63a('0x37')]);_0x23628a[_0xd63a('0x3c')]=_['keys'](_0x47d588[_0xd63a('0x3c')]);_0x23628a['filters']=_['intersection'](_0x23628a[_0xd63a('0x3b')],_0x23628a[_0xd63a('0x3c')]);_0x154ebe[_0xd63a('0x41')]=_[_0xd63a('0x3f')](_0x23628a['model'],qs['fields'](_0x47d588[_0xd63a('0x3c')][_0xd63a('0x40')]));_0x154ebe[_0xd63a('0x41')]=_0x154ebe[_0xd63a('0x41')][_0xd63a('0x42')]?_0x154ebe[_0xd63a('0x41')]:_0x23628a[_0xd63a('0x3b')];if(_0x47d588[_0xd63a('0x3c')]['includeAll']){_0x154ebe[_0xd63a('0x4c')]=[{'all':!![]}];}_0x154ebe=_[_0xd63a('0x48')]({},_0x154ebe,_0x47d588[_0xd63a('0x49')]);return db[_0xd63a('0x4a')]['find'](_0x154ebe)['then'](handleEntityNotFound(_0x430ff2,null))[_0xd63a('0x1b')](respondWithResult(_0x430ff2,null))[_0xd63a('0x22')](handleError(_0x430ff2,null));};exports[_0xd63a('0x50')]=function(_0x13511e,_0x30af08){return db[_0xd63a('0x4a')]['create'](_0x13511e['body'],{})[_0xd63a('0x1b')](function(_0x2b4402){var _0x1068a4=_0x13511e['user']['get']({'plain':!![]});if(!_0x1068a4)throw new Error(_0xd63a('0x51'));if(_0x1068a4[_0xd63a('0x52')]===_0xd63a('0x53')){var _0x2e8f3e=_0x2b4402[_0xd63a('0x2e')]({'plain':!![]});var _0x2214ab=_0xd63a('0x2f');return db[_0xd63a('0x54')]['find']({'where':{'name':_0x2214ab,'userProfileId':_0x1068a4[_0xd63a('0x55')]},'raw':!![]})[_0xd63a('0x1b')](function(_0x309f6f){if(_0x309f6f&&_0x309f6f['autoAssociation']===0x0){return db[_0xd63a('0x30')]['create']({'name':_0x2e8f3e['name'],'resourceId':_0x2e8f3e['id'],'type':_0x309f6f[_0xd63a('0x33')],'sectionId':_0x309f6f['id']},{})[_0xd63a('0x1b')](function(){return _0x2b4402;});}else{return _0x2b4402;}})[_0xd63a('0x22')](function(_0x4a4fa5){logger[_0xd63a('0x20')](_0xd63a('0x56'),_0x4a4fa5);throw _0x4a4fa5;});}return _0x2b4402;})[_0xd63a('0x1b')](respondWithResult(_0x30af08,0xc9))[_0xd63a('0x22')](handleError(_0x30af08,null));};exports['update']=function(_0x486c8e,_0x5bcbdf){if(_0x486c8e[_0xd63a('0x57')]['id']){delete _0x486c8e['body']['id'];}return db[_0xd63a('0x4a')][_0xd63a('0x58')]({'where':{'id':_0x486c8e['params']['id']},'include':[{'model':db[_0xd63a('0x35')],'as':_0xd63a('0x59')}]})[_0xd63a('0x1b')](handleEntityNotFound(_0x5bcbdf,null))[_0xd63a('0x1b')](saveUpdates(_0x486c8e[_0xd63a('0x57')],null))['then'](respondWithResult(_0x5bcbdf,null))[_0xd63a('0x22')](handleError(_0x5bcbdf,null));};exports['destroy']=function(_0x4053a3,_0x717100){return db[_0xd63a('0x4a')][_0xd63a('0x58')]({'where':{'id':_0x4053a3['params']['id']}})['then'](handleEntityNotFound(_0x717100,null))[_0xd63a('0x1b')](removeEntity(_0x717100,null))[_0xd63a('0x22')](handleError(_0x717100,null));};exports['describe']=function(_0x5a1461,_0x201e80){return db['WhatsappAccount'][_0xd63a('0x5a')]()[_0xd63a('0x1b')](respondWithResult(_0x201e80,null))[_0xd63a('0x22')](handleError(_0x201e80,null));};exports[_0xd63a('0x5b')]=function(_0x5c26ba,_0xbfb041,_0xda51ea){if(_0x5c26ba[_0xd63a('0x57')]['id']){delete _0x5c26ba[_0xd63a('0x57')]['id'];}return db[_0xd63a('0x4a')][_0xd63a('0x58')]({'where':{'id':_0x5c26ba[_0xd63a('0x5c')]['id']}})[_0xd63a('0x1b')](handleEntityNotFound(_0xbfb041,null))['then'](function(_0x69b3a6){if(_0x69b3a6){_0x5c26ba[_0xd63a('0x57')]['WhatsappAccountId']=_0x69b3a6['id'];return db[_0xd63a('0x5d')]['create'](_0x5c26ba[_0xd63a('0x57')]);}})[_0xd63a('0x1b')](respondWithResult(_0xbfb041,null))[_0xd63a('0x22')](handleError(_0xbfb041,null));};exports[_0xd63a('0x5e')]=function(_0x96c520,_0x9b6916,_0x2a6ce4){var _0x26849b={'raw':![],'where':{}};var _0x2cdc96={};var _0x45ae04={'count':0x0,'rows':[]};return db[_0xd63a('0x4a')]['findOne']({'where':{'id':_0x96c520[_0xd63a('0x5c')]['id']}})[_0xd63a('0x1b')](handleEntityNotFound(_0x9b6916,null))['then'](function(_0x2c960d){if(_0x2c960d){_0x2cdc96[_0xd63a('0x3b')]=_[_0xd63a('0x3d')](db[_0xd63a('0x5d')][_0xd63a('0x37')]);_0x2cdc96['query']=_['keys'](_0x96c520['query']);_0x2cdc96[_0xd63a('0x3e')]=_[_0xd63a('0x3f')](_0x2cdc96['model'],_0x2cdc96['query']);_0x26849b[_0xd63a('0x41')]=_[_0xd63a('0x3f')](_0x2cdc96[_0xd63a('0x3b')],qs[_0xd63a('0x40')](_0x96c520[_0xd63a('0x3c')][_0xd63a('0x40')]));_0x26849b[_0xd63a('0x41')]=_0x26849b['attributes'][_0xd63a('0x42')]?_0x26849b[_0xd63a('0x41')]:_0x2cdc96['model'];if(!_0x96c520[_0xd63a('0x3c')][_0xd63a('0x5f')](_0xd63a('0x60'))){_0x26849b[_0xd63a('0x29')]=qs[_0xd63a('0x29')](_0x96c520[_0xd63a('0x3c')][_0xd63a('0x29')]);_0x26849b['offset']=qs[_0xd63a('0x27')](_0x96c520[_0xd63a('0x3c')][_0xd63a('0x27')]);}_0x26849b['order']=qs[_0xd63a('0x44')](_0x96c520[_0xd63a('0x3c')][_0xd63a('0x44')]);_0x26849b[_0xd63a('0x45')]=qs[_0xd63a('0x3e')](_['pick'](_0x96c520['query'],_0x2cdc96[_0xd63a('0x3e')]));_0x26849b[_0xd63a('0x45')]['WhatsappAccountId']=_0x2c960d['id'];if(_0x96c520[_0xd63a('0x3c')]['filter']){_0x26849b[_0xd63a('0x45')]=_[_0xd63a('0x48')](_0x26849b['where'],{'$or':_['map'](_0x26849b['attributes'],function(_0x5c9cf3){var _0x20e7d0={};_0x20e7d0[_0x5c9cf3]={'$like':'%'+_0x96c520['query'][_0xd63a('0x47')]+'%'};return _0x20e7d0;})});}_0x26849b=_['merge']({},_0x26849b,_0x96c520[_0xd63a('0x49')]);return db[_0xd63a('0x5d')][_0xd63a('0x2a')]({'where':_0x26849b[_0xd63a('0x45')]})[_0xd63a('0x1b')](function(_0x36d3f1){_0x45ae04['count']=_0x36d3f1;if(_0x96c520['query']['includeAll']){_0x26849b['include']=[{'all':!![]}];}return db[_0xd63a('0x5d')]['findAll'](_0x26849b);})[_0xd63a('0x1b')](function(_0x3e29dc){_0x45ae04[_0xd63a('0x4e')]=_0x3e29dc;return _0x45ae04;});}})[_0xd63a('0x1b')](respondWithFilteredResult(_0x9b6916,_0x26849b))[_0xd63a('0x22')](handleError(_0x9b6916,null));};exports[_0xd63a('0x61')]=function(_0x54a9eb,_0x3425a5,_0x19ba84){return db[_0xd63a('0x4a')][_0xd63a('0x58')]({'where':{'id':_0x54a9eb[_0xd63a('0x5c')]['id']}})['then'](handleEntityNotFound(_0x3425a5,null))[_0xd63a('0x1b')](function(_0x3bbc6a){if(_0x3bbc6a){return _0x3bbc6a[_0xd63a('0x61')](_0x54a9eb[_0xd63a('0x3c')][_0xd63a('0x62')]);}})[_0xd63a('0x1b')](respondWithStatusCode(_0x3425a5,null))[_0xd63a('0x22')](handleError(_0x3425a5,null));};exports['addAnswer']=function(_0x87849d,_0x2b7bbc,_0x4f80a7){if(_0x87849d[_0xd63a('0x57')]['id']){delete _0x87849d['body']['id'];}return db['WhatsappAccount'][_0xd63a('0x58')]({'where':{'id':_0x87849d[_0xd63a('0x5c')]['id']}})[_0xd63a('0x1b')](handleEntityNotFound(_0x2b7bbc,null))[_0xd63a('0x1b')](function(_0x64e058){if(_0x64e058){_0x87849d[_0xd63a('0x57')][_0xd63a('0x63')]=_0x64e058['id'];return db[_0xd63a('0x64')][_0xd63a('0x50')](_0x87849d[_0xd63a('0x57')]);}})[_0xd63a('0x1b')](respondWithResult(_0x2b7bbc,null))['catch'](handleError(_0x2b7bbc,null));};exports[_0xd63a('0x65')]=function(_0x166e07,_0x2139af,_0x9ac7e7){var _0x2e3127={'raw':![],'where':{}};var _0x11d163={};var _0x17cc95={'count':0x0,'rows':[]};return db[_0xd63a('0x4a')]['findOne']({'where':{'id':_0x166e07['params']['id']}})[_0xd63a('0x1b')](handleEntityNotFound(_0x2139af,null))[_0xd63a('0x1b')](function(_0x4ae0d1){if(_0x4ae0d1){_0x11d163['model']=_[_0xd63a('0x3d')](db[_0xd63a('0x64')][_0xd63a('0x37')]);_0x11d163['query']=_[_0xd63a('0x3d')](_0x166e07[_0xd63a('0x3c')]);_0x11d163['filters']=_[_0xd63a('0x3f')](_0x11d163[_0xd63a('0x3b')],_0x11d163[_0xd63a('0x3c')]);_0x2e3127[_0xd63a('0x41')]=_[_0xd63a('0x3f')](_0x11d163['model'],qs[_0xd63a('0x40')](_0x166e07[_0xd63a('0x3c')][_0xd63a('0x40')]));_0x2e3127[_0xd63a('0x41')]=_0x2e3127[_0xd63a('0x41')][_0xd63a('0x42')]?_0x2e3127[_0xd63a('0x41')]:_0x11d163['model'];if(!_0x166e07[_0xd63a('0x3c')][_0xd63a('0x5f')](_0xd63a('0x60'))){_0x2e3127[_0xd63a('0x29')]=qs[_0xd63a('0x29')](_0x166e07[_0xd63a('0x3c')][_0xd63a('0x29')]);_0x2e3127[_0xd63a('0x27')]=qs[_0xd63a('0x27')](_0x166e07[_0xd63a('0x3c')][_0xd63a('0x27')]);}_0x2e3127['order']=qs[_0xd63a('0x44')](_0x166e07['query']['sort']);_0x2e3127[_0xd63a('0x45')]=qs[_0xd63a('0x3e')](_['pick'](_0x166e07[_0xd63a('0x3c')],_0x11d163[_0xd63a('0x3e')]));_0x2e3127[_0xd63a('0x45')][_0xd63a('0x63')]=_0x4ae0d1['id'];if(_0x166e07['query'][_0xd63a('0x47')]){_0x2e3127[_0xd63a('0x45')]=_['merge'](_0x2e3127[_0xd63a('0x45')],{'$or':_[_0xd63a('0x36')](_0x2e3127[_0xd63a('0x41')],function(_0x3b24d5){var _0x4368e8={};_0x4368e8[_0x3b24d5]={'$like':'%'+_0x166e07[_0xd63a('0x3c')][_0xd63a('0x47')]+'%'};return _0x4368e8;})});}_0x2e3127=_[_0xd63a('0x48')]({},_0x2e3127,_0x166e07[_0xd63a('0x49')]);return db[_0xd63a('0x64')][_0xd63a('0x2a')]({'where':_0x2e3127[_0xd63a('0x45')]})[_0xd63a('0x1b')](function(_0x31e2d6){_0x17cc95[_0xd63a('0x2a')]=_0x31e2d6;if(_0x166e07[_0xd63a('0x3c')]['includeAll']){_0x2e3127[_0xd63a('0x4c')]=[{'all':!![]}];}return db['CannedAnswer'][_0xd63a('0x4d')](_0x2e3127);})['then'](function(_0x19cafa){_0x17cc95['rows']=_0x19cafa;return _0x17cc95;});}})['then'](respondWithFilteredResult(_0x2139af,_0x2e3127))[_0xd63a('0x22')](handleError(_0x2139af,null));};exports[_0xd63a('0x66')]=function(_0x41fc9b,_0x522e5a,_0x209424){return db['WhatsappAccount'][_0xd63a('0x58')]({'where':{'id':_0x41fc9b[_0xd63a('0x5c')]['id']}})[_0xd63a('0x1b')](handleEntityNotFound(_0x522e5a,null))[_0xd63a('0x1b')](function(_0x2c0268){if(_0x2c0268){return _0x2c0268[_0xd63a('0x66')](_0x41fc9b[_0xd63a('0x3c')][_0xd63a('0x62')]);}})[_0xd63a('0x1b')](respondWithStatusCode(_0x522e5a,null))['catch'](handleError(_0x522e5a,null));};exports['addAgents']=function(_0xf5a513,_0x1fcf78,_0x57dcfe){return db[_0xd63a('0x4a')][_0xd63a('0x58')]({'where':{'id':_0xf5a513[_0xd63a('0x5c')]['id']}})[_0xd63a('0x1b')](handleEntityNotFound(_0x1fcf78,null))[_0xd63a('0x1b')](function(_0x13c218){if(_0x13c218){return _0x13c218[_0xd63a('0x67')](_0xf5a513['body'][_0xd63a('0x62')],_[_0xd63a('0x68')](_0xf5a513['body'],[_0xd63a('0x62'),'id'])||{})[_0xd63a('0x69')](function(_0x2ccf3a){for(var _0x36ab61=0x0;_0x36ab61<_0xf5a513[_0xd63a('0x57')][_0xd63a('0x62')][_0xd63a('0x42')];_0x36ab61+=0x1){socket[_0xd63a('0x6a')](_0xd63a('0x6b'),{'UserId':Number(_0xf5a513[_0xd63a('0x57')][_0xd63a('0x62')][_0x36ab61]),'WhatsappAccountId':Number(_0xf5a513[_0xd63a('0x5c')]['id'])});}return _0x2ccf3a;});}})['then'](respondWithResult(_0x1fcf78,null))[_0xd63a('0x22')](handleError(_0x1fcf78,null));};exports[_0xd63a('0x6c')]=function(_0x377e1b,_0x4c429e,_0x2c4287){return db[_0xd63a('0x4a')]['find']({'where':{'id':_0x377e1b[_0xd63a('0x5c')]['id']}})[_0xd63a('0x1b')](handleEntityNotFound(_0x4c429e,null))[_0xd63a('0x1b')](function(_0x3ff2fd){if(_0x3ff2fd){return _0x3ff2fd['removeAgents'](_0x377e1b['query'][_0xd63a('0x62')])[_0xd63a('0x1b')](function(){if(_[_0xd63a('0x6d')](_0x377e1b['query'][_0xd63a('0x62')])){for(var _0x899214=0x0;_0x899214<_0x377e1b['query'][_0xd63a('0x62')][_0xd63a('0x42')];_0x899214+=0x1){socket[_0xd63a('0x6a')](_0xd63a('0x6e'),{'UserId':Number(_0x377e1b[_0xd63a('0x3c')][_0xd63a('0x62')][_0x899214]),'WhatsappAccountId':Number(_0x377e1b[_0xd63a('0x5c')]['id'])});}}else{socket[_0xd63a('0x6a')](_0xd63a('0x6e'),{'UserId':Number(_0x377e1b[_0xd63a('0x3c')][_0xd63a('0x62')]),'WhatsappAccountId':Number(_0x377e1b[_0xd63a('0x5c')]['id'])});}});}})[_0xd63a('0x1b')](respondWithStatusCode(_0x4c429e,null))[_0xd63a('0x22')](handleError(_0x4c429e,null));};exports['getAgents']=function(_0x36ea56,_0x5e0990,_0x1fd8d7){var _0x2f4dd4={};var _0x43e35b={};var _0x1cea98;var _0x59e5ff;return db[_0xd63a('0x4a')][_0xd63a('0x6f')]({'where':{'id':_0x36ea56[_0xd63a('0x5c')]['id']}})[_0xd63a('0x1b')](handleEntityNotFound(_0x5e0990,null))['then'](function(_0x596a16){if(_0x596a16){_0x1cea98=_0x596a16;_0x43e35b[_0xd63a('0x3b')]=_[_0xd63a('0x3d')](db[_0xd63a('0x70')]['rawAttributes']);_0x43e35b[_0xd63a('0x3c')]=_[_0xd63a('0x3d')](_0x36ea56[_0xd63a('0x3c')]);_0x43e35b[_0xd63a('0x3e')]=_[_0xd63a('0x3f')](_0x43e35b[_0xd63a('0x3b')],_0x43e35b[_0xd63a('0x3c')]);_0x2f4dd4[_0xd63a('0x41')]=_[_0xd63a('0x3f')](_0x43e35b[_0xd63a('0x3b')],qs[_0xd63a('0x40')](_0x36ea56[_0xd63a('0x3c')][_0xd63a('0x40')]));_0x2f4dd4[_0xd63a('0x41')]=_0x2f4dd4[_0xd63a('0x41')][_0xd63a('0x42')]?_0x2f4dd4['attributes']:_0x43e35b[_0xd63a('0x3b')];_0x2f4dd4[_0xd63a('0x43')]=qs[_0xd63a('0x44')](_0x36ea56['query'][_0xd63a('0x44')]);_0x2f4dd4[_0xd63a('0x45')]=qs[_0xd63a('0x3e')](_[_0xd63a('0x46')](_0x36ea56[_0xd63a('0x3c')],_0x43e35b[_0xd63a('0x3e')]));if(_0x36ea56['query'][_0xd63a('0x47')]){_0x2f4dd4[_0xd63a('0x45')]=_[_0xd63a('0x48')](_0x2f4dd4[_0xd63a('0x45')],{'$or':_['map'](_0x2f4dd4[_0xd63a('0x41')],function(_0x44d47d){var _0xe71e81={};_0xe71e81[_0x44d47d]={'$like':'%'+_0x36ea56[_0xd63a('0x3c')][_0xd63a('0x47')]+'%'};return _0xe71e81;})});}_0x2f4dd4=_[_0xd63a('0x48')]({},_0x2f4dd4,_0x36ea56[_0xd63a('0x49')]);return _0x1cea98[_0xd63a('0x71')](_0x2f4dd4);}})[_0xd63a('0x1b')](function(_0x53931f){if(_0x53931f){_0x59e5ff=_0x53931f[_0xd63a('0x42')];if(!_0x36ea56[_0xd63a('0x3c')][_0xd63a('0x5f')](_0xd63a('0x60'))){_0x2f4dd4[_0xd63a('0x29')]=qs[_0xd63a('0x29')](_0x36ea56[_0xd63a('0x3c')][_0xd63a('0x29')]);_0x2f4dd4[_0xd63a('0x27')]=qs[_0xd63a('0x27')](_0x36ea56[_0xd63a('0x3c')][_0xd63a('0x27')]);}return _0x1cea98[_0xd63a('0x71')](_0x2f4dd4);}})[_0xd63a('0x1b')](function(_0x17b7c0){if(_0x17b7c0){return _0x17b7c0?{'count':_0x59e5ff,'rows':_0x17b7c0}:null;}})[_0xd63a('0x1b')](respondWithResult(_0x5e0990,null))[_0xd63a('0x22')](handleError(_0x5e0990,null));};exports[_0xd63a('0x72')]=function(_0x384cc3,_0x2c54ce){var _0x209672=_0x384cc3['params']['id'];var _0x2d4faf=_0x384cc3['body'];var _0x3186bb=0xc8;var _0x180e7d=null;return db[_0xd63a('0x73')][_0xd63a('0x74')]({'isolationLevel':db[_0xd63a('0x73')][_0xd63a('0x75')]['ISOLATION_LEVELS'][_0xd63a('0x76')]},function(_0x3b00ea){return db['WhatsappAccount'][_0xd63a('0x6f')]({'where':{'id':_0x209672},'transaction':_0x3b00ea})[_0xd63a('0x1b')](function(_0x29c8fa){if(_0x29c8fa){return db['WhatsappApplication'][_0xd63a('0x31')]({'where':{'WhatsappAccountId':_0x209672},'transaction':_0x3b00ea})[_0xd63a('0x1b')](function(){var _0x3e5a63=_[_0xd63a('0x36')](_0x2d4faf,function(_0x5a895a){_0x5a895a[_0xd63a('0x63')]=_0x209672;return _0x5a895a;});return db[_0xd63a('0x77')]['bulkCreate'](_0x3e5a63,{'transaction':_0x3b00ea});});}else{_0x3186bb=0x194;_0x180e7d=[];}});})[_0xd63a('0x1b')](function(){if(_0x3186bb!==0x194){return db[_0xd63a('0x77')][_0xd63a('0x78')]({'where':{'WhatsappAccountId':_0x209672},'order':'priority'})[_0xd63a('0x1b')](function(_0x341193){_0x180e7d=_0x341193;});}})['catch'](function(_0x4375da){_0x3186bb=0x1f4;logger['error'](_0x4375da[_0xd63a('0x32')]);if(_0x4375da['name']){delete _0x4375da['name'];}_0x180e7d=_0x4375da;})['finally'](function(){if(_0x180e7d===null){_0x2c54ce[_0xd63a('0x23')](_0x3186bb);}else{if(_0x3186bb===0x1f4){_0x2c54ce[_0xd63a('0x24')](_0x3186bb)[_0xd63a('0x34')](_0x180e7d);}else{_0x2c54ce[_0xd63a('0x24')](_0x3186bb)[_0xd63a('0x26')](_0x180e7d);}}});};exports[_0xd63a('0x79')]=function(_0x5f133a,_0x490bc1,_0x43647c){var _0x12a4ef={};var _0xe66501={};var _0x31bac5;var _0x1d2e1a;return db[_0xd63a('0x4a')]['findOne']({'where':{'id':_0x5f133a[_0xd63a('0x5c')]['id']}})[_0xd63a('0x1b')](handleEntityNotFound(_0x490bc1,null))[_0xd63a('0x1b')](function(_0x151898){if(_0x151898){_0x31bac5=_0x151898;_0xe66501['model']=_[_0xd63a('0x3d')](db[_0xd63a('0x77')]['rawAttributes']);_0xe66501[_0xd63a('0x3c')]=_['keys'](_0x5f133a[_0xd63a('0x3c')]);_0xe66501['filters']=_[_0xd63a('0x3f')](_0xe66501['model'],_0xe66501[_0xd63a('0x3c')]);_0x12a4ef[_0xd63a('0x41')]=_['intersection'](_0xe66501[_0xd63a('0x3b')],qs[_0xd63a('0x40')](_0x5f133a['query']['fields']));_0x12a4ef[_0xd63a('0x41')]=_0x12a4ef[_0xd63a('0x41')][_0xd63a('0x42')]?_0x12a4ef[_0xd63a('0x41')]:_0xe66501[_0xd63a('0x3b')];_0x12a4ef[_0xd63a('0x43')]=qs[_0xd63a('0x44')](_0x5f133a['query'][_0xd63a('0x44')]);_0x12a4ef[_0xd63a('0x45')]=qs[_0xd63a('0x3e')](_['pick'](_0x5f133a[_0xd63a('0x3c')],_0xe66501[_0xd63a('0x3e')]));if(_0x5f133a[_0xd63a('0x3c')][_0xd63a('0x47')]){_0x12a4ef[_0xd63a('0x45')]=_[_0xd63a('0x48')](_0x12a4ef[_0xd63a('0x45')],{'$or':_[_0xd63a('0x36')](_0x12a4ef[_0xd63a('0x41')],function(_0x414e4c){var _0xce1157={};_0xce1157[_0x414e4c]={'$like':'%'+_0x5f133a[_0xd63a('0x3c')][_0xd63a('0x47')]+'%'};return _0xce1157;})});}_0x12a4ef=_['merge']({},_0x12a4ef,_0x5f133a['options']);return _0x31bac5['getApplications'](_0x12a4ef);}})['then'](function(_0x18b32a){if(_0x18b32a){_0x1d2e1a=_0x18b32a[_0xd63a('0x42')];if(!_0x5f133a[_0xd63a('0x3c')][_0xd63a('0x5f')](_0xd63a('0x60'))){_0x12a4ef[_0xd63a('0x29')]=qs[_0xd63a('0x29')](_0x5f133a['query'][_0xd63a('0x29')]);_0x12a4ef[_0xd63a('0x27')]=qs[_0xd63a('0x27')](_0x5f133a[_0xd63a('0x3c')]['offset']);}return _0x31bac5['getApplications'](_0x12a4ef);}})[_0xd63a('0x1b')](function(_0x2e298c){if(_0x2e298c){return _0x2e298c?{'count':_0x1d2e1a,'rows':_0x2e298c}:null;}})[_0xd63a('0x1b')](respondWithResult(_0x490bc1,null))[_0xd63a('0x22')](handleError(_0x490bc1,null));};exports[_0xd63a('0x7a')]=function(_0x1bcb86,_0x559eae,_0x3dd879){var _0x720eec={'channel':_0xd63a('0x7b')};var _0x4fc639=[];var _0x4eefa0=[];var _0xfaf846={};return db['WhatsappAccount'][_0xd63a('0x58')]({'where':{'id':_0x1bcb86[_0xd63a('0x5c')]['id']},'include':[{'model':db['WhatsappApplication'],'as':_0xd63a('0x7c')}]})[_0xd63a('0x1b')](handleEntityNotFound(_0x559eae,null))['then'](function(_0x3b30a9){_0x720eec[_0xd63a('0x7d')]=_0x3b30a9;if(_0x720eec['account']&&_0x720eec[_0xd63a('0x7d')][_0xd63a('0x39')]==='sinch'&&_0x1bcb86[_0xd63a('0x57')][_0xd63a('0x7e')]){if(_0x1bcb86[_0xd63a('0x57')][_0xd63a('0x7e')]['length']===0x0)return;if(_0x1bcb86['body'][_0xd63a('0x7e')][0x0][_0xd63a('0x7f')]!==_0xd63a('0x80'))return;return db[_0xd63a('0x81')][_0xd63a('0x82')]({'read':!![],'readAt':_0x1bcb86[_0xd63a('0x57')]['statuses'][0x0]['timestamp']},{'where':{'messageId':_0x1bcb86[_0xd63a('0x57')][_0xd63a('0x7e')][0x0][_0xd63a('0x83')]},'individualHooks':!![]})[_0xd63a('0x1b')](function(_0x1d918e){return _0x559eae[_0xd63a('0x24')](0xc8)[_0xd63a('0x26')](_0x1d918e);});}_0x720eec[_0xd63a('0x84')]=_[_0xd63a('0x85')](_0x3b30a9[_0xd63a('0x7c')],[_0xd63a('0x86')],['asc']);if(_0x720eec[_0xd63a('0x7d')][_0xd63a('0x7c')]){delete _0x720eec[_0xd63a('0x7d')][_0xd63a('0x7c')];}return db[_0xd63a('0x87')][_0xd63a('0x5a')]()['then'](function(_0x548272){if(!_0x548272){throw new db[(_0xd63a('0x88'))][(_0xd63a('0x89'))](_0xd63a('0x8a'));}_0x4fc639=_['difference'](_[_0xd63a('0x3d')](_0x548272),[_0xd63a('0x8b'),'updatedAt']);_0x4eefa0=_[_0xd63a('0x8c')](_['keys'](_0x548272),[_0xd63a('0x8b'),_0xd63a('0x8d'),_0xd63a('0x8e'),_0xd63a('0x8f')]);_0x720eec['body']={'mapKey':_0xd63a('0x90')};if(_0x720eec[_0xd63a('0x7d')]&&_0x720eec[_0xd63a('0x7d')][_0xd63a('0x39')]===_0xd63a('0x91')){_0x720eec[_0xd63a('0x57')]['from']=_0x1bcb86[_0xd63a('0x57')][_0xd63a('0x92')]['replace'](_0xd63a('0x93'),'');_0x720eec[_0xd63a('0x57')][_0xd63a('0x57')]=_0x1bcb86[_0xd63a('0x57')][_0xd63a('0x94')];_0x720eec[_0xd63a('0x57')][_0xd63a('0x95')]=_0x1bcb86[_0xd63a('0x57')][_0xd63a('0x96')];}if(_0x720eec[_0xd63a('0x7d')]&&_0x720eec['account'][_0xd63a('0x39')]==='sinch'){_0x720eec[_0xd63a('0x57')][_0xd63a('0x97')]=_0x1bcb86[_0xd63a('0x57')][_0xd63a('0x98')][0x0][_0xd63a('0x97')];_0x720eec['body'][_0xd63a('0x57')]=_0x1bcb86[_0xd63a('0x57')][_0xd63a('0x98')][0x0]['message'][_0xd63a('0x57')];_0x720eec[_0xd63a('0x57')][_0xd63a('0x95')]=_0x1bcb86[_0xd63a('0x57')][_0xd63a('0x98')][0x0][_0xd63a('0x83')];}if(_0x720eec[_0xd63a('0x57')]['id']){delete _0x720eec['body']['id'];}if(_[_0xd63a('0x99')](_0x720eec[_0xd63a('0x57')][_0xd63a('0x97')])){throw new db[(_0xd63a('0x88'))][(_0xd63a('0x89'))](_0xd63a('0x9a'));}if(_[_0xd63a('0x99')](_0x720eec['body'][_0xd63a('0x57')])||_0x720eec[_0xd63a('0x57')]['body']===''){throw new db[(_0xd63a('0x88'))][(_0xd63a('0x89'))](_0xd63a('0x9b'));}if(_[_0xd63a('0x99')](_0x720eec[_0xd63a('0x57')]['mapKey'])){throw new db['Sequelize'][(_0xd63a('0x89'))]('mapKey\x20is\x20mandatory,\x20please\x20use\x20one\x20of\x20these:\x20'+_0x4eefa0);}if(!_[_0xd63a('0x9c')](_0x4eefa0,_0x720eec[_0xd63a('0x57')][_0xd63a('0x9d')])){throw new db[(_0xd63a('0x88'))][(_0xd63a('0x89'))](_0xd63a('0x9e')+_0x4eefa0);}_0xfaf846[_0x720eec['body'][_0xd63a('0x9d')]]=_0x720eec[_0xd63a('0x57')]['from'];return db[_0xd63a('0x9f')][_0xd63a('0x58')]({'where':{'id':_0x720eec['account'][_0xd63a('0x8f')]},'include':[{'model':db[_0xd63a('0x87')],'as':_0xd63a('0xa0'),'where':_0xfaf846,'limit':0x1,'order':[[_0xd63a('0x8d'),'DESC']]}]});})[_0xd63a('0x1b')](handleEntityNotFound(_0x559eae,null))[_0xd63a('0x1b')](function(_0x2943a8){if(_0x2943a8){_0x720eec['list']=_['omit'](_0x2943a8,[_0xd63a('0xa0')]);if(_0x2943a8[_0xd63a('0xa0')][_0xd63a('0x42')]){return _0x2943a8[_0xd63a('0xa0')][0x0];}var _0x294159=_[_0xd63a('0x13')](_0x720eec[_0xd63a('0x57')],{'firstName':_0x720eec[_0xd63a('0x57')][_0xd63a('0x97')],'ListId':_0x2943a8['id']});_0x294159[_0x720eec[_0xd63a('0x57')][_0xd63a('0x9d')]]=_0x720eec['body']['from'];return db[_0xd63a('0x87')]['create'](_0x294159,{'fields':_0x4fc639,'raw':!![]});}})['then'](handleEntityNotFound(_0x559eae,null))['then'](function(_0x5c1e97){if(_0x5c1e97){_0x720eec[_0xd63a('0xa1')]=_0x5c1e97;var _0x45cd1f={'ContactId':_0x5c1e97['id'],'phone':_0x720eec['body'][_0xd63a('0x97')],'WhatsappAccountId':_0x1bcb86['params']['id']};var _0x2b05d5={'ContactId':_0x5c1e97['id'],'WhatsappAccountId':_0x1bcb86[_0xd63a('0x5c')]['id'],'closed':![]};return db['WhatsappInteraction'][_0xd63a('0x58')]({'where':_0x2b05d5})[_0xd63a('0x1b')](function(_0x4a3dd9){if(_0x4a3dd9){return[_0x4a3dd9,![]];}return db[_0xd63a('0xa2')]['create'](_0x45cd1f)['then'](function(_0x18c425){return[_0x18c425,!![]];});});}})[_0xd63a('0x69')](function(_0x1357f1,_0x5f04e0){_0x720eec[_0xd63a('0xa3')]=_0x1357f1[_0xd63a('0x2e')]({'plain':!![]});_0x720eec[_0xd63a('0xa3')][_0xd63a('0xa4')]=![];if(_0x5f04e0){if(_0x720eec[_0xd63a('0x7d')][_0xd63a('0xa5')]){_0x720eec[_0xd63a('0x84')]['push']({'id':0x0,'priority':_0x720eec[_0xd63a('0x84')]['length']+0x1,'app':'close','appdata':_0xd63a('0xa6'),'interval':_0xd63a('0xa7')});}_0x720eec[_0xd63a('0xa3')][_0xd63a('0xa4')]=!![];}return db[_0xd63a('0x81')][_0xd63a('0x50')]({'phone':_0x720eec[_0xd63a('0x57')]['from'],'messageId':_0x720eec[_0xd63a('0x57')][_0xd63a('0x95')],'body':_0x720eec[_0xd63a('0x57')][_0xd63a('0x57')],'WhatsappAccountId':_0x1bcb86[_0xd63a('0x5c')]['id'],'WhatsappInteractionId':_0x1357f1['id'],'direction':'in','ContactId':_0x1357f1[_0xd63a('0xa8')],'AttachmentId':_0x720eec['body'][_0xd63a('0xa9')]});})['then'](function(_0xd0e59){_0x720eec[_0xd63a('0x21')]=_0xd0e59;if(!_0x720eec['interaction']['UserId'])return;return db[_0xd63a('0x70')][_0xd63a('0x58')]({'attributes':['id',_0xd63a('0x33')],'where':{'id':_0x720eec[_0xd63a('0xa3')]['UserId']}});})[_0xd63a('0x1b')](function(_0x28a5f6){if(_0x28a5f6){_0x720eec[_0xd63a('0x84')][_0xd63a('0xaa')]({'id':0x0,'priority':0x0,'app':_0xd63a('0xab'),'appdata':_0x28a5f6['name']+','+(_0x720eec[_0xd63a('0x7d')][_0xd63a('0xac')]||0xa),'interval':_0xd63a('0xa7')});}if(!_0x720eec[_0xd63a('0xa3')]['queueId'])return;return db[_0xd63a('0xad')]['find']({'attributes':['id',_0xd63a('0x33')],'where':{'id':_0x720eec['interaction']['queueId']}});})[_0xd63a('0x1b')](function(_0x23b10f){if(_0x23b10f){_0x720eec[_0xd63a('0x84')][_0xd63a('0xaa')]({'id':0x0,'priority':0x1,'app':_0xd63a('0xae'),'appdata':_0x23b10f['name']+','+(_0x720eec['account'][_0xd63a('0xaf')]||0x12c),'interval':'*,*,*,*'});}return respondWithRpcPromise(_0xd63a('0xb0'),'startRouting',_0x720eec);})[_0xd63a('0x1b')](function(_0x200b94){if(_0x200b94){var _0x54e5a6=0xc8;var _0x57bb46='receiveMessage';logger['info'](_0xd63a('0xb1'),_0x57bb46,_0x54e5a6,_0xd63a('0xb2'));logger[_0xd63a('0x1f')](_0xd63a('0xb3'),_0x57bb46,_0x54e5a6,'entity\x20found',JSON[_0xd63a('0xb4')](_0x200b94));if(_0x720eec[_0xd63a('0x7d')][_0xd63a('0x39')]==='twilio'){return _0x559eae[_0xd63a('0x24')](_0x54e5a6)[_0xd63a('0x2b')](_0xd63a('0xb5'),_0xd63a('0xb6'))['send'](_0xd63a('0xb7'));}else{return _0x559eae['status'](_0x54e5a6)['json'](_0x200b94);}}});})[_0xd63a('0x22')](handleError(_0x559eae,null));};exports[_0xd63a('0x34')]=function(_0xd4dfdc,_0x433dd2,_0x28da5c){var _0x242aed,_0x3a281f,_0x1fc29d;if(_[_0xd63a('0x99')](_0xd4dfdc[_0xd63a('0x57')][_0xd63a('0x57')])||_0xd4dfdc[_0xd63a('0x57')][_0xd63a('0x57')]===''){throw new db[(_0xd63a('0x88'))][(_0xd63a('0x89'))]('body\x20is\x20mandatory\x20and\x20not\x20empty');}if(_[_0xd63a('0x99')](_0xd4dfdc['body']['to'])){throw new db[(_0xd63a('0x88'))][(_0xd63a('0x89'))]('to\x20is\x20mandatory');}_0x242aed=_0xd4dfdc[_0xd63a('0x57')]['to'];return db[_0xd63a('0x4a')][_0xd63a('0x58')]({'where':{'id':_0xd4dfdc['params']['id']},'include':[{'model':db[_0xd63a('0x9f')],'as':_0xd63a('0xb8'),'include':[{'model':db[_0xd63a('0x87')],'as':_0xd63a('0xa0'),'where':{'mobile':_0x242aed},'limit':0x1,'order':[['updatedAt','DESC']]}]}]})['then'](handleEntityNotFound(_0x433dd2,null))[_0xd63a('0x1b')](function(_0x10bcb5){if(_0x10bcb5&&_0x10bcb5[_0xd63a('0xb8')]){_0x3a281f=_0x10bcb5[_0xd63a('0x2e')]({'plain':!![]});if(_0x3a281f['List']&&_0x3a281f[_0xd63a('0xb8')][_0xd63a('0xa0')][_0xd63a('0x42')]){return _0x3a281f[_0xd63a('0xb8')][_0xd63a('0xa0')][0x0];}return db['CmContact'][_0xd63a('0x50')](_[_0xd63a('0x13')](_0xd4dfdc[_0xd63a('0x57')],{'firstName':_0x242aed,'mobile':_0x242aed,'phone':_0x242aed,'ListId':_0x3a281f[_0xd63a('0x8f')]}));}})[_0xd63a('0x1b')](handleEntityNotFound(_0x433dd2,null))[_0xd63a('0x1b')](function(_0x30045e){if(_0x30045e){_0x1fc29d=_0x30045e;return db[_0xd63a('0xa2')][_0xd63a('0x58')]({'where':{'ContactId':_0x1fc29d['id'],'closed':![],'WhatsappAccountId':_0x3a281f['id']}})[_0xd63a('0x1b')](function(_0x5c828b){if(_0x5c828b){return[_0x5c828b,![]];}return db[_0xd63a('0xa2')]['create']({'UserId':_0xd4dfdc[_0xd63a('0x53')]['id'],'ContactId':_0x1fc29d['id'],'WhatsappAccountId':_0x3a281f['id'],'phone':_0x242aed,'firstMsgDirection':_0xd63a('0xb9'),'Messages':[_[_0xd63a('0x48')](_0xd4dfdc['body'],{'read':![],'body':_0xd4dfdc['body'][_0xd63a('0x57')],'phone':_0x242aed,'WhatsappAccountId':_0x3a281f['id'],'UserId':_0xd4dfdc[_0xd63a('0x53')]['id'],'ContactId':_0x1fc29d['id']})]},{'include':[{'model':db[_0xd63a('0x81')],'as':_0xd63a('0xba')}]})[_0xd63a('0x1b')](function(_0xbc91a5){return[_0xbc91a5,!![]];});});}})[_0xd63a('0x69')](function(_0x135dc6,_0x46b402){if(_0x46b402){return _0x135dc6;}return db['WhatsappMessage'][_0xd63a('0x50')](_['merge'](_0xd4dfdc[_0xd63a('0x57')],{'read':![],'body':_0xd4dfdc[_0xd63a('0x57')][_0xd63a('0x57')],'phone':_0x242aed,'WhatsappAccountId':_0x3a281f['id'],'WhatsappInteractionId':_0x135dc6['id'],'UserId':_0xd4dfdc['user']['id'],'ContactId':_0x1fc29d['id']}))[_0xd63a('0x1b')](function(_0x2b05d3){_0x135dc6[_0xd63a('0xbb')][_0xd63a('0xba')]=[];_0x135dc6[_0xd63a('0xbb')][_0xd63a('0xba')][_0xd63a('0xbc')](_0x2b05d3[_0xd63a('0xbb')]);return _0x135dc6;});})['then'](respondWithResult(_0x433dd2,null))[_0xd63a('0x22')](handleError(_0x433dd2,null));};