156a7a5b5c4b6991c336f1173d1c593116a213dd
[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 _0xebd3=['queueId','WhatsappQueue','waitForTheAssignedQueue','Start','startRouting','receiveMessage','WhatsappAccount,\x20%s,\x20%s,\x20%s,\x20%s','entity\x20found','set','Content-Type','<?xml\x20version=\x221.0\x22\x20encoding=\x22UTF-8\x22?>\x0a<Response></Response>','to\x20is\x20mandatory','List','WhatsappInteraction','out','user','Messages','dataValues','eml-format','zip-dir','request-promise','moment','path','sox','to-csv','ejs','fs-extra','lodash','squel','crypto','jsforce','desk.js','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','api','../../config/environment','../../config/license/util','../../mysqldb','redis','defaults','localhost','socket.io-emitter','./whatsappAccount.socket','register','jayson/promise','request','then','info','WhatsappAccount,\x20%s,\x20%s,\x20%s','stringify','WhatsappAccount,\x20%s,\x20%s','error','message','request\x20sent','result','sendStatus','status','end','json','offset','undefined','limit','count','apply','reject','save','update','destroy','WhatsappAccounts','stack','name','send','mandatoryDispositionPause','WhatsappAccount','rawAttributes','fieldName','type','key','map','query','filters','intersection','model','attributes','fields','length','hasOwnProperty','nolimit','order','sort','pick','filter','where','merge','includeAll','include','findAll','rows','catch','show','params','keys','find','create','body','get','Unable\x20to\x20retrieve\x20the\x20current\x20user','UserProfileSection','userProfileId','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','Pause','describe','addDisposition','WhatsappAccountId','Disposition','getDispositions','findOne','removeDispositions','addAnswer','CannedAnswer','getAnswers','options','removeAnswers','ids','addAgents','omit','spread','emit','removeAgents','getAgents','User','addApplications','transaction','sequelize','Transaction','ISOLATION_LEVELS','READ_COMMITTED','WhatsappApplication','bulkCreate','priority','finally','getApplications','Applications','account','sinch','statuses','state','read','WhatsappMessage','timestamp','applications','orderBy','asc','CmContact','Sequelize','ValidationError','no\x20available\x20attributes','difference','createdAt','updatedAt','mobile','twilio','From','replace','whatsapp:','Body','MessageSid','from','notifications','messageId','isNil','from\x20is\x20mandatory','body\x20is\x20mandatory\x20and\x20not\x20empty','mapKey\x20is\x20mandatory,\x20please\x20use\x20one\x20of\x20these:\x20','mapKey','CmList','ListId','Contacts','DESC','list','contact','interaction','autoclose','push','created','ContactId','AttachmentId','UserId','unshift','*,*,*,*'];(function(_0x28c3a3,_0x1cc488){var _0x5772fa=function(_0xd5659d){while(--_0xd5659d){_0x28c3a3['push'](_0x28c3a3['shift']());}};_0x5772fa(++_0x1cc488);}(_0xebd3,0x194));var _0x3ebd=function(_0x19b84f,_0x48765e){_0x19b84f=_0x19b84f-0x0;var _0x18067b=_0xebd3[_0x19b84f];return _0x18067b;};'use strict';var emlformat=require(_0x3ebd('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x3ebd('0x1'));var jsonpatch=require('fast-json-patch');var rp=require(_0x3ebd('0x2'));var moment=require(_0x3ebd('0x3'));var BPromise=require('bluebird');var Mustache=require('mustache');var util=require('util');var path=require(_0x3ebd('0x4'));var sox=require(_0x3ebd('0x5'));var csv=require(_0x3ebd('0x6'));var ejs=require(_0x3ebd('0x7'));var fs=require('fs');var fs_extra=require(_0x3ebd('0x8'));var _=require(_0x3ebd('0x9'));var squel=require(_0x3ebd('0xa'));var crypto=require(_0x3ebd('0xb'));var jsforce=require(_0x3ebd('0xc'));var deskjs=require(_0x3ebd('0xd'));var toCsv=require('to-csv');var querystring=require(_0x3ebd('0xe'));var Papa=require('papaparse');var Redis=require(_0x3ebd('0xf'));var authService=require(_0x3ebd('0x10'));var qs=require(_0x3ebd('0x11'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x3ebd('0x12'));var logger=require('../../config/logger')(_0x3ebd('0x13'));var utils=require('../../config/utils');var config=require(_0x3ebd('0x14'));var licenseUtil=require(_0x3ebd('0x15'));var db=require(_0x3ebd('0x16'))['db'];config[_0x3ebd('0x17')]=_[_0x3ebd('0x18')](config['redis'],{'host':_0x3ebd('0x19'),'port':0x18eb});var socket=require(_0x3ebd('0x1a'))(new Redis(config['redis']));require(_0x3ebd('0x1b'))[_0x3ebd('0x1c')](socket);var jayson=require(_0x3ebd('0x1d'));var client=jayson['client']['http']({'port':0x232c});function respondWithRpcPromise(_0x3b6ced,_0x585ff7,_0x116f7b,_0x6e6291){return new BPromise(function(_0x2a0c2e,_0x32d9e8){var _0x3f6278=_0x6e6291||client;return _0x3f6278[_0x3ebd('0x1e')](_0x3b6ced,_0x116f7b)[_0x3ebd('0x1f')](function(_0x6c486a){logger[_0x3ebd('0x20')]('WhatsappAccount,\x20%s,\x20%s',_0x585ff7,'request\x20sent');logger['debug'](_0x3ebd('0x21'),_0x585ff7,'request\x20sent',JSON[_0x3ebd('0x22')](_0x6c486a));if(_0x6c486a['error']){if(_0x6c486a['error']['code']===0x1f4){logger['error'](_0x3ebd('0x23'),_0x585ff7,_0x6c486a[_0x3ebd('0x24')]['message']);return _0x32d9e8(_0x6c486a['error'][_0x3ebd('0x25')]);}logger[_0x3ebd('0x24')](_0x3ebd('0x23'),_0x585ff7,_0x6c486a['error'][_0x3ebd('0x25')]);return _0x2a0c2e(_0x6c486a[_0x3ebd('0x24')][_0x3ebd('0x25')]);}else{logger[_0x3ebd('0x20')]('WhatsappAccount,\x20%s,\x20%s',_0x585ff7,_0x3ebd('0x26'));_0x2a0c2e(_0x6c486a[_0x3ebd('0x27')]['message']);}})['catch'](function(_0x506748){logger['error'](_0x3ebd('0x23'),_0x585ff7,_0x506748);_0x32d9e8(_0x506748);});});}function respondWithStatusCode(_0x339c8b,_0x2b17d1){_0x2b17d1=_0x2b17d1||0xcc;return function(_0x45666b){if(_0x45666b){return _0x339c8b[_0x3ebd('0x28')](_0x2b17d1);}return _0x339c8b[_0x3ebd('0x29')](_0x2b17d1)[_0x3ebd('0x2a')]();};}function respondWithResult(_0x143ef1,_0x10855a){_0x10855a=_0x10855a||0xc8;return function(_0x1dbc38){if(_0x1dbc38){return _0x143ef1[_0x3ebd('0x29')](_0x10855a)[_0x3ebd('0x2b')](_0x1dbc38);}};}function respondWithFilteredResult(_0x4dcc51,_0x4af09b){return function(_0x29537a){if(_0x29537a){var _0x1f4e46=typeof _0x4af09b[_0x3ebd('0x2c')]===_0x3ebd('0x2d')&&typeof _0x4af09b[_0x3ebd('0x2e')]===_0x3ebd('0x2d');var _0x939846=_0x29537a[_0x3ebd('0x2f')];var _0x485b30=_0x1f4e46?0x0:_0x4af09b[_0x3ebd('0x2c')];var _0x5b807c=_0x1f4e46?_0x29537a[_0x3ebd('0x2f')]:_0x4af09b['offset']+_0x4af09b['limit'];var _0x533dd9;if(_0x5b807c>=_0x939846){_0x5b807c=_0x939846;_0x533dd9=0xc8;}else{_0x533dd9=0xce;}_0x4dcc51[_0x3ebd('0x29')](_0x533dd9);return _0x4dcc51['set']('Content-Range',_0x485b30+'-'+_0x5b807c+'/'+_0x939846)[_0x3ebd('0x2b')](_0x29537a);}return null;};}function patchUpdates(_0x48d9dd){return function(_0x127a3a){try{jsonpatch[_0x3ebd('0x30')](_0x127a3a,_0x48d9dd,!![]);}catch(_0x81af02){return BPromise[_0x3ebd('0x31')](_0x81af02);}return _0x127a3a[_0x3ebd('0x32')]();};}function saveUpdates(_0x4f060f,_0x4b6d9e){return function(_0xf8cee1){if(_0xf8cee1){return _0xf8cee1[_0x3ebd('0x33')](_0x4f060f)[_0x3ebd('0x1f')](function(_0xe9ed9a){return _0xe9ed9a;});}return null;};}function removeEntity(_0x2a4232,_0x2562cb){return function(_0x5bdf01){if(_0x5bdf01){return _0x5bdf01[_0x3ebd('0x34')]()[_0x3ebd('0x1f')](function(){var _0x250124=_0x5bdf01['get']({'plain':!![]});var _0xa63d0f=_0x3ebd('0x35');return db['UserProfileResource']['destroy']({'where':{'type':_0xa63d0f,'resourceId':_0x250124['id']}})[_0x3ebd('0x1f')](function(){return _0x5bdf01;});})[_0x3ebd('0x1f')](function(){_0x2a4232[_0x3ebd('0x29')](0xcc)[_0x3ebd('0x2a')]();});}};}function handleEntityNotFound(_0x4f9968,_0x3e5aae){return function(_0x1e7558){if(!_0x1e7558){_0x4f9968[_0x3ebd('0x28')](0x194);}return _0x1e7558;};}function handleError(_0x41c034,_0x5b43fb){_0x5b43fb=_0x5b43fb||0x1f4;return function(_0x585209){logger[_0x3ebd('0x24')](_0x585209[_0x3ebd('0x36')]);if(_0x585209[_0x3ebd('0x37')]){delete _0x585209[_0x3ebd('0x37')];}_0x41c034[_0x3ebd('0x29')](_0x5b43fb)[_0x3ebd('0x38')](_0x585209);};}exports['index']=function(_0x3bd7bf,_0x291817){var _0x275ce9={'include':[{'model':db['Pause'],'as':_0x3ebd('0x39')}]},_0x44c932={},_0x4c527d={'count':0x0,'rows':[]};var _0x59da81=_['map'](db[_0x3ebd('0x3a')][_0x3ebd('0x3b')],function(_0x30466a){return{'name':_0x30466a[_0x3ebd('0x3c')],'type':_0x30466a[_0x3ebd('0x3d')][_0x3ebd('0x3e')]};});_0x44c932['model']=_[_0x3ebd('0x3f')](_0x59da81,'name');_0x44c932['query']=_['keys'](_0x3bd7bf[_0x3ebd('0x40')]);_0x44c932[_0x3ebd('0x41')]=_[_0x3ebd('0x42')](_0x44c932[_0x3ebd('0x43')],_0x44c932['query']);_0x275ce9[_0x3ebd('0x44')]=_[_0x3ebd('0x42')](_0x44c932[_0x3ebd('0x43')],qs[_0x3ebd('0x45')](_0x3bd7bf['query']['fields']));_0x275ce9[_0x3ebd('0x44')]=_0x275ce9[_0x3ebd('0x44')][_0x3ebd('0x46')]?_0x275ce9['attributes']:_0x44c932[_0x3ebd('0x43')];if(!_0x3bd7bf[_0x3ebd('0x40')][_0x3ebd('0x47')](_0x3ebd('0x48'))){_0x275ce9[_0x3ebd('0x2e')]=qs[_0x3ebd('0x2e')](_0x3bd7bf[_0x3ebd('0x40')][_0x3ebd('0x2e')]);_0x275ce9[_0x3ebd('0x2c')]=qs['offset'](_0x3bd7bf[_0x3ebd('0x40')][_0x3ebd('0x2c')]);}_0x275ce9[_0x3ebd('0x49')]=qs[_0x3ebd('0x4a')](_0x3bd7bf[_0x3ebd('0x40')][_0x3ebd('0x4a')]);_0x275ce9['where']=qs['filters'](_[_0x3ebd('0x4b')](_0x3bd7bf['query'],_0x44c932['filters']),_0x59da81);if(_0x3bd7bf[_0x3ebd('0x40')][_0x3ebd('0x4c')]){_0x275ce9[_0x3ebd('0x4d')]=_[_0x3ebd('0x4e')](_0x275ce9['where'],{'$or':_[_0x3ebd('0x3f')](_0x59da81,function(_0x4aa47c){if(_0x4aa47c[_0x3ebd('0x3d')]!=='VIRTUAL'){var _0x488ceb={};_0x488ceb[_0x4aa47c[_0x3ebd('0x37')]]={'$like':'%'+_0x3bd7bf[_0x3ebd('0x40')]['filter']+'%'};return _0x488ceb;}})});}_0x275ce9=_['merge']({},_0x275ce9,_0x3bd7bf['options']);var _0x2eba50={'where':_0x275ce9['where']};return db[_0x3ebd('0x3a')]['count'](_0x2eba50)[_0x3ebd('0x1f')](function(_0x5e64df){_0x4c527d['count']=_0x5e64df;if(_0x3bd7bf['query'][_0x3ebd('0x4f')]){_0x275ce9[_0x3ebd('0x50')]=[{'all':!![]}];}return db[_0x3ebd('0x3a')][_0x3ebd('0x51')](_0x275ce9);})[_0x3ebd('0x1f')](function(_0x11c8ab){_0x4c527d[_0x3ebd('0x52')]=_0x11c8ab;return _0x4c527d;})[_0x3ebd('0x1f')](respondWithFilteredResult(_0x291817,_0x275ce9))[_0x3ebd('0x53')](handleError(_0x291817,null));};exports[_0x3ebd('0x54')]=function(_0x60e1b2,_0x22fc7f){var _0x433482={'raw':![],'where':{'id':_0x60e1b2[_0x3ebd('0x55')]['id']},'include':[{'model':db['Pause'],'as':_0x3ebd('0x39')}]},_0x2c5b94={};_0x2c5b94[_0x3ebd('0x43')]=_[_0x3ebd('0x56')](db['WhatsappAccount'][_0x3ebd('0x3b')]);_0x2c5b94['query']=_[_0x3ebd('0x56')](_0x60e1b2['query']);_0x2c5b94[_0x3ebd('0x41')]=_[_0x3ebd('0x42')](_0x2c5b94[_0x3ebd('0x43')],_0x2c5b94[_0x3ebd('0x40')]);_0x433482[_0x3ebd('0x44')]=_[_0x3ebd('0x42')](_0x2c5b94['model'],qs['fields'](_0x60e1b2[_0x3ebd('0x40')][_0x3ebd('0x45')]));_0x433482[_0x3ebd('0x44')]=_0x433482[_0x3ebd('0x44')][_0x3ebd('0x46')]?_0x433482[_0x3ebd('0x44')]:_0x2c5b94['model'];if(_0x60e1b2['query']['includeAll']){_0x433482[_0x3ebd('0x50')]=[{'all':!![]}];}_0x433482=_[_0x3ebd('0x4e')]({},_0x433482,_0x60e1b2['options']);return db[_0x3ebd('0x3a')][_0x3ebd('0x57')](_0x433482)[_0x3ebd('0x1f')](handleEntityNotFound(_0x22fc7f,null))[_0x3ebd('0x1f')](respondWithResult(_0x22fc7f,null))[_0x3ebd('0x53')](handleError(_0x22fc7f,null));};exports[_0x3ebd('0x58')]=function(_0x8fd21d,_0x1a093e){return db['WhatsappAccount']['create'](_0x8fd21d[_0x3ebd('0x59')],{})['then'](function(_0x234ca1){var _0xdc3dc2=_0x8fd21d['user'][_0x3ebd('0x5a')]({'plain':!![]});if(!_0xdc3dc2)throw new Error(_0x3ebd('0x5b'));if(_0xdc3dc2['role']==='user'){var _0x227c53=_0x234ca1[_0x3ebd('0x5a')]({'plain':!![]});var _0x77b409='WhatsappAccounts';return db[_0x3ebd('0x5c')]['find']({'where':{'name':_0x77b409,'userProfileId':_0xdc3dc2[_0x3ebd('0x5d')]},'raw':!![]})[_0x3ebd('0x1f')](function(_0x4d5007){if(_0x4d5007&&_0x4d5007['autoAssociation']===0x0){return db['UserProfileResource'][_0x3ebd('0x58')]({'name':_0x227c53['name'],'resourceId':_0x227c53['id'],'type':_0x4d5007['name'],'sectionId':_0x4d5007['id']},{})[_0x3ebd('0x1f')](function(){return _0x234ca1;});}else{return _0x234ca1;}})['catch'](function(_0x3be32f){logger[_0x3ebd('0x24')](_0x3ebd('0x5e'),_0x3be32f);throw _0x3be32f;});}return _0x234ca1;})['then'](respondWithResult(_0x1a093e,0xc9))['catch'](handleError(_0x1a093e,null));};exports[_0x3ebd('0x33')]=function(_0x3fd30e,_0x2925ea){if(_0x3fd30e[_0x3ebd('0x59')]['id']){delete _0x3fd30e[_0x3ebd('0x59')]['id'];}return db[_0x3ebd('0x3a')][_0x3ebd('0x57')]({'where':{'id':_0x3fd30e[_0x3ebd('0x55')]['id']},'include':[{'model':db[_0x3ebd('0x5f')],'as':_0x3ebd('0x39')}]})[_0x3ebd('0x1f')](handleEntityNotFound(_0x2925ea,null))[_0x3ebd('0x1f')](saveUpdates(_0x3fd30e[_0x3ebd('0x59')],null))['then'](respondWithResult(_0x2925ea,null))['catch'](handleError(_0x2925ea,null));};exports[_0x3ebd('0x34')]=function(_0x5e7790,_0x4dc3bd){return db[_0x3ebd('0x3a')][_0x3ebd('0x57')]({'where':{'id':_0x5e7790[_0x3ebd('0x55')]['id']}})[_0x3ebd('0x1f')](handleEntityNotFound(_0x4dc3bd,null))[_0x3ebd('0x1f')](removeEntity(_0x4dc3bd,null))[_0x3ebd('0x53')](handleError(_0x4dc3bd,null));};exports[_0x3ebd('0x60')]=function(_0x51dc82,_0x5c93c2){return db[_0x3ebd('0x3a')][_0x3ebd('0x60')]()[_0x3ebd('0x1f')](respondWithResult(_0x5c93c2,null))[_0x3ebd('0x53')](handleError(_0x5c93c2,null));};exports[_0x3ebd('0x61')]=function(_0x2c2f89,_0x2507e0,_0x75ddb3){if(_0x2c2f89[_0x3ebd('0x59')]['id']){delete _0x2c2f89[_0x3ebd('0x59')]['id'];}return db[_0x3ebd('0x3a')][_0x3ebd('0x57')]({'where':{'id':_0x2c2f89[_0x3ebd('0x55')]['id']}})[_0x3ebd('0x1f')](handleEntityNotFound(_0x2507e0,null))[_0x3ebd('0x1f')](function(_0x2c86b5){if(_0x2c86b5){_0x2c2f89[_0x3ebd('0x59')][_0x3ebd('0x62')]=_0x2c86b5['id'];return db[_0x3ebd('0x63')]['create'](_0x2c2f89[_0x3ebd('0x59')]);}})['then'](respondWithResult(_0x2507e0,null))[_0x3ebd('0x53')](handleError(_0x2507e0,null));};exports[_0x3ebd('0x64')]=function(_0x3046cb,_0x5767ac,_0x291c4b){var _0x3333be={'raw':![],'where':{}};var _0x35a336={};var _0x4f8d18={'count':0x0,'rows':[]};return db['WhatsappAccount'][_0x3ebd('0x65')]({'where':{'id':_0x3046cb[_0x3ebd('0x55')]['id']}})[_0x3ebd('0x1f')](handleEntityNotFound(_0x5767ac,null))[_0x3ebd('0x1f')](function(_0x1f9930){if(_0x1f9930){_0x35a336[_0x3ebd('0x43')]=_[_0x3ebd('0x56')](db[_0x3ebd('0x63')]['rawAttributes']);_0x35a336[_0x3ebd('0x40')]=_[_0x3ebd('0x56')](_0x3046cb['query']);_0x35a336[_0x3ebd('0x41')]=_[_0x3ebd('0x42')](_0x35a336[_0x3ebd('0x43')],_0x35a336[_0x3ebd('0x40')]);_0x3333be['attributes']=_[_0x3ebd('0x42')](_0x35a336[_0x3ebd('0x43')],qs[_0x3ebd('0x45')](_0x3046cb[_0x3ebd('0x40')][_0x3ebd('0x45')]));_0x3333be[_0x3ebd('0x44')]=_0x3333be[_0x3ebd('0x44')][_0x3ebd('0x46')]?_0x3333be['attributes']:_0x35a336[_0x3ebd('0x43')];if(!_0x3046cb[_0x3ebd('0x40')][_0x3ebd('0x47')](_0x3ebd('0x48'))){_0x3333be[_0x3ebd('0x2e')]=qs[_0x3ebd('0x2e')](_0x3046cb['query']['limit']);_0x3333be[_0x3ebd('0x2c')]=qs[_0x3ebd('0x2c')](_0x3046cb[_0x3ebd('0x40')][_0x3ebd('0x2c')]);}_0x3333be['order']=qs['sort'](_0x3046cb['query'][_0x3ebd('0x4a')]);_0x3333be[_0x3ebd('0x4d')]=qs[_0x3ebd('0x41')](_['pick'](_0x3046cb[_0x3ebd('0x40')],_0x35a336['filters']));_0x3333be[_0x3ebd('0x4d')]['WhatsappAccountId']=_0x1f9930['id'];if(_0x3046cb[_0x3ebd('0x40')]['filter']){_0x3333be[_0x3ebd('0x4d')]=_[_0x3ebd('0x4e')](_0x3333be[_0x3ebd('0x4d')],{'$or':_['map'](_0x3333be[_0x3ebd('0x44')],function(_0x1d71b4){var _0x299e4a={};_0x299e4a[_0x1d71b4]={'$like':'%'+_0x3046cb[_0x3ebd('0x40')][_0x3ebd('0x4c')]+'%'};return _0x299e4a;})});}_0x3333be=_[_0x3ebd('0x4e')]({},_0x3333be,_0x3046cb['options']);return db[_0x3ebd('0x63')][_0x3ebd('0x2f')]({'where':_0x3333be[_0x3ebd('0x4d')]})[_0x3ebd('0x1f')](function(_0x26508f){_0x4f8d18['count']=_0x26508f;if(_0x3046cb[_0x3ebd('0x40')][_0x3ebd('0x4f')]){_0x3333be[_0x3ebd('0x50')]=[{'all':!![]}];}return db['Disposition'][_0x3ebd('0x51')](_0x3333be);})[_0x3ebd('0x1f')](function(_0x2d1c5c){_0x4f8d18[_0x3ebd('0x52')]=_0x2d1c5c;return _0x4f8d18;});}})['then'](respondWithFilteredResult(_0x5767ac,_0x3333be))['catch'](handleError(_0x5767ac,null));};exports['removeDispositions']=function(_0x22b0cf,_0x35408c,_0x390bf9){return db[_0x3ebd('0x3a')][_0x3ebd('0x57')]({'where':{'id':_0x22b0cf[_0x3ebd('0x55')]['id']}})[_0x3ebd('0x1f')](handleEntityNotFound(_0x35408c,null))['then'](function(_0x2424f2){if(_0x2424f2){return _0x2424f2[_0x3ebd('0x66')](_0x22b0cf[_0x3ebd('0x40')]['ids']);}})[_0x3ebd('0x1f')](respondWithStatusCode(_0x35408c,null))[_0x3ebd('0x53')](handleError(_0x35408c,null));};exports[_0x3ebd('0x67')]=function(_0x3ba915,_0x112ebd,_0x477ff7){if(_0x3ba915['body']['id']){delete _0x3ba915[_0x3ebd('0x59')]['id'];}return db[_0x3ebd('0x3a')][_0x3ebd('0x57')]({'where':{'id':_0x3ba915[_0x3ebd('0x55')]['id']}})[_0x3ebd('0x1f')](handleEntityNotFound(_0x112ebd,null))[_0x3ebd('0x1f')](function(_0x22f723){if(_0x22f723){_0x3ba915[_0x3ebd('0x59')][_0x3ebd('0x62')]=_0x22f723['id'];return db[_0x3ebd('0x68')][_0x3ebd('0x58')](_0x3ba915['body']);}})[_0x3ebd('0x1f')](respondWithResult(_0x112ebd,null))[_0x3ebd('0x53')](handleError(_0x112ebd,null));};exports[_0x3ebd('0x69')]=function(_0x331fe8,_0x459f58,_0x5e015a){var _0x410ca9={'raw':![],'where':{}};var _0x3c7ed8={};var _0x1b170f={'count':0x0,'rows':[]};return db['WhatsappAccount'][_0x3ebd('0x65')]({'where':{'id':_0x331fe8[_0x3ebd('0x55')]['id']}})[_0x3ebd('0x1f')](handleEntityNotFound(_0x459f58,null))['then'](function(_0x281a77){if(_0x281a77){_0x3c7ed8['model']=_[_0x3ebd('0x56')](db['CannedAnswer']['rawAttributes']);_0x3c7ed8['query']=_[_0x3ebd('0x56')](_0x331fe8['query']);_0x3c7ed8['filters']=_[_0x3ebd('0x42')](_0x3c7ed8[_0x3ebd('0x43')],_0x3c7ed8[_0x3ebd('0x40')]);_0x410ca9[_0x3ebd('0x44')]=_[_0x3ebd('0x42')](_0x3c7ed8[_0x3ebd('0x43')],qs['fields'](_0x331fe8[_0x3ebd('0x40')]['fields']));_0x410ca9['attributes']=_0x410ca9[_0x3ebd('0x44')]['length']?_0x410ca9[_0x3ebd('0x44')]:_0x3c7ed8[_0x3ebd('0x43')];if(!_0x331fe8[_0x3ebd('0x40')][_0x3ebd('0x47')](_0x3ebd('0x48'))){_0x410ca9[_0x3ebd('0x2e')]=qs[_0x3ebd('0x2e')](_0x331fe8['query'][_0x3ebd('0x2e')]);_0x410ca9[_0x3ebd('0x2c')]=qs[_0x3ebd('0x2c')](_0x331fe8['query'][_0x3ebd('0x2c')]);}_0x410ca9[_0x3ebd('0x49')]=qs[_0x3ebd('0x4a')](_0x331fe8[_0x3ebd('0x40')][_0x3ebd('0x4a')]);_0x410ca9['where']=qs['filters'](_[_0x3ebd('0x4b')](_0x331fe8['query'],_0x3c7ed8[_0x3ebd('0x41')]));_0x410ca9[_0x3ebd('0x4d')][_0x3ebd('0x62')]=_0x281a77['id'];if(_0x331fe8['query']['filter']){_0x410ca9[_0x3ebd('0x4d')]=_[_0x3ebd('0x4e')](_0x410ca9[_0x3ebd('0x4d')],{'$or':_[_0x3ebd('0x3f')](_0x410ca9['attributes'],function(_0x1f8203){var _0x55c3ff={};_0x55c3ff[_0x1f8203]={'$like':'%'+_0x331fe8['query'][_0x3ebd('0x4c')]+'%'};return _0x55c3ff;})});}_0x410ca9=_[_0x3ebd('0x4e')]({},_0x410ca9,_0x331fe8[_0x3ebd('0x6a')]);return db[_0x3ebd('0x68')]['count']({'where':_0x410ca9[_0x3ebd('0x4d')]})[_0x3ebd('0x1f')](function(_0x405134){_0x1b170f[_0x3ebd('0x2f')]=_0x405134;if(_0x331fe8[_0x3ebd('0x40')][_0x3ebd('0x4f')]){_0x410ca9['include']=[{'all':!![]}];}return db[_0x3ebd('0x68')][_0x3ebd('0x51')](_0x410ca9);})[_0x3ebd('0x1f')](function(_0x38a55c){_0x1b170f[_0x3ebd('0x52')]=_0x38a55c;return _0x1b170f;});}})[_0x3ebd('0x1f')](respondWithFilteredResult(_0x459f58,_0x410ca9))[_0x3ebd('0x53')](handleError(_0x459f58,null));};exports[_0x3ebd('0x6b')]=function(_0x3bb679,_0x1ddce2,_0x4c8964){return db[_0x3ebd('0x3a')][_0x3ebd('0x57')]({'where':{'id':_0x3bb679[_0x3ebd('0x55')]['id']}})[_0x3ebd('0x1f')](handleEntityNotFound(_0x1ddce2,null))['then'](function(_0x4a1d18){if(_0x4a1d18){return _0x4a1d18[_0x3ebd('0x6b')](_0x3bb679['query'][_0x3ebd('0x6c')]);}})[_0x3ebd('0x1f')](respondWithStatusCode(_0x1ddce2,null))[_0x3ebd('0x53')](handleError(_0x1ddce2,null));};exports[_0x3ebd('0x6d')]=function(_0x5124e1,_0x13ac68,_0x202070){return db[_0x3ebd('0x3a')][_0x3ebd('0x57')]({'where':{'id':_0x5124e1[_0x3ebd('0x55')]['id']}})['then'](handleEntityNotFound(_0x13ac68,null))['then'](function(_0x264419){if(_0x264419){return _0x264419[_0x3ebd('0x6d')](_0x5124e1[_0x3ebd('0x59')][_0x3ebd('0x6c')],_[_0x3ebd('0x6e')](_0x5124e1[_0x3ebd('0x59')],['ids','id'])||{})[_0x3ebd('0x6f')](function(_0x44c006){for(var _0x512126=0x0;_0x512126<_0x5124e1['body'][_0x3ebd('0x6c')]['length'];_0x512126+=0x1){socket[_0x3ebd('0x70')]('userWhatsappAccount:save',{'UserId':Number(_0x5124e1[_0x3ebd('0x59')][_0x3ebd('0x6c')][_0x512126]),'WhatsappAccountId':Number(_0x5124e1['params']['id'])});}return _0x44c006;});}})[_0x3ebd('0x1f')](respondWithResult(_0x13ac68,null))[_0x3ebd('0x53')](handleError(_0x13ac68,null));};exports['removeAgents']=function(_0x4e2a3f,_0x255713,_0x11f704){return db[_0x3ebd('0x3a')][_0x3ebd('0x57')]({'where':{'id':_0x4e2a3f[_0x3ebd('0x55')]['id']}})['then'](handleEntityNotFound(_0x255713,null))[_0x3ebd('0x1f')](function(_0x4ef6f9){if(_0x4ef6f9){return _0x4ef6f9[_0x3ebd('0x71')](_0x4e2a3f[_0x3ebd('0x40')][_0x3ebd('0x6c')])[_0x3ebd('0x1f')](function(){if(_['isArray'](_0x4e2a3f[_0x3ebd('0x40')][_0x3ebd('0x6c')])){for(var _0x2e282f=0x0;_0x2e282f<_0x4e2a3f['query'][_0x3ebd('0x6c')][_0x3ebd('0x46')];_0x2e282f+=0x1){socket[_0x3ebd('0x70')]('userWhatsappAccount:remove',{'UserId':Number(_0x4e2a3f[_0x3ebd('0x40')][_0x3ebd('0x6c')][_0x2e282f]),'WhatsappAccountId':Number(_0x4e2a3f[_0x3ebd('0x55')]['id'])});}}else{socket[_0x3ebd('0x70')]('userWhatsappAccount:remove',{'UserId':Number(_0x4e2a3f[_0x3ebd('0x40')][_0x3ebd('0x6c')]),'WhatsappAccountId':Number(_0x4e2a3f[_0x3ebd('0x55')]['id'])});}});}})['then'](respondWithStatusCode(_0x255713,null))[_0x3ebd('0x53')](handleError(_0x255713,null));};exports[_0x3ebd('0x72')]=function(_0x15c4ad,_0x3ef2be,_0x37fd90){var _0x3009bc={};var _0x33b672={};var _0x5d96b1;var _0x49a16a;return db[_0x3ebd('0x3a')][_0x3ebd('0x65')]({'where':{'id':_0x15c4ad[_0x3ebd('0x55')]['id']}})[_0x3ebd('0x1f')](handleEntityNotFound(_0x3ef2be,null))[_0x3ebd('0x1f')](function(_0x3159f2){if(_0x3159f2){_0x5d96b1=_0x3159f2;_0x33b672['model']=_[_0x3ebd('0x56')](db[_0x3ebd('0x73')][_0x3ebd('0x3b')]);_0x33b672[_0x3ebd('0x40')]=_[_0x3ebd('0x56')](_0x15c4ad['query']);_0x33b672[_0x3ebd('0x41')]=_['intersection'](_0x33b672[_0x3ebd('0x43')],_0x33b672[_0x3ebd('0x40')]);_0x3009bc['attributes']=_[_0x3ebd('0x42')](_0x33b672[_0x3ebd('0x43')],qs['fields'](_0x15c4ad[_0x3ebd('0x40')][_0x3ebd('0x45')]));_0x3009bc[_0x3ebd('0x44')]=_0x3009bc[_0x3ebd('0x44')][_0x3ebd('0x46')]?_0x3009bc[_0x3ebd('0x44')]:_0x33b672['model'];_0x3009bc[_0x3ebd('0x49')]=qs['sort'](_0x15c4ad[_0x3ebd('0x40')][_0x3ebd('0x4a')]);_0x3009bc[_0x3ebd('0x4d')]=qs[_0x3ebd('0x41')](_[_0x3ebd('0x4b')](_0x15c4ad[_0x3ebd('0x40')],_0x33b672['filters']));if(_0x15c4ad[_0x3ebd('0x40')]['filter']){_0x3009bc[_0x3ebd('0x4d')]=_[_0x3ebd('0x4e')](_0x3009bc[_0x3ebd('0x4d')],{'$or':_[_0x3ebd('0x3f')](_0x3009bc[_0x3ebd('0x44')],function(_0x323b92){var _0xc3c0be={};_0xc3c0be[_0x323b92]={'$like':'%'+_0x15c4ad[_0x3ebd('0x40')][_0x3ebd('0x4c')]+'%'};return _0xc3c0be;})});}_0x3009bc=_[_0x3ebd('0x4e')]({},_0x3009bc,_0x15c4ad[_0x3ebd('0x6a')]);return _0x5d96b1[_0x3ebd('0x72')](_0x3009bc);}})[_0x3ebd('0x1f')](function(_0x1319f6){if(_0x1319f6){_0x49a16a=_0x1319f6[_0x3ebd('0x46')];if(!_0x15c4ad[_0x3ebd('0x40')]['hasOwnProperty'](_0x3ebd('0x48'))){_0x3009bc['limit']=qs[_0x3ebd('0x2e')](_0x15c4ad[_0x3ebd('0x40')][_0x3ebd('0x2e')]);_0x3009bc[_0x3ebd('0x2c')]=qs[_0x3ebd('0x2c')](_0x15c4ad[_0x3ebd('0x40')][_0x3ebd('0x2c')]);}return _0x5d96b1[_0x3ebd('0x72')](_0x3009bc);}})[_0x3ebd('0x1f')](function(_0x1e7b79){if(_0x1e7b79){return _0x1e7b79?{'count':_0x49a16a,'rows':_0x1e7b79}:null;}})[_0x3ebd('0x1f')](respondWithResult(_0x3ef2be,null))[_0x3ebd('0x53')](handleError(_0x3ef2be,null));};exports[_0x3ebd('0x74')]=function(_0x27910c,_0x2ed078){var _0xab144b=_0x27910c[_0x3ebd('0x55')]['id'];var _0x103d78=_0x27910c['body'];var _0x359074=0xc8;var _0x24c374=null;return db['sequelize'][_0x3ebd('0x75')]({'isolationLevel':db[_0x3ebd('0x76')][_0x3ebd('0x77')][_0x3ebd('0x78')][_0x3ebd('0x79')]},function(_0x2fc75a){return db[_0x3ebd('0x3a')]['findOne']({'where':{'id':_0xab144b},'transaction':_0x2fc75a})[_0x3ebd('0x1f')](function(_0x458c73){if(_0x458c73){return db[_0x3ebd('0x7a')][_0x3ebd('0x34')]({'where':{'WhatsappAccountId':_0xab144b},'transaction':_0x2fc75a})['then'](function(){var _0x5276b8=_[_0x3ebd('0x3f')](_0x103d78,function(_0x2e27a9){_0x2e27a9[_0x3ebd('0x62')]=_0xab144b;return _0x2e27a9;});return db[_0x3ebd('0x7a')][_0x3ebd('0x7b')](_0x5276b8,{'transaction':_0x2fc75a});});}else{_0x359074=0x194;_0x24c374=[];}});})[_0x3ebd('0x1f')](function(){if(_0x359074!==0x194){return db[_0x3ebd('0x7a')]['findAndCountAll']({'where':{'WhatsappAccountId':_0xab144b},'order':_0x3ebd('0x7c')})[_0x3ebd('0x1f')](function(_0x2068c9){_0x24c374=_0x2068c9;});}})[_0x3ebd('0x53')](function(_0x4a0c50){_0x359074=0x1f4;logger[_0x3ebd('0x24')](_0x4a0c50[_0x3ebd('0x36')]);if(_0x4a0c50[_0x3ebd('0x37')]){delete _0x4a0c50['name'];}_0x24c374=_0x4a0c50;})[_0x3ebd('0x7d')](function(){if(_0x24c374===null){_0x2ed078[_0x3ebd('0x28')](_0x359074);}else{if(_0x359074===0x1f4){_0x2ed078[_0x3ebd('0x29')](_0x359074)[_0x3ebd('0x38')](_0x24c374);}else{_0x2ed078[_0x3ebd('0x29')](_0x359074)['json'](_0x24c374);}}});};exports[_0x3ebd('0x7e')]=function(_0x115c4d,_0x391140,_0x299771){var _0x1cd22d={};var _0x24d7b8={};var _0x325e42;var _0x3f093e;return db['WhatsappAccount'][_0x3ebd('0x65')]({'where':{'id':_0x115c4d[_0x3ebd('0x55')]['id']}})[_0x3ebd('0x1f')](handleEntityNotFound(_0x391140,null))[_0x3ebd('0x1f')](function(_0x272042){if(_0x272042){_0x325e42=_0x272042;_0x24d7b8['model']=_['keys'](db[_0x3ebd('0x7a')][_0x3ebd('0x3b')]);_0x24d7b8[_0x3ebd('0x40')]=_[_0x3ebd('0x56')](_0x115c4d[_0x3ebd('0x40')]);_0x24d7b8[_0x3ebd('0x41')]=_[_0x3ebd('0x42')](_0x24d7b8[_0x3ebd('0x43')],_0x24d7b8[_0x3ebd('0x40')]);_0x1cd22d['attributes']=_[_0x3ebd('0x42')](_0x24d7b8[_0x3ebd('0x43')],qs['fields'](_0x115c4d[_0x3ebd('0x40')]['fields']));_0x1cd22d[_0x3ebd('0x44')]=_0x1cd22d['attributes']['length']?_0x1cd22d['attributes']:_0x24d7b8[_0x3ebd('0x43')];_0x1cd22d[_0x3ebd('0x49')]=qs[_0x3ebd('0x4a')](_0x115c4d[_0x3ebd('0x40')]['sort']);_0x1cd22d['where']=qs[_0x3ebd('0x41')](_[_0x3ebd('0x4b')](_0x115c4d[_0x3ebd('0x40')],_0x24d7b8['filters']));if(_0x115c4d[_0x3ebd('0x40')][_0x3ebd('0x4c')]){_0x1cd22d[_0x3ebd('0x4d')]=_[_0x3ebd('0x4e')](_0x1cd22d[_0x3ebd('0x4d')],{'$or':_[_0x3ebd('0x3f')](_0x1cd22d[_0x3ebd('0x44')],function(_0x40e3e0){var _0x3a509b={};_0x3a509b[_0x40e3e0]={'$like':'%'+_0x115c4d[_0x3ebd('0x40')][_0x3ebd('0x4c')]+'%'};return _0x3a509b;})});}_0x1cd22d=_[_0x3ebd('0x4e')]({},_0x1cd22d,_0x115c4d[_0x3ebd('0x6a')]);return _0x325e42[_0x3ebd('0x7e')](_0x1cd22d);}})[_0x3ebd('0x1f')](function(_0x264aef){if(_0x264aef){_0x3f093e=_0x264aef['length'];if(!_0x115c4d[_0x3ebd('0x40')]['hasOwnProperty'](_0x3ebd('0x48'))){_0x1cd22d[_0x3ebd('0x2e')]=qs[_0x3ebd('0x2e')](_0x115c4d[_0x3ebd('0x40')][_0x3ebd('0x2e')]);_0x1cd22d[_0x3ebd('0x2c')]=qs['offset'](_0x115c4d[_0x3ebd('0x40')][_0x3ebd('0x2c')]);}return _0x325e42[_0x3ebd('0x7e')](_0x1cd22d);}})[_0x3ebd('0x1f')](function(_0x11b557){if(_0x11b557){return _0x11b557?{'count':_0x3f093e,'rows':_0x11b557}:null;}})[_0x3ebd('0x1f')](respondWithResult(_0x391140,null))['catch'](handleError(_0x391140,null));};exports['notify']=function(_0x567fff,_0x4fee03,_0x56c283){var _0x15c27b={'channel':'whatsapp'};var _0x46ae06=[];var _0x4d7469=[];var _0x323128={};return db[_0x3ebd('0x3a')][_0x3ebd('0x57')]({'where':{'id':_0x567fff[_0x3ebd('0x55')]['id']},'include':[{'model':db['WhatsappApplication'],'as':_0x3ebd('0x7f')}]})[_0x3ebd('0x1f')](handleEntityNotFound(_0x4fee03,null))[_0x3ebd('0x1f')](function(_0x5bd9ce){_0x15c27b[_0x3ebd('0x80')]=_0x5bd9ce;if(_0x15c27b[_0x3ebd('0x80')]&&_0x15c27b[_0x3ebd('0x80')][_0x3ebd('0x3d')]===_0x3ebd('0x81')&&_0x567fff[_0x3ebd('0x59')][_0x3ebd('0x82')]){if(_0x567fff[_0x3ebd('0x59')][_0x3ebd('0x82')][_0x3ebd('0x46')]===0x0)return;if(_0x567fff[_0x3ebd('0x59')][_0x3ebd('0x82')][0x0][_0x3ebd('0x83')]!==_0x3ebd('0x84'))return;return db[_0x3ebd('0x85')][_0x3ebd('0x33')]({'read':!![],'readAt':_0x567fff[_0x3ebd('0x59')][_0x3ebd('0x82')][0x0][_0x3ebd('0x86')]},{'where':{'messageId':_0x567fff['body'][_0x3ebd('0x82')][0x0]['message_id']},'individualHooks':!![]})[_0x3ebd('0x1f')](function(_0x2e056b){return _0x4fee03['status'](0xc8)[_0x3ebd('0x2b')](_0x2e056b);});}_0x15c27b[_0x3ebd('0x87')]=_[_0x3ebd('0x88')](_0x5bd9ce[_0x3ebd('0x7f')],[_0x3ebd('0x7c')],[_0x3ebd('0x89')]);if(_0x15c27b[_0x3ebd('0x80')]['Applications']){delete _0x15c27b[_0x3ebd('0x80')][_0x3ebd('0x7f')];}return db[_0x3ebd('0x8a')][_0x3ebd('0x60')]()[_0x3ebd('0x1f')](function(_0x50cd05){if(!_0x50cd05){throw new db[(_0x3ebd('0x8b'))][(_0x3ebd('0x8c'))](_0x3ebd('0x8d'));}_0x46ae06=_[_0x3ebd('0x8e')](_['keys'](_0x50cd05),[_0x3ebd('0x8f'),_0x3ebd('0x90')]);_0x4d7469=_['difference'](_[_0x3ebd('0x56')](_0x50cd05),[_0x3ebd('0x8f'),_0x3ebd('0x90'),'CompanyId','ListId']);_0x15c27b['body']={'mapKey':_0x3ebd('0x91')};if(_0x15c27b['account']&&_0x15c27b[_0x3ebd('0x80')][_0x3ebd('0x3d')]===_0x3ebd('0x92')){_0x15c27b[_0x3ebd('0x59')]['from']=_0x567fff[_0x3ebd('0x59')][_0x3ebd('0x93')][_0x3ebd('0x94')](_0x3ebd('0x95'),'');_0x15c27b[_0x3ebd('0x59')][_0x3ebd('0x59')]=_0x567fff[_0x3ebd('0x59')][_0x3ebd('0x96')];_0x15c27b[_0x3ebd('0x59')]['messageId']=_0x567fff['body'][_0x3ebd('0x97')];}if(_0x15c27b[_0x3ebd('0x80')]&&_0x15c27b[_0x3ebd('0x80')][_0x3ebd('0x3d')]===_0x3ebd('0x81')){_0x15c27b['body'][_0x3ebd('0x98')]=_0x567fff[_0x3ebd('0x59')][_0x3ebd('0x99')][0x0][_0x3ebd('0x98')];_0x15c27b[_0x3ebd('0x59')][_0x3ebd('0x59')]=_0x567fff['body'][_0x3ebd('0x99')][0x0][_0x3ebd('0x25')][_0x3ebd('0x59')];_0x15c27b[_0x3ebd('0x59')][_0x3ebd('0x9a')]=_0x567fff[_0x3ebd('0x59')][_0x3ebd('0x99')][0x0]['message_id'];}if(_0x15c27b['body']['id']){delete _0x15c27b['body']['id'];}if(_[_0x3ebd('0x9b')](_0x15c27b[_0x3ebd('0x59')][_0x3ebd('0x98')])){throw new db[(_0x3ebd('0x8b'))][(_0x3ebd('0x8c'))](_0x3ebd('0x9c'));}if(_['isNil'](_0x15c27b[_0x3ebd('0x59')]['body'])||_0x15c27b[_0x3ebd('0x59')]['body']===''){throw new db[(_0x3ebd('0x8b'))][(_0x3ebd('0x8c'))](_0x3ebd('0x9d'));}if(_[_0x3ebd('0x9b')](_0x15c27b[_0x3ebd('0x59')]['mapKey'])){throw new db[(_0x3ebd('0x8b'))][(_0x3ebd('0x8c'))](_0x3ebd('0x9e')+_0x4d7469);}if(!_['includes'](_0x4d7469,_0x15c27b[_0x3ebd('0x59')][_0x3ebd('0x9f')])){throw new db[(_0x3ebd('0x8b'))][(_0x3ebd('0x8c'))]('mapKey\x20invalid,\x20please\x20use\x20one\x20of\x20these:\x20'+_0x4d7469);}_0x323128[_0x15c27b[_0x3ebd('0x59')][_0x3ebd('0x9f')]]=_0x15c27b[_0x3ebd('0x59')]['from'];return db[_0x3ebd('0xa0')][_0x3ebd('0x57')]({'where':{'id':_0x15c27b[_0x3ebd('0x80')][_0x3ebd('0xa1')]},'include':[{'model':db[_0x3ebd('0x8a')],'as':_0x3ebd('0xa2'),'where':_0x323128,'limit':0x1,'order':[[_0x3ebd('0x90'),_0x3ebd('0xa3')]]}]});})[_0x3ebd('0x1f')](handleEntityNotFound(_0x4fee03,null))[_0x3ebd('0x1f')](function(_0x26e4ff){if(_0x26e4ff){_0x15c27b[_0x3ebd('0xa4')]=_[_0x3ebd('0x6e')](_0x26e4ff,[_0x3ebd('0xa2')]);if(_0x26e4ff[_0x3ebd('0xa2')][_0x3ebd('0x46')]){return _0x26e4ff[_0x3ebd('0xa2')][0x0];}var _0x139de9=_[_0x3ebd('0x18')](_0x15c27b[_0x3ebd('0x59')],{'firstName':_0x15c27b['body'][_0x3ebd('0x98')],'ListId':_0x26e4ff['id']});_0x139de9[_0x15c27b['body'][_0x3ebd('0x9f')]]=_0x15c27b['body']['from'];return db['CmContact']['create'](_0x139de9,{'fields':_0x46ae06,'raw':!![]});}})['then'](handleEntityNotFound(_0x4fee03,null))[_0x3ebd('0x1f')](function(_0x45c510){if(_0x45c510){_0x15c27b[_0x3ebd('0xa5')]=_0x45c510;var _0x5a0c9c={'ContactId':_0x45c510['id'],'phone':_0x15c27b[_0x3ebd('0x59')][_0x3ebd('0x98')],'WhatsappAccountId':_0x567fff[_0x3ebd('0x55')]['id']};var _0x2cb838={'ContactId':_0x45c510['id'],'WhatsappAccountId':_0x567fff[_0x3ebd('0x55')]['id'],'closed':![]};return db['WhatsappInteraction'][_0x3ebd('0x57')]({'where':_0x2cb838})[_0x3ebd('0x1f')](function(_0x563399){if(_0x563399){return[_0x563399,![]];}return db['WhatsappInteraction'][_0x3ebd('0x58')](_0x5a0c9c)[_0x3ebd('0x1f')](function(_0xe156fe){return[_0xe156fe,!![]];});});}})['spread'](function(_0x431a40,_0x1e196c){_0x15c27b[_0x3ebd('0xa6')]=_0x431a40[_0x3ebd('0x5a')]({'plain':!![]});_0x15c27b['interaction']['created']=![];if(_0x1e196c){if(_0x15c27b[_0x3ebd('0x80')][_0x3ebd('0xa7')]){_0x15c27b['applications'][_0x3ebd('0xa8')]({'id':0x0,'priority':_0x15c27b['applications'][_0x3ebd('0x46')]+0x1,'app':'close','appdata':'unmanaged','interval':'*,*,*,*'});}_0x15c27b[_0x3ebd('0xa6')][_0x3ebd('0xa9')]=!![];}return db[_0x3ebd('0x85')][_0x3ebd('0x58')]({'phone':_0x15c27b[_0x3ebd('0x59')]['from'],'messageId':_0x15c27b[_0x3ebd('0x59')][_0x3ebd('0x9a')],'body':_0x15c27b[_0x3ebd('0x59')][_0x3ebd('0x59')],'WhatsappAccountId':_0x567fff[_0x3ebd('0x55')]['id'],'WhatsappInteractionId':_0x431a40['id'],'direction':'in','ContactId':_0x431a40[_0x3ebd('0xaa')],'AttachmentId':_0x15c27b[_0x3ebd('0x59')][_0x3ebd('0xab')]});})[_0x3ebd('0x1f')](function(_0x47e17e){_0x15c27b[_0x3ebd('0x25')]=_0x47e17e;if(!_0x15c27b[_0x3ebd('0xa6')][_0x3ebd('0xac')])return;return db[_0x3ebd('0x73')][_0x3ebd('0x57')]({'attributes':['id',_0x3ebd('0x37')],'where':{'id':_0x15c27b[_0x3ebd('0xa6')][_0x3ebd('0xac')]}});})[_0x3ebd('0x1f')](function(_0xa7b12f){if(_0xa7b12f){_0x15c27b['applications'][_0x3ebd('0xad')]({'id':0x0,'priority':0x0,'app':'agent','appdata':_0xa7b12f[_0x3ebd('0x37')]+','+(_0x15c27b[_0x3ebd('0x80')]['waitForTheAssignedAgent']||0xa),'interval':_0x3ebd('0xae')});}if(!_0x15c27b[_0x3ebd('0xa6')][_0x3ebd('0xaf')])return;return db[_0x3ebd('0xb0')][_0x3ebd('0x57')]({'attributes':['id',_0x3ebd('0x37')],'where':{'id':_0x15c27b[_0x3ebd('0xa6')]['queueId']}});})[_0x3ebd('0x1f')](function(_0x3b15d3){if(_0x3b15d3){_0x15c27b[_0x3ebd('0x87')][_0x3ebd('0xad')]({'id':0x0,'priority':0x1,'app':'queue','appdata':_0x3b15d3['name']+','+(_0x15c27b[_0x3ebd('0x80')][_0x3ebd('0xb1')]||0x12c),'interval':_0x3ebd('0xae')});}return respondWithRpcPromise(_0x3ebd('0xb2'),_0x3ebd('0xb3'),_0x15c27b);})[_0x3ebd('0x1f')](function(_0xc43cce){if(_0xc43cce){var _0x3ac31c=0xc8;var _0x25e440=_0x3ebd('0xb4');logger[_0x3ebd('0x20')](_0x3ebd('0x21'),_0x25e440,_0x3ac31c,'entity\x20found');logger['debug'](_0x3ebd('0xb5'),_0x25e440,_0x3ac31c,_0x3ebd('0xb6'),JSON[_0x3ebd('0x22')](_0xc43cce));if(_0x15c27b[_0x3ebd('0x80')][_0x3ebd('0x3d')]==='twilio'){return _0x4fee03['status'](_0x3ac31c)[_0x3ebd('0xb7')](_0x3ebd('0xb8'),'text/xml')[_0x3ebd('0x38')](_0x3ebd('0xb9'));}else{return _0x4fee03[_0x3ebd('0x29')](_0x3ac31c)[_0x3ebd('0x2b')](_0xc43cce);}}});})['catch'](handleError(_0x4fee03,null));};exports[_0x3ebd('0x38')]=function(_0x203411,_0x42cfec,_0x24aac2){var _0x4ec4a1,_0xd5b9e6,_0x10f713;if(_[_0x3ebd('0x9b')](_0x203411['body'][_0x3ebd('0x59')])||_0x203411[_0x3ebd('0x59')]['body']===''){throw new db[(_0x3ebd('0x8b'))][(_0x3ebd('0x8c'))](_0x3ebd('0x9d'));}if(_[_0x3ebd('0x9b')](_0x203411['body']['to'])){throw new db['Sequelize'][(_0x3ebd('0x8c'))](_0x3ebd('0xba'));}_0x4ec4a1=_0x203411[_0x3ebd('0x59')]['to'];return db['WhatsappAccount'][_0x3ebd('0x57')]({'where':{'id':_0x203411['params']['id']},'include':[{'model':db[_0x3ebd('0xa0')],'as':'List','include':[{'model':db[_0x3ebd('0x8a')],'as':_0x3ebd('0xa2'),'where':{'mobile':_0x4ec4a1},'limit':0x1,'order':[[_0x3ebd('0x90'),_0x3ebd('0xa3')]]}]}]})['then'](handleEntityNotFound(_0x42cfec,null))[_0x3ebd('0x1f')](function(_0x5ad3ac){if(_0x5ad3ac&&_0x5ad3ac[_0x3ebd('0xbb')]){_0xd5b9e6=_0x5ad3ac[_0x3ebd('0x5a')]({'plain':!![]});if(_0xd5b9e6['List']&&_0xd5b9e6['List'][_0x3ebd('0xa2')]['length']){return _0xd5b9e6['List']['Contacts'][0x0];}return db[_0x3ebd('0x8a')][_0x3ebd('0x58')](_['defaults'](_0x203411[_0x3ebd('0x59')],{'firstName':_0x4ec4a1,'mobile':_0x4ec4a1,'phone':_0x4ec4a1,'ListId':_0xd5b9e6[_0x3ebd('0xa1')]}));}})[_0x3ebd('0x1f')](handleEntityNotFound(_0x42cfec,null))[_0x3ebd('0x1f')](function(_0x4f267d){if(_0x4f267d){_0x10f713=_0x4f267d;return db[_0x3ebd('0xbc')][_0x3ebd('0x57')]({'where':{'ContactId':_0x10f713['id'],'closed':![],'WhatsappAccountId':_0xd5b9e6['id']}})[_0x3ebd('0x1f')](function(_0x2ce56c){if(_0x2ce56c){return[_0x2ce56c,![]];}return db[_0x3ebd('0xbc')][_0x3ebd('0x58')]({'UserId':_0x203411['user']['id'],'ContactId':_0x10f713['id'],'WhatsappAccountId':_0xd5b9e6['id'],'phone':_0x4ec4a1,'firstMsgDirection':_0x3ebd('0xbd'),'Messages':[_[_0x3ebd('0x4e')](_0x203411[_0x3ebd('0x59')],{'read':![],'body':_0x203411[_0x3ebd('0x59')][_0x3ebd('0x59')],'phone':_0x4ec4a1,'WhatsappAccountId':_0xd5b9e6['id'],'UserId':_0x203411[_0x3ebd('0xbe')]['id'],'ContactId':_0x10f713['id']})]},{'include':[{'model':db[_0x3ebd('0x85')],'as':_0x3ebd('0xbf')}]})[_0x3ebd('0x1f')](function(_0x1a2c91){return[_0x1a2c91,!![]];});});}})[_0x3ebd('0x6f')](function(_0x3b7d01,_0x11ad44){if(_0x11ad44){return _0x3b7d01;}return db[_0x3ebd('0x85')][_0x3ebd('0x58')](_[_0x3ebd('0x4e')](_0x203411[_0x3ebd('0x59')],{'read':![],'body':_0x203411[_0x3ebd('0x59')]['body'],'phone':_0x4ec4a1,'WhatsappAccountId':_0xd5b9e6['id'],'WhatsappInteractionId':_0x3b7d01['id'],'UserId':_0x203411['user']['id'],'ContactId':_0x10f713['id']}))['then'](function(_0x3ff48f){_0x3b7d01[_0x3ebd('0xc0')][_0x3ebd('0xbf')]=[];_0x3b7d01[_0x3ebd('0xc0')][_0x3ebd('0xbf')]['push'](_0x3ff48f[_0x3ebd('0xc0')]);return _0x3b7d01;});})[_0x3ebd('0x1f')](respondWithResult(_0x42cfec,null))['catch'](handleError(_0x42cfec,null));};