Built motion from commit 994c64e1.|2.6.1
[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 _0xeedf=['request-promise','moment','bluebird','mustache','sox','fs-extra','squel','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','redis','localhost','socket.io-emitter','./whatsappAccount.socket','register','http','then','info','WhatsappAccount,\x20%s,\x20%s','request\x20sent','WhatsappAccount,\x20%s,\x20%s,\x20%s','stringify','error','message','sendStatus','status','end','json','offset','limit','count','set','Content-Range','save','destroy','get','WhatsappAccounts','UserProfileResource','name','send','index','Pause','mandatoryDispositionPause','map','WhatsappAccount','fieldName','key','model','query','filters','intersection','fields','attributes','length','hasOwnProperty','nolimit','sort','where','pick','type','filter','options','includeAll','include','findAll','rows','catch','show','rawAttributes','merge','find','create','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','UserProfileSection','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','update','params','describe','addDisposition','WhatsappAccountId','Disposition','getDispositions','keys','order','removeDispositions','ids','addAnswer','CannedAnswer','findOne','removeAnswers','addAgents','omit','spread','emit','userWhatsappAccount:save','removeAgents','isArray','userWhatsappAccount:remove','getAgents','sequelize','transaction','READ_COMMITTED','WhatsappApplication','bulkCreate','findAndCountAll','priority','finally','getApplications','whatsapp','Applications','account','sinch','statuses','state','read','WhatsappMessage','message_id','applications','orderBy','CmContact','Sequelize','ValidationError','no\x20available\x20attributes','difference','createdAt','updatedAt','ListId','mobile','twilio','from','whatsapp:','messageId','notifications','isNil','from\x20is\x20mandatory','body\x20is\x20mandatory\x20and\x20not\x20empty','mapKey','mapKey\x20is\x20mandatory,\x20please\x20use\x20one\x20of\x20these:\x20','includes','mapKey\x20invalid,\x20please\x20use\x20one\x20of\x20these:\x20','CmList','Contacts','DESC','defaults','contact','WhatsappInteraction','interaction','created','push','close','unmanaged','*,*,*,*','ContactId','AttachmentId','UserId','User','unshift','agent','waitForTheAssignedAgent','Start','receiveMessage','entity\x20found','debug','WhatsappAccount,\x20%s,\x20%s,\x20%s,\x20%s','Content-Type','text/xml','<?xml\x20version=\x221.0\x22\x20encoding=\x22UTF-8\x22?>\x0a<Response></Response>','to\x20is\x20mandatory','List','out','Messages','dataValues','fast-json-patch'];(function(_0x5f76c3,_0x1a0793){var _0x1d2edb=function(_0x4bd7ee){while(--_0x4bd7ee){_0x5f76c3['push'](_0x5f76c3['shift']());}};_0x1d2edb(++_0x1a0793);}(_0xeedf,0x173));var _0xfeed=function(_0x385a41,_0x4b6141){_0x385a41=_0x385a41-0x0;var _0x5c4b65=_0xeedf[_0x385a41];return _0x5c4b65;};'use strict';var emlformat=require('eml-format');var rimraf=require('rimraf');var zipdir=require('zip-dir');var jsonpatch=require(_0xfeed('0x0'));var rp=require(_0xfeed('0x1'));var moment=require(_0xfeed('0x2'));var BPromise=require(_0xfeed('0x3'));var Mustache=require(_0xfeed('0x4'));var util=require('util');var path=require('path');var sox=require(_0xfeed('0x5'));var csv=require('to-csv');var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0xfeed('0x6'));var _=require('lodash');var squel=require(_0xfeed('0x7'));var crypto=require('crypto');var jsforce=require(_0xfeed('0x8'));var deskjs=require(_0xfeed('0x9'));var toCsv=require('to-csv');var querystring=require(_0xfeed('0xa'));var Papa=require(_0xfeed('0xb'));var Redis=require(_0xfeed('0xc'));var authService=require(_0xfeed('0xd'));var qs=require('../../components/parsers/qs');var as=require(_0xfeed('0xe'));var hardwareService=require('../../config/license/hardware');var logger=require('../../config/logger')(_0xfeed('0xf'));var utils=require(_0xfeed('0x10'));var config=require(_0xfeed('0x11'));var licenseUtil=require(_0xfeed('0x12'));var db=require(_0xfeed('0x13'))['db'];config[_0xfeed('0x14')]=_['defaults'](config[_0xfeed('0x14')],{'host':_0xfeed('0x15'),'port':0x18eb});var socket=require(_0xfeed('0x16'))(new Redis(config[_0xfeed('0x14')]));require(_0xfeed('0x17'))[_0xfeed('0x18')](socket);var jayson=require('jayson/promise');var client=jayson['client'][_0xfeed('0x19')]({'port':0x232c});function respondWithRpcPromise(_0x53433b,_0x183274,_0x142b5b,_0x3dbff4){return new BPromise(function(_0x14afd9,_0x49cc14){var _0x376488=_0x3dbff4||client;return _0x376488['request'](_0x53433b,_0x142b5b)[_0xfeed('0x1a')](function(_0x4f9aa4){logger[_0xfeed('0x1b')](_0xfeed('0x1c'),_0x183274,_0xfeed('0x1d'));logger['debug'](_0xfeed('0x1e'),_0x183274,'request\x20sent',JSON[_0xfeed('0x1f')](_0x4f9aa4));if(_0x4f9aa4[_0xfeed('0x20')]){if(_0x4f9aa4[_0xfeed('0x20')]['code']===0x1f4){logger['error'](_0xfeed('0x1c'),_0x183274,_0x4f9aa4[_0xfeed('0x20')][_0xfeed('0x21')]);return _0x49cc14(_0x4f9aa4[_0xfeed('0x20')][_0xfeed('0x21')]);}logger[_0xfeed('0x20')](_0xfeed('0x1c'),_0x183274,_0x4f9aa4['error'][_0xfeed('0x21')]);return _0x14afd9(_0x4f9aa4[_0xfeed('0x20')][_0xfeed('0x21')]);}else{logger[_0xfeed('0x1b')]('WhatsappAccount,\x20%s,\x20%s',_0x183274,'request\x20sent');_0x14afd9(_0x4f9aa4['result'][_0xfeed('0x21')]);}})['catch'](function(_0x55399d){logger[_0xfeed('0x20')]('WhatsappAccount,\x20%s,\x20%s',_0x183274,_0x55399d);_0x49cc14(_0x55399d);});});}function respondWithStatusCode(_0x1114fd,_0x3e6fdc){_0x3e6fdc=_0x3e6fdc||0xcc;return function(_0x2bb147){if(_0x2bb147){return _0x1114fd[_0xfeed('0x22')](_0x3e6fdc);}return _0x1114fd[_0xfeed('0x23')](_0x3e6fdc)[_0xfeed('0x24')]();};}function respondWithResult(_0x56255a,_0x41c23f){_0x41c23f=_0x41c23f||0xc8;return function(_0x5c7688){if(_0x5c7688){return _0x56255a[_0xfeed('0x23')](_0x41c23f)[_0xfeed('0x25')](_0x5c7688);}};}function respondWithFilteredResult(_0x4a7d4f,_0x3a4131){return function(_0x5cc61b){if(_0x5cc61b){var _0xeca37b=typeof _0x3a4131[_0xfeed('0x26')]==='undefined'&&typeof _0x3a4131[_0xfeed('0x27')]==='undefined';var _0x56d3d2=_0x5cc61b['count'];var _0x334766=_0xeca37b?0x0:_0x3a4131['offset'];var _0x35cb3c=_0xeca37b?_0x5cc61b[_0xfeed('0x28')]:_0x3a4131[_0xfeed('0x26')]+_0x3a4131['limit'];var _0x167f4a;if(_0x35cb3c>=_0x56d3d2){_0x35cb3c=_0x56d3d2;_0x167f4a=0xc8;}else{_0x167f4a=0xce;}_0x4a7d4f[_0xfeed('0x23')](_0x167f4a);return _0x4a7d4f[_0xfeed('0x29')](_0xfeed('0x2a'),_0x334766+'-'+_0x35cb3c+'/'+_0x56d3d2)[_0xfeed('0x25')](_0x5cc61b);}return null;};}function patchUpdates(_0x3be44c){return function(_0x2e652c){try{jsonpatch['apply'](_0x2e652c,_0x3be44c,!![]);}catch(_0x485786){return BPromise['reject'](_0x485786);}return _0x2e652c[_0xfeed('0x2b')]();};}function saveUpdates(_0x10d6aa,_0x39fecb){return function(_0x4711ea){if(_0x4711ea){return _0x4711ea['update'](_0x10d6aa)[_0xfeed('0x1a')](function(_0x5013d4){return _0x5013d4;});}return null;};}function removeEntity(_0x1e57aa,_0x32d7cb){return function(_0x3f7214){if(_0x3f7214){return _0x3f7214[_0xfeed('0x2c')]()[_0xfeed('0x1a')](function(){var _0x329990=_0x3f7214[_0xfeed('0x2d')]({'plain':!![]});var _0x5db0c5=_0xfeed('0x2e');return db[_0xfeed('0x2f')]['destroy']({'where':{'type':_0x5db0c5,'resourceId':_0x329990['id']}})[_0xfeed('0x1a')](function(){return _0x3f7214;});})['then'](function(){_0x1e57aa[_0xfeed('0x23')](0xcc)[_0xfeed('0x24')]();});}};}function handleEntityNotFound(_0x3e9b6a,_0xc1bc7){return function(_0x3b458e){if(!_0x3b458e){_0x3e9b6a[_0xfeed('0x22')](0x194);}return _0x3b458e;};}function handleError(_0x1442c3,_0x529fb6){_0x529fb6=_0x529fb6||0x1f4;return function(_0x43d369){logger[_0xfeed('0x20')](_0x43d369['stack']);if(_0x43d369[_0xfeed('0x30')]){delete _0x43d369['name'];}_0x1442c3[_0xfeed('0x23')](_0x529fb6)[_0xfeed('0x31')](_0x43d369);};}exports[_0xfeed('0x32')]=function(_0x4de573,_0x439fbc){var _0x25c86d={'include':[{'model':db[_0xfeed('0x33')],'as':_0xfeed('0x34')}]},_0x4082a7={},_0x1e8a81={'count':0x0,'rows':[]};var _0xd937fa=_[_0xfeed('0x35')](db[_0xfeed('0x36')]['rawAttributes'],function(_0x5864e9){return{'name':_0x5864e9[_0xfeed('0x37')],'type':_0x5864e9['type'][_0xfeed('0x38')]};});_0x4082a7[_0xfeed('0x39')]=_[_0xfeed('0x35')](_0xd937fa,'name');_0x4082a7[_0xfeed('0x3a')]=_['keys'](_0x4de573['query']);_0x4082a7[_0xfeed('0x3b')]=_[_0xfeed('0x3c')](_0x4082a7[_0xfeed('0x39')],_0x4082a7[_0xfeed('0x3a')]);_0x25c86d['attributes']=_[_0xfeed('0x3c')](_0x4082a7[_0xfeed('0x39')],qs[_0xfeed('0x3d')](_0x4de573[_0xfeed('0x3a')][_0xfeed('0x3d')]));_0x25c86d[_0xfeed('0x3e')]=_0x25c86d[_0xfeed('0x3e')][_0xfeed('0x3f')]?_0x25c86d[_0xfeed('0x3e')]:_0x4082a7['model'];if(!_0x4de573[_0xfeed('0x3a')][_0xfeed('0x40')](_0xfeed('0x41'))){_0x25c86d[_0xfeed('0x27')]=qs[_0xfeed('0x27')](_0x4de573['query']['limit']);_0x25c86d['offset']=qs['offset'](_0x4de573['query']['offset']);}_0x25c86d['order']=qs['sort'](_0x4de573['query'][_0xfeed('0x42')]);_0x25c86d[_0xfeed('0x43')]=qs[_0xfeed('0x3b')](_[_0xfeed('0x44')](_0x4de573[_0xfeed('0x3a')],_0x4082a7[_0xfeed('0x3b')]),_0xd937fa);if(_0x4de573[_0xfeed('0x3a')]['filter']){_0x25c86d[_0xfeed('0x43')]=_['merge'](_0x25c86d['where'],{'$or':_[_0xfeed('0x35')](_0xd937fa,function(_0x181f07){if(_0x181f07[_0xfeed('0x45')]!=='VIRTUAL'){var _0x894aec={};_0x894aec[_0x181f07['name']]={'$like':'%'+_0x4de573['query'][_0xfeed('0x46')]+'%'};return _0x894aec;}})});}_0x25c86d=_['merge']({},_0x25c86d,_0x4de573[_0xfeed('0x47')]);var _0x4b86c5={'where':_0x25c86d['where']};return db[_0xfeed('0x36')]['count'](_0x4b86c5)[_0xfeed('0x1a')](function(_0x36e431){_0x1e8a81[_0xfeed('0x28')]=_0x36e431;if(_0x4de573[_0xfeed('0x3a')][_0xfeed('0x48')]){_0x25c86d[_0xfeed('0x49')]=[{'all':!![]}];}return db[_0xfeed('0x36')][_0xfeed('0x4a')](_0x25c86d);})[_0xfeed('0x1a')](function(_0x1fcffa){_0x1e8a81[_0xfeed('0x4b')]=_0x1fcffa;return _0x1e8a81;})[_0xfeed('0x1a')](respondWithFilteredResult(_0x439fbc,_0x25c86d))[_0xfeed('0x4c')](handleError(_0x439fbc,null));};exports[_0xfeed('0x4d')]=function(_0x5f1764,_0x16f833){var _0x1bf91c={'raw':![],'where':{'id':_0x5f1764['params']['id']},'include':[{'model':db['Pause'],'as':_0xfeed('0x34')}]},_0x484381={};_0x484381[_0xfeed('0x39')]=_['keys'](db['WhatsappAccount'][_0xfeed('0x4e')]);_0x484381[_0xfeed('0x3a')]=_['keys'](_0x5f1764[_0xfeed('0x3a')]);_0x484381['filters']=_[_0xfeed('0x3c')](_0x484381[_0xfeed('0x39')],_0x484381[_0xfeed('0x3a')]);_0x1bf91c[_0xfeed('0x3e')]=_[_0xfeed('0x3c')](_0x484381[_0xfeed('0x39')],qs['fields'](_0x5f1764[_0xfeed('0x3a')][_0xfeed('0x3d')]));_0x1bf91c[_0xfeed('0x3e')]=_0x1bf91c[_0xfeed('0x3e')][_0xfeed('0x3f')]?_0x1bf91c[_0xfeed('0x3e')]:_0x484381[_0xfeed('0x39')];if(_0x5f1764['query'][_0xfeed('0x48')]){_0x1bf91c[_0xfeed('0x49')]=[{'all':!![]}];}_0x1bf91c=_[_0xfeed('0x4f')]({},_0x1bf91c,_0x5f1764[_0xfeed('0x47')]);return db[_0xfeed('0x36')][_0xfeed('0x50')](_0x1bf91c)[_0xfeed('0x1a')](handleEntityNotFound(_0x16f833,null))[_0xfeed('0x1a')](respondWithResult(_0x16f833,null))[_0xfeed('0x4c')](handleError(_0x16f833,null));};exports['create']=function(_0x2bee40,_0x52b737){return db[_0xfeed('0x36')][_0xfeed('0x51')](_0x2bee40[_0xfeed('0x52')],{})[_0xfeed('0x1a')](function(_0x5bda66){var _0x398547=_0x2bee40[_0xfeed('0x53')]['get']({'plain':!![]});if(!_0x398547)throw new Error(_0xfeed('0x54'));if(_0x398547['role']===_0xfeed('0x53')){var _0xa56001=_0x5bda66['get']({'plain':!![]});var _0x879901=_0xfeed('0x2e');return db[_0xfeed('0x55')][_0xfeed('0x50')]({'where':{'name':_0x879901,'userProfileId':_0x398547[_0xfeed('0x56')]},'raw':!![]})[_0xfeed('0x1a')](function(_0x25372b){if(_0x25372b&&_0x25372b[_0xfeed('0x57')]===0x0){return db[_0xfeed('0x2f')]['create']({'name':_0xa56001[_0xfeed('0x30')],'resourceId':_0xa56001['id'],'type':_0x25372b['name'],'sectionId':_0x25372b['id']},{})[_0xfeed('0x1a')](function(){return _0x5bda66;});}else{return _0x5bda66;}})['catch'](function(_0x3ef6ac){logger[_0xfeed('0x20')](_0xfeed('0x58'),_0x3ef6ac);throw _0x3ef6ac;});}return _0x5bda66;})[_0xfeed('0x1a')](respondWithResult(_0x52b737,0xc9))[_0xfeed('0x4c')](handleError(_0x52b737,null));};exports[_0xfeed('0x59')]=function(_0x45ce83,_0xeac8de){if(_0x45ce83[_0xfeed('0x52')]['id']){delete _0x45ce83['body']['id'];}return db[_0xfeed('0x36')][_0xfeed('0x50')]({'where':{'id':_0x45ce83[_0xfeed('0x5a')]['id']},'include':[{'model':db[_0xfeed('0x33')],'as':_0xfeed('0x34')}]})[_0xfeed('0x1a')](handleEntityNotFound(_0xeac8de,null))[_0xfeed('0x1a')](saveUpdates(_0x45ce83['body'],null))[_0xfeed('0x1a')](respondWithResult(_0xeac8de,null))[_0xfeed('0x4c')](handleError(_0xeac8de,null));};exports['destroy']=function(_0x5a7e79,_0x1249e7){return db[_0xfeed('0x36')][_0xfeed('0x50')]({'where':{'id':_0x5a7e79[_0xfeed('0x5a')]['id']}})[_0xfeed('0x1a')](handleEntityNotFound(_0x1249e7,null))[_0xfeed('0x1a')](removeEntity(_0x1249e7,null))[_0xfeed('0x4c')](handleError(_0x1249e7,null));};exports[_0xfeed('0x5b')]=function(_0x14241f,_0x25dca5){return db['WhatsappAccount']['describe']()[_0xfeed('0x1a')](respondWithResult(_0x25dca5,null))[_0xfeed('0x4c')](handleError(_0x25dca5,null));};exports[_0xfeed('0x5c')]=function(_0x6d9d74,_0x53fbc6,_0x29853a){if(_0x6d9d74[_0xfeed('0x52')]['id']){delete _0x6d9d74[_0xfeed('0x52')]['id'];}return db[_0xfeed('0x36')][_0xfeed('0x50')]({'where':{'id':_0x6d9d74[_0xfeed('0x5a')]['id']}})[_0xfeed('0x1a')](handleEntityNotFound(_0x53fbc6,null))['then'](function(_0x15ced2){if(_0x15ced2){_0x6d9d74[_0xfeed('0x52')][_0xfeed('0x5d')]=_0x15ced2['id'];return db[_0xfeed('0x5e')]['create'](_0x6d9d74[_0xfeed('0x52')]);}})[_0xfeed('0x1a')](respondWithResult(_0x53fbc6,null))[_0xfeed('0x4c')](handleError(_0x53fbc6,null));};exports[_0xfeed('0x5f')]=function(_0x3864d3,_0x3a5170,_0x363e29){var _0xcf8b32={'raw':![],'where':{}};var _0x34fc74={};var _0x594232={'count':0x0,'rows':[]};return db[_0xfeed('0x36')]['findOne']({'where':{'id':_0x3864d3[_0xfeed('0x5a')]['id']}})[_0xfeed('0x1a')](handleEntityNotFound(_0x3a5170,null))[_0xfeed('0x1a')](function(_0x469591){if(_0x469591){_0x34fc74[_0xfeed('0x39')]=_['keys'](db[_0xfeed('0x5e')][_0xfeed('0x4e')]);_0x34fc74[_0xfeed('0x3a')]=_[_0xfeed('0x60')](_0x3864d3[_0xfeed('0x3a')]);_0x34fc74['filters']=_['intersection'](_0x34fc74[_0xfeed('0x39')],_0x34fc74['query']);_0xcf8b32[_0xfeed('0x3e')]=_[_0xfeed('0x3c')](_0x34fc74[_0xfeed('0x39')],qs[_0xfeed('0x3d')](_0x3864d3[_0xfeed('0x3a')][_0xfeed('0x3d')]));_0xcf8b32[_0xfeed('0x3e')]=_0xcf8b32[_0xfeed('0x3e')][_0xfeed('0x3f')]?_0xcf8b32['attributes']:_0x34fc74[_0xfeed('0x39')];if(!_0x3864d3['query']['hasOwnProperty'](_0xfeed('0x41'))){_0xcf8b32[_0xfeed('0x27')]=qs[_0xfeed('0x27')](_0x3864d3[_0xfeed('0x3a')][_0xfeed('0x27')]);_0xcf8b32['offset']=qs[_0xfeed('0x26')](_0x3864d3[_0xfeed('0x3a')]['offset']);}_0xcf8b32[_0xfeed('0x61')]=qs['sort'](_0x3864d3[_0xfeed('0x3a')][_0xfeed('0x42')]);_0xcf8b32[_0xfeed('0x43')]=qs[_0xfeed('0x3b')](_[_0xfeed('0x44')](_0x3864d3[_0xfeed('0x3a')],_0x34fc74[_0xfeed('0x3b')]));_0xcf8b32[_0xfeed('0x43')][_0xfeed('0x5d')]=_0x469591['id'];if(_0x3864d3[_0xfeed('0x3a')][_0xfeed('0x46')]){_0xcf8b32['where']=_[_0xfeed('0x4f')](_0xcf8b32[_0xfeed('0x43')],{'$or':_[_0xfeed('0x35')](_0xcf8b32[_0xfeed('0x3e')],function(_0xb532cf){var _0x3d828c={};_0x3d828c[_0xb532cf]={'$like':'%'+_0x3864d3[_0xfeed('0x3a')][_0xfeed('0x46')]+'%'};return _0x3d828c;})});}_0xcf8b32=_[_0xfeed('0x4f')]({},_0xcf8b32,_0x3864d3[_0xfeed('0x47')]);return db['Disposition'][_0xfeed('0x28')]({'where':_0xcf8b32['where']})[_0xfeed('0x1a')](function(_0x54456a){_0x594232[_0xfeed('0x28')]=_0x54456a;if(_0x3864d3[_0xfeed('0x3a')]['includeAll']){_0xcf8b32['include']=[{'all':!![]}];}return db['Disposition'][_0xfeed('0x4a')](_0xcf8b32);})[_0xfeed('0x1a')](function(_0x21ba78){_0x594232['rows']=_0x21ba78;return _0x594232;});}})[_0xfeed('0x1a')](respondWithFilteredResult(_0x3a5170,_0xcf8b32))[_0xfeed('0x4c')](handleError(_0x3a5170,null));};exports[_0xfeed('0x62')]=function(_0x54e960,_0x3291e3,_0x209432){return db[_0xfeed('0x36')][_0xfeed('0x50')]({'where':{'id':_0x54e960[_0xfeed('0x5a')]['id']}})[_0xfeed('0x1a')](handleEntityNotFound(_0x3291e3,null))[_0xfeed('0x1a')](function(_0x3e942b){if(_0x3e942b){return _0x3e942b[_0xfeed('0x62')](_0x54e960[_0xfeed('0x3a')][_0xfeed('0x63')]);}})[_0xfeed('0x1a')](respondWithStatusCode(_0x3291e3,null))[_0xfeed('0x4c')](handleError(_0x3291e3,null));};exports[_0xfeed('0x64')]=function(_0x15b54b,_0x2d3c1b,_0x11754d){if(_0x15b54b[_0xfeed('0x52')]['id']){delete _0x15b54b[_0xfeed('0x52')]['id'];}return db[_0xfeed('0x36')][_0xfeed('0x50')]({'where':{'id':_0x15b54b[_0xfeed('0x5a')]['id']}})[_0xfeed('0x1a')](handleEntityNotFound(_0x2d3c1b,null))[_0xfeed('0x1a')](function(_0x236c6a){if(_0x236c6a){_0x15b54b[_0xfeed('0x52')][_0xfeed('0x5d')]=_0x236c6a['id'];return db[_0xfeed('0x65')][_0xfeed('0x51')](_0x15b54b['body']);}})['then'](respondWithResult(_0x2d3c1b,null))[_0xfeed('0x4c')](handleError(_0x2d3c1b,null));};exports['getAnswers']=function(_0x2dc6d9,_0x5124d4,_0x46f9d9){var _0x171d80={'raw':![],'where':{}};var _0x42decd={};var _0x10f478={'count':0x0,'rows':[]};return db[_0xfeed('0x36')][_0xfeed('0x66')]({'where':{'id':_0x2dc6d9['params']['id']}})[_0xfeed('0x1a')](handleEntityNotFound(_0x5124d4,null))['then'](function(_0x2fac08){if(_0x2fac08){_0x42decd['model']=_[_0xfeed('0x60')](db[_0xfeed('0x65')][_0xfeed('0x4e')]);_0x42decd[_0xfeed('0x3a')]=_[_0xfeed('0x60')](_0x2dc6d9[_0xfeed('0x3a')]);_0x42decd[_0xfeed('0x3b')]=_[_0xfeed('0x3c')](_0x42decd[_0xfeed('0x39')],_0x42decd[_0xfeed('0x3a')]);_0x171d80[_0xfeed('0x3e')]=_[_0xfeed('0x3c')](_0x42decd[_0xfeed('0x39')],qs['fields'](_0x2dc6d9[_0xfeed('0x3a')][_0xfeed('0x3d')]));_0x171d80[_0xfeed('0x3e')]=_0x171d80[_0xfeed('0x3e')]['length']?_0x171d80[_0xfeed('0x3e')]:_0x42decd[_0xfeed('0x39')];if(!_0x2dc6d9[_0xfeed('0x3a')]['hasOwnProperty'](_0xfeed('0x41'))){_0x171d80['limit']=qs['limit'](_0x2dc6d9[_0xfeed('0x3a')][_0xfeed('0x27')]);_0x171d80[_0xfeed('0x26')]=qs[_0xfeed('0x26')](_0x2dc6d9[_0xfeed('0x3a')][_0xfeed('0x26')]);}_0x171d80['order']=qs[_0xfeed('0x42')](_0x2dc6d9[_0xfeed('0x3a')][_0xfeed('0x42')]);_0x171d80[_0xfeed('0x43')]=qs['filters'](_['pick'](_0x2dc6d9[_0xfeed('0x3a')],_0x42decd[_0xfeed('0x3b')]));_0x171d80[_0xfeed('0x43')][_0xfeed('0x5d')]=_0x2fac08['id'];if(_0x2dc6d9[_0xfeed('0x3a')][_0xfeed('0x46')]){_0x171d80['where']=_[_0xfeed('0x4f')](_0x171d80[_0xfeed('0x43')],{'$or':_['map'](_0x171d80[_0xfeed('0x3e')],function(_0x365367){var _0x2eefac={};_0x2eefac[_0x365367]={'$like':'%'+_0x2dc6d9['query'][_0xfeed('0x46')]+'%'};return _0x2eefac;})});}_0x171d80=_[_0xfeed('0x4f')]({},_0x171d80,_0x2dc6d9[_0xfeed('0x47')]);return db[_0xfeed('0x65')]['count']({'where':_0x171d80[_0xfeed('0x43')]})[_0xfeed('0x1a')](function(_0x13a445){_0x10f478[_0xfeed('0x28')]=_0x13a445;if(_0x2dc6d9[_0xfeed('0x3a')][_0xfeed('0x48')]){_0x171d80['include']=[{'all':!![]}];}return db['CannedAnswer'][_0xfeed('0x4a')](_0x171d80);})[_0xfeed('0x1a')](function(_0x3fbfe8){_0x10f478[_0xfeed('0x4b')]=_0x3fbfe8;return _0x10f478;});}})['then'](respondWithFilteredResult(_0x5124d4,_0x171d80))[_0xfeed('0x4c')](handleError(_0x5124d4,null));};exports['removeAnswers']=function(_0x4e24ac,_0x19a651,_0x377eac){return db[_0xfeed('0x36')]['find']({'where':{'id':_0x4e24ac[_0xfeed('0x5a')]['id']}})[_0xfeed('0x1a')](handleEntityNotFound(_0x19a651,null))[_0xfeed('0x1a')](function(_0x429353){if(_0x429353){return _0x429353[_0xfeed('0x67')](_0x4e24ac[_0xfeed('0x3a')]['ids']);}})[_0xfeed('0x1a')](respondWithStatusCode(_0x19a651,null))[_0xfeed('0x4c')](handleError(_0x19a651,null));};exports[_0xfeed('0x68')]=function(_0x3c4b2d,_0x20f6b4,_0x53f99f){return db[_0xfeed('0x36')][_0xfeed('0x50')]({'where':{'id':_0x3c4b2d[_0xfeed('0x5a')]['id']}})[_0xfeed('0x1a')](handleEntityNotFound(_0x20f6b4,null))['then'](function(_0x4998fc){if(_0x4998fc){return _0x4998fc['addAgents'](_0x3c4b2d['body'][_0xfeed('0x63')],_[_0xfeed('0x69')](_0x3c4b2d['body'],[_0xfeed('0x63'),'id'])||{})[_0xfeed('0x6a')](function(_0x650841){for(var _0x1fb617=0x0;_0x1fb617<_0x3c4b2d[_0xfeed('0x52')][_0xfeed('0x63')][_0xfeed('0x3f')];_0x1fb617+=0x1){socket[_0xfeed('0x6b')](_0xfeed('0x6c'),{'UserId':Number(_0x3c4b2d[_0xfeed('0x52')][_0xfeed('0x63')][_0x1fb617]),'WhatsappAccountId':Number(_0x3c4b2d[_0xfeed('0x5a')]['id'])});}return _0x650841;});}})[_0xfeed('0x1a')](respondWithResult(_0x20f6b4,null))[_0xfeed('0x4c')](handleError(_0x20f6b4,null));};exports['removeAgents']=function(_0x3d608b,_0x34719c,_0x1b798c){return db[_0xfeed('0x36')][_0xfeed('0x50')]({'where':{'id':_0x3d608b[_0xfeed('0x5a')]['id']}})['then'](handleEntityNotFound(_0x34719c,null))[_0xfeed('0x1a')](function(_0x1ef320){if(_0x1ef320){return _0x1ef320[_0xfeed('0x6d')](_0x3d608b[_0xfeed('0x3a')][_0xfeed('0x63')])['then'](function(){if(_[_0xfeed('0x6e')](_0x3d608b[_0xfeed('0x3a')]['ids'])){for(var _0x48a0d7=0x0;_0x48a0d7<_0x3d608b['query'][_0xfeed('0x63')]['length'];_0x48a0d7+=0x1){socket[_0xfeed('0x6b')]('userWhatsappAccount:remove',{'UserId':Number(_0x3d608b[_0xfeed('0x3a')][_0xfeed('0x63')][_0x48a0d7]),'WhatsappAccountId':Number(_0x3d608b[_0xfeed('0x5a')]['id'])});}}else{socket[_0xfeed('0x6b')](_0xfeed('0x6f'),{'UserId':Number(_0x3d608b['query'][_0xfeed('0x63')]),'WhatsappAccountId':Number(_0x3d608b[_0xfeed('0x5a')]['id'])});}});}})[_0xfeed('0x1a')](respondWithStatusCode(_0x34719c,null))['catch'](handleError(_0x34719c,null));};exports['getAgents']=function(_0x1a447c,_0x56bd8b,_0x489904){var _0x4c1cdc={};var _0x183251={};var _0x116496;var _0x2dc9df;return db[_0xfeed('0x36')][_0xfeed('0x66')]({'where':{'id':_0x1a447c[_0xfeed('0x5a')]['id']}})[_0xfeed('0x1a')](handleEntityNotFound(_0x56bd8b,null))[_0xfeed('0x1a')](function(_0x146c78){if(_0x146c78){_0x116496=_0x146c78;_0x183251[_0xfeed('0x39')]=_['keys'](db['User']['rawAttributes']);_0x183251[_0xfeed('0x3a')]=_[_0xfeed('0x60')](_0x1a447c[_0xfeed('0x3a')]);_0x183251[_0xfeed('0x3b')]=_[_0xfeed('0x3c')](_0x183251[_0xfeed('0x39')],_0x183251[_0xfeed('0x3a')]);_0x4c1cdc[_0xfeed('0x3e')]=_[_0xfeed('0x3c')](_0x183251[_0xfeed('0x39')],qs[_0xfeed('0x3d')](_0x1a447c[_0xfeed('0x3a')][_0xfeed('0x3d')]));_0x4c1cdc[_0xfeed('0x3e')]=_0x4c1cdc[_0xfeed('0x3e')][_0xfeed('0x3f')]?_0x4c1cdc['attributes']:_0x183251[_0xfeed('0x39')];_0x4c1cdc[_0xfeed('0x61')]=qs[_0xfeed('0x42')](_0x1a447c[_0xfeed('0x3a')]['sort']);_0x4c1cdc[_0xfeed('0x43')]=qs[_0xfeed('0x3b')](_[_0xfeed('0x44')](_0x1a447c[_0xfeed('0x3a')],_0x183251['filters']));if(_0x1a447c[_0xfeed('0x3a')]['filter']){_0x4c1cdc[_0xfeed('0x43')]=_[_0xfeed('0x4f')](_0x4c1cdc['where'],{'$or':_['map'](_0x4c1cdc['attributes'],function(_0x47981d){var _0x286ac1={};_0x286ac1[_0x47981d]={'$like':'%'+_0x1a447c[_0xfeed('0x3a')][_0xfeed('0x46')]+'%'};return _0x286ac1;})});}_0x4c1cdc=_['merge']({},_0x4c1cdc,_0x1a447c[_0xfeed('0x47')]);return _0x116496[_0xfeed('0x70')](_0x4c1cdc);}})[_0xfeed('0x1a')](function(_0x3b719e){if(_0x3b719e){_0x2dc9df=_0x3b719e[_0xfeed('0x3f')];if(!_0x1a447c['query']['hasOwnProperty'](_0xfeed('0x41'))){_0x4c1cdc['limit']=qs[_0xfeed('0x27')](_0x1a447c['query'][_0xfeed('0x27')]);_0x4c1cdc['offset']=qs[_0xfeed('0x26')](_0x1a447c[_0xfeed('0x3a')][_0xfeed('0x26')]);}return _0x116496[_0xfeed('0x70')](_0x4c1cdc);}})['then'](function(_0x49997f){if(_0x49997f){return _0x49997f?{'count':_0x2dc9df,'rows':_0x49997f}:null;}})[_0xfeed('0x1a')](respondWithResult(_0x56bd8b,null))[_0xfeed('0x4c')](handleError(_0x56bd8b,null));};exports['addApplications']=function(_0x1e45a9,_0x2503ea){var _0x1e24c0=_0x1e45a9[_0xfeed('0x5a')]['id'];var _0x24122c=_0x1e45a9['body'];var _0x415066=0xc8;var _0x223796=null;return db[_0xfeed('0x71')][_0xfeed('0x72')]({'isolationLevel':db['sequelize']['Transaction']['ISOLATION_LEVELS'][_0xfeed('0x73')]},function(_0x280514){return db[_0xfeed('0x36')][_0xfeed('0x66')]({'where':{'id':_0x1e24c0},'transaction':_0x280514})[_0xfeed('0x1a')](function(_0x59d24d){if(_0x59d24d){return db[_0xfeed('0x74')][_0xfeed('0x2c')]({'where':{'WhatsappAccountId':_0x1e24c0},'transaction':_0x280514})[_0xfeed('0x1a')](function(){var _0x45c094=_[_0xfeed('0x35')](_0x24122c,function(_0xd5500e){_0xd5500e['WhatsappAccountId']=_0x1e24c0;return _0xd5500e;});return db[_0xfeed('0x74')][_0xfeed('0x75')](_0x45c094,{'transaction':_0x280514});});}else{_0x415066=0x194;_0x223796=[];}});})['then'](function(){if(_0x415066!==0x194){return db[_0xfeed('0x74')][_0xfeed('0x76')]({'where':{'WhatsappAccountId':_0x1e24c0},'order':_0xfeed('0x77')})[_0xfeed('0x1a')](function(_0x73ebb3){_0x223796=_0x73ebb3;});}})[_0xfeed('0x4c')](function(_0x46a3d5){_0x415066=0x1f4;logger[_0xfeed('0x20')](_0x46a3d5['stack']);if(_0x46a3d5[_0xfeed('0x30')]){delete _0x46a3d5[_0xfeed('0x30')];}_0x223796=_0x46a3d5;})[_0xfeed('0x78')](function(){if(_0x223796===null){_0x2503ea['sendStatus'](_0x415066);}else{if(_0x415066===0x1f4){_0x2503ea['status'](_0x415066)[_0xfeed('0x31')](_0x223796);}else{_0x2503ea[_0xfeed('0x23')](_0x415066)['json'](_0x223796);}}});};exports['getApplications']=function(_0x3534a3,_0x4c0e20,_0x5e2a06){var _0x40d252={};var _0x1b847c={};var _0x434981;var _0x20f518;return db[_0xfeed('0x36')]['findOne']({'where':{'id':_0x3534a3['params']['id']}})[_0xfeed('0x1a')](handleEntityNotFound(_0x4c0e20,null))[_0xfeed('0x1a')](function(_0x240d59){if(_0x240d59){_0x434981=_0x240d59;_0x1b847c[_0xfeed('0x39')]=_[_0xfeed('0x60')](db[_0xfeed('0x74')][_0xfeed('0x4e')]);_0x1b847c[_0xfeed('0x3a')]=_[_0xfeed('0x60')](_0x3534a3[_0xfeed('0x3a')]);_0x1b847c[_0xfeed('0x3b')]=_[_0xfeed('0x3c')](_0x1b847c[_0xfeed('0x39')],_0x1b847c[_0xfeed('0x3a')]);_0x40d252['attributes']=_[_0xfeed('0x3c')](_0x1b847c['model'],qs[_0xfeed('0x3d')](_0x3534a3['query']['fields']));_0x40d252['attributes']=_0x40d252[_0xfeed('0x3e')][_0xfeed('0x3f')]?_0x40d252[_0xfeed('0x3e')]:_0x1b847c[_0xfeed('0x39')];_0x40d252[_0xfeed('0x61')]=qs['sort'](_0x3534a3[_0xfeed('0x3a')][_0xfeed('0x42')]);_0x40d252[_0xfeed('0x43')]=qs[_0xfeed('0x3b')](_[_0xfeed('0x44')](_0x3534a3[_0xfeed('0x3a')],_0x1b847c[_0xfeed('0x3b')]));if(_0x3534a3[_0xfeed('0x3a')][_0xfeed('0x46')]){_0x40d252[_0xfeed('0x43')]=_[_0xfeed('0x4f')](_0x40d252[_0xfeed('0x43')],{'$or':_[_0xfeed('0x35')](_0x40d252[_0xfeed('0x3e')],function(_0x39e32e){var _0x5c8ec8={};_0x5c8ec8[_0x39e32e]={'$like':'%'+_0x3534a3[_0xfeed('0x3a')][_0xfeed('0x46')]+'%'};return _0x5c8ec8;})});}_0x40d252=_['merge']({},_0x40d252,_0x3534a3[_0xfeed('0x47')]);return _0x434981[_0xfeed('0x79')](_0x40d252);}})['then'](function(_0x35d5b8){if(_0x35d5b8){_0x20f518=_0x35d5b8[_0xfeed('0x3f')];if(!_0x3534a3[_0xfeed('0x3a')][_0xfeed('0x40')]('nolimit')){_0x40d252[_0xfeed('0x27')]=qs[_0xfeed('0x27')](_0x3534a3[_0xfeed('0x3a')][_0xfeed('0x27')]);_0x40d252[_0xfeed('0x26')]=qs[_0xfeed('0x26')](_0x3534a3[_0xfeed('0x3a')]['offset']);}return _0x434981[_0xfeed('0x79')](_0x40d252);}})[_0xfeed('0x1a')](function(_0x362cf4){if(_0x362cf4){return _0x362cf4?{'count':_0x20f518,'rows':_0x362cf4}:null;}})[_0xfeed('0x1a')](respondWithResult(_0x4c0e20,null))[_0xfeed('0x4c')](handleError(_0x4c0e20,null));};exports['notify']=function(_0x5588f9,_0xf75718,_0x342859){var _0x2272cf={'channel':_0xfeed('0x7a')};var _0x523ec7=[];var _0x20bcb3=[];var _0x57bc48={};return db[_0xfeed('0x36')]['find']({'where':{'id':_0x5588f9[_0xfeed('0x5a')]['id']},'include':[{'model':db[_0xfeed('0x74')],'as':_0xfeed('0x7b')}]})[_0xfeed('0x1a')](handleEntityNotFound(_0xf75718,null))[_0xfeed('0x1a')](function(_0x58bbd6){_0x2272cf[_0xfeed('0x7c')]=_0x58bbd6;if(_0x2272cf[_0xfeed('0x7c')]&&_0x2272cf['account'][_0xfeed('0x45')]===_0xfeed('0x7d')&&_0x5588f9['body'][_0xfeed('0x7e')]){if(_0x5588f9[_0xfeed('0x52')][_0xfeed('0x7e')][_0xfeed('0x3f')]===0x0)return;if(_0x5588f9[_0xfeed('0x52')][_0xfeed('0x7e')][0x0][_0xfeed('0x7f')]!==_0xfeed('0x80'))return;return db[_0xfeed('0x81')][_0xfeed('0x59')]({'read':!![],'readAt':_0x5588f9['body']['statuses'][0x0]['timestamp']},{'where':{'messageId':_0x5588f9[_0xfeed('0x52')][_0xfeed('0x7e')][0x0][_0xfeed('0x82')]},'individualHooks':!![]})[_0xfeed('0x1a')](function(_0x4f834b){return _0xf75718['status'](0xc8)[_0xfeed('0x25')](_0x4f834b);});}_0x2272cf[_0xfeed('0x83')]=_[_0xfeed('0x84')](_0x58bbd6[_0xfeed('0x7b')],[_0xfeed('0x77')],['asc']);if(_0x2272cf[_0xfeed('0x7c')]['Applications']){delete _0x2272cf['account']['Applications'];}return db[_0xfeed('0x85')]['describe']()[_0xfeed('0x1a')](function(_0x3535d9){if(!_0x3535d9){throw new db[(_0xfeed('0x86'))][(_0xfeed('0x87'))](_0xfeed('0x88'));}_0x523ec7=_[_0xfeed('0x89')](_['keys'](_0x3535d9),[_0xfeed('0x8a'),_0xfeed('0x8b')]);_0x20bcb3=_[_0xfeed('0x89')](_[_0xfeed('0x60')](_0x3535d9),[_0xfeed('0x8a'),'updatedAt','CompanyId',_0xfeed('0x8c')]);_0x2272cf[_0xfeed('0x52')]={'mapKey':_0xfeed('0x8d')};if(_0x2272cf[_0xfeed('0x7c')]&&_0x2272cf[_0xfeed('0x7c')][_0xfeed('0x45')]===_0xfeed('0x8e')){_0x2272cf[_0xfeed('0x52')][_0xfeed('0x8f')]=_0x5588f9[_0xfeed('0x52')]['From']['replace'](_0xfeed('0x90'),'');_0x2272cf[_0xfeed('0x52')]['body']=_0x5588f9[_0xfeed('0x52')]['Body'];_0x2272cf[_0xfeed('0x52')][_0xfeed('0x91')]=_0x5588f9[_0xfeed('0x52')]['MessageSid'];}if(_0x2272cf[_0xfeed('0x7c')]&&_0x2272cf[_0xfeed('0x7c')][_0xfeed('0x45')]==='sinch'){_0x2272cf[_0xfeed('0x52')]['from']=_0x5588f9[_0xfeed('0x52')]['notifications'][0x0]['from'];_0x2272cf[_0xfeed('0x52')]['body']=_0x5588f9[_0xfeed('0x52')][_0xfeed('0x92')][0x0][_0xfeed('0x21')][_0xfeed('0x52')];_0x2272cf['body'][_0xfeed('0x91')]=_0x5588f9[_0xfeed('0x52')]['notifications'][0x0][_0xfeed('0x82')];}if(_0x2272cf[_0xfeed('0x52')]['id']){delete _0x2272cf[_0xfeed('0x52')]['id'];}if(_[_0xfeed('0x93')](_0x2272cf[_0xfeed('0x52')][_0xfeed('0x8f')])){throw new db[(_0xfeed('0x86'))][(_0xfeed('0x87'))](_0xfeed('0x94'));}if(_['isNil'](_0x2272cf[_0xfeed('0x52')][_0xfeed('0x52')])||_0x2272cf['body'][_0xfeed('0x52')]===''){throw new db[(_0xfeed('0x86'))][(_0xfeed('0x87'))](_0xfeed('0x95'));}if(_[_0xfeed('0x93')](_0x2272cf[_0xfeed('0x52')][_0xfeed('0x96')])){throw new db['Sequelize']['ValidationError'](_0xfeed('0x97')+_0x20bcb3);}if(!_[_0xfeed('0x98')](_0x20bcb3,_0x2272cf[_0xfeed('0x52')][_0xfeed('0x96')])){throw new db[(_0xfeed('0x86'))][(_0xfeed('0x87'))](_0xfeed('0x99')+_0x20bcb3);}_0x57bc48[_0x2272cf['body']['mapKey']]=_0x2272cf[_0xfeed('0x52')][_0xfeed('0x8f')];return db[_0xfeed('0x9a')][_0xfeed('0x50')]({'where':{'id':_0x2272cf[_0xfeed('0x7c')]['ListId']},'include':[{'model':db[_0xfeed('0x85')],'as':_0xfeed('0x9b'),'where':_0x57bc48,'limit':0x1,'order':[['updatedAt',_0xfeed('0x9c')]]}]});})[_0xfeed('0x1a')](handleEntityNotFound(_0xf75718,null))[_0xfeed('0x1a')](function(_0x1ea9e0){if(_0x1ea9e0){_0x2272cf['list']=_['omit'](_0x1ea9e0,[_0xfeed('0x9b')]);if(_0x1ea9e0[_0xfeed('0x9b')][_0xfeed('0x3f')]){return _0x1ea9e0[_0xfeed('0x9b')][0x0];}var _0x15c6a0=_[_0xfeed('0x9d')](_0x2272cf[_0xfeed('0x52')],{'firstName':_0x2272cf['body']['from'],'ListId':_0x1ea9e0['id']});_0x15c6a0[_0x2272cf[_0xfeed('0x52')][_0xfeed('0x96')]]=_0x2272cf['body'][_0xfeed('0x8f')];return db['CmContact'][_0xfeed('0x51')](_0x15c6a0,{'fields':_0x523ec7,'raw':!![]});}})[_0xfeed('0x1a')](handleEntityNotFound(_0xf75718,null))[_0xfeed('0x1a')](function(_0x215e2b){if(_0x215e2b){_0x2272cf[_0xfeed('0x9e')]=_0x215e2b;var _0x835206={'ContactId':_0x215e2b['id'],'phone':_0x2272cf[_0xfeed('0x52')]['from'],'WhatsappAccountId':_0x5588f9[_0xfeed('0x5a')]['id']};var _0x4d0039={'ContactId':_0x215e2b['id'],'WhatsappAccountId':_0x5588f9[_0xfeed('0x5a')]['id'],'closed':![]};return db[_0xfeed('0x9f')]['find']({'where':_0x4d0039})[_0xfeed('0x1a')](function(_0x1cbd26){if(_0x1cbd26){return[_0x1cbd26,![]];}return db[_0xfeed('0x9f')][_0xfeed('0x51')](_0x835206)[_0xfeed('0x1a')](function(_0x16a18c){return[_0x16a18c,!![]];});});}})[_0xfeed('0x6a')](function(_0x4f8764,_0x26e84d){_0x2272cf[_0xfeed('0xa0')]=_0x4f8764[_0xfeed('0x2d')]({'plain':!![]});_0x2272cf['interaction'][_0xfeed('0xa1')]=![];if(_0x26e84d){if(_0x2272cf[_0xfeed('0x7c')]['autoclose']){_0x2272cf[_0xfeed('0x83')][_0xfeed('0xa2')]({'id':0x0,'priority':_0x2272cf['applications']['length']+0x1,'app':_0xfeed('0xa3'),'appdata':_0xfeed('0xa4'),'interval':_0xfeed('0xa5')});}_0x2272cf[_0xfeed('0xa0')][_0xfeed('0xa1')]=!![];}return db[_0xfeed('0x81')]['create']({'phone':_0x2272cf[_0xfeed('0x52')][_0xfeed('0x8f')],'messageId':_0x2272cf['body'][_0xfeed('0x91')],'body':_0x2272cf[_0xfeed('0x52')]['body'],'WhatsappAccountId':_0x5588f9['params']['id'],'WhatsappInteractionId':_0x4f8764['id'],'direction':'in','ContactId':_0x4f8764[_0xfeed('0xa6')],'AttachmentId':_0x2272cf[_0xfeed('0x52')][_0xfeed('0xa7')]});})[_0xfeed('0x1a')](function(_0x44efd3){_0x2272cf['message']=_0x44efd3;if(_0x2272cf[_0xfeed('0xa0')][_0xfeed('0xa8')]){return db[_0xfeed('0xa9')][_0xfeed('0x50')]({'attributes':['id',_0xfeed('0x30')],'where':{'id':_0x2272cf[_0xfeed('0xa0')][_0xfeed('0xa8')]}})[_0xfeed('0x1a')](function(_0x449260){if(_0x449260){_0x2272cf[_0xfeed('0x83')][_0xfeed('0xaa')]({'id':0x0,'priority':0x0,'app':_0xfeed('0xab'),'appdata':_0x449260[_0xfeed('0x30')]+','+(_0x2272cf[_0xfeed('0x7c')][_0xfeed('0xac')]||0xa),'interval':_0xfeed('0xa5')});}return respondWithRpcPromise(_0xfeed('0xad'),'startRouting',_0x2272cf);});}return respondWithRpcPromise('Start','startRouting',_0x2272cf);})[_0xfeed('0x1a')](function(_0x11111c){if(_0x11111c){var _0xd49679=0xc8;var _0x4ff740=_0xfeed('0xae');logger[_0xfeed('0x1b')]('WhatsappAccount,\x20%s,\x20%s,\x20%s',_0x4ff740,_0xd49679,_0xfeed('0xaf'));logger[_0xfeed('0xb0')](_0xfeed('0xb1'),_0x4ff740,_0xd49679,_0xfeed('0xaf'),JSON['stringify'](_0x11111c));if(_0x2272cf['account'][_0xfeed('0x45')]==='twilio'){return _0xf75718[_0xfeed('0x23')](_0xd49679)[_0xfeed('0x29')](_0xfeed('0xb2'),_0xfeed('0xb3'))['send'](_0xfeed('0xb4'));}else{return _0xf75718[_0xfeed('0x23')](_0xd49679)[_0xfeed('0x25')](_0x11111c);}}});})[_0xfeed('0x4c')](handleError(_0xf75718,null));};exports[_0xfeed('0x31')]=function(_0x4d91ee,_0x2f4653,_0x215324){var _0x4cdc50,_0x4845de,_0x2de246;if(_[_0xfeed('0x93')](_0x4d91ee[_0xfeed('0x52')][_0xfeed('0x52')])||_0x4d91ee[_0xfeed('0x52')][_0xfeed('0x52')]===''){throw new db[(_0xfeed('0x86'))]['ValidationError'](_0xfeed('0x95'));}if(_[_0xfeed('0x93')](_0x4d91ee[_0xfeed('0x52')]['to'])){throw new db[(_0xfeed('0x86'))][(_0xfeed('0x87'))](_0xfeed('0xb5'));}_0x4cdc50=_0x4d91ee[_0xfeed('0x52')]['to'];return db['WhatsappAccount'][_0xfeed('0x50')]({'where':{'id':_0x4d91ee[_0xfeed('0x5a')]['id']},'include':[{'model':db[_0xfeed('0x9a')],'as':'List','include':[{'model':db['CmContact'],'as':'Contacts','where':{'mobile':_0x4cdc50},'limit':0x1,'order':[[_0xfeed('0x8b'),_0xfeed('0x9c')]]}]}]})[_0xfeed('0x1a')](handleEntityNotFound(_0x2f4653,null))[_0xfeed('0x1a')](function(_0x56d347){if(_0x56d347&&_0x56d347[_0xfeed('0xb6')]){_0x4845de=_0x56d347[_0xfeed('0x2d')]({'plain':!![]});if(_0x4845de['List']&&_0x4845de[_0xfeed('0xb6')]['Contacts'][_0xfeed('0x3f')]){return _0x4845de['List'][_0xfeed('0x9b')][0x0];}return db[_0xfeed('0x85')][_0xfeed('0x51')](_[_0xfeed('0x9d')](_0x4d91ee[_0xfeed('0x52')],{'firstName':_0x4cdc50,'mobile':_0x4cdc50,'phone':_0x4cdc50,'ListId':_0x4845de[_0xfeed('0x8c')]}));}})[_0xfeed('0x1a')](handleEntityNotFound(_0x2f4653,null))[_0xfeed('0x1a')](function(_0x39bad8){if(_0x39bad8){_0x2de246=_0x39bad8;return db[_0xfeed('0x9f')][_0xfeed('0x50')]({'where':{'ContactId':_0x2de246['id'],'closed':![],'WhatsappAccountId':_0x4845de['id']}})[_0xfeed('0x1a')](function(_0x4416a2){if(_0x4416a2){return[_0x4416a2,![]];}return db['WhatsappInteraction'][_0xfeed('0x51')]({'UserId':_0x4d91ee[_0xfeed('0x53')]['id'],'ContactId':_0x2de246['id'],'WhatsappAccountId':_0x4845de['id'],'phone':_0x4cdc50,'firstMsgDirection':_0xfeed('0xb7'),'Messages':[_['merge'](_0x4d91ee['body'],{'read':![],'body':_0x4d91ee['body'][_0xfeed('0x52')],'phone':_0x4cdc50,'WhatsappAccountId':_0x4845de['id'],'UserId':_0x4d91ee[_0xfeed('0x53')]['id'],'ContactId':_0x2de246['id']})]},{'include':[{'model':db[_0xfeed('0x81')],'as':_0xfeed('0xb8')}]})['then'](function(_0x51471f){return[_0x51471f,!![]];});});}})[_0xfeed('0x6a')](function(_0x10a783,_0x2455fd){if(_0x2455fd){return _0x10a783;}return db[_0xfeed('0x81')][_0xfeed('0x51')](_[_0xfeed('0x4f')](_0x4d91ee[_0xfeed('0x52')],{'read':![],'body':_0x4d91ee[_0xfeed('0x52')][_0xfeed('0x52')],'phone':_0x4cdc50,'WhatsappAccountId':_0x4845de['id'],'WhatsappInteractionId':_0x10a783['id'],'UserId':_0x4d91ee[_0xfeed('0x53')]['id'],'ContactId':_0x2de246['id']}))[_0xfeed('0x1a')](function(_0x26c71a){_0x10a783[_0xfeed('0xb9')]['Messages']=[];_0x10a783[_0xfeed('0xb9')][_0xfeed('0xb8')][_0xfeed('0xa2')](_0x26c71a[_0xfeed('0xb9')]);return _0x10a783;});})[_0xfeed('0x1a')](respondWithResult(_0x2f4653,null))[_0xfeed('0x4c')](handleError(_0x2f4653,null));};