c2c6775d9785f81fd8bdc1f706334a6e6deb571d
[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 _0xf19d=['userWhatsappAccount:remove','getAgents','findOne','User','addApplications','sequelize','transaction','Transaction','ISOLATION_LEVELS','READ_COMMITTED','WhatsappApplication','bulkCreate','findAndCountAll','priority','stack','finally','getApplications','account','statuses','state','timestamp','message_id','orderBy','Applications','asc','Sequelize','ValidationError','difference','createdAt','updatedAt','CompanyId','ListId','From','whatsapp:','messageId','MessageSid','sinch','from','notifications','from\x20is\x20mandatory','isNil','body\x20is\x20mandatory\x20and\x20not\x20empty','mapKey','includes','CmList','CmContact','Contacts','list','WhatsappInteraction','interaction','autoclose','applications','push','unmanaged','WhatsappMessage','ContactId','AttachmentId','UserId','agent','queueId','WhatsappQueue','unshift','queue','waitForTheAssignedQueue','*,*,*,*','Start','startRouting','entity\x20found','WhatsappAccount,\x20%s,\x20%s,\x20%s,\x20%s','twilio','Content-Type','text/xml','<?xml\x20version=\x221.0\x22\x20encoding=\x22UTF-8\x22?>\x0a<Response></Response>','List','DESC','out','Messages','dataValues','eml-format','zip-dir','request-promise','util','path','sox','to-csv','ejs','fs-extra','lodash','squel','crypto','desk.js','querystring','papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/environment','../../config/license/util','redis','defaults','localhost','socket.io-emitter','./whatsappAccount.socket','jayson/promise','http','request','then','request\x20sent','debug','WhatsappAccount,\x20%s,\x20%s,\x20%s','stringify','code','error','WhatsappAccount,\x20%s,\x20%s','message','info','result','catch','sendStatus','status','end','json','offset','undefined','limit','count','set','Content-Range','reject','update','destroy','get','WhatsappAccounts','UserProfileResource','name','send','index','Pause','mandatoryDispositionPause','map','fieldName','type','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','WhatsappAccount','includeAll','findAll','rows','show','rawAttributes','include','options','find','create','user','role','UserProfileSection','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','body','params','describe','Disposition','getDispositions','WhatsappAccountId','removeDispositions','addAnswer','CannedAnswer','removeAnswers','ids','omit','spread','emit','userWhatsappAccount:save','removeAgents','isArray'];(function(_0x21fc68,_0x459828){var _0x3561e1=function(_0x3dea77){while(--_0x3dea77){_0x21fc68['push'](_0x21fc68['shift']());}};_0x3561e1(++_0x459828);}(_0xf19d,0x110));var _0xdf19=function(_0x565c49,_0x54acd0){_0x565c49=_0x565c49-0x0;var _0x20ca34=_0xf19d[_0x565c49];return _0x20ca34;};'use strict';var emlformat=require(_0xdf19('0x0'));var rimraf=require('rimraf');var zipdir=require(_0xdf19('0x1'));var jsonpatch=require('fast-json-patch');var rp=require(_0xdf19('0x2'));var moment=require('moment');var BPromise=require('bluebird');var Mustache=require('mustache');var util=require(_0xdf19('0x3'));var path=require(_0xdf19('0x4'));var sox=require(_0xdf19('0x5'));var csv=require(_0xdf19('0x6'));var ejs=require(_0xdf19('0x7'));var fs=require('fs');var fs_extra=require(_0xdf19('0x8'));var _=require(_0xdf19('0x9'));var squel=require(_0xdf19('0xa'));var crypto=require(_0xdf19('0xb'));var jsforce=require('jsforce');var deskjs=require(_0xdf19('0xc'));var toCsv=require(_0xdf19('0x6'));var querystring=require(_0xdf19('0xd'));var Papa=require(_0xdf19('0xe'));var Redis=require(_0xdf19('0xf'));var authService=require('../../components/auth/service');var qs=require(_0xdf19('0x10'));var as=require(_0xdf19('0x11'));var hardwareService=require(_0xdf19('0x12'));var logger=require(_0xdf19('0x13'))(_0xdf19('0x14'));var utils=require('../../config/utils');var config=require(_0xdf19('0x15'));var licenseUtil=require(_0xdf19('0x16'));var db=require('../../mysqldb')['db'];config[_0xdf19('0x17')]=_[_0xdf19('0x18')](config[_0xdf19('0x17')],{'host':_0xdf19('0x19'),'port':0x18eb});var socket=require(_0xdf19('0x1a'))(new Redis(config[_0xdf19('0x17')]));require(_0xdf19('0x1b'))['register'](socket);var jayson=require(_0xdf19('0x1c'));var client=jayson['client'][_0xdf19('0x1d')]({'port':0x232c});function respondWithRpcPromise(_0x150fcf,_0x121a9d,_0x3b7050,_0x260207){return new BPromise(function(_0x57e167,_0x5ecc3a){var _0x43c3c8=_0x260207||client;return _0x43c3c8[_0xdf19('0x1e')](_0x150fcf,_0x3b7050)[_0xdf19('0x1f')](function(_0x42da2b){logger['info']('WhatsappAccount,\x20%s,\x20%s',_0x121a9d,_0xdf19('0x20'));logger[_0xdf19('0x21')](_0xdf19('0x22'),_0x121a9d,_0xdf19('0x20'),JSON[_0xdf19('0x23')](_0x42da2b));if(_0x42da2b['error']){if(_0x42da2b['error'][_0xdf19('0x24')]===0x1f4){logger[_0xdf19('0x25')](_0xdf19('0x26'),_0x121a9d,_0x42da2b[_0xdf19('0x25')][_0xdf19('0x27')]);return _0x5ecc3a(_0x42da2b[_0xdf19('0x25')][_0xdf19('0x27')]);}logger['error'](_0xdf19('0x26'),_0x121a9d,_0x42da2b[_0xdf19('0x25')][_0xdf19('0x27')]);return _0x57e167(_0x42da2b['error'][_0xdf19('0x27')]);}else{logger[_0xdf19('0x28')](_0xdf19('0x26'),_0x121a9d,_0xdf19('0x20'));_0x57e167(_0x42da2b[_0xdf19('0x29')][_0xdf19('0x27')]);}})[_0xdf19('0x2a')](function(_0x39cdd6){logger[_0xdf19('0x25')](_0xdf19('0x26'),_0x121a9d,_0x39cdd6);_0x5ecc3a(_0x39cdd6);});});}function respondWithStatusCode(_0xe533a2,_0xccf53f){_0xccf53f=_0xccf53f||0xcc;return function(_0x4fbca3){if(_0x4fbca3){return _0xe533a2[_0xdf19('0x2b')](_0xccf53f);}return _0xe533a2[_0xdf19('0x2c')](_0xccf53f)[_0xdf19('0x2d')]();};}function respondWithResult(_0x1672d5,_0x2fdc0c){_0x2fdc0c=_0x2fdc0c||0xc8;return function(_0x1424f5){if(_0x1424f5){return _0x1672d5['status'](_0x2fdc0c)[_0xdf19('0x2e')](_0x1424f5);}};}function respondWithFilteredResult(_0x403227,_0x425140){return function(_0x2810de){if(_0x2810de){var _0xd2f46f=typeof _0x425140[_0xdf19('0x2f')]===_0xdf19('0x30')&&typeof _0x425140[_0xdf19('0x31')]==='undefined';var _0x3f1beb=_0x2810de[_0xdf19('0x32')];var _0x576152=_0xd2f46f?0x0:_0x425140[_0xdf19('0x2f')];var _0x317ecc=_0xd2f46f?_0x2810de[_0xdf19('0x32')]:_0x425140[_0xdf19('0x2f')]+_0x425140[_0xdf19('0x31')];var _0x1948da;if(_0x317ecc>=_0x3f1beb){_0x317ecc=_0x3f1beb;_0x1948da=0xc8;}else{_0x1948da=0xce;}_0x403227[_0xdf19('0x2c')](_0x1948da);return _0x403227[_0xdf19('0x33')](_0xdf19('0x34'),_0x576152+'-'+_0x317ecc+'/'+_0x3f1beb)[_0xdf19('0x2e')](_0x2810de);}return null;};}function patchUpdates(_0x324bc4){return function(_0x3d668f){try{jsonpatch['apply'](_0x3d668f,_0x324bc4,!![]);}catch(_0x1a431f){return BPromise[_0xdf19('0x35')](_0x1a431f);}return _0x3d668f['save']();};}function saveUpdates(_0x4879af,_0x301258){return function(_0x591ecf){if(_0x591ecf){return _0x591ecf[_0xdf19('0x36')](_0x4879af)[_0xdf19('0x1f')](function(_0x5f4761){return _0x5f4761;});}return null;};}function removeEntity(_0x4392fd,_0x43237f){return function(_0x208405){if(_0x208405){return _0x208405[_0xdf19('0x37')]()[_0xdf19('0x1f')](function(){var _0x2ad049=_0x208405[_0xdf19('0x38')]({'plain':!![]});var _0x4b68a1=_0xdf19('0x39');return db[_0xdf19('0x3a')]['destroy']({'where':{'type':_0x4b68a1,'resourceId':_0x2ad049['id']}})[_0xdf19('0x1f')](function(){return _0x208405;});})['then'](function(){_0x4392fd[_0xdf19('0x2c')](0xcc)[_0xdf19('0x2d')]();});}};}function handleEntityNotFound(_0x1ad4e5,_0x4a9ff8){return function(_0x573fb5){if(!_0x573fb5){_0x1ad4e5[_0xdf19('0x2b')](0x194);}return _0x573fb5;};}function handleError(_0x5ee8b4,_0x459e96){_0x459e96=_0x459e96||0x1f4;return function(_0x3bd37a){logger[_0xdf19('0x25')](_0x3bd37a['stack']);if(_0x3bd37a['name']){delete _0x3bd37a[_0xdf19('0x3b')];}_0x5ee8b4['status'](_0x459e96)[_0xdf19('0x3c')](_0x3bd37a);};}exports[_0xdf19('0x3d')]=function(_0x195e6e,_0x2c627e){var _0x9998cc={'include':[{'model':db[_0xdf19('0x3e')],'as':_0xdf19('0x3f')}]},_0x1ebd55={},_0xa74acd={'count':0x0,'rows':[]};var _0x36a22d=_[_0xdf19('0x40')](db['WhatsappAccount']['rawAttributes'],function(_0x9bd963){return{'name':_0x9bd963[_0xdf19('0x41')],'type':_0x9bd963[_0xdf19('0x42')]['key']};});_0x1ebd55[_0xdf19('0x43')]=_['map'](_0x36a22d,_0xdf19('0x3b'));_0x1ebd55[_0xdf19('0x44')]=_[_0xdf19('0x45')](_0x195e6e[_0xdf19('0x44')]);_0x1ebd55[_0xdf19('0x46')]=_[_0xdf19('0x47')](_0x1ebd55[_0xdf19('0x43')],_0x1ebd55['query']);_0x9998cc[_0xdf19('0x48')]=_[_0xdf19('0x47')](_0x1ebd55[_0xdf19('0x43')],qs['fields'](_0x195e6e[_0xdf19('0x44')][_0xdf19('0x49')]));_0x9998cc['attributes']=_0x9998cc['attributes'][_0xdf19('0x4a')]?_0x9998cc[_0xdf19('0x48')]:_0x1ebd55[_0xdf19('0x43')];if(!_0x195e6e[_0xdf19('0x44')][_0xdf19('0x4b')](_0xdf19('0x4c'))){_0x9998cc[_0xdf19('0x31')]=qs[_0xdf19('0x31')](_0x195e6e[_0xdf19('0x44')][_0xdf19('0x31')]);_0x9998cc['offset']=qs[_0xdf19('0x2f')](_0x195e6e[_0xdf19('0x44')][_0xdf19('0x2f')]);}_0x9998cc[_0xdf19('0x4d')]=qs[_0xdf19('0x4e')](_0x195e6e['query'][_0xdf19('0x4e')]);_0x9998cc[_0xdf19('0x4f')]=qs[_0xdf19('0x46')](_[_0xdf19('0x50')](_0x195e6e[_0xdf19('0x44')],_0x1ebd55['filters']),_0x36a22d);if(_0x195e6e[_0xdf19('0x44')][_0xdf19('0x51')]){_0x9998cc[_0xdf19('0x4f')]=_[_0xdf19('0x52')](_0x9998cc[_0xdf19('0x4f')],{'$or':_[_0xdf19('0x40')](_0x36a22d,function(_0x43a0a6){if(_0x43a0a6[_0xdf19('0x42')]!=='VIRTUAL'){var _0x3bdbfa={};_0x3bdbfa[_0x43a0a6['name']]={'$like':'%'+_0x195e6e['query'][_0xdf19('0x51')]+'%'};return _0x3bdbfa;}})});}_0x9998cc=_['merge']({},_0x9998cc,_0x195e6e['options']);var _0x5a183e={'where':_0x9998cc[_0xdf19('0x4f')]};return db[_0xdf19('0x53')]['count'](_0x5a183e)[_0xdf19('0x1f')](function(_0x2eb61a){_0xa74acd[_0xdf19('0x32')]=_0x2eb61a;if(_0x195e6e[_0xdf19('0x44')][_0xdf19('0x54')]){_0x9998cc['include']=[{'all':!![]}];}return db['WhatsappAccount'][_0xdf19('0x55')](_0x9998cc);})['then'](function(_0x180247){_0xa74acd[_0xdf19('0x56')]=_0x180247;return _0xa74acd;})[_0xdf19('0x1f')](respondWithFilteredResult(_0x2c627e,_0x9998cc))[_0xdf19('0x2a')](handleError(_0x2c627e,null));};exports[_0xdf19('0x57')]=function(_0x4a5a45,_0x356048){var _0x1dc75a={'raw':![],'where':{'id':_0x4a5a45['params']['id']},'include':[{'model':db[_0xdf19('0x3e')],'as':_0xdf19('0x3f')}]},_0x3b4741={};_0x3b4741[_0xdf19('0x43')]=_[_0xdf19('0x45')](db[_0xdf19('0x53')][_0xdf19('0x58')]);_0x3b4741[_0xdf19('0x44')]=_[_0xdf19('0x45')](_0x4a5a45[_0xdf19('0x44')]);_0x3b4741[_0xdf19('0x46')]=_[_0xdf19('0x47')](_0x3b4741[_0xdf19('0x43')],_0x3b4741[_0xdf19('0x44')]);_0x1dc75a['attributes']=_[_0xdf19('0x47')](_0x3b4741[_0xdf19('0x43')],qs[_0xdf19('0x49')](_0x4a5a45[_0xdf19('0x44')]['fields']));_0x1dc75a['attributes']=_0x1dc75a[_0xdf19('0x48')]['length']?_0x1dc75a['attributes']:_0x3b4741[_0xdf19('0x43')];if(_0x4a5a45[_0xdf19('0x44')][_0xdf19('0x54')]){_0x1dc75a[_0xdf19('0x59')]=[{'all':!![]}];}_0x1dc75a=_[_0xdf19('0x52')]({},_0x1dc75a,_0x4a5a45[_0xdf19('0x5a')]);return db[_0xdf19('0x53')][_0xdf19('0x5b')](_0x1dc75a)[_0xdf19('0x1f')](handleEntityNotFound(_0x356048,null))[_0xdf19('0x1f')](respondWithResult(_0x356048,null))[_0xdf19('0x2a')](handleError(_0x356048,null));};exports[_0xdf19('0x5c')]=function(_0x39614d,_0x229685){return db[_0xdf19('0x53')][_0xdf19('0x5c')](_0x39614d['body'],{})[_0xdf19('0x1f')](function(_0x178ee3){var _0x56d58c=_0x39614d[_0xdf19('0x5d')][_0xdf19('0x38')]({'plain':!![]});if(!_0x56d58c)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x56d58c[_0xdf19('0x5e')]==='user'){var _0x3e71e6=_0x178ee3['get']({'plain':!![]});var _0x496d71='WhatsappAccounts';return db[_0xdf19('0x5f')]['find']({'where':{'name':_0x496d71,'userProfileId':_0x56d58c[_0xdf19('0x60')]},'raw':!![]})[_0xdf19('0x1f')](function(_0x69fb4){if(_0x69fb4&&_0x69fb4[_0xdf19('0x61')]===0x0){return db[_0xdf19('0x3a')][_0xdf19('0x5c')]({'name':_0x3e71e6['name'],'resourceId':_0x3e71e6['id'],'type':_0x69fb4[_0xdf19('0x3b')],'sectionId':_0x69fb4['id']},{})[_0xdf19('0x1f')](function(){return _0x178ee3;});}else{return _0x178ee3;}})[_0xdf19('0x2a')](function(_0x59200d){logger['error'](_0xdf19('0x62'),_0x59200d);throw _0x59200d;});}return _0x178ee3;})['then'](respondWithResult(_0x229685,0xc9))[_0xdf19('0x2a')](handleError(_0x229685,null));};exports['update']=function(_0x4db447,_0x81d924){if(_0x4db447[_0xdf19('0x63')]['id']){delete _0x4db447[_0xdf19('0x63')]['id'];}return db[_0xdf19('0x53')]['find']({'where':{'id':_0x4db447[_0xdf19('0x64')]['id']},'include':[{'model':db[_0xdf19('0x3e')],'as':'mandatoryDispositionPause'}]})[_0xdf19('0x1f')](handleEntityNotFound(_0x81d924,null))[_0xdf19('0x1f')](saveUpdates(_0x4db447[_0xdf19('0x63')],null))['then'](respondWithResult(_0x81d924,null))['catch'](handleError(_0x81d924,null));};exports[_0xdf19('0x37')]=function(_0x546066,_0x311f5d){return db[_0xdf19('0x53')]['find']({'where':{'id':_0x546066[_0xdf19('0x64')]['id']}})['then'](handleEntityNotFound(_0x311f5d,null))[_0xdf19('0x1f')](removeEntity(_0x311f5d,null))[_0xdf19('0x2a')](handleError(_0x311f5d,null));};exports[_0xdf19('0x65')]=function(_0x14c5ba,_0x1fae30){return db['WhatsappAccount'][_0xdf19('0x65')]()[_0xdf19('0x1f')](respondWithResult(_0x1fae30,null))[_0xdf19('0x2a')](handleError(_0x1fae30,null));};exports['addDisposition']=function(_0x3e9300,_0x228498,_0x53e9c7){if(_0x3e9300[_0xdf19('0x63')]['id']){delete _0x3e9300['body']['id'];}return db[_0xdf19('0x53')][_0xdf19('0x5b')]({'where':{'id':_0x3e9300['params']['id']}})[_0xdf19('0x1f')](handleEntityNotFound(_0x228498,null))[_0xdf19('0x1f')](function(_0x5f4939){if(_0x5f4939){_0x3e9300['body']['WhatsappAccountId']=_0x5f4939['id'];return db[_0xdf19('0x66')][_0xdf19('0x5c')](_0x3e9300[_0xdf19('0x63')]);}})[_0xdf19('0x1f')](respondWithResult(_0x228498,null))[_0xdf19('0x2a')](handleError(_0x228498,null));};exports[_0xdf19('0x67')]=function(_0x4e1c8d,_0x538e17,_0x1b8010){var _0x2983a7={'raw':![],'where':{}};var _0x59a5c2={};var _0x4814de={'count':0x0,'rows':[]};return db['WhatsappAccount']['findOne']({'where':{'id':_0x4e1c8d[_0xdf19('0x64')]['id']}})[_0xdf19('0x1f')](handleEntityNotFound(_0x538e17,null))[_0xdf19('0x1f')](function(_0x58ce12){if(_0x58ce12){_0x59a5c2[_0xdf19('0x43')]=_[_0xdf19('0x45')](db[_0xdf19('0x66')][_0xdf19('0x58')]);_0x59a5c2[_0xdf19('0x44')]=_[_0xdf19('0x45')](_0x4e1c8d[_0xdf19('0x44')]);_0x59a5c2[_0xdf19('0x46')]=_[_0xdf19('0x47')](_0x59a5c2[_0xdf19('0x43')],_0x59a5c2['query']);_0x2983a7['attributes']=_[_0xdf19('0x47')](_0x59a5c2['model'],qs[_0xdf19('0x49')](_0x4e1c8d['query'][_0xdf19('0x49')]));_0x2983a7['attributes']=_0x2983a7[_0xdf19('0x48')][_0xdf19('0x4a')]?_0x2983a7[_0xdf19('0x48')]:_0x59a5c2[_0xdf19('0x43')];if(!_0x4e1c8d[_0xdf19('0x44')][_0xdf19('0x4b')](_0xdf19('0x4c'))){_0x2983a7[_0xdf19('0x31')]=qs['limit'](_0x4e1c8d['query'][_0xdf19('0x31')]);_0x2983a7[_0xdf19('0x2f')]=qs[_0xdf19('0x2f')](_0x4e1c8d['query']['offset']);}_0x2983a7[_0xdf19('0x4d')]=qs[_0xdf19('0x4e')](_0x4e1c8d[_0xdf19('0x44')]['sort']);_0x2983a7[_0xdf19('0x4f')]=qs[_0xdf19('0x46')](_['pick'](_0x4e1c8d[_0xdf19('0x44')],_0x59a5c2[_0xdf19('0x46')]));_0x2983a7[_0xdf19('0x4f')][_0xdf19('0x68')]=_0x58ce12['id'];if(_0x4e1c8d[_0xdf19('0x44')][_0xdf19('0x51')]){_0x2983a7[_0xdf19('0x4f')]=_['merge'](_0x2983a7[_0xdf19('0x4f')],{'$or':_['map'](_0x2983a7[_0xdf19('0x48')],function(_0x14d6ad){var _0x5b0ea5={};_0x5b0ea5[_0x14d6ad]={'$like':'%'+_0x4e1c8d[_0xdf19('0x44')]['filter']+'%'};return _0x5b0ea5;})});}_0x2983a7=_['merge']({},_0x2983a7,_0x4e1c8d[_0xdf19('0x5a')]);return db[_0xdf19('0x66')][_0xdf19('0x32')]({'where':_0x2983a7[_0xdf19('0x4f')]})[_0xdf19('0x1f')](function(_0x3ae6b6){_0x4814de[_0xdf19('0x32')]=_0x3ae6b6;if(_0x4e1c8d[_0xdf19('0x44')][_0xdf19('0x54')]){_0x2983a7['include']=[{'all':!![]}];}return db[_0xdf19('0x66')][_0xdf19('0x55')](_0x2983a7);})[_0xdf19('0x1f')](function(_0x3414fe){_0x4814de['rows']=_0x3414fe;return _0x4814de;});}})[_0xdf19('0x1f')](respondWithFilteredResult(_0x538e17,_0x2983a7))['catch'](handleError(_0x538e17,null));};exports[_0xdf19('0x69')]=function(_0x4ec52f,_0x44c871,_0x1af150){return db[_0xdf19('0x53')][_0xdf19('0x5b')]({'where':{'id':_0x4ec52f['params']['id']}})[_0xdf19('0x1f')](handleEntityNotFound(_0x44c871,null))[_0xdf19('0x1f')](function(_0x2b3a6b){if(_0x2b3a6b){return _0x2b3a6b[_0xdf19('0x69')](_0x4ec52f[_0xdf19('0x44')]['ids']);}})[_0xdf19('0x1f')](respondWithStatusCode(_0x44c871,null))[_0xdf19('0x2a')](handleError(_0x44c871,null));};exports[_0xdf19('0x6a')]=function(_0x45698a,_0x52b31f,_0xc4e56c){if(_0x45698a[_0xdf19('0x63')]['id']){delete _0x45698a[_0xdf19('0x63')]['id'];}return db['WhatsappAccount']['find']({'where':{'id':_0x45698a[_0xdf19('0x64')]['id']}})[_0xdf19('0x1f')](handleEntityNotFound(_0x52b31f,null))[_0xdf19('0x1f')](function(_0x264df6){if(_0x264df6){_0x45698a[_0xdf19('0x63')][_0xdf19('0x68')]=_0x264df6['id'];return db[_0xdf19('0x6b')][_0xdf19('0x5c')](_0x45698a[_0xdf19('0x63')]);}})[_0xdf19('0x1f')](respondWithResult(_0x52b31f,null))[_0xdf19('0x2a')](handleError(_0x52b31f,null));};exports['getAnswers']=function(_0xa4f180,_0x410ea7,_0x5e152d){var _0x10c5a7={'raw':![],'where':{}};var _0x3cdbda={};var _0x3c1e2c={'count':0x0,'rows':[]};return db[_0xdf19('0x53')]['findOne']({'where':{'id':_0xa4f180[_0xdf19('0x64')]['id']}})[_0xdf19('0x1f')](handleEntityNotFound(_0x410ea7,null))[_0xdf19('0x1f')](function(_0x1d177a){if(_0x1d177a){_0x3cdbda[_0xdf19('0x43')]=_[_0xdf19('0x45')](db['CannedAnswer'][_0xdf19('0x58')]);_0x3cdbda[_0xdf19('0x44')]=_[_0xdf19('0x45')](_0xa4f180[_0xdf19('0x44')]);_0x3cdbda[_0xdf19('0x46')]=_[_0xdf19('0x47')](_0x3cdbda[_0xdf19('0x43')],_0x3cdbda[_0xdf19('0x44')]);_0x10c5a7['attributes']=_['intersection'](_0x3cdbda['model'],qs[_0xdf19('0x49')](_0xa4f180[_0xdf19('0x44')][_0xdf19('0x49')]));_0x10c5a7[_0xdf19('0x48')]=_0x10c5a7[_0xdf19('0x48')]['length']?_0x10c5a7[_0xdf19('0x48')]:_0x3cdbda[_0xdf19('0x43')];if(!_0xa4f180[_0xdf19('0x44')][_0xdf19('0x4b')]('nolimit')){_0x10c5a7[_0xdf19('0x31')]=qs[_0xdf19('0x31')](_0xa4f180[_0xdf19('0x44')][_0xdf19('0x31')]);_0x10c5a7[_0xdf19('0x2f')]=qs[_0xdf19('0x2f')](_0xa4f180['query'][_0xdf19('0x2f')]);}_0x10c5a7['order']=qs[_0xdf19('0x4e')](_0xa4f180[_0xdf19('0x44')][_0xdf19('0x4e')]);_0x10c5a7[_0xdf19('0x4f')]=qs[_0xdf19('0x46')](_[_0xdf19('0x50')](_0xa4f180[_0xdf19('0x44')],_0x3cdbda[_0xdf19('0x46')]));_0x10c5a7[_0xdf19('0x4f')][_0xdf19('0x68')]=_0x1d177a['id'];if(_0xa4f180[_0xdf19('0x44')][_0xdf19('0x51')]){_0x10c5a7[_0xdf19('0x4f')]=_['merge'](_0x10c5a7[_0xdf19('0x4f')],{'$or':_['map'](_0x10c5a7[_0xdf19('0x48')],function(_0x2c8728){var _0x328e0a={};_0x328e0a[_0x2c8728]={'$like':'%'+_0xa4f180[_0xdf19('0x44')][_0xdf19('0x51')]+'%'};return _0x328e0a;})});}_0x10c5a7=_[_0xdf19('0x52')]({},_0x10c5a7,_0xa4f180[_0xdf19('0x5a')]);return db[_0xdf19('0x6b')]['count']({'where':_0x10c5a7[_0xdf19('0x4f')]})[_0xdf19('0x1f')](function(_0x4c8780){_0x3c1e2c[_0xdf19('0x32')]=_0x4c8780;if(_0xa4f180[_0xdf19('0x44')][_0xdf19('0x54')]){_0x10c5a7[_0xdf19('0x59')]=[{'all':!![]}];}return db[_0xdf19('0x6b')][_0xdf19('0x55')](_0x10c5a7);})[_0xdf19('0x1f')](function(_0x4fe10f){_0x3c1e2c[_0xdf19('0x56')]=_0x4fe10f;return _0x3c1e2c;});}})['then'](respondWithFilteredResult(_0x410ea7,_0x10c5a7))[_0xdf19('0x2a')](handleError(_0x410ea7,null));};exports[_0xdf19('0x6c')]=function(_0x476811,_0x53bbda,_0x3d02c6){return db[_0xdf19('0x53')][_0xdf19('0x5b')]({'where':{'id':_0x476811['params']['id']}})[_0xdf19('0x1f')](handleEntityNotFound(_0x53bbda,null))[_0xdf19('0x1f')](function(_0x550b0d){if(_0x550b0d){return _0x550b0d[_0xdf19('0x6c')](_0x476811[_0xdf19('0x44')][_0xdf19('0x6d')]);}})[_0xdf19('0x1f')](respondWithStatusCode(_0x53bbda,null))['catch'](handleError(_0x53bbda,null));};exports['addAgents']=function(_0x37e46c,_0x4a88bc,_0x5e38a1){return db['WhatsappAccount'][_0xdf19('0x5b')]({'where':{'id':_0x37e46c['params']['id']}})[_0xdf19('0x1f')](handleEntityNotFound(_0x4a88bc,null))[_0xdf19('0x1f')](function(_0x5c30bc){if(_0x5c30bc){return _0x5c30bc['addAgents'](_0x37e46c[_0xdf19('0x63')]['ids'],_[_0xdf19('0x6e')](_0x37e46c[_0xdf19('0x63')],['ids','id'])||{})[_0xdf19('0x6f')](function(_0x4c7176){for(var _0x1ba9c5=0x0;_0x1ba9c5<_0x37e46c[_0xdf19('0x63')]['ids'][_0xdf19('0x4a')];_0x1ba9c5+=0x1){socket[_0xdf19('0x70')](_0xdf19('0x71'),{'UserId':Number(_0x37e46c[_0xdf19('0x63')][_0xdf19('0x6d')][_0x1ba9c5]),'WhatsappAccountId':Number(_0x37e46c[_0xdf19('0x64')]['id'])});}return _0x4c7176;});}})[_0xdf19('0x1f')](respondWithResult(_0x4a88bc,null))[_0xdf19('0x2a')](handleError(_0x4a88bc,null));};exports[_0xdf19('0x72')]=function(_0x34f0f7,_0x1f6711,_0x11459e){return db[_0xdf19('0x53')][_0xdf19('0x5b')]({'where':{'id':_0x34f0f7[_0xdf19('0x64')]['id']}})[_0xdf19('0x1f')](handleEntityNotFound(_0x1f6711,null))['then'](function(_0x48918b){if(_0x48918b){return _0x48918b[_0xdf19('0x72')](_0x34f0f7[_0xdf19('0x44')]['ids'])[_0xdf19('0x1f')](function(){if(_[_0xdf19('0x73')](_0x34f0f7[_0xdf19('0x44')][_0xdf19('0x6d')])){for(var _0x3b1c80=0x0;_0x3b1c80<_0x34f0f7[_0xdf19('0x44')][_0xdf19('0x6d')][_0xdf19('0x4a')];_0x3b1c80+=0x1){socket[_0xdf19('0x70')]('userWhatsappAccount:remove',{'UserId':Number(_0x34f0f7[_0xdf19('0x44')][_0xdf19('0x6d')][_0x3b1c80]),'WhatsappAccountId':Number(_0x34f0f7['params']['id'])});}}else{socket['emit'](_0xdf19('0x74'),{'UserId':Number(_0x34f0f7['query'][_0xdf19('0x6d')]),'WhatsappAccountId':Number(_0x34f0f7['params']['id'])});}});}})[_0xdf19('0x1f')](respondWithStatusCode(_0x1f6711,null))[_0xdf19('0x2a')](handleError(_0x1f6711,null));};exports[_0xdf19('0x75')]=function(_0x2af021,_0x5cf884,_0x26041a){var _0x534c8b={};var _0x32b4d0={};var _0x426ebd;var _0x528842;return db[_0xdf19('0x53')][_0xdf19('0x76')]({'where':{'id':_0x2af021['params']['id']}})[_0xdf19('0x1f')](handleEntityNotFound(_0x5cf884,null))[_0xdf19('0x1f')](function(_0x3b1957){if(_0x3b1957){_0x426ebd=_0x3b1957;_0x32b4d0[_0xdf19('0x43')]=_[_0xdf19('0x45')](db[_0xdf19('0x77')][_0xdf19('0x58')]);_0x32b4d0[_0xdf19('0x44')]=_[_0xdf19('0x45')](_0x2af021['query']);_0x32b4d0['filters']=_[_0xdf19('0x47')](_0x32b4d0[_0xdf19('0x43')],_0x32b4d0[_0xdf19('0x44')]);_0x534c8b[_0xdf19('0x48')]=_['intersection'](_0x32b4d0[_0xdf19('0x43')],qs[_0xdf19('0x49')](_0x2af021[_0xdf19('0x44')][_0xdf19('0x49')]));_0x534c8b[_0xdf19('0x48')]=_0x534c8b[_0xdf19('0x48')][_0xdf19('0x4a')]?_0x534c8b[_0xdf19('0x48')]:_0x32b4d0[_0xdf19('0x43')];_0x534c8b['order']=qs['sort'](_0x2af021['query'][_0xdf19('0x4e')]);_0x534c8b[_0xdf19('0x4f')]=qs[_0xdf19('0x46')](_[_0xdf19('0x50')](_0x2af021[_0xdf19('0x44')],_0x32b4d0['filters']));if(_0x2af021['query'][_0xdf19('0x51')]){_0x534c8b[_0xdf19('0x4f')]=_['merge'](_0x534c8b[_0xdf19('0x4f')],{'$or':_[_0xdf19('0x40')](_0x534c8b[_0xdf19('0x48')],function(_0x5e967f){var _0x4657db={};_0x4657db[_0x5e967f]={'$like':'%'+_0x2af021[_0xdf19('0x44')][_0xdf19('0x51')]+'%'};return _0x4657db;})});}_0x534c8b=_[_0xdf19('0x52')]({},_0x534c8b,_0x2af021[_0xdf19('0x5a')]);return _0x426ebd['getAgents'](_0x534c8b);}})[_0xdf19('0x1f')](function(_0x5adc3e){if(_0x5adc3e){_0x528842=_0x5adc3e[_0xdf19('0x4a')];if(!_0x2af021[_0xdf19('0x44')]['hasOwnProperty'](_0xdf19('0x4c'))){_0x534c8b[_0xdf19('0x31')]=qs[_0xdf19('0x31')](_0x2af021[_0xdf19('0x44')][_0xdf19('0x31')]);_0x534c8b[_0xdf19('0x2f')]=qs[_0xdf19('0x2f')](_0x2af021['query'][_0xdf19('0x2f')]);}return _0x426ebd[_0xdf19('0x75')](_0x534c8b);}})[_0xdf19('0x1f')](function(_0x53b984){if(_0x53b984){return _0x53b984?{'count':_0x528842,'rows':_0x53b984}:null;}})[_0xdf19('0x1f')](respondWithResult(_0x5cf884,null))[_0xdf19('0x2a')](handleError(_0x5cf884,null));};exports[_0xdf19('0x78')]=function(_0x2bd4c9,_0x50e27e){var _0x7039c5=_0x2bd4c9[_0xdf19('0x64')]['id'];var _0x1b004c=_0x2bd4c9[_0xdf19('0x63')];var _0x3bf593=0xc8;var _0x4af1cc=null;return db[_0xdf19('0x79')][_0xdf19('0x7a')]({'isolationLevel':db[_0xdf19('0x79')][_0xdf19('0x7b')][_0xdf19('0x7c')][_0xdf19('0x7d')]},function(_0xfb4f35){return db[_0xdf19('0x53')][_0xdf19('0x76')]({'where':{'id':_0x7039c5},'transaction':_0xfb4f35})[_0xdf19('0x1f')](function(_0x3c625c){if(_0x3c625c){return db[_0xdf19('0x7e')]['destroy']({'where':{'WhatsappAccountId':_0x7039c5},'transaction':_0xfb4f35})[_0xdf19('0x1f')](function(){var _0x9785c=_['map'](_0x1b004c,function(_0x65b66d){_0x65b66d[_0xdf19('0x68')]=_0x7039c5;return _0x65b66d;});return db['WhatsappApplication'][_0xdf19('0x7f')](_0x9785c,{'transaction':_0xfb4f35});});}else{_0x3bf593=0x194;_0x4af1cc=[];}});})[_0xdf19('0x1f')](function(){if(_0x3bf593!==0x194){return db[_0xdf19('0x7e')][_0xdf19('0x80')]({'where':{'WhatsappAccountId':_0x7039c5},'order':_0xdf19('0x81')})[_0xdf19('0x1f')](function(_0x47b82b){_0x4af1cc=_0x47b82b;});}})['catch'](function(_0x38a7b8){_0x3bf593=0x1f4;logger[_0xdf19('0x25')](_0x38a7b8[_0xdf19('0x82')]);if(_0x38a7b8[_0xdf19('0x3b')]){delete _0x38a7b8[_0xdf19('0x3b')];}_0x4af1cc=_0x38a7b8;})[_0xdf19('0x83')](function(){if(_0x4af1cc===null){_0x50e27e['sendStatus'](_0x3bf593);}else{if(_0x3bf593===0x1f4){_0x50e27e[_0xdf19('0x2c')](_0x3bf593)[_0xdf19('0x3c')](_0x4af1cc);}else{_0x50e27e[_0xdf19('0x2c')](_0x3bf593)[_0xdf19('0x2e')](_0x4af1cc);}}});};exports[_0xdf19('0x84')]=function(_0x5dda72,_0x1fbc58,_0x1cff83){var _0x57f1d8={};var _0x23f9d2={};var _0x4c85f8;var _0x4dafaa;return db[_0xdf19('0x53')]['findOne']({'where':{'id':_0x5dda72[_0xdf19('0x64')]['id']}})[_0xdf19('0x1f')](handleEntityNotFound(_0x1fbc58,null))[_0xdf19('0x1f')](function(_0x3fa959){if(_0x3fa959){_0x4c85f8=_0x3fa959;_0x23f9d2[_0xdf19('0x43')]=_[_0xdf19('0x45')](db[_0xdf19('0x7e')]['rawAttributes']);_0x23f9d2['query']=_[_0xdf19('0x45')](_0x5dda72[_0xdf19('0x44')]);_0x23f9d2[_0xdf19('0x46')]=_[_0xdf19('0x47')](_0x23f9d2[_0xdf19('0x43')],_0x23f9d2[_0xdf19('0x44')]);_0x57f1d8[_0xdf19('0x48')]=_[_0xdf19('0x47')](_0x23f9d2[_0xdf19('0x43')],qs[_0xdf19('0x49')](_0x5dda72['query']['fields']));_0x57f1d8['attributes']=_0x57f1d8[_0xdf19('0x48')][_0xdf19('0x4a')]?_0x57f1d8['attributes']:_0x23f9d2[_0xdf19('0x43')];_0x57f1d8['order']=qs[_0xdf19('0x4e')](_0x5dda72[_0xdf19('0x44')][_0xdf19('0x4e')]);_0x57f1d8[_0xdf19('0x4f')]=qs['filters'](_[_0xdf19('0x50')](_0x5dda72[_0xdf19('0x44')],_0x23f9d2[_0xdf19('0x46')]));if(_0x5dda72[_0xdf19('0x44')][_0xdf19('0x51')]){_0x57f1d8[_0xdf19('0x4f')]=_[_0xdf19('0x52')](_0x57f1d8[_0xdf19('0x4f')],{'$or':_['map'](_0x57f1d8[_0xdf19('0x48')],function(_0x5abcdf){var _0xd3fea5={};_0xd3fea5[_0x5abcdf]={'$like':'%'+_0x5dda72['query'][_0xdf19('0x51')]+'%'};return _0xd3fea5;})});}_0x57f1d8=_[_0xdf19('0x52')]({},_0x57f1d8,_0x5dda72[_0xdf19('0x5a')]);return _0x4c85f8[_0xdf19('0x84')](_0x57f1d8);}})[_0xdf19('0x1f')](function(_0x423099){if(_0x423099){_0x4dafaa=_0x423099[_0xdf19('0x4a')];if(!_0x5dda72['query'][_0xdf19('0x4b')](_0xdf19('0x4c'))){_0x57f1d8[_0xdf19('0x31')]=qs[_0xdf19('0x31')](_0x5dda72['query'][_0xdf19('0x31')]);_0x57f1d8[_0xdf19('0x2f')]=qs[_0xdf19('0x2f')](_0x5dda72['query'][_0xdf19('0x2f')]);}return _0x4c85f8[_0xdf19('0x84')](_0x57f1d8);}})['then'](function(_0x8861a3){if(_0x8861a3){return _0x8861a3?{'count':_0x4dafaa,'rows':_0x8861a3}:null;}})[_0xdf19('0x1f')](respondWithResult(_0x1fbc58,null))['catch'](handleError(_0x1fbc58,null));};exports['notify']=function(_0x2ff510,_0x23757a,_0x2d3ba1){var _0x3fddc7={'channel':'whatsapp'};var _0x522eb0=[];var _0x47262d=[];var _0x5013ee={};return db[_0xdf19('0x53')][_0xdf19('0x5b')]({'where':{'id':_0x2ff510[_0xdf19('0x64')]['id']},'include':[{'model':db[_0xdf19('0x7e')],'as':'Applications'}]})[_0xdf19('0x1f')](handleEntityNotFound(_0x23757a,null))[_0xdf19('0x1f')](function(_0xd6cf23){_0x3fddc7['account']=_0xd6cf23;if(_0x3fddc7['account']&&_0x3fddc7[_0xdf19('0x85')]['type']==='sinch'&&_0x2ff510['body'][_0xdf19('0x86')]){if(_0x2ff510['body'][_0xdf19('0x86')][_0xdf19('0x4a')]===0x0)return;if(_0x2ff510['body']['statuses'][0x0][_0xdf19('0x87')]!=='read')return;return db['WhatsappMessage'][_0xdf19('0x36')]({'read':!![],'readAt':_0x2ff510[_0xdf19('0x63')]['statuses'][0x0][_0xdf19('0x88')]},{'where':{'messageId':_0x2ff510[_0xdf19('0x63')][_0xdf19('0x86')][0x0][_0xdf19('0x89')]},'individualHooks':!![]})['then'](function(_0x484cf0){return _0x23757a[_0xdf19('0x2c')](0xc8)[_0xdf19('0x2e')](_0x484cf0);});}_0x3fddc7['applications']=_[_0xdf19('0x8a')](_0xd6cf23[_0xdf19('0x8b')],[_0xdf19('0x81')],[_0xdf19('0x8c')]);if(_0x3fddc7[_0xdf19('0x85')]['Applications']){delete _0x3fddc7[_0xdf19('0x85')][_0xdf19('0x8b')];}return db['CmContact']['describe']()[_0xdf19('0x1f')](function(_0x24cb67){if(!_0x24cb67){throw new db[(_0xdf19('0x8d'))][(_0xdf19('0x8e'))]('no\x20available\x20attributes');}_0x522eb0=_[_0xdf19('0x8f')](_[_0xdf19('0x45')](_0x24cb67),[_0xdf19('0x90'),_0xdf19('0x91')]);_0x47262d=_[_0xdf19('0x8f')](_['keys'](_0x24cb67),[_0xdf19('0x90'),_0xdf19('0x91'),_0xdf19('0x92'),_0xdf19('0x93')]);_0x3fddc7[_0xdf19('0x63')]={'mapKey':'mobile'};if(_0x3fddc7['account']&&_0x3fddc7['account'][_0xdf19('0x42')]==='twilio'){_0x3fddc7['body']['from']=_0x2ff510['body'][_0xdf19('0x94')]['replace'](_0xdf19('0x95'),'');_0x3fddc7['body']['body']=_0x2ff510[_0xdf19('0x63')]['Body'];_0x3fddc7[_0xdf19('0x63')][_0xdf19('0x96')]=_0x2ff510[_0xdf19('0x63')][_0xdf19('0x97')];}if(_0x3fddc7['account']&&_0x3fddc7[_0xdf19('0x85')][_0xdf19('0x42')]===_0xdf19('0x98')){_0x3fddc7[_0xdf19('0x63')][_0xdf19('0x99')]=_0x2ff510[_0xdf19('0x63')][_0xdf19('0x9a')][0x0][_0xdf19('0x99')];_0x3fddc7[_0xdf19('0x63')][_0xdf19('0x63')]=_0x2ff510['body'][_0xdf19('0x9a')][0x0][_0xdf19('0x27')][_0xdf19('0x63')];_0x3fddc7[_0xdf19('0x63')][_0xdf19('0x96')]=_0x2ff510[_0xdf19('0x63')][_0xdf19('0x9a')][0x0][_0xdf19('0x89')];}if(_0x3fddc7['body']['id']){delete _0x3fddc7['body']['id'];}if(_['isNil'](_0x3fddc7['body'][_0xdf19('0x99')])){throw new db[(_0xdf19('0x8d'))][(_0xdf19('0x8e'))](_0xdf19('0x9b'));}if(_[_0xdf19('0x9c')](_0x3fddc7['body']['body'])||_0x3fddc7[_0xdf19('0x63')][_0xdf19('0x63')]===''){throw new db[(_0xdf19('0x8d'))][(_0xdf19('0x8e'))](_0xdf19('0x9d'));}if(_[_0xdf19('0x9c')](_0x3fddc7[_0xdf19('0x63')][_0xdf19('0x9e')])){throw new db[(_0xdf19('0x8d'))]['ValidationError']('mapKey\x20is\x20mandatory,\x20please\x20use\x20one\x20of\x20these:\x20'+_0x47262d);}if(!_[_0xdf19('0x9f')](_0x47262d,_0x3fddc7[_0xdf19('0x63')][_0xdf19('0x9e')])){throw new db[(_0xdf19('0x8d'))][(_0xdf19('0x8e'))]('mapKey\x20invalid,\x20please\x20use\x20one\x20of\x20these:\x20'+_0x47262d);}_0x5013ee[_0x3fddc7['body'][_0xdf19('0x9e')]]=_0x3fddc7[_0xdf19('0x63')]['from'];return db[_0xdf19('0xa0')][_0xdf19('0x5b')]({'where':{'id':_0x3fddc7[_0xdf19('0x85')][_0xdf19('0x93')]},'include':[{'model':db[_0xdf19('0xa1')],'as':_0xdf19('0xa2'),'where':_0x5013ee,'limit':0x1,'order':[[_0xdf19('0x91'),'DESC']]}]});})[_0xdf19('0x1f')](handleEntityNotFound(_0x23757a,null))[_0xdf19('0x1f')](function(_0x9f27a1){if(_0x9f27a1){_0x3fddc7[_0xdf19('0xa3')]=_[_0xdf19('0x6e')](_0x9f27a1,[_0xdf19('0xa2')]);if(_0x9f27a1['Contacts'][_0xdf19('0x4a')]){return _0x9f27a1[_0xdf19('0xa2')][0x0];}var _0x57b921=_[_0xdf19('0x18')](_0x3fddc7[_0xdf19('0x63')],{'firstName':_0x3fddc7[_0xdf19('0x63')][_0xdf19('0x99')],'ListId':_0x9f27a1['id']});_0x57b921[_0x3fddc7['body']['mapKey']]=_0x3fddc7[_0xdf19('0x63')][_0xdf19('0x99')];return db['CmContact']['create'](_0x57b921,{'fields':_0x522eb0,'raw':!![]});}})[_0xdf19('0x1f')](handleEntityNotFound(_0x23757a,null))['then'](function(_0x5e21d7){if(_0x5e21d7){_0x3fddc7['contact']=_0x5e21d7;var _0x347ba3={'ContactId':_0x5e21d7['id'],'phone':_0x3fddc7[_0xdf19('0x63')][_0xdf19('0x99')],'WhatsappAccountId':_0x2ff510['params']['id']};var _0x50c863={'ContactId':_0x5e21d7['id'],'WhatsappAccountId':_0x2ff510[_0xdf19('0x64')]['id'],'closed':![]};return db[_0xdf19('0xa4')][_0xdf19('0x5b')]({'where':_0x50c863})[_0xdf19('0x1f')](function(_0x96682a){if(_0x96682a){return[_0x96682a,![]];}return db[_0xdf19('0xa4')]['create'](_0x347ba3)[_0xdf19('0x1f')](function(_0x3ffad2){return[_0x3ffad2,!![]];});});}})['spread'](function(_0x25aa9f,_0x1c0fa1){_0x3fddc7[_0xdf19('0xa5')]=_0x25aa9f[_0xdf19('0x38')]({'plain':!![]});_0x3fddc7[_0xdf19('0xa5')]['created']=![];if(_0x1c0fa1){if(_0x3fddc7['account'][_0xdf19('0xa6')]){_0x3fddc7[_0xdf19('0xa7')][_0xdf19('0xa8')]({'id':0x0,'priority':_0x3fddc7[_0xdf19('0xa7')]['length']+0x1,'app':'close','appdata':_0xdf19('0xa9'),'interval':'*,*,*,*'});}_0x3fddc7[_0xdf19('0xa5')]['created']=!![];}return db[_0xdf19('0xaa')]['create']({'phone':_0x3fddc7[_0xdf19('0x63')][_0xdf19('0x99')],'messageId':_0x3fddc7['body'][_0xdf19('0x96')],'body':_0x3fddc7[_0xdf19('0x63')]['body'],'WhatsappAccountId':_0x2ff510[_0xdf19('0x64')]['id'],'WhatsappInteractionId':_0x25aa9f['id'],'direction':'in','ContactId':_0x25aa9f[_0xdf19('0xab')],'AttachmentId':_0x3fddc7[_0xdf19('0x63')][_0xdf19('0xac')]});})[_0xdf19('0x1f')](function(_0x3ea6ed){_0x3fddc7[_0xdf19('0x27')]=_0x3ea6ed;if(!_0x3fddc7[_0xdf19('0xa5')][_0xdf19('0xad')])return;return db[_0xdf19('0x77')][_0xdf19('0x5b')]({'attributes':['id','name'],'where':{'id':_0x3fddc7[_0xdf19('0xa5')][_0xdf19('0xad')]}});})[_0xdf19('0x1f')](function(_0x211e1f){if(_0x211e1f){_0x3fddc7['applications']['unshift']({'id':0x0,'priority':0x0,'app':_0xdf19('0xae'),'appdata':_0x211e1f[_0xdf19('0x3b')]+','+(_0x3fddc7[_0xdf19('0x85')]['waitForTheAssignedAgent']||0xa),'interval':'*,*,*,*'});}if(!_0x3fddc7[_0xdf19('0xa5')][_0xdf19('0xaf')])return;return db[_0xdf19('0xb0')]['find']({'attributes':['id',_0xdf19('0x3b')],'where':{'id':_0x3fddc7[_0xdf19('0xa5')][_0xdf19('0xaf')]}});})[_0xdf19('0x1f')](function(_0x597415){if(_0x597415){_0x3fddc7['applications'][_0xdf19('0xb1')]({'id':0x0,'priority':0x1,'app':_0xdf19('0xb2'),'appdata':_0x597415[_0xdf19('0x3b')]+','+(_0x3fddc7[_0xdf19('0x85')][_0xdf19('0xb3')]||0x12c),'interval':_0xdf19('0xb4')});}return respondWithRpcPromise(_0xdf19('0xb5'),_0xdf19('0xb6'),_0x3fddc7);})[_0xdf19('0x1f')](function(_0x503188){if(_0x503188){var _0x4712c5=0xc8;var _0xadf206='receiveMessage';logger[_0xdf19('0x28')]('WhatsappAccount,\x20%s,\x20%s,\x20%s',_0xadf206,_0x4712c5,_0xdf19('0xb7'));logger['debug'](_0xdf19('0xb8'),_0xadf206,_0x4712c5,'entity\x20found',JSON['stringify'](_0x503188));if(_0x3fddc7[_0xdf19('0x85')]['type']===_0xdf19('0xb9')){return _0x23757a[_0xdf19('0x2c')](_0x4712c5)[_0xdf19('0x33')](_0xdf19('0xba'),_0xdf19('0xbb'))[_0xdf19('0x3c')](_0xdf19('0xbc'));}else{return _0x23757a[_0xdf19('0x2c')](_0x4712c5)['json'](_0x503188);}}});})[_0xdf19('0x2a')](handleError(_0x23757a,null));};exports[_0xdf19('0x3c')]=function(_0xb6799e,_0xd96729,_0x5322a0){var _0x279d3e,_0x1976b6,_0x111517;if(_['isNil'](_0xb6799e['body'][_0xdf19('0x63')])||_0xb6799e['body'][_0xdf19('0x63')]===''){throw new db['Sequelize'][(_0xdf19('0x8e'))](_0xdf19('0x9d'));}if(_[_0xdf19('0x9c')](_0xb6799e['body']['to'])){throw new db['Sequelize'][(_0xdf19('0x8e'))]('to\x20is\x20mandatory');}_0x279d3e=_0xb6799e['body']['to'];return db[_0xdf19('0x53')][_0xdf19('0x5b')]({'where':{'id':_0xb6799e[_0xdf19('0x64')]['id']},'include':[{'model':db[_0xdf19('0xa0')],'as':_0xdf19('0xbd'),'include':[{'model':db[_0xdf19('0xa1')],'as':'Contacts','where':{'mobile':_0x279d3e},'limit':0x1,'order':[[_0xdf19('0x91'),_0xdf19('0xbe')]]}]}]})[_0xdf19('0x1f')](handleEntityNotFound(_0xd96729,null))[_0xdf19('0x1f')](function(_0x207a0d){if(_0x207a0d&&_0x207a0d[_0xdf19('0xbd')]){_0x1976b6=_0x207a0d[_0xdf19('0x38')]({'plain':!![]});if(_0x1976b6['List']&&_0x1976b6[_0xdf19('0xbd')][_0xdf19('0xa2')][_0xdf19('0x4a')]){return _0x1976b6['List']['Contacts'][0x0];}return db['CmContact'][_0xdf19('0x5c')](_[_0xdf19('0x18')](_0xb6799e[_0xdf19('0x63')],{'firstName':_0x279d3e,'mobile':_0x279d3e,'phone':_0x279d3e,'ListId':_0x1976b6['ListId']}));}})['then'](handleEntityNotFound(_0xd96729,null))[_0xdf19('0x1f')](function(_0x212075){if(_0x212075){_0x111517=_0x212075;return db[_0xdf19('0xa4')][_0xdf19('0x5b')]({'where':{'ContactId':_0x111517['id'],'closed':![],'WhatsappAccountId':_0x1976b6['id']}})[_0xdf19('0x1f')](function(_0xf5d429){if(_0xf5d429){return[_0xf5d429,![]];}return db['WhatsappInteraction'][_0xdf19('0x5c')]({'UserId':_0xb6799e[_0xdf19('0x5d')]['id'],'ContactId':_0x111517['id'],'WhatsappAccountId':_0x1976b6['id'],'phone':_0x279d3e,'firstMsgDirection':_0xdf19('0xbf'),'Messages':[_['merge'](_0xb6799e[_0xdf19('0x63')],{'read':![],'body':_0xb6799e[_0xdf19('0x63')][_0xdf19('0x63')],'phone':_0x279d3e,'WhatsappAccountId':_0x1976b6['id'],'UserId':_0xb6799e[_0xdf19('0x5d')]['id'],'ContactId':_0x111517['id']})]},{'include':[{'model':db[_0xdf19('0xaa')],'as':_0xdf19('0xc0')}]})[_0xdf19('0x1f')](function(_0x3668f1){return[_0x3668f1,!![]];});});}})[_0xdf19('0x6f')](function(_0x2530e4,_0x33775c){if(_0x33775c){return _0x2530e4;}return db[_0xdf19('0xaa')][_0xdf19('0x5c')](_['merge'](_0xb6799e[_0xdf19('0x63')],{'read':![],'body':_0xb6799e[_0xdf19('0x63')][_0xdf19('0x63')],'phone':_0x279d3e,'WhatsappAccountId':_0x1976b6['id'],'WhatsappInteractionId':_0x2530e4['id'],'UserId':_0xb6799e['user']['id'],'ContactId':_0x111517['id']}))['then'](function(_0x5d4bdb){_0x2530e4[_0xdf19('0xc1')][_0xdf19('0xc0')]=[];_0x2530e4['dataValues']['Messages'][_0xdf19('0xa8')](_0x5d4bdb[_0xdf19('0xc1')]);return _0x2530e4;});})[_0xdf19('0x1f')](respondWithResult(_0xd96729,null))[_0xdf19('0x2a')](handleError(_0xd96729,null));};