Built motion from commit ddca4d0d.|2.5.47
[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 _0x661b=['crypto','desk.js','to-csv','querystring','papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/license/util','../../mysqldb','redis','localhost','./whatsappAccount.socket','register','jayson/promise','client','request','then','request\x20sent','debug','stringify','error','code','WhatsappAccount,\x20%s,\x20%s','message','info','result','sendStatus','status','end','json','offset','undefined','count','limit','set','Content-Range','apply','reject','save','update','destroy','UserProfileResource','name','send','index','Pause','mandatoryDispositionPause','map','WhatsappAccount','rawAttributes','fieldName','model','query','keys','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','filters','pick','filter','merge','VIRTUAL','includeAll','include','rows','catch','params','options','create','user','get','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','find','userProfileId','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','body','describe','addDisposition','WhatsappAccountId','Disposition','findOne','findAll','removeDispositions','ids','addAnswer','CannedAnswer','removeAnswers','addAgents','omit','emit','userWhatsappAccount:save','removeAgents','userWhatsappAccount:remove','getAgents','User','addApplications','transaction','sequelize','ISOLATION_LEVELS','WhatsappApplication','bulkCreate','findAndCountAll','priority','getApplications','notify','whatsapp','Applications','account','statuses','state','read','WhatsappMessage','timestamp','asc','CmContact','Sequelize','ValidationError','no\x20available\x20attributes','difference','createdAt','updatedAt','mobile','type','twilio','from','From','replace','whatsapp:','MessageSid','sinch','notifications','messageId','message_id','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','DESC','list','Contacts','defaults','contact','spread','autoclose','push','applications','close','unmanaged','*,*,*,*','interaction','created','AttachmentId','UserId','unshift','agent','waitForTheAssignedAgent','Start','startRouting','entity\x20found','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','CmList','List','ListId','WhatsappInteraction','Messages','dataValues','zip-dir','fast-json-patch','request-promise','moment','mustache','util','path','sox','ejs','lodash'];(function(_0x49456c,_0x114122){var _0x35d4db=function(_0x5f1eb6){while(--_0x5f1eb6){_0x49456c['push'](_0x49456c['shift']());}};_0x35d4db(++_0x114122);}(_0x661b,0xb8));var _0xb661=function(_0x149c7b,_0x5f3c9a){_0x149c7b=_0x149c7b-0x0;var _0x38332e=_0x661b[_0x149c7b];return _0x38332e;};'use strict';var emlformat=require('eml-format');var rimraf=require('rimraf');var zipdir=require(_0xb661('0x0'));var jsonpatch=require(_0xb661('0x1'));var rp=require(_0xb661('0x2'));var moment=require(_0xb661('0x3'));var BPromise=require('bluebird');var Mustache=require(_0xb661('0x4'));var util=require(_0xb661('0x5'));var path=require(_0xb661('0x6'));var sox=require(_0xb661('0x7'));var csv=require('to-csv');var ejs=require(_0xb661('0x8'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0xb661('0x9'));var squel=require('squel');var crypto=require(_0xb661('0xa'));var jsforce=require('jsforce');var deskjs=require(_0xb661('0xb'));var toCsv=require(_0xb661('0xc'));var querystring=require(_0xb661('0xd'));var Papa=require(_0xb661('0xe'));var Redis=require(_0xb661('0xf'));var authService=require('../../components/auth/service');var qs=require(_0xb661('0x10'));var as=require(_0xb661('0x11'));var hardwareService=require(_0xb661('0x12'));var logger=require('../../config/logger')(_0xb661('0x13'));var utils=require('../../config/utils');var config=require('../../config/environment');var licenseUtil=require(_0xb661('0x14'));var db=require(_0xb661('0x15'))['db'];config[_0xb661('0x16')]=_['defaults'](config['redis'],{'host':_0xb661('0x17'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0xb661('0x16')]));require(_0xb661('0x18'))[_0xb661('0x19')](socket);var jayson=require(_0xb661('0x1a'));var client=jayson[_0xb661('0x1b')]['http']({'port':0x232c});function respondWithRpcPromise(_0x38b4ec,_0x256c0e,_0x20e883,_0xb421ee){return new BPromise(function(_0x270714,_0x1daf59){var _0x384c8b=_0xb421ee||client;return _0x384c8b[_0xb661('0x1c')](_0x38b4ec,_0x20e883)[_0xb661('0x1d')](function(_0x55a582){logger['info']('WhatsappAccount,\x20%s,\x20%s',_0x256c0e,_0xb661('0x1e'));logger[_0xb661('0x1f')]('WhatsappAccount,\x20%s,\x20%s,\x20%s',_0x256c0e,_0xb661('0x1e'),JSON[_0xb661('0x20')](_0x55a582));if(_0x55a582['error']){if(_0x55a582[_0xb661('0x21')][_0xb661('0x22')]===0x1f4){logger[_0xb661('0x21')](_0xb661('0x23'),_0x256c0e,_0x55a582[_0xb661('0x21')][_0xb661('0x24')]);return _0x1daf59(_0x55a582[_0xb661('0x21')]['message']);}logger[_0xb661('0x21')](_0xb661('0x23'),_0x256c0e,_0x55a582[_0xb661('0x21')][_0xb661('0x24')]);return _0x270714(_0x55a582[_0xb661('0x21')][_0xb661('0x24')]);}else{logger[_0xb661('0x25')](_0xb661('0x23'),_0x256c0e,_0xb661('0x1e'));_0x270714(_0x55a582[_0xb661('0x26')][_0xb661('0x24')]);}})['catch'](function(_0x23512c){logger[_0xb661('0x21')]('WhatsappAccount,\x20%s,\x20%s',_0x256c0e,_0x23512c);_0x1daf59(_0x23512c);});});}function respondWithStatusCode(_0x29a6ee,_0x32a3bf){_0x32a3bf=_0x32a3bf||0xcc;return function(_0x41c624){if(_0x41c624){return _0x29a6ee[_0xb661('0x27')](_0x32a3bf);}return _0x29a6ee[_0xb661('0x28')](_0x32a3bf)[_0xb661('0x29')]();};}function respondWithResult(_0x4c8b37,_0x10d31f){_0x10d31f=_0x10d31f||0xc8;return function(_0x55c880){if(_0x55c880){return _0x4c8b37[_0xb661('0x28')](_0x10d31f)[_0xb661('0x2a')](_0x55c880);}};}function respondWithFilteredResult(_0x56f73f,_0xc869f5){return function(_0x44b1f3){if(_0x44b1f3){var _0x1bfade=typeof _0xc869f5[_0xb661('0x2b')]===_0xb661('0x2c')&&typeof _0xc869f5['limit']==='undefined';var _0x4e0aaf=_0x44b1f3[_0xb661('0x2d')];var _0x27a290=_0x1bfade?0x0:_0xc869f5['offset'];var _0x4817aa=_0x1bfade?_0x44b1f3[_0xb661('0x2d')]:_0xc869f5[_0xb661('0x2b')]+_0xc869f5[_0xb661('0x2e')];var _0x2deb16;if(_0x4817aa>=_0x4e0aaf){_0x4817aa=_0x4e0aaf;_0x2deb16=0xc8;}else{_0x2deb16=0xce;}_0x56f73f['status'](_0x2deb16);return _0x56f73f[_0xb661('0x2f')](_0xb661('0x30'),_0x27a290+'-'+_0x4817aa+'/'+_0x4e0aaf)[_0xb661('0x2a')](_0x44b1f3);}return null;};}function patchUpdates(_0x27968a){return function(_0x2c688f){try{jsonpatch[_0xb661('0x31')](_0x2c688f,_0x27968a,!![]);}catch(_0x40376a){return BPromise[_0xb661('0x32')](_0x40376a);}return _0x2c688f[_0xb661('0x33')]();};}function saveUpdates(_0x32b56a,_0x423106){return function(_0xed1f1c){if(_0xed1f1c){return _0xed1f1c[_0xb661('0x34')](_0x32b56a)['then'](function(_0x2e0f4a){return _0x2e0f4a;});}return null;};}function removeEntity(_0x33f3ea,_0x4c5021){return function(_0x39a082){if(_0x39a082){return _0x39a082[_0xb661('0x35')]()[_0xb661('0x1d')](function(){var _0x27436f=_0x39a082['get']({'plain':!![]});var _0x138b98='WhatsappAccounts';return db[_0xb661('0x36')]['destroy']({'where':{'type':_0x138b98,'resourceId':_0x27436f['id']}})['then'](function(){return _0x39a082;});})['then'](function(){_0x33f3ea[_0xb661('0x28')](0xcc)[_0xb661('0x29')]();});}};}function handleEntityNotFound(_0x46b505,_0x4b9e3f){return function(_0x3b5882){if(!_0x3b5882){_0x46b505[_0xb661('0x27')](0x194);}return _0x3b5882;};}function handleError(_0x6e18ea,_0x47442e){_0x47442e=_0x47442e||0x1f4;return function(_0x5678d0){logger['error'](_0x5678d0['stack']);if(_0x5678d0[_0xb661('0x37')]){delete _0x5678d0['name'];}_0x6e18ea['status'](_0x47442e)[_0xb661('0x38')](_0x5678d0);};}exports[_0xb661('0x39')]=function(_0x804bdb,_0x1d41e1){var _0x371dd4={'include':[{'model':db[_0xb661('0x3a')],'as':_0xb661('0x3b')}]},_0x16509a={},_0x1afbef={'count':0x0,'rows':[]};var _0x58146e=_[_0xb661('0x3c')](db[_0xb661('0x3d')][_0xb661('0x3e')],function(_0xba6016){return{'name':_0xba6016[_0xb661('0x3f')],'type':_0xba6016['type']['key']};});_0x16509a[_0xb661('0x40')]=_[_0xb661('0x3c')](_0x58146e,'name');_0x16509a[_0xb661('0x41')]=_[_0xb661('0x42')](_0x804bdb[_0xb661('0x41')]);_0x16509a['filters']=_[_0xb661('0x43')](_0x16509a[_0xb661('0x40')],_0x16509a[_0xb661('0x41')]);_0x371dd4[_0xb661('0x44')]=_[_0xb661('0x43')](_0x16509a['model'],qs[_0xb661('0x45')](_0x804bdb[_0xb661('0x41')][_0xb661('0x45')]));_0x371dd4[_0xb661('0x44')]=_0x371dd4[_0xb661('0x44')][_0xb661('0x46')]?_0x371dd4[_0xb661('0x44')]:_0x16509a[_0xb661('0x40')];if(!_0x804bdb[_0xb661('0x41')][_0xb661('0x47')](_0xb661('0x48'))){_0x371dd4[_0xb661('0x2e')]=qs['limit'](_0x804bdb['query'][_0xb661('0x2e')]);_0x371dd4['offset']=qs['offset'](_0x804bdb[_0xb661('0x41')][_0xb661('0x2b')]);}_0x371dd4[_0xb661('0x49')]=qs['sort'](_0x804bdb[_0xb661('0x41')][_0xb661('0x4a')]);_0x371dd4[_0xb661('0x4b')]=qs[_0xb661('0x4c')](_[_0xb661('0x4d')](_0x804bdb['query'],_0x16509a[_0xb661('0x4c')]),_0x58146e);if(_0x804bdb[_0xb661('0x41')][_0xb661('0x4e')]){_0x371dd4[_0xb661('0x4b')]=_[_0xb661('0x4f')](_0x371dd4[_0xb661('0x4b')],{'$or':_[_0xb661('0x3c')](_0x58146e,function(_0x395178){if(_0x395178['type']!==_0xb661('0x50')){var _0x55c910={};_0x55c910[_0x395178[_0xb661('0x37')]]={'$like':'%'+_0x804bdb[_0xb661('0x41')][_0xb661('0x4e')]+'%'};return _0x55c910;}})});}_0x371dd4=_[_0xb661('0x4f')]({},_0x371dd4,_0x804bdb['options']);var _0x37bfe2={'where':_0x371dd4[_0xb661('0x4b')]};return db[_0xb661('0x3d')][_0xb661('0x2d')](_0x37bfe2)[_0xb661('0x1d')](function(_0x55dd44){_0x1afbef[_0xb661('0x2d')]=_0x55dd44;if(_0x804bdb['query'][_0xb661('0x51')]){_0x371dd4[_0xb661('0x52')]=[{'all':!![]}];}return db[_0xb661('0x3d')]['findAll'](_0x371dd4);})[_0xb661('0x1d')](function(_0x10f15d){_0x1afbef[_0xb661('0x53')]=_0x10f15d;return _0x1afbef;})[_0xb661('0x1d')](respondWithFilteredResult(_0x1d41e1,_0x371dd4))[_0xb661('0x54')](handleError(_0x1d41e1,null));};exports['show']=function(_0x2110bd,_0x544924){var _0x79292f={'raw':![],'where':{'id':_0x2110bd[_0xb661('0x55')]['id']},'include':[{'model':db['Pause'],'as':_0xb661('0x3b')}]},_0x3678d6={};_0x3678d6[_0xb661('0x40')]=_[_0xb661('0x42')](db[_0xb661('0x3d')][_0xb661('0x3e')]);_0x3678d6[_0xb661('0x41')]=_[_0xb661('0x42')](_0x2110bd[_0xb661('0x41')]);_0x3678d6[_0xb661('0x4c')]=_[_0xb661('0x43')](_0x3678d6[_0xb661('0x40')],_0x3678d6[_0xb661('0x41')]);_0x79292f[_0xb661('0x44')]=_[_0xb661('0x43')](_0x3678d6['model'],qs[_0xb661('0x45')](_0x2110bd[_0xb661('0x41')][_0xb661('0x45')]));_0x79292f[_0xb661('0x44')]=_0x79292f[_0xb661('0x44')][_0xb661('0x46')]?_0x79292f['attributes']:_0x3678d6[_0xb661('0x40')];if(_0x2110bd[_0xb661('0x41')][_0xb661('0x51')]){_0x79292f[_0xb661('0x52')]=[{'all':!![]}];}_0x79292f=_['merge']({},_0x79292f,_0x2110bd[_0xb661('0x56')]);return db[_0xb661('0x3d')]['find'](_0x79292f)[_0xb661('0x1d')](handleEntityNotFound(_0x544924,null))[_0xb661('0x1d')](respondWithResult(_0x544924,null))['catch'](handleError(_0x544924,null));};exports[_0xb661('0x57')]=function(_0x3247b1,_0x156d6b){return db[_0xb661('0x3d')][_0xb661('0x57')](_0x3247b1['body'],{})['then'](function(_0x2a7338){var _0x51776e=_0x3247b1[_0xb661('0x58')][_0xb661('0x59')]({'plain':!![]});if(!_0x51776e)throw new Error(_0xb661('0x5a'));if(_0x51776e[_0xb661('0x5b')]===_0xb661('0x58')){var _0x2c4e5d=_0x2a7338[_0xb661('0x59')]({'plain':!![]});var _0x3f4e30='WhatsappAccounts';return db[_0xb661('0x5c')][_0xb661('0x5d')]({'where':{'name':_0x3f4e30,'userProfileId':_0x51776e[_0xb661('0x5e')]},'raw':!![]})[_0xb661('0x1d')](function(_0x4e1ccb){if(_0x4e1ccb&&_0x4e1ccb['autoAssociation']===0x0){return db[_0xb661('0x36')][_0xb661('0x57')]({'name':_0x2c4e5d[_0xb661('0x37')],'resourceId':_0x2c4e5d['id'],'type':_0x4e1ccb[_0xb661('0x37')],'sectionId':_0x4e1ccb['id']},{})[_0xb661('0x1d')](function(){return _0x2a7338;});}else{return _0x2a7338;}})[_0xb661('0x54')](function(_0x3f0831){logger[_0xb661('0x21')](_0xb661('0x5f'),_0x3f0831);throw _0x3f0831;});}return _0x2a7338;})[_0xb661('0x1d')](respondWithResult(_0x156d6b,0xc9))[_0xb661('0x54')](handleError(_0x156d6b,null));};exports[_0xb661('0x34')]=function(_0x58b40c,_0x339f63){if(_0x58b40c[_0xb661('0x60')]['id']){delete _0x58b40c[_0xb661('0x60')]['id'];}return db[_0xb661('0x3d')]['find']({'where':{'id':_0x58b40c[_0xb661('0x55')]['id']},'include':[{'model':db[_0xb661('0x3a')],'as':_0xb661('0x3b')}]})['then'](handleEntityNotFound(_0x339f63,null))[_0xb661('0x1d')](saveUpdates(_0x58b40c['body'],null))[_0xb661('0x1d')](respondWithResult(_0x339f63,null))[_0xb661('0x54')](handleError(_0x339f63,null));};exports['destroy']=function(_0xc7e767,_0x28f788){return db['WhatsappAccount']['find']({'where':{'id':_0xc7e767[_0xb661('0x55')]['id']}})[_0xb661('0x1d')](handleEntityNotFound(_0x28f788,null))['then'](removeEntity(_0x28f788,null))['catch'](handleError(_0x28f788,null));};exports[_0xb661('0x61')]=function(_0x46fbb2,_0x115e1d){return db['WhatsappAccount'][_0xb661('0x61')]()[_0xb661('0x1d')](respondWithResult(_0x115e1d,null))['catch'](handleError(_0x115e1d,null));};exports[_0xb661('0x62')]=function(_0x418115,_0x18275e,_0x49d6f6){if(_0x418115[_0xb661('0x60')]['id']){delete _0x418115[_0xb661('0x60')]['id'];}return db['WhatsappAccount'][_0xb661('0x5d')]({'where':{'id':_0x418115[_0xb661('0x55')]['id']}})['then'](handleEntityNotFound(_0x18275e,null))[_0xb661('0x1d')](function(_0x539525){if(_0x539525){_0x418115[_0xb661('0x60')][_0xb661('0x63')]=_0x539525['id'];return db[_0xb661('0x64')][_0xb661('0x57')](_0x418115[_0xb661('0x60')]);}})[_0xb661('0x1d')](respondWithResult(_0x18275e,null))['catch'](handleError(_0x18275e,null));};exports['getDispositions']=function(_0x384812,_0x47e042,_0x284768){var _0x2be17d={'raw':![],'where':{}};var _0x5632d4={};var _0x56b3bc={'count':0x0,'rows':[]};return db[_0xb661('0x3d')][_0xb661('0x65')]({'where':{'id':_0x384812[_0xb661('0x55')]['id']}})[_0xb661('0x1d')](handleEntityNotFound(_0x47e042,null))['then'](function(_0x112733){if(_0x112733){_0x5632d4[_0xb661('0x40')]=_[_0xb661('0x42')](db[_0xb661('0x64')]['rawAttributes']);_0x5632d4['query']=_[_0xb661('0x42')](_0x384812[_0xb661('0x41')]);_0x5632d4['filters']=_['intersection'](_0x5632d4[_0xb661('0x40')],_0x5632d4['query']);_0x2be17d[_0xb661('0x44')]=_['intersection'](_0x5632d4[_0xb661('0x40')],qs[_0xb661('0x45')](_0x384812['query'][_0xb661('0x45')]));_0x2be17d[_0xb661('0x44')]=_0x2be17d[_0xb661('0x44')][_0xb661('0x46')]?_0x2be17d['attributes']:_0x5632d4[_0xb661('0x40')];if(!_0x384812[_0xb661('0x41')][_0xb661('0x47')](_0xb661('0x48'))){_0x2be17d[_0xb661('0x2e')]=qs[_0xb661('0x2e')](_0x384812[_0xb661('0x41')]['limit']);_0x2be17d['offset']=qs['offset'](_0x384812[_0xb661('0x41')][_0xb661('0x2b')]);}_0x2be17d[_0xb661('0x49')]=qs[_0xb661('0x4a')](_0x384812[_0xb661('0x41')][_0xb661('0x4a')]);_0x2be17d[_0xb661('0x4b')]=qs[_0xb661('0x4c')](_[_0xb661('0x4d')](_0x384812[_0xb661('0x41')],_0x5632d4[_0xb661('0x4c')]));_0x2be17d[_0xb661('0x4b')][_0xb661('0x63')]=_0x112733['id'];if(_0x384812['query'][_0xb661('0x4e')]){_0x2be17d[_0xb661('0x4b')]=_[_0xb661('0x4f')](_0x2be17d[_0xb661('0x4b')],{'$or':_[_0xb661('0x3c')](_0x2be17d['attributes'],function(_0x423725){var _0x214558={};_0x214558[_0x423725]={'$like':'%'+_0x384812[_0xb661('0x41')][_0xb661('0x4e')]+'%'};return _0x214558;})});}_0x2be17d=_[_0xb661('0x4f')]({},_0x2be17d,_0x384812['options']);return db['Disposition'][_0xb661('0x2d')]({'where':_0x2be17d['where']})['then'](function(_0x47fd5a){_0x56b3bc[_0xb661('0x2d')]=_0x47fd5a;if(_0x384812['query'][_0xb661('0x51')]){_0x2be17d[_0xb661('0x52')]=[{'all':!![]}];}return db['Disposition'][_0xb661('0x66')](_0x2be17d);})[_0xb661('0x1d')](function(_0x1250c8){_0x56b3bc[_0xb661('0x53')]=_0x1250c8;return _0x56b3bc;});}})[_0xb661('0x1d')](respondWithFilteredResult(_0x47e042,_0x2be17d))['catch'](handleError(_0x47e042,null));};exports['removeDispositions']=function(_0x5163c8,_0x2f5760,_0x7e3d1){return db[_0xb661('0x3d')][_0xb661('0x5d')]({'where':{'id':_0x5163c8[_0xb661('0x55')]['id']}})[_0xb661('0x1d')](handleEntityNotFound(_0x2f5760,null))[_0xb661('0x1d')](function(_0x22c0da){if(_0x22c0da){return _0x22c0da[_0xb661('0x67')](_0x5163c8['query'][_0xb661('0x68')]);}})['then'](respondWithStatusCode(_0x2f5760,null))['catch'](handleError(_0x2f5760,null));};exports[_0xb661('0x69')]=function(_0x12094a,_0x11cc54,_0x59066e){if(_0x12094a['body']['id']){delete _0x12094a[_0xb661('0x60')]['id'];}return db['WhatsappAccount']['find']({'where':{'id':_0x12094a[_0xb661('0x55')]['id']}})[_0xb661('0x1d')](handleEntityNotFound(_0x11cc54,null))[_0xb661('0x1d')](function(_0x1411ea){if(_0x1411ea){_0x12094a[_0xb661('0x60')]['WhatsappAccountId']=_0x1411ea['id'];return db[_0xb661('0x6a')][_0xb661('0x57')](_0x12094a[_0xb661('0x60')]);}})[_0xb661('0x1d')](respondWithResult(_0x11cc54,null))[_0xb661('0x54')](handleError(_0x11cc54,null));};exports['getAnswers']=function(_0x4ec1d7,_0x57b516,_0x148d46){var _0x5be2d2={'raw':![],'where':{}};var _0x416801={};var _0x7ab6f5={'count':0x0,'rows':[]};return db['WhatsappAccount'][_0xb661('0x65')]({'where':{'id':_0x4ec1d7[_0xb661('0x55')]['id']}})[_0xb661('0x1d')](handleEntityNotFound(_0x57b516,null))[_0xb661('0x1d')](function(_0x19eb4c){if(_0x19eb4c){_0x416801[_0xb661('0x40')]=_[_0xb661('0x42')](db[_0xb661('0x6a')][_0xb661('0x3e')]);_0x416801[_0xb661('0x41')]=_[_0xb661('0x42')](_0x4ec1d7['query']);_0x416801['filters']=_[_0xb661('0x43')](_0x416801[_0xb661('0x40')],_0x416801[_0xb661('0x41')]);_0x5be2d2[_0xb661('0x44')]=_['intersection'](_0x416801['model'],qs['fields'](_0x4ec1d7[_0xb661('0x41')][_0xb661('0x45')]));_0x5be2d2[_0xb661('0x44')]=_0x5be2d2[_0xb661('0x44')][_0xb661('0x46')]?_0x5be2d2['attributes']:_0x416801[_0xb661('0x40')];if(!_0x4ec1d7['query'][_0xb661('0x47')]('nolimit')){_0x5be2d2['limit']=qs['limit'](_0x4ec1d7[_0xb661('0x41')][_0xb661('0x2e')]);_0x5be2d2[_0xb661('0x2b')]=qs[_0xb661('0x2b')](_0x4ec1d7[_0xb661('0x41')][_0xb661('0x2b')]);}_0x5be2d2[_0xb661('0x49')]=qs['sort'](_0x4ec1d7['query'][_0xb661('0x4a')]);_0x5be2d2['where']=qs[_0xb661('0x4c')](_[_0xb661('0x4d')](_0x4ec1d7['query'],_0x416801[_0xb661('0x4c')]));_0x5be2d2[_0xb661('0x4b')]['WhatsappAccountId']=_0x19eb4c['id'];if(_0x4ec1d7[_0xb661('0x41')]['filter']){_0x5be2d2[_0xb661('0x4b')]=_[_0xb661('0x4f')](_0x5be2d2[_0xb661('0x4b')],{'$or':_[_0xb661('0x3c')](_0x5be2d2['attributes'],function(_0x28bfba){var _0x52a0fc={};_0x52a0fc[_0x28bfba]={'$like':'%'+_0x4ec1d7[_0xb661('0x41')][_0xb661('0x4e')]+'%'};return _0x52a0fc;})});}_0x5be2d2=_[_0xb661('0x4f')]({},_0x5be2d2,_0x4ec1d7['options']);return db['CannedAnswer'][_0xb661('0x2d')]({'where':_0x5be2d2[_0xb661('0x4b')]})['then'](function(_0x2f41b9){_0x7ab6f5[_0xb661('0x2d')]=_0x2f41b9;if(_0x4ec1d7[_0xb661('0x41')]['includeAll']){_0x5be2d2[_0xb661('0x52')]=[{'all':!![]}];}return db['CannedAnswer'][_0xb661('0x66')](_0x5be2d2);})[_0xb661('0x1d')](function(_0x59874f){_0x7ab6f5[_0xb661('0x53')]=_0x59874f;return _0x7ab6f5;});}})[_0xb661('0x1d')](respondWithFilteredResult(_0x57b516,_0x5be2d2))['catch'](handleError(_0x57b516,null));};exports['removeAnswers']=function(_0x43d1c6,_0x166116,_0xc48a33){return db[_0xb661('0x3d')]['find']({'where':{'id':_0x43d1c6[_0xb661('0x55')]['id']}})[_0xb661('0x1d')](handleEntityNotFound(_0x166116,null))[_0xb661('0x1d')](function(_0x220cc7){if(_0x220cc7){return _0x220cc7[_0xb661('0x6b')](_0x43d1c6['query'][_0xb661('0x68')]);}})[_0xb661('0x1d')](respondWithStatusCode(_0x166116,null))[_0xb661('0x54')](handleError(_0x166116,null));};exports['addAgents']=function(_0x351507,_0x5242f4,_0x557e6b){return db[_0xb661('0x3d')][_0xb661('0x5d')]({'where':{'id':_0x351507[_0xb661('0x55')]['id']}})['then'](handleEntityNotFound(_0x5242f4,null))[_0xb661('0x1d')](function(_0x19cf9e){if(_0x19cf9e){return _0x19cf9e[_0xb661('0x6c')](_0x351507['body']['ids'],_[_0xb661('0x6d')](_0x351507[_0xb661('0x60')],[_0xb661('0x68'),'id'])||{})['spread'](function(_0x27c707){for(var _0x48491e=0x0;_0x48491e<_0x351507['body']['ids'][_0xb661('0x46')];_0x48491e+=0x1){socket[_0xb661('0x6e')](_0xb661('0x6f'),{'UserId':Number(_0x351507[_0xb661('0x60')][_0xb661('0x68')][_0x48491e]),'WhatsappAccountId':Number(_0x351507['params']['id'])});}return _0x27c707;});}})[_0xb661('0x1d')](respondWithResult(_0x5242f4,null))[_0xb661('0x54')](handleError(_0x5242f4,null));};exports[_0xb661('0x70')]=function(_0x2e635a,_0x3d0b28,_0x1b0409){return db[_0xb661('0x3d')][_0xb661('0x5d')]({'where':{'id':_0x2e635a[_0xb661('0x55')]['id']}})['then'](handleEntityNotFound(_0x3d0b28,null))[_0xb661('0x1d')](function(_0x440791){if(_0x440791){return _0x440791['removeAgents'](_0x2e635a['query'][_0xb661('0x68')])['then'](function(){if(_['isArray'](_0x2e635a[_0xb661('0x41')]['ids'])){for(var _0x58d60f=0x0;_0x58d60f<_0x2e635a[_0xb661('0x41')][_0xb661('0x68')][_0xb661('0x46')];_0x58d60f+=0x1){socket[_0xb661('0x6e')](_0xb661('0x71'),{'UserId':Number(_0x2e635a['query'][_0xb661('0x68')][_0x58d60f]),'WhatsappAccountId':Number(_0x2e635a[_0xb661('0x55')]['id'])});}}else{socket[_0xb661('0x6e')](_0xb661('0x71'),{'UserId':Number(_0x2e635a[_0xb661('0x41')][_0xb661('0x68')]),'WhatsappAccountId':Number(_0x2e635a[_0xb661('0x55')]['id'])});}});}})['then'](respondWithStatusCode(_0x3d0b28,null))[_0xb661('0x54')](handleError(_0x3d0b28,null));};exports[_0xb661('0x72')]=function(_0x45a4ea,_0x19af2c,_0x1a7836){var _0x117e35={};var _0x587632={};var _0x3ad2c5;var _0x96087b;return db[_0xb661('0x3d')]['findOne']({'where':{'id':_0x45a4ea[_0xb661('0x55')]['id']}})[_0xb661('0x1d')](handleEntityNotFound(_0x19af2c,null))[_0xb661('0x1d')](function(_0x36bf70){if(_0x36bf70){_0x3ad2c5=_0x36bf70;_0x587632['model']=_[_0xb661('0x42')](db[_0xb661('0x73')][_0xb661('0x3e')]);_0x587632[_0xb661('0x41')]=_['keys'](_0x45a4ea[_0xb661('0x41')]);_0x587632['filters']=_[_0xb661('0x43')](_0x587632['model'],_0x587632[_0xb661('0x41')]);_0x117e35[_0xb661('0x44')]=_[_0xb661('0x43')](_0x587632[_0xb661('0x40')],qs[_0xb661('0x45')](_0x45a4ea['query'][_0xb661('0x45')]));_0x117e35[_0xb661('0x44')]=_0x117e35[_0xb661('0x44')]['length']?_0x117e35[_0xb661('0x44')]:_0x587632[_0xb661('0x40')];_0x117e35['order']=qs['sort'](_0x45a4ea['query']['sort']);_0x117e35[_0xb661('0x4b')]=qs[_0xb661('0x4c')](_[_0xb661('0x4d')](_0x45a4ea[_0xb661('0x41')],_0x587632[_0xb661('0x4c')]));if(_0x45a4ea[_0xb661('0x41')][_0xb661('0x4e')]){_0x117e35['where']=_[_0xb661('0x4f')](_0x117e35[_0xb661('0x4b')],{'$or':_[_0xb661('0x3c')](_0x117e35[_0xb661('0x44')],function(_0x17c7a3){var _0x27ad67={};_0x27ad67[_0x17c7a3]={'$like':'%'+_0x45a4ea[_0xb661('0x41')][_0xb661('0x4e')]+'%'};return _0x27ad67;})});}_0x117e35=_[_0xb661('0x4f')]({},_0x117e35,_0x45a4ea[_0xb661('0x56')]);return _0x3ad2c5[_0xb661('0x72')](_0x117e35);}})['then'](function(_0x452251){if(_0x452251){_0x96087b=_0x452251['length'];if(!_0x45a4ea['query'][_0xb661('0x47')](_0xb661('0x48'))){_0x117e35[_0xb661('0x2e')]=qs[_0xb661('0x2e')](_0x45a4ea[_0xb661('0x41')]['limit']);_0x117e35[_0xb661('0x2b')]=qs[_0xb661('0x2b')](_0x45a4ea[_0xb661('0x41')]['offset']);}return _0x3ad2c5['getAgents'](_0x117e35);}})[_0xb661('0x1d')](function(_0xd5f988){if(_0xd5f988){return _0xd5f988?{'count':_0x96087b,'rows':_0xd5f988}:null;}})[_0xb661('0x1d')](respondWithResult(_0x19af2c,null))[_0xb661('0x54')](handleError(_0x19af2c,null));};exports[_0xb661('0x74')]=function(_0x4a4eeb,_0x5f429d){var _0x181b36=_0x4a4eeb['params']['id'];var _0x36d504=_0x4a4eeb[_0xb661('0x60')];var _0x3abde7=0xc8;var _0x301e8c=null;return db['sequelize'][_0xb661('0x75')]({'isolationLevel':db[_0xb661('0x76')]['Transaction'][_0xb661('0x77')]['READ_COMMITTED']},function(_0x2744d9){return db[_0xb661('0x3d')][_0xb661('0x65')]({'where':{'id':_0x181b36},'transaction':_0x2744d9})[_0xb661('0x1d')](function(_0x42a1bc){if(_0x42a1bc){return db['WhatsappApplication']['destroy']({'where':{'WhatsappAccountId':_0x181b36},'transaction':_0x2744d9})[_0xb661('0x1d')](function(){var _0x521b2a=_[_0xb661('0x3c')](_0x36d504,function(_0x26344e){_0x26344e[_0xb661('0x63')]=_0x181b36;return _0x26344e;});return db[_0xb661('0x78')][_0xb661('0x79')](_0x521b2a,{'transaction':_0x2744d9});});}else{_0x3abde7=0x194;_0x301e8c=[];}});})[_0xb661('0x1d')](function(){if(_0x3abde7!==0x194){return db['WhatsappApplication'][_0xb661('0x7a')]({'where':{'WhatsappAccountId':_0x181b36},'order':_0xb661('0x7b')})[_0xb661('0x1d')](function(_0x28063d){_0x301e8c=_0x28063d;});}})[_0xb661('0x54')](function(_0x4e8796){_0x3abde7=0x1f4;logger['error'](_0x4e8796['stack']);if(_0x4e8796[_0xb661('0x37')]){delete _0x4e8796[_0xb661('0x37')];}_0x301e8c=_0x4e8796;})['finally'](function(){if(_0x301e8c===null){_0x5f429d[_0xb661('0x27')](_0x3abde7);}else{if(_0x3abde7===0x1f4){_0x5f429d[_0xb661('0x28')](_0x3abde7)[_0xb661('0x38')](_0x301e8c);}else{_0x5f429d['status'](_0x3abde7)[_0xb661('0x2a')](_0x301e8c);}}});};exports[_0xb661('0x7c')]=function(_0x1174d9,_0xe9122b,_0x52261c){var _0x47ae1d={};var _0x2e5fb9={};var _0x5ee9cd;var _0xa09fd0;return db['WhatsappAccount'][_0xb661('0x65')]({'where':{'id':_0x1174d9[_0xb661('0x55')]['id']}})['then'](handleEntityNotFound(_0xe9122b,null))[_0xb661('0x1d')](function(_0x475c4a){if(_0x475c4a){_0x5ee9cd=_0x475c4a;_0x2e5fb9[_0xb661('0x40')]=_[_0xb661('0x42')](db[_0xb661('0x78')][_0xb661('0x3e')]);_0x2e5fb9[_0xb661('0x41')]=_['keys'](_0x1174d9['query']);_0x2e5fb9['filters']=_[_0xb661('0x43')](_0x2e5fb9[_0xb661('0x40')],_0x2e5fb9[_0xb661('0x41')]);_0x47ae1d[_0xb661('0x44')]=_[_0xb661('0x43')](_0x2e5fb9[_0xb661('0x40')],qs[_0xb661('0x45')](_0x1174d9['query'][_0xb661('0x45')]));_0x47ae1d['attributes']=_0x47ae1d['attributes'][_0xb661('0x46')]?_0x47ae1d[_0xb661('0x44')]:_0x2e5fb9[_0xb661('0x40')];_0x47ae1d[_0xb661('0x49')]=qs[_0xb661('0x4a')](_0x1174d9[_0xb661('0x41')][_0xb661('0x4a')]);_0x47ae1d['where']=qs[_0xb661('0x4c')](_[_0xb661('0x4d')](_0x1174d9[_0xb661('0x41')],_0x2e5fb9['filters']));if(_0x1174d9[_0xb661('0x41')]['filter']){_0x47ae1d['where']=_[_0xb661('0x4f')](_0x47ae1d[_0xb661('0x4b')],{'$or':_[_0xb661('0x3c')](_0x47ae1d[_0xb661('0x44')],function(_0x5d4764){var _0x1b073d={};_0x1b073d[_0x5d4764]={'$like':'%'+_0x1174d9['query']['filter']+'%'};return _0x1b073d;})});}_0x47ae1d=_['merge']({},_0x47ae1d,_0x1174d9[_0xb661('0x56')]);return _0x5ee9cd[_0xb661('0x7c')](_0x47ae1d);}})[_0xb661('0x1d')](function(_0x4485ee){if(_0x4485ee){_0xa09fd0=_0x4485ee['length'];if(!_0x1174d9[_0xb661('0x41')][_0xb661('0x47')](_0xb661('0x48'))){_0x47ae1d[_0xb661('0x2e')]=qs[_0xb661('0x2e')](_0x1174d9[_0xb661('0x41')]['limit']);_0x47ae1d[_0xb661('0x2b')]=qs[_0xb661('0x2b')](_0x1174d9[_0xb661('0x41')][_0xb661('0x2b')]);}return _0x5ee9cd[_0xb661('0x7c')](_0x47ae1d);}})[_0xb661('0x1d')](function(_0x214c2c){if(_0x214c2c){return _0x214c2c?{'count':_0xa09fd0,'rows':_0x214c2c}:null;}})[_0xb661('0x1d')](respondWithResult(_0xe9122b,null))['catch'](handleError(_0xe9122b,null));};exports[_0xb661('0x7d')]=function(_0x26a508,_0x2a0280,_0x314a3d){var _0x195e7e={'channel':_0xb661('0x7e')};var _0x230617=[];var _0x24332f=[];var _0x434455={};return db[_0xb661('0x3d')][_0xb661('0x5d')]({'where':{'id':_0x26a508['params']['id']},'include':[{'model':db[_0xb661('0x78')],'as':_0xb661('0x7f')}]})['then'](handleEntityNotFound(_0x2a0280,null))[_0xb661('0x1d')](function(_0x39ea61){_0x195e7e[_0xb661('0x80')]=_0x39ea61;if(_0x195e7e[_0xb661('0x80')]&&_0x195e7e[_0xb661('0x80')]['type']==='sinch'&&_0x26a508['body'][_0xb661('0x81')]){if(_0x26a508[_0xb661('0x60')][_0xb661('0x81')]['length']===0x0)return;if(_0x26a508[_0xb661('0x60')][_0xb661('0x81')][0x0][_0xb661('0x82')]!==_0xb661('0x83'))return;return db[_0xb661('0x84')][_0xb661('0x34')]({'read':!![],'readAt':_0x26a508[_0xb661('0x60')][_0xb661('0x81')][0x0][_0xb661('0x85')]},{'where':{'messageId':_0x26a508[_0xb661('0x60')][_0xb661('0x81')][0x0]['message_id']},'individualHooks':!![]})[_0xb661('0x1d')](function(_0x1d3f25){return _0x2a0280['status'](0xc8)[_0xb661('0x2a')](_0x1d3f25);});}_0x195e7e['applications']=_['orderBy'](_0x39ea61['Applications'],[_0xb661('0x7b')],[_0xb661('0x86')]);if(_0x195e7e[_0xb661('0x80')][_0xb661('0x7f')]){delete _0x195e7e['account']['Applications'];}return db[_0xb661('0x87')]['describe']()[_0xb661('0x1d')](function(_0x2b9ef5){if(!_0x2b9ef5){throw new db[(_0xb661('0x88'))][(_0xb661('0x89'))](_0xb661('0x8a'));}_0x230617=_[_0xb661('0x8b')](_[_0xb661('0x42')](_0x2b9ef5),[_0xb661('0x8c'),_0xb661('0x8d')]);_0x24332f=_[_0xb661('0x8b')](_[_0xb661('0x42')](_0x2b9ef5),[_0xb661('0x8c'),_0xb661('0x8d'),'CompanyId','ListId']);_0x195e7e[_0xb661('0x60')]={'mapKey':_0xb661('0x8e')};if(_0x195e7e['account']&&_0x195e7e['account'][_0xb661('0x8f')]===_0xb661('0x90')){_0x195e7e[_0xb661('0x60')][_0xb661('0x91')]=_0x26a508[_0xb661('0x60')][_0xb661('0x92')][_0xb661('0x93')](_0xb661('0x94'),'');_0x195e7e[_0xb661('0x60')][_0xb661('0x60')]=_0x26a508[_0xb661('0x60')]['Body'];_0x195e7e[_0xb661('0x60')]['messageId']=_0x26a508['body'][_0xb661('0x95')];}if(_0x195e7e['account']&&_0x195e7e[_0xb661('0x80')]['type']===_0xb661('0x96')){_0x195e7e['body']['from']=_0x26a508[_0xb661('0x60')][_0xb661('0x97')][0x0][_0xb661('0x91')];_0x195e7e['body']['body']=_0x26a508[_0xb661('0x60')][_0xb661('0x97')][0x0][_0xb661('0x24')][_0xb661('0x60')];_0x195e7e[_0xb661('0x60')][_0xb661('0x98')]=_0x26a508[_0xb661('0x60')][_0xb661('0x97')][0x0][_0xb661('0x99')];}if(_0x195e7e[_0xb661('0x60')]['id']){delete _0x195e7e['body']['id'];}if(_[_0xb661('0x9a')](_0x195e7e[_0xb661('0x60')][_0xb661('0x91')])){throw new db[(_0xb661('0x88'))]['ValidationError'](_0xb661('0x9b'));}if(_[_0xb661('0x9a')](_0x195e7e[_0xb661('0x60')]['body'])||_0x195e7e[_0xb661('0x60')][_0xb661('0x60')]===''){throw new db['Sequelize'][(_0xb661('0x89'))](_0xb661('0x9c'));}if(_[_0xb661('0x9a')](_0x195e7e[_0xb661('0x60')][_0xb661('0x9d')])){throw new db['Sequelize'][(_0xb661('0x89'))](_0xb661('0x9e')+_0x24332f);}if(!_[_0xb661('0x9f')](_0x24332f,_0x195e7e['body'][_0xb661('0x9d')])){throw new db['Sequelize'][(_0xb661('0x89'))](_0xb661('0xa0')+_0x24332f);}_0x434455[_0x195e7e[_0xb661('0x60')][_0xb661('0x9d')]]=_0x195e7e[_0xb661('0x60')][_0xb661('0x91')];return db['CmList'][_0xb661('0x5d')]({'where':{'id':_0x195e7e['account']['ListId']},'include':[{'model':db[_0xb661('0x87')],'as':'Contacts','where':_0x434455,'limit':0x1,'order':[[_0xb661('0x8d'),_0xb661('0xa1')]]}]});})['then'](handleEntityNotFound(_0x2a0280,null))[_0xb661('0x1d')](function(_0x14db5f){if(_0x14db5f){_0x195e7e[_0xb661('0xa2')]=_[_0xb661('0x6d')](_0x14db5f,['Contacts']);if(_0x14db5f[_0xb661('0xa3')][_0xb661('0x46')]){return _0x14db5f[_0xb661('0xa3')][0x0];}var _0x31e672=_[_0xb661('0xa4')](_0x195e7e[_0xb661('0x60')],{'firstName':_0x195e7e['body'][_0xb661('0x91')],'ListId':_0x14db5f['id']});_0x31e672[_0x195e7e[_0xb661('0x60')]['mapKey']]=_0x195e7e[_0xb661('0x60')]['from'];return db['CmContact']['create'](_0x31e672,{'fields':_0x230617,'raw':!![]});}})[_0xb661('0x1d')](handleEntityNotFound(_0x2a0280,null))[_0xb661('0x1d')](function(_0x221bcb){if(_0x221bcb){_0x195e7e[_0xb661('0xa5')]=_0x221bcb;var _0x53ee04={'ContactId':_0x221bcb['id'],'phone':_0x195e7e[_0xb661('0x60')][_0xb661('0x91')],'WhatsappAccountId':_0x26a508[_0xb661('0x55')]['id']};var _0x1e81ba={'ContactId':_0x221bcb['id'],'WhatsappAccountId':_0x26a508[_0xb661('0x55')]['id'],'closed':![]};return db['WhatsappInteraction'][_0xb661('0x5d')]({'where':_0x1e81ba})['then'](function(_0x46438a){if(_0x46438a){return[_0x46438a,![]];}return db['WhatsappInteraction'][_0xb661('0x57')](_0x53ee04)[_0xb661('0x1d')](function(_0x306c35){return[_0x306c35,!![]];});});}})[_0xb661('0xa6')](function(_0x4007d3,_0x3cb5cc){_0x195e7e['interaction']=_0x4007d3[_0xb661('0x59')]({'plain':!![]});_0x195e7e['interaction']['created']=![];if(_0x3cb5cc){if(_0x195e7e[_0xb661('0x80')][_0xb661('0xa7')]){_0x195e7e['applications'][_0xb661('0xa8')]({'id':0x0,'priority':_0x195e7e[_0xb661('0xa9')][_0xb661('0x46')]+0x1,'app':_0xb661('0xaa'),'appdata':_0xb661('0xab'),'interval':_0xb661('0xac')});}_0x195e7e[_0xb661('0xad')][_0xb661('0xae')]=!![];}return db[_0xb661('0x84')][_0xb661('0x57')]({'phone':_0x195e7e[_0xb661('0x60')]['from'],'messageId':_0x195e7e[_0xb661('0x60')][_0xb661('0x98')],'body':_0x195e7e[_0xb661('0x60')][_0xb661('0x60')],'WhatsappAccountId':_0x26a508[_0xb661('0x55')]['id'],'WhatsappInteractionId':_0x4007d3['id'],'direction':'in','ContactId':_0x4007d3['ContactId'],'AttachmentId':_0x195e7e[_0xb661('0x60')][_0xb661('0xaf')]});})[_0xb661('0x1d')](function(_0x377628){_0x195e7e[_0xb661('0x24')]=_0x377628;if(_0x195e7e[_0xb661('0xad')]['UserId']){return db[_0xb661('0x73')][_0xb661('0x5d')]({'attributes':['id','name'],'where':{'id':_0x195e7e['interaction'][_0xb661('0xb0')]}})[_0xb661('0x1d')](function(_0x12f2a3){if(_0x12f2a3){_0x195e7e[_0xb661('0xa9')][_0xb661('0xb1')]({'id':0x0,'priority':0x0,'app':_0xb661('0xb2'),'appdata':_0x12f2a3[_0xb661('0x37')]+','+(_0x195e7e[_0xb661('0x80')][_0xb661('0xb3')]||0xa),'interval':_0xb661('0xac')});}return respondWithRpcPromise(_0xb661('0xb4'),_0xb661('0xb5'),_0x195e7e);});}return respondWithRpcPromise('Start',_0xb661('0xb5'),_0x195e7e);})[_0xb661('0x1d')](function(_0x4e7dd6){if(_0x4e7dd6){var _0x179007=0xc8;var _0x56503b='receiveMessage';logger[_0xb661('0x25')]('WhatsappAccount,\x20%s,\x20%s,\x20%s',_0x56503b,_0x179007,_0xb661('0xb6'));logger['debug'](_0xb661('0xb7'),_0x56503b,_0x179007,_0xb661('0xb6'),JSON[_0xb661('0x20')](_0x4e7dd6));if(_0x195e7e[_0xb661('0x80')][_0xb661('0x8f')]==='twilio'){return _0x2a0280['status'](_0x179007)[_0xb661('0x2f')](_0xb661('0xb8'),_0xb661('0xb9'))[_0xb661('0x38')](_0xb661('0xba'));}else{return _0x2a0280[_0xb661('0x28')](_0x179007)[_0xb661('0x2a')](_0x4e7dd6);}}});})[_0xb661('0x54')](handleError(_0x2a0280,null));};exports[_0xb661('0x38')]=function(_0x396a98,_0x6d7622,_0x215caf){var _0x19f099,_0x27cc9d,_0x1ebe5d;if(_[_0xb661('0x9a')](_0x396a98[_0xb661('0x60')]['body'])||_0x396a98[_0xb661('0x60')][_0xb661('0x60')]===''){throw new db[(_0xb661('0x88'))][(_0xb661('0x89'))]('body\x20is\x20mandatory\x20and\x20not\x20empty');}if(_['isNil'](_0x396a98['body']['to'])){throw new db[(_0xb661('0x88'))]['ValidationError'](_0xb661('0xbb'));}_0x19f099=_0x396a98[_0xb661('0x60')]['to'];return db['WhatsappAccount'][_0xb661('0x5d')]({'where':{'id':_0x396a98[_0xb661('0x55')]['id']},'include':[{'model':db[_0xb661('0xbc')],'as':_0xb661('0xbd'),'include':[{'model':db[_0xb661('0x87')],'as':_0xb661('0xa3'),'where':{'mobile':_0x19f099},'limit':0x1,'order':[[_0xb661('0x8d'),_0xb661('0xa1')]]}]}]})[_0xb661('0x1d')](handleEntityNotFound(_0x6d7622,null))[_0xb661('0x1d')](function(_0x1c6c80){if(_0x1c6c80&&_0x1c6c80[_0xb661('0xbd')]){_0x27cc9d=_0x1c6c80[_0xb661('0x59')]({'plain':!![]});if(_0x27cc9d[_0xb661('0xbd')]&&_0x27cc9d[_0xb661('0xbd')][_0xb661('0xa3')][_0xb661('0x46')]){return _0x27cc9d[_0xb661('0xbd')]['Contacts'][0x0];}return db[_0xb661('0x87')][_0xb661('0x57')](_[_0xb661('0xa4')](_0x396a98['body'],{'firstName':_0x19f099,'mobile':_0x19f099,'phone':_0x19f099,'ListId':_0x27cc9d[_0xb661('0xbe')]}));}})[_0xb661('0x1d')](handleEntityNotFound(_0x6d7622,null))[_0xb661('0x1d')](function(_0x32215b){if(_0x32215b){_0x1ebe5d=_0x32215b;return db[_0xb661('0xbf')]['find']({'where':{'ContactId':_0x1ebe5d['id'],'closed':![],'WhatsappAccountId':_0x27cc9d['id']}})[_0xb661('0x1d')](function(_0x6fe16a){if(_0x6fe16a){return[_0x6fe16a,![]];}return db['WhatsappInteraction'][_0xb661('0x57')]({'UserId':_0x396a98[_0xb661('0x58')]['id'],'ContactId':_0x1ebe5d['id'],'WhatsappAccountId':_0x27cc9d['id'],'phone':_0x19f099,'firstMsgDirection':'out','Messages':[_[_0xb661('0x4f')](_0x396a98[_0xb661('0x60')],{'read':![],'body':_0x396a98[_0xb661('0x60')][_0xb661('0x60')],'phone':_0x19f099,'WhatsappAccountId':_0x27cc9d['id'],'UserId':_0x396a98['user']['id'],'ContactId':_0x1ebe5d['id']})]},{'include':[{'model':db['WhatsappMessage'],'as':_0xb661('0xc0')}]})['then'](function(_0x91eac5){return[_0x91eac5,!![]];});});}})[_0xb661('0xa6')](function(_0x23a9eb,_0x4d20e0){if(_0x4d20e0){return _0x23a9eb;}return db[_0xb661('0x84')][_0xb661('0x57')](_[_0xb661('0x4f')](_0x396a98[_0xb661('0x60')],{'read':![],'body':_0x396a98[_0xb661('0x60')][_0xb661('0x60')],'phone':_0x19f099,'WhatsappAccountId':_0x27cc9d['id'],'WhatsappInteractionId':_0x23a9eb['id'],'UserId':_0x396a98[_0xb661('0x58')]['id'],'ContactId':_0x1ebe5d['id']}))[_0xb661('0x1d')](function(_0x106907){_0x23a9eb['dataValues']['Messages']=[];_0x23a9eb[_0xb661('0xc1')][_0xb661('0xc0')][_0xb661('0xa8')](_0x106907[_0xb661('0xc1')]);return _0x23a9eb;});})['then'](respondWithResult(_0x6d7622,null))['catch'](handleError(_0x6d7622,null));};