c9b03e44888173875c2ec61bb69c82b4f8ab0a80
[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 _0xd89b=['CmContact','out','Messages','dataValues','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','to-csv','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','redis','localhost','socket.io-emitter','./whatsappAccount.socket','jayson/promise','http','request','then','info','request\x20sent','debug','WhatsappAccount,\x20%s,\x20%s,\x20%s','error','code','WhatsappAccount,\x20%s,\x20%s','message','result','catch','end','status','json','offset','undefined','limit','Content-Range','apply','reject','save','update','destroy','get','WhatsappAccounts','UserProfileResource','stack','name','index','Pause','map','WhatsappAccount','rawAttributes','fieldName','type','key','model','query','filters','intersection','fields','attributes','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','VIRTUAL','options','count','includeAll','include','show','params','mandatoryDispositionPause','keys','find','create','body','role','user','userProfileId','autoAssociation','describe','addDisposition','WhatsappAccountId','Disposition','getDispositions','findOne','findAll','rows','removeDispositions','ids','addAnswer','CannedAnswer','removeAnswers','addAgents','omit','spread','emit','removeAgents','isArray','userWhatsappAccount:remove','getAgents','User','addApplications','sequelize','Transaction','ISOLATION_LEVELS','READ_COMMITTED','WhatsappApplication','findAndCountAll','priority','sendStatus','getApplications','notify','whatsapp','Applications','account','statuses','state','read','WhatsappMessage','timestamp','applications','orderBy','asc','Sequelize','difference','createdAt','updatedAt','CompanyId','ListId','mobile','twilio','From','replace','whatsapp:','MessageSid','sinch','from','notifications','messageId','isNil','ValidationError','body\x20is\x20mandatory\x20and\x20not\x20empty','mapKey','mapKey\x20invalid,\x20please\x20use\x20one\x20of\x20these:\x20','CmList','Contacts','DESC','list','contact','WhatsappInteraction','interaction','created','autoclose','push','unmanaged','*,*,*,*','UserId','unshift','agent','waitForTheAssignedAgent','queueId','WhatsappQueue','queue','waitForTheAssignedQueue','Start','startRouting','receiveMessage','entity\x20found','WhatsappAccount,\x20%s,\x20%s,\x20%s,\x20%s','stringify','set','send','<?xml\x20version=\x221.0\x22\x20encoding=\x22UTF-8\x22?>\x0a<Response></Response>','to\x20is\x20mandatory','List'];(function(_0x4a5577,_0x449d77){var _0x4fd4e3=function(_0x373996){while(--_0x373996){_0x4a5577['push'](_0x4a5577['shift']());}};_0x4fd4e3(++_0x449d77);}(_0xd89b,0xca));var _0xbd89=function(_0xdea41a,_0x552987){_0xdea41a=_0xdea41a-0x0;var _0x15d0d8=_0xd89b[_0xdea41a];return _0x15d0d8;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0xbd89('0x0'));var zipdir=require(_0xbd89('0x1'));var jsonpatch=require(_0xbd89('0x2'));var rp=require(_0xbd89('0x3'));var moment=require(_0xbd89('0x4'));var BPromise=require(_0xbd89('0x5'));var Mustache=require(_0xbd89('0x6'));var util=require(_0xbd89('0x7'));var path=require(_0xbd89('0x8'));var sox=require('sox');var csv=require(_0xbd89('0x9'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require('fs-extra');var _=require('lodash');var squel=require(_0xbd89('0xa'));var crypto=require(_0xbd89('0xb'));var jsforce=require(_0xbd89('0xc'));var deskjs=require(_0xbd89('0xd'));var toCsv=require(_0xbd89('0x9'));var querystring=require(_0xbd89('0xe'));var Papa=require(_0xbd89('0xf'));var Redis=require(_0xbd89('0x10'));var authService=require('../../components/auth/service');var qs=require(_0xbd89('0x11'));var as=require(_0xbd89('0x12'));var hardwareService=require(_0xbd89('0x13'));var logger=require('../../config/logger')('api');var utils=require(_0xbd89('0x14'));var config=require(_0xbd89('0x15'));var licenseUtil=require(_0xbd89('0x16'));var db=require(_0xbd89('0x17'))['db'];config[_0xbd89('0x18')]=_['defaults'](config[_0xbd89('0x18')],{'host':_0xbd89('0x19'),'port':0x18eb});var socket=require(_0xbd89('0x1a'))(new Redis(config[_0xbd89('0x18')]));require(_0xbd89('0x1b'))['register'](socket);var jayson=require(_0xbd89('0x1c'));var client=jayson['client'][_0xbd89('0x1d')]({'port':0x232c});function respondWithRpcPromise(_0x12fc65,_0x1ba0f5,_0x1a6b59,_0x1e516c){return new BPromise(function(_0x5a659c,_0x1f857e){var _0x3f2ed2=_0x1e516c||client;return _0x3f2ed2[_0xbd89('0x1e')](_0x12fc65,_0x1a6b59)[_0xbd89('0x1f')](function(_0xa31b1d){logger[_0xbd89('0x20')]('WhatsappAccount,\x20%s,\x20%s',_0x1ba0f5,_0xbd89('0x21'));logger[_0xbd89('0x22')](_0xbd89('0x23'),_0x1ba0f5,'request\x20sent',JSON['stringify'](_0xa31b1d));if(_0xa31b1d[_0xbd89('0x24')]){if(_0xa31b1d['error'][_0xbd89('0x25')]===0x1f4){logger[_0xbd89('0x24')](_0xbd89('0x26'),_0x1ba0f5,_0xa31b1d['error'][_0xbd89('0x27')]);return _0x1f857e(_0xa31b1d['error'][_0xbd89('0x27')]);}logger[_0xbd89('0x24')](_0xbd89('0x26'),_0x1ba0f5,_0xa31b1d[_0xbd89('0x24')]['message']);return _0x5a659c(_0xa31b1d[_0xbd89('0x24')]['message']);}else{logger['info']('WhatsappAccount,\x20%s,\x20%s',_0x1ba0f5,_0xbd89('0x21'));_0x5a659c(_0xa31b1d[_0xbd89('0x28')]['message']);}})[_0xbd89('0x29')](function(_0x1ccebf){logger['error'](_0xbd89('0x26'),_0x1ba0f5,_0x1ccebf);_0x1f857e(_0x1ccebf);});});}function respondWithStatusCode(_0x5a5847,_0xdd08d9){_0xdd08d9=_0xdd08d9||0xcc;return function(_0x162eca){if(_0x162eca){return _0x5a5847['sendStatus'](_0xdd08d9);}return _0x5a5847['status'](_0xdd08d9)[_0xbd89('0x2a')]();};}function respondWithResult(_0x2d7552,_0x186e3c){_0x186e3c=_0x186e3c||0xc8;return function(_0x129f07){if(_0x129f07){return _0x2d7552[_0xbd89('0x2b')](_0x186e3c)[_0xbd89('0x2c')](_0x129f07);}};}function respondWithFilteredResult(_0x195f94,_0x5e6c11){return function(_0x360b54){if(_0x360b54){var _0x5afaeb=typeof _0x5e6c11[_0xbd89('0x2d')]===_0xbd89('0x2e')&&typeof _0x5e6c11[_0xbd89('0x2f')]===_0xbd89('0x2e');var _0xad238a=_0x360b54['count'];var _0xc44f28=_0x5afaeb?0x0:_0x5e6c11[_0xbd89('0x2d')];var _0x3affcd=_0x5afaeb?_0x360b54['count']:_0x5e6c11[_0xbd89('0x2d')]+_0x5e6c11[_0xbd89('0x2f')];var _0x2fcd7a;if(_0x3affcd>=_0xad238a){_0x3affcd=_0xad238a;_0x2fcd7a=0xc8;}else{_0x2fcd7a=0xce;}_0x195f94[_0xbd89('0x2b')](_0x2fcd7a);return _0x195f94['set'](_0xbd89('0x30'),_0xc44f28+'-'+_0x3affcd+'/'+_0xad238a)['json'](_0x360b54);}return null;};}function patchUpdates(_0x2fdaed){return function(_0x3aec27){try{jsonpatch[_0xbd89('0x31')](_0x3aec27,_0x2fdaed,!![]);}catch(_0x2dd753){return BPromise[_0xbd89('0x32')](_0x2dd753);}return _0x3aec27[_0xbd89('0x33')]();};}function saveUpdates(_0x3dbdca,_0x20de25){return function(_0x48865b){if(_0x48865b){return _0x48865b[_0xbd89('0x34')](_0x3dbdca)[_0xbd89('0x1f')](function(_0xc3ee2b){return _0xc3ee2b;});}return null;};}function removeEntity(_0x1d7f0b,_0x7719d){return function(_0x1546d){if(_0x1546d){return _0x1546d[_0xbd89('0x35')]()[_0xbd89('0x1f')](function(){var _0x4a582c=_0x1546d[_0xbd89('0x36')]({'plain':!![]});var _0x19942b=_0xbd89('0x37');return db[_0xbd89('0x38')][_0xbd89('0x35')]({'where':{'type':_0x19942b,'resourceId':_0x4a582c['id']}})['then'](function(){return _0x1546d;});})[_0xbd89('0x1f')](function(){_0x1d7f0b['status'](0xcc)[_0xbd89('0x2a')]();});}};}function handleEntityNotFound(_0x655878,_0x2714f7){return function(_0x1517d4){if(!_0x1517d4){_0x655878['sendStatus'](0x194);}return _0x1517d4;};}function handleError(_0x549135,_0x44212c){_0x44212c=_0x44212c||0x1f4;return function(_0x550cb4){logger['error'](_0x550cb4[_0xbd89('0x39')]);if(_0x550cb4[_0xbd89('0x3a')]){delete _0x550cb4['name'];}_0x549135['status'](_0x44212c)['send'](_0x550cb4);};}exports[_0xbd89('0x3b')]=function(_0x47b490,_0x6256ca){var _0x84a472={'include':[{'model':db[_0xbd89('0x3c')],'as':'mandatoryDispositionPause'}]},_0x12d2dd={},_0x163a8c={'count':0x0,'rows':[]};var _0x567a54=_[_0xbd89('0x3d')](db[_0xbd89('0x3e')][_0xbd89('0x3f')],function(_0x48ced3){return{'name':_0x48ced3[_0xbd89('0x40')],'type':_0x48ced3[_0xbd89('0x41')][_0xbd89('0x42')]};});_0x12d2dd[_0xbd89('0x43')]=_[_0xbd89('0x3d')](_0x567a54,_0xbd89('0x3a'));_0x12d2dd[_0xbd89('0x44')]=_['keys'](_0x47b490[_0xbd89('0x44')]);_0x12d2dd[_0xbd89('0x45')]=_[_0xbd89('0x46')](_0x12d2dd[_0xbd89('0x43')],_0x12d2dd[_0xbd89('0x44')]);_0x84a472['attributes']=_[_0xbd89('0x46')](_0x12d2dd[_0xbd89('0x43')],qs[_0xbd89('0x47')](_0x47b490[_0xbd89('0x44')][_0xbd89('0x47')]));_0x84a472['attributes']=_0x84a472[_0xbd89('0x48')][_0xbd89('0x49')]?_0x84a472['attributes']:_0x12d2dd[_0xbd89('0x43')];if(!_0x47b490[_0xbd89('0x44')][_0xbd89('0x4a')](_0xbd89('0x4b'))){_0x84a472[_0xbd89('0x2f')]=qs[_0xbd89('0x2f')](_0x47b490[_0xbd89('0x44')][_0xbd89('0x2f')]);_0x84a472[_0xbd89('0x2d')]=qs['offset'](_0x47b490[_0xbd89('0x44')]['offset']);}_0x84a472[_0xbd89('0x4c')]=qs[_0xbd89('0x4d')](_0x47b490[_0xbd89('0x44')][_0xbd89('0x4d')]);_0x84a472[_0xbd89('0x4e')]=qs['filters'](_[_0xbd89('0x4f')](_0x47b490[_0xbd89('0x44')],_0x12d2dd[_0xbd89('0x45')]),_0x567a54);if(_0x47b490['query'][_0xbd89('0x50')]){_0x84a472['where']=_[_0xbd89('0x51')](_0x84a472['where'],{'$or':_[_0xbd89('0x3d')](_0x567a54,function(_0x38d3d1){if(_0x38d3d1[_0xbd89('0x41')]!==_0xbd89('0x52')){var _0x4abff6={};_0x4abff6[_0x38d3d1['name']]={'$like':'%'+_0x47b490[_0xbd89('0x44')][_0xbd89('0x50')]+'%'};return _0x4abff6;}})});}_0x84a472=_[_0xbd89('0x51')]({},_0x84a472,_0x47b490[_0xbd89('0x53')]);var _0x115607={'where':_0x84a472[_0xbd89('0x4e')]};return db[_0xbd89('0x3e')][_0xbd89('0x54')](_0x115607)[_0xbd89('0x1f')](function(_0x20b199){_0x163a8c['count']=_0x20b199;if(_0x47b490[_0xbd89('0x44')][_0xbd89('0x55')]){_0x84a472[_0xbd89('0x56')]=[{'all':!![]}];}return db[_0xbd89('0x3e')]['findAll'](_0x84a472);})[_0xbd89('0x1f')](function(_0x23c6d3){_0x163a8c['rows']=_0x23c6d3;return _0x163a8c;})[_0xbd89('0x1f')](respondWithFilteredResult(_0x6256ca,_0x84a472))[_0xbd89('0x29')](handleError(_0x6256ca,null));};exports[_0xbd89('0x57')]=function(_0x237e39,_0x332938){var _0x50a48b={'raw':![],'where':{'id':_0x237e39[_0xbd89('0x58')]['id']},'include':[{'model':db[_0xbd89('0x3c')],'as':_0xbd89('0x59')}]},_0x5a0a2b={};_0x5a0a2b[_0xbd89('0x43')]=_[_0xbd89('0x5a')](db[_0xbd89('0x3e')]['rawAttributes']);_0x5a0a2b[_0xbd89('0x44')]=_[_0xbd89('0x5a')](_0x237e39[_0xbd89('0x44')]);_0x5a0a2b[_0xbd89('0x45')]=_[_0xbd89('0x46')](_0x5a0a2b['model'],_0x5a0a2b['query']);_0x50a48b[_0xbd89('0x48')]=_[_0xbd89('0x46')](_0x5a0a2b['model'],qs['fields'](_0x237e39['query'][_0xbd89('0x47')]));_0x50a48b[_0xbd89('0x48')]=_0x50a48b[_0xbd89('0x48')][_0xbd89('0x49')]?_0x50a48b['attributes']:_0x5a0a2b[_0xbd89('0x43')];if(_0x237e39[_0xbd89('0x44')][_0xbd89('0x55')]){_0x50a48b[_0xbd89('0x56')]=[{'all':!![]}];}_0x50a48b=_[_0xbd89('0x51')]({},_0x50a48b,_0x237e39[_0xbd89('0x53')]);return db[_0xbd89('0x3e')][_0xbd89('0x5b')](_0x50a48b)[_0xbd89('0x1f')](handleEntityNotFound(_0x332938,null))[_0xbd89('0x1f')](respondWithResult(_0x332938,null))[_0xbd89('0x29')](handleError(_0x332938,null));};exports[_0xbd89('0x5c')]=function(_0x26520b,_0x17245f){return db[_0xbd89('0x3e')][_0xbd89('0x5c')](_0x26520b[_0xbd89('0x5d')],{})[_0xbd89('0x1f')](function(_0x4e0821){var _0xc107c9=_0x26520b['user'][_0xbd89('0x36')]({'plain':!![]});if(!_0xc107c9)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0xc107c9[_0xbd89('0x5e')]===_0xbd89('0x5f')){var _0x5975d9=_0x4e0821[_0xbd89('0x36')]({'plain':!![]});var _0x3597b0=_0xbd89('0x37');return db['UserProfileSection'][_0xbd89('0x5b')]({'where':{'name':_0x3597b0,'userProfileId':_0xc107c9[_0xbd89('0x60')]},'raw':!![]})['then'](function(_0x47012f){if(_0x47012f&&_0x47012f[_0xbd89('0x61')]===0x0){return db[_0xbd89('0x38')][_0xbd89('0x5c')]({'name':_0x5975d9['name'],'resourceId':_0x5975d9['id'],'type':_0x47012f[_0xbd89('0x3a')],'sectionId':_0x47012f['id']},{})[_0xbd89('0x1f')](function(){return _0x4e0821;});}else{return _0x4e0821;}})[_0xbd89('0x29')](function(_0x5906bd){logger[_0xbd89('0x24')]('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x5906bd);throw _0x5906bd;});}return _0x4e0821;})[_0xbd89('0x1f')](respondWithResult(_0x17245f,0xc9))[_0xbd89('0x29')](handleError(_0x17245f,null));};exports[_0xbd89('0x34')]=function(_0x584eaf,_0x2e97ed){if(_0x584eaf[_0xbd89('0x5d')]['id']){delete _0x584eaf[_0xbd89('0x5d')]['id'];}return db[_0xbd89('0x3e')][_0xbd89('0x5b')]({'where':{'id':_0x584eaf[_0xbd89('0x58')]['id']},'include':[{'model':db[_0xbd89('0x3c')],'as':'mandatoryDispositionPause'}]})[_0xbd89('0x1f')](handleEntityNotFound(_0x2e97ed,null))[_0xbd89('0x1f')](saveUpdates(_0x584eaf[_0xbd89('0x5d')],null))['then'](respondWithResult(_0x2e97ed,null))['catch'](handleError(_0x2e97ed,null));};exports[_0xbd89('0x35')]=function(_0x31a573,_0x368f0b){return db[_0xbd89('0x3e')]['find']({'where':{'id':_0x31a573[_0xbd89('0x58')]['id']}})['then'](handleEntityNotFound(_0x368f0b,null))['then'](removeEntity(_0x368f0b,null))['catch'](handleError(_0x368f0b,null));};exports[_0xbd89('0x62')]=function(_0x4be061,_0x2a58d2){return db[_0xbd89('0x3e')][_0xbd89('0x62')]()[_0xbd89('0x1f')](respondWithResult(_0x2a58d2,null))[_0xbd89('0x29')](handleError(_0x2a58d2,null));};exports[_0xbd89('0x63')]=function(_0x4d7a19,_0x36269d,_0x5fb844){if(_0x4d7a19[_0xbd89('0x5d')]['id']){delete _0x4d7a19['body']['id'];}return db[_0xbd89('0x3e')]['find']({'where':{'id':_0x4d7a19[_0xbd89('0x58')]['id']}})['then'](handleEntityNotFound(_0x36269d,null))[_0xbd89('0x1f')](function(_0x1d7e1a){if(_0x1d7e1a){_0x4d7a19['body'][_0xbd89('0x64')]=_0x1d7e1a['id'];return db[_0xbd89('0x65')][_0xbd89('0x5c')](_0x4d7a19[_0xbd89('0x5d')]);}})['then'](respondWithResult(_0x36269d,null))[_0xbd89('0x29')](handleError(_0x36269d,null));};exports[_0xbd89('0x66')]=function(_0x2df7e5,_0x34cfe4,_0x408000){var _0x4ed2ab={'raw':![],'where':{}};var _0x104d24={};var _0x5d5dad={'count':0x0,'rows':[]};return db[_0xbd89('0x3e')][_0xbd89('0x67')]({'where':{'id':_0x2df7e5['params']['id']}})['then'](handleEntityNotFound(_0x34cfe4,null))['then'](function(_0x304763){if(_0x304763){_0x104d24[_0xbd89('0x43')]=_[_0xbd89('0x5a')](db[_0xbd89('0x65')][_0xbd89('0x3f')]);_0x104d24['query']=_[_0xbd89('0x5a')](_0x2df7e5['query']);_0x104d24[_0xbd89('0x45')]=_['intersection'](_0x104d24['model'],_0x104d24['query']);_0x4ed2ab[_0xbd89('0x48')]=_['intersection'](_0x104d24[_0xbd89('0x43')],qs[_0xbd89('0x47')](_0x2df7e5[_0xbd89('0x44')][_0xbd89('0x47')]));_0x4ed2ab[_0xbd89('0x48')]=_0x4ed2ab[_0xbd89('0x48')][_0xbd89('0x49')]?_0x4ed2ab[_0xbd89('0x48')]:_0x104d24[_0xbd89('0x43')];if(!_0x2df7e5[_0xbd89('0x44')][_0xbd89('0x4a')](_0xbd89('0x4b'))){_0x4ed2ab[_0xbd89('0x2f')]=qs[_0xbd89('0x2f')](_0x2df7e5[_0xbd89('0x44')][_0xbd89('0x2f')]);_0x4ed2ab[_0xbd89('0x2d')]=qs[_0xbd89('0x2d')](_0x2df7e5[_0xbd89('0x44')][_0xbd89('0x2d')]);}_0x4ed2ab[_0xbd89('0x4c')]=qs[_0xbd89('0x4d')](_0x2df7e5['query']['sort']);_0x4ed2ab[_0xbd89('0x4e')]=qs[_0xbd89('0x45')](_[_0xbd89('0x4f')](_0x2df7e5[_0xbd89('0x44')],_0x104d24[_0xbd89('0x45')]));_0x4ed2ab['where'][_0xbd89('0x64')]=_0x304763['id'];if(_0x2df7e5['query'][_0xbd89('0x50')]){_0x4ed2ab[_0xbd89('0x4e')]=_['merge'](_0x4ed2ab[_0xbd89('0x4e')],{'$or':_['map'](_0x4ed2ab[_0xbd89('0x48')],function(_0x2f6f4d){var _0x583530={};_0x583530[_0x2f6f4d]={'$like':'%'+_0x2df7e5[_0xbd89('0x44')][_0xbd89('0x50')]+'%'};return _0x583530;})});}_0x4ed2ab=_[_0xbd89('0x51')]({},_0x4ed2ab,_0x2df7e5[_0xbd89('0x53')]);return db[_0xbd89('0x65')][_0xbd89('0x54')]({'where':_0x4ed2ab['where']})[_0xbd89('0x1f')](function(_0x3af97a){_0x5d5dad[_0xbd89('0x54')]=_0x3af97a;if(_0x2df7e5[_0xbd89('0x44')][_0xbd89('0x55')]){_0x4ed2ab[_0xbd89('0x56')]=[{'all':!![]}];}return db[_0xbd89('0x65')][_0xbd89('0x68')](_0x4ed2ab);})[_0xbd89('0x1f')](function(_0x27e59f){_0x5d5dad[_0xbd89('0x69')]=_0x27e59f;return _0x5d5dad;});}})['then'](respondWithFilteredResult(_0x34cfe4,_0x4ed2ab))['catch'](handleError(_0x34cfe4,null));};exports['removeDispositions']=function(_0x4bea5f,_0x224ee0,_0x51635d){return db[_0xbd89('0x3e')][_0xbd89('0x5b')]({'where':{'id':_0x4bea5f['params']['id']}})[_0xbd89('0x1f')](handleEntityNotFound(_0x224ee0,null))['then'](function(_0x5322f0){if(_0x5322f0){return _0x5322f0[_0xbd89('0x6a')](_0x4bea5f[_0xbd89('0x44')][_0xbd89('0x6b')]);}})['then'](respondWithStatusCode(_0x224ee0,null))[_0xbd89('0x29')](handleError(_0x224ee0,null));};exports[_0xbd89('0x6c')]=function(_0x2603bb,_0x2e788c,_0x544ad4){if(_0x2603bb['body']['id']){delete _0x2603bb[_0xbd89('0x5d')]['id'];}return db[_0xbd89('0x3e')][_0xbd89('0x5b')]({'where':{'id':_0x2603bb[_0xbd89('0x58')]['id']}})[_0xbd89('0x1f')](handleEntityNotFound(_0x2e788c,null))[_0xbd89('0x1f')](function(_0x4b3346){if(_0x4b3346){_0x2603bb[_0xbd89('0x5d')]['WhatsappAccountId']=_0x4b3346['id'];return db[_0xbd89('0x6d')][_0xbd89('0x5c')](_0x2603bb['body']);}})[_0xbd89('0x1f')](respondWithResult(_0x2e788c,null))[_0xbd89('0x29')](handleError(_0x2e788c,null));};exports['getAnswers']=function(_0x265afe,_0x5e5ae7,_0x14c86b){var _0x593bf7={'raw':![],'where':{}};var _0x2532e9={};var _0x691a31={'count':0x0,'rows':[]};return db[_0xbd89('0x3e')][_0xbd89('0x67')]({'where':{'id':_0x265afe[_0xbd89('0x58')]['id']}})['then'](handleEntityNotFound(_0x5e5ae7,null))['then'](function(_0x3d25b8){if(_0x3d25b8){_0x2532e9[_0xbd89('0x43')]=_[_0xbd89('0x5a')](db[_0xbd89('0x6d')][_0xbd89('0x3f')]);_0x2532e9[_0xbd89('0x44')]=_[_0xbd89('0x5a')](_0x265afe[_0xbd89('0x44')]);_0x2532e9[_0xbd89('0x45')]=_[_0xbd89('0x46')](_0x2532e9['model'],_0x2532e9[_0xbd89('0x44')]);_0x593bf7['attributes']=_[_0xbd89('0x46')](_0x2532e9[_0xbd89('0x43')],qs[_0xbd89('0x47')](_0x265afe[_0xbd89('0x44')][_0xbd89('0x47')]));_0x593bf7[_0xbd89('0x48')]=_0x593bf7[_0xbd89('0x48')][_0xbd89('0x49')]?_0x593bf7[_0xbd89('0x48')]:_0x2532e9[_0xbd89('0x43')];if(!_0x265afe[_0xbd89('0x44')]['hasOwnProperty'](_0xbd89('0x4b'))){_0x593bf7[_0xbd89('0x2f')]=qs[_0xbd89('0x2f')](_0x265afe[_0xbd89('0x44')][_0xbd89('0x2f')]);_0x593bf7[_0xbd89('0x2d')]=qs[_0xbd89('0x2d')](_0x265afe['query'][_0xbd89('0x2d')]);}_0x593bf7[_0xbd89('0x4c')]=qs[_0xbd89('0x4d')](_0x265afe[_0xbd89('0x44')][_0xbd89('0x4d')]);_0x593bf7['where']=qs[_0xbd89('0x45')](_[_0xbd89('0x4f')](_0x265afe[_0xbd89('0x44')],_0x2532e9[_0xbd89('0x45')]));_0x593bf7[_0xbd89('0x4e')][_0xbd89('0x64')]=_0x3d25b8['id'];if(_0x265afe[_0xbd89('0x44')]['filter']){_0x593bf7[_0xbd89('0x4e')]=_[_0xbd89('0x51')](_0x593bf7['where'],{'$or':_[_0xbd89('0x3d')](_0x593bf7[_0xbd89('0x48')],function(_0x619b56){var _0x593a60={};_0x593a60[_0x619b56]={'$like':'%'+_0x265afe[_0xbd89('0x44')]['filter']+'%'};return _0x593a60;})});}_0x593bf7=_['merge']({},_0x593bf7,_0x265afe[_0xbd89('0x53')]);return db[_0xbd89('0x6d')]['count']({'where':_0x593bf7[_0xbd89('0x4e')]})[_0xbd89('0x1f')](function(_0x2fd14c){_0x691a31[_0xbd89('0x54')]=_0x2fd14c;if(_0x265afe[_0xbd89('0x44')][_0xbd89('0x55')]){_0x593bf7[_0xbd89('0x56')]=[{'all':!![]}];}return db[_0xbd89('0x6d')][_0xbd89('0x68')](_0x593bf7);})[_0xbd89('0x1f')](function(_0x70104e){_0x691a31[_0xbd89('0x69')]=_0x70104e;return _0x691a31;});}})[_0xbd89('0x1f')](respondWithFilteredResult(_0x5e5ae7,_0x593bf7))['catch'](handleError(_0x5e5ae7,null));};exports['removeAnswers']=function(_0xad4be6,_0x23319f,_0x5e89dc){return db[_0xbd89('0x3e')][_0xbd89('0x5b')]({'where':{'id':_0xad4be6[_0xbd89('0x58')]['id']}})[_0xbd89('0x1f')](handleEntityNotFound(_0x23319f,null))[_0xbd89('0x1f')](function(_0x131a87){if(_0x131a87){return _0x131a87[_0xbd89('0x6e')](_0xad4be6[_0xbd89('0x44')][_0xbd89('0x6b')]);}})['then'](respondWithStatusCode(_0x23319f,null))[_0xbd89('0x29')](handleError(_0x23319f,null));};exports[_0xbd89('0x6f')]=function(_0x46bf40,_0x12e44e,_0xfda6c1){return db['WhatsappAccount'][_0xbd89('0x5b')]({'where':{'id':_0x46bf40[_0xbd89('0x58')]['id']}})['then'](handleEntityNotFound(_0x12e44e,null))[_0xbd89('0x1f')](function(_0x50b8da){if(_0x50b8da){return _0x50b8da['addAgents'](_0x46bf40['body'][_0xbd89('0x6b')],_[_0xbd89('0x70')](_0x46bf40['body'],['ids','id'])||{})[_0xbd89('0x71')](function(_0x1b7cba){for(var _0x1ec779=0x0;_0x1ec779<_0x46bf40[_0xbd89('0x5d')][_0xbd89('0x6b')][_0xbd89('0x49')];_0x1ec779+=0x1){socket[_0xbd89('0x72')]('userWhatsappAccount:save',{'UserId':Number(_0x46bf40[_0xbd89('0x5d')]['ids'][_0x1ec779]),'WhatsappAccountId':Number(_0x46bf40['params']['id'])});}return _0x1b7cba;});}})[_0xbd89('0x1f')](respondWithResult(_0x12e44e,null))[_0xbd89('0x29')](handleError(_0x12e44e,null));};exports[_0xbd89('0x73')]=function(_0x2cc6ee,_0x3c0d53,_0x1a2b74){return db['WhatsappAccount'][_0xbd89('0x5b')]({'where':{'id':_0x2cc6ee['params']['id']}})[_0xbd89('0x1f')](handleEntityNotFound(_0x3c0d53,null))[_0xbd89('0x1f')](function(_0x47073a){if(_0x47073a){return _0x47073a['removeAgents'](_0x2cc6ee['query']['ids'])[_0xbd89('0x1f')](function(){if(_[_0xbd89('0x74')](_0x2cc6ee[_0xbd89('0x44')][_0xbd89('0x6b')])){for(var _0x574124=0x0;_0x574124<_0x2cc6ee[_0xbd89('0x44')][_0xbd89('0x6b')][_0xbd89('0x49')];_0x574124+=0x1){socket['emit'](_0xbd89('0x75'),{'UserId':Number(_0x2cc6ee['query'][_0xbd89('0x6b')][_0x574124]),'WhatsappAccountId':Number(_0x2cc6ee[_0xbd89('0x58')]['id'])});}}else{socket[_0xbd89('0x72')](_0xbd89('0x75'),{'UserId':Number(_0x2cc6ee[_0xbd89('0x44')][_0xbd89('0x6b')]),'WhatsappAccountId':Number(_0x2cc6ee[_0xbd89('0x58')]['id'])});}});}})['then'](respondWithStatusCode(_0x3c0d53,null))[_0xbd89('0x29')](handleError(_0x3c0d53,null));};exports[_0xbd89('0x76')]=function(_0x50c8e0,_0xbf80c2,_0xb8b265){var _0x3eca14={};var _0x33872e={};var _0x459c49;var _0x26bc3f;return db[_0xbd89('0x3e')][_0xbd89('0x67')]({'where':{'id':_0x50c8e0[_0xbd89('0x58')]['id']}})['then'](handleEntityNotFound(_0xbf80c2,null))['then'](function(_0x105b63){if(_0x105b63){_0x459c49=_0x105b63;_0x33872e['model']=_['keys'](db[_0xbd89('0x77')][_0xbd89('0x3f')]);_0x33872e[_0xbd89('0x44')]=_[_0xbd89('0x5a')](_0x50c8e0['query']);_0x33872e[_0xbd89('0x45')]=_[_0xbd89('0x46')](_0x33872e['model'],_0x33872e[_0xbd89('0x44')]);_0x3eca14[_0xbd89('0x48')]=_['intersection'](_0x33872e[_0xbd89('0x43')],qs[_0xbd89('0x47')](_0x50c8e0['query'][_0xbd89('0x47')]));_0x3eca14['attributes']=_0x3eca14['attributes'][_0xbd89('0x49')]?_0x3eca14['attributes']:_0x33872e['model'];_0x3eca14['order']=qs['sort'](_0x50c8e0['query'][_0xbd89('0x4d')]);_0x3eca14[_0xbd89('0x4e')]=qs[_0xbd89('0x45')](_[_0xbd89('0x4f')](_0x50c8e0['query'],_0x33872e[_0xbd89('0x45')]));if(_0x50c8e0['query'][_0xbd89('0x50')]){_0x3eca14[_0xbd89('0x4e')]=_[_0xbd89('0x51')](_0x3eca14[_0xbd89('0x4e')],{'$or':_['map'](_0x3eca14[_0xbd89('0x48')],function(_0x47f520){var _0x234d33={};_0x234d33[_0x47f520]={'$like':'%'+_0x50c8e0['query']['filter']+'%'};return _0x234d33;})});}_0x3eca14=_[_0xbd89('0x51')]({},_0x3eca14,_0x50c8e0[_0xbd89('0x53')]);return _0x459c49[_0xbd89('0x76')](_0x3eca14);}})[_0xbd89('0x1f')](function(_0x575816){if(_0x575816){_0x26bc3f=_0x575816['length'];if(!_0x50c8e0[_0xbd89('0x44')]['hasOwnProperty'](_0xbd89('0x4b'))){_0x3eca14[_0xbd89('0x2f')]=qs[_0xbd89('0x2f')](_0x50c8e0['query'][_0xbd89('0x2f')]);_0x3eca14[_0xbd89('0x2d')]=qs[_0xbd89('0x2d')](_0x50c8e0[_0xbd89('0x44')][_0xbd89('0x2d')]);}return _0x459c49['getAgents'](_0x3eca14);}})[_0xbd89('0x1f')](function(_0x3455a9){if(_0x3455a9){return _0x3455a9?{'count':_0x26bc3f,'rows':_0x3455a9}:null;}})['then'](respondWithResult(_0xbf80c2,null))[_0xbd89('0x29')](handleError(_0xbf80c2,null));};exports[_0xbd89('0x78')]=function(_0x673da3,_0x4c0314){var _0x194df1=_0x673da3[_0xbd89('0x58')]['id'];var _0x51430a=_0x673da3[_0xbd89('0x5d')];var _0x2f2cb7=0xc8;var _0x4d5354=null;return db[_0xbd89('0x79')]['transaction']({'isolationLevel':db[_0xbd89('0x79')][_0xbd89('0x7a')][_0xbd89('0x7b')][_0xbd89('0x7c')]},function(_0x517b8a){return db[_0xbd89('0x3e')][_0xbd89('0x67')]({'where':{'id':_0x194df1},'transaction':_0x517b8a})[_0xbd89('0x1f')](function(_0x3c3601){if(_0x3c3601){return db['WhatsappApplication'][_0xbd89('0x35')]({'where':{'WhatsappAccountId':_0x194df1},'transaction':_0x517b8a})['then'](function(){var _0x47b772=_[_0xbd89('0x3d')](_0x51430a,function(_0x271190){_0x271190[_0xbd89('0x64')]=_0x194df1;return _0x271190;});return db[_0xbd89('0x7d')]['bulkCreate'](_0x47b772,{'transaction':_0x517b8a});});}else{_0x2f2cb7=0x194;_0x4d5354=[];}});})['then'](function(){if(_0x2f2cb7!==0x194){return db[_0xbd89('0x7d')][_0xbd89('0x7e')]({'where':{'WhatsappAccountId':_0x194df1},'order':_0xbd89('0x7f')})[_0xbd89('0x1f')](function(_0xdadaea){_0x4d5354=_0xdadaea;});}})[_0xbd89('0x29')](function(_0x431620){_0x2f2cb7=0x1f4;logger[_0xbd89('0x24')](_0x431620[_0xbd89('0x39')]);if(_0x431620[_0xbd89('0x3a')]){delete _0x431620[_0xbd89('0x3a')];}_0x4d5354=_0x431620;})['finally'](function(){if(_0x4d5354===null){_0x4c0314[_0xbd89('0x80')](_0x2f2cb7);}else{if(_0x2f2cb7===0x1f4){_0x4c0314[_0xbd89('0x2b')](_0x2f2cb7)['send'](_0x4d5354);}else{_0x4c0314['status'](_0x2f2cb7)[_0xbd89('0x2c')](_0x4d5354);}}});};exports[_0xbd89('0x81')]=function(_0x248fe2,_0x229e17,_0x31ec19){var _0x15cf48={};var _0x59b190={};var _0x3a7c7a;var _0x104f2b;return db[_0xbd89('0x3e')][_0xbd89('0x67')]({'where':{'id':_0x248fe2[_0xbd89('0x58')]['id']}})[_0xbd89('0x1f')](handleEntityNotFound(_0x229e17,null))[_0xbd89('0x1f')](function(_0x278d67){if(_0x278d67){_0x3a7c7a=_0x278d67;_0x59b190[_0xbd89('0x43')]=_['keys'](db[_0xbd89('0x7d')]['rawAttributes']);_0x59b190[_0xbd89('0x44')]=_[_0xbd89('0x5a')](_0x248fe2['query']);_0x59b190[_0xbd89('0x45')]=_[_0xbd89('0x46')](_0x59b190[_0xbd89('0x43')],_0x59b190[_0xbd89('0x44')]);_0x15cf48['attributes']=_[_0xbd89('0x46')](_0x59b190[_0xbd89('0x43')],qs['fields'](_0x248fe2[_0xbd89('0x44')][_0xbd89('0x47')]));_0x15cf48[_0xbd89('0x48')]=_0x15cf48[_0xbd89('0x48')][_0xbd89('0x49')]?_0x15cf48[_0xbd89('0x48')]:_0x59b190[_0xbd89('0x43')];_0x15cf48['order']=qs[_0xbd89('0x4d')](_0x248fe2['query'][_0xbd89('0x4d')]);_0x15cf48[_0xbd89('0x4e')]=qs[_0xbd89('0x45')](_[_0xbd89('0x4f')](_0x248fe2[_0xbd89('0x44')],_0x59b190[_0xbd89('0x45')]));if(_0x248fe2[_0xbd89('0x44')]['filter']){_0x15cf48[_0xbd89('0x4e')]=_[_0xbd89('0x51')](_0x15cf48[_0xbd89('0x4e')],{'$or':_[_0xbd89('0x3d')](_0x15cf48[_0xbd89('0x48')],function(_0x2f8235){var _0x1ec76d={};_0x1ec76d[_0x2f8235]={'$like':'%'+_0x248fe2[_0xbd89('0x44')][_0xbd89('0x50')]+'%'};return _0x1ec76d;})});}_0x15cf48=_[_0xbd89('0x51')]({},_0x15cf48,_0x248fe2[_0xbd89('0x53')]);return _0x3a7c7a[_0xbd89('0x81')](_0x15cf48);}})[_0xbd89('0x1f')](function(_0x26dfea){if(_0x26dfea){_0x104f2b=_0x26dfea['length'];if(!_0x248fe2['query'][_0xbd89('0x4a')](_0xbd89('0x4b'))){_0x15cf48['limit']=qs['limit'](_0x248fe2[_0xbd89('0x44')]['limit']);_0x15cf48[_0xbd89('0x2d')]=qs[_0xbd89('0x2d')](_0x248fe2[_0xbd89('0x44')][_0xbd89('0x2d')]);}return _0x3a7c7a[_0xbd89('0x81')](_0x15cf48);}})[_0xbd89('0x1f')](function(_0x35477d){if(_0x35477d){return _0x35477d?{'count':_0x104f2b,'rows':_0x35477d}:null;}})['then'](respondWithResult(_0x229e17,null))[_0xbd89('0x29')](handleError(_0x229e17,null));};exports[_0xbd89('0x82')]=function(_0x581192,_0x91e596,_0x41dfc7){var _0x3183a9={'channel':_0xbd89('0x83')};var _0x508896=[];var _0x250244=[];var _0x5ca58f={};return db[_0xbd89('0x3e')][_0xbd89('0x5b')]({'where':{'id':_0x581192['params']['id']},'include':[{'model':db[_0xbd89('0x7d')],'as':_0xbd89('0x84')}]})[_0xbd89('0x1f')](handleEntityNotFound(_0x91e596,null))[_0xbd89('0x1f')](function(_0x3f7d05){_0x3183a9[_0xbd89('0x85')]=_0x3f7d05;if(_0x3183a9[_0xbd89('0x85')]&&_0x3183a9[_0xbd89('0x85')][_0xbd89('0x41')]==='sinch'&&_0x581192[_0xbd89('0x5d')]['statuses']){if(_0x581192['body'][_0xbd89('0x86')][_0xbd89('0x49')]===0x0)return;if(_0x581192['body'][_0xbd89('0x86')][0x0][_0xbd89('0x87')]!==_0xbd89('0x88'))return;return db[_0xbd89('0x89')]['update']({'read':!![],'readAt':_0x581192[_0xbd89('0x5d')][_0xbd89('0x86')][0x0][_0xbd89('0x8a')]},{'where':{'messageId':_0x581192[_0xbd89('0x5d')]['statuses'][0x0]['message_id']},'individualHooks':!![]})[_0xbd89('0x1f')](function(_0x155f4c){return _0x91e596[_0xbd89('0x2b')](0xc8)['json'](_0x155f4c);});}_0x3183a9[_0xbd89('0x8b')]=_[_0xbd89('0x8c')](_0x3f7d05[_0xbd89('0x84')],[_0xbd89('0x7f')],[_0xbd89('0x8d')]);if(_0x3183a9[_0xbd89('0x85')][_0xbd89('0x84')]){delete _0x3183a9['account'][_0xbd89('0x84')];}return db['CmContact'][_0xbd89('0x62')]()[_0xbd89('0x1f')](function(_0x474250){if(!_0x474250){throw new db[(_0xbd89('0x8e'))]['ValidationError']('no\x20available\x20attributes');}_0x508896=_[_0xbd89('0x8f')](_[_0xbd89('0x5a')](_0x474250),[_0xbd89('0x90'),_0xbd89('0x91')]);_0x250244=_[_0xbd89('0x8f')](_[_0xbd89('0x5a')](_0x474250),[_0xbd89('0x90'),'updatedAt',_0xbd89('0x92'),_0xbd89('0x93')]);_0x3183a9[_0xbd89('0x5d')]={'mapKey':_0xbd89('0x94')};if(_0x3183a9[_0xbd89('0x85')]&&_0x3183a9[_0xbd89('0x85')][_0xbd89('0x41')]===_0xbd89('0x95')){_0x3183a9[_0xbd89('0x5d')]['from']=_0x581192[_0xbd89('0x5d')][_0xbd89('0x96')][_0xbd89('0x97')](_0xbd89('0x98'),'');_0x3183a9['body'][_0xbd89('0x5d')]=_0x581192[_0xbd89('0x5d')]['Body'];_0x3183a9[_0xbd89('0x5d')]['messageId']=_0x581192[_0xbd89('0x5d')][_0xbd89('0x99')];}if(_0x3183a9[_0xbd89('0x85')]&&_0x3183a9[_0xbd89('0x85')]['type']===_0xbd89('0x9a')){_0x3183a9['body'][_0xbd89('0x9b')]=_0x581192[_0xbd89('0x5d')][_0xbd89('0x9c')][0x0][_0xbd89('0x9b')];_0x3183a9[_0xbd89('0x5d')][_0xbd89('0x5d')]=_0x581192[_0xbd89('0x5d')][_0xbd89('0x9c')][0x0]['message'][_0xbd89('0x5d')];_0x3183a9[_0xbd89('0x5d')][_0xbd89('0x9d')]=_0x581192[_0xbd89('0x5d')]['notifications'][0x0]['message_id'];}if(_0x3183a9[_0xbd89('0x5d')]['id']){delete _0x3183a9[_0xbd89('0x5d')]['id'];}if(_[_0xbd89('0x9e')](_0x3183a9[_0xbd89('0x5d')]['from'])){throw new db[(_0xbd89('0x8e'))][(_0xbd89('0x9f'))]('from\x20is\x20mandatory');}if(_['isNil'](_0x3183a9[_0xbd89('0x5d')][_0xbd89('0x5d')])||_0x3183a9[_0xbd89('0x5d')][_0xbd89('0x5d')]===''){throw new db['Sequelize'][(_0xbd89('0x9f'))](_0xbd89('0xa0'));}if(_['isNil'](_0x3183a9[_0xbd89('0x5d')][_0xbd89('0xa1')])){throw new db[(_0xbd89('0x8e'))][(_0xbd89('0x9f'))]('mapKey\x20is\x20mandatory,\x20please\x20use\x20one\x20of\x20these:\x20'+_0x250244);}if(!_['includes'](_0x250244,_0x3183a9[_0xbd89('0x5d')][_0xbd89('0xa1')])){throw new db[(_0xbd89('0x8e'))][(_0xbd89('0x9f'))](_0xbd89('0xa2')+_0x250244);}_0x5ca58f[_0x3183a9[_0xbd89('0x5d')]['mapKey']]=_0x3183a9['body'][_0xbd89('0x9b')];return db[_0xbd89('0xa3')][_0xbd89('0x5b')]({'where':{'id':_0x3183a9[_0xbd89('0x85')][_0xbd89('0x93')]},'include':[{'model':db['CmContact'],'as':_0xbd89('0xa4'),'where':_0x5ca58f,'limit':0x1,'order':[[_0xbd89('0x91'),_0xbd89('0xa5')]]}]});})[_0xbd89('0x1f')](handleEntityNotFound(_0x91e596,null))[_0xbd89('0x1f')](function(_0x56ba0c){if(_0x56ba0c){_0x3183a9[_0xbd89('0xa6')]=_[_0xbd89('0x70')](_0x56ba0c,[_0xbd89('0xa4')]);if(_0x56ba0c[_0xbd89('0xa4')]['length']){return _0x56ba0c[_0xbd89('0xa4')][0x0];}var _0xb8c72b=_['defaults'](_0x3183a9[_0xbd89('0x5d')],{'firstName':_0x3183a9[_0xbd89('0x5d')]['from'],'ListId':_0x56ba0c['id']});_0xb8c72b[_0x3183a9[_0xbd89('0x5d')][_0xbd89('0xa1')]]=_0x3183a9['body'][_0xbd89('0x9b')];return db['CmContact'][_0xbd89('0x5c')](_0xb8c72b,{'fields':_0x508896,'raw':!![]});}})[_0xbd89('0x1f')](handleEntityNotFound(_0x91e596,null))[_0xbd89('0x1f')](function(_0x401317){if(_0x401317){_0x3183a9[_0xbd89('0xa7')]=_0x401317;var _0x5f2692={'ContactId':_0x401317['id'],'phone':_0x3183a9[_0xbd89('0x5d')][_0xbd89('0x9b')],'WhatsappAccountId':_0x581192[_0xbd89('0x58')]['id']};var _0x479848={'ContactId':_0x401317['id'],'WhatsappAccountId':_0x581192[_0xbd89('0x58')]['id'],'closed':![]};return db[_0xbd89('0xa8')][_0xbd89('0x5b')]({'where':_0x479848})[_0xbd89('0x1f')](function(_0x3dabd8){if(_0x3dabd8){return[_0x3dabd8,![]];}return db[_0xbd89('0xa8')][_0xbd89('0x5c')](_0x5f2692)['then'](function(_0x62d892){return[_0x62d892,!![]];});});}})[_0xbd89('0x71')](function(_0x15309c,_0x49ec11){_0x3183a9[_0xbd89('0xa9')]=_0x15309c['get']({'plain':!![]});_0x3183a9[_0xbd89('0xa9')][_0xbd89('0xaa')]=![];if(_0x49ec11){if(_0x3183a9['account'][_0xbd89('0xab')]){_0x3183a9['applications'][_0xbd89('0xac')]({'id':0x0,'priority':_0x3183a9['applications'][_0xbd89('0x49')]+0x1,'app':'close','appdata':_0xbd89('0xad'),'interval':_0xbd89('0xae')});}_0x3183a9[_0xbd89('0xa9')]['created']=!![];}return db[_0xbd89('0x89')][_0xbd89('0x5c')]({'phone':_0x3183a9[_0xbd89('0x5d')][_0xbd89('0x9b')],'messageId':_0x3183a9[_0xbd89('0x5d')]['messageId'],'body':_0x3183a9[_0xbd89('0x5d')][_0xbd89('0x5d')],'WhatsappAccountId':_0x581192[_0xbd89('0x58')]['id'],'WhatsappInteractionId':_0x15309c['id'],'direction':'in','ContactId':_0x15309c['ContactId'],'AttachmentId':_0x3183a9['body']['AttachmentId']});})[_0xbd89('0x1f')](function(_0x160742){_0x3183a9[_0xbd89('0x27')]=_0x160742;if(!_0x3183a9['interaction'][_0xbd89('0xaf')])return;return db[_0xbd89('0x77')][_0xbd89('0x5b')]({'attributes':['id',_0xbd89('0x3a')],'where':{'id':_0x3183a9[_0xbd89('0xa9')][_0xbd89('0xaf')]}});})[_0xbd89('0x1f')](function(_0x16af34){if(_0x16af34){_0x3183a9['applications'][_0xbd89('0xb0')]({'id':0x0,'priority':0x0,'app':_0xbd89('0xb1'),'appdata':_0x16af34[_0xbd89('0x3a')]+','+(_0x3183a9[_0xbd89('0x85')][_0xbd89('0xb2')]||0xa),'interval':_0xbd89('0xae')});}if(!_0x3183a9['interaction'][_0xbd89('0xb3')])return;return db[_0xbd89('0xb4')][_0xbd89('0x5b')]({'attributes':['id','name'],'where':{'id':_0x3183a9[_0xbd89('0xa9')][_0xbd89('0xb3')]}});})['then'](function(_0x14f11e){if(_0x14f11e){_0x3183a9[_0xbd89('0x8b')]['unshift']({'id':0x0,'priority':0x1,'app':_0xbd89('0xb5'),'appdata':_0x14f11e[_0xbd89('0x3a')]+','+(_0x3183a9[_0xbd89('0x85')][_0xbd89('0xb6')]||0x12c),'interval':_0xbd89('0xae')});}return respondWithRpcPromise(_0xbd89('0xb7'),_0xbd89('0xb8'),_0x3183a9);})[_0xbd89('0x1f')](function(_0xfb9c1d){if(_0xfb9c1d){var _0x590302=0xc8;var _0x2586a5=_0xbd89('0xb9');logger[_0xbd89('0x20')]('WhatsappAccount,\x20%s,\x20%s,\x20%s',_0x2586a5,_0x590302,_0xbd89('0xba'));logger[_0xbd89('0x22')](_0xbd89('0xbb'),_0x2586a5,_0x590302,_0xbd89('0xba'),JSON[_0xbd89('0xbc')](_0xfb9c1d));if(_0x3183a9[_0xbd89('0x85')][_0xbd89('0x41')]===_0xbd89('0x95')){return _0x91e596[_0xbd89('0x2b')](_0x590302)[_0xbd89('0xbd')]('Content-Type','text/xml')[_0xbd89('0xbe')](_0xbd89('0xbf'));}else{return _0x91e596[_0xbd89('0x2b')](_0x590302)[_0xbd89('0x2c')](_0xfb9c1d);}}});})[_0xbd89('0x29')](handleError(_0x91e596,null));};exports[_0xbd89('0xbe')]=function(_0x3e95b3,_0x474d1c,_0x3844a4){var _0x59484f,_0x11b417,_0x6cc93b;if(_[_0xbd89('0x9e')](_0x3e95b3['body'][_0xbd89('0x5d')])||_0x3e95b3[_0xbd89('0x5d')][_0xbd89('0x5d')]===''){throw new db[(_0xbd89('0x8e'))][(_0xbd89('0x9f'))](_0xbd89('0xa0'));}if(_['isNil'](_0x3e95b3[_0xbd89('0x5d')]['to'])){throw new db[(_0xbd89('0x8e'))][(_0xbd89('0x9f'))](_0xbd89('0xc0'));}_0x59484f=_0x3e95b3['body']['to'];return db[_0xbd89('0x3e')][_0xbd89('0x5b')]({'where':{'id':_0x3e95b3[_0xbd89('0x58')]['id']},'include':[{'model':db['CmList'],'as':_0xbd89('0xc1'),'include':[{'model':db['CmContact'],'as':_0xbd89('0xa4'),'where':{'mobile':_0x59484f},'limit':0x1,'order':[[_0xbd89('0x91'),_0xbd89('0xa5')]]}]}]})['then'](handleEntityNotFound(_0x474d1c,null))['then'](function(_0x409dcc){if(_0x409dcc&&_0x409dcc[_0xbd89('0xc1')]){_0x11b417=_0x409dcc[_0xbd89('0x36')]({'plain':!![]});if(_0x11b417[_0xbd89('0xc1')]&&_0x11b417[_0xbd89('0xc1')][_0xbd89('0xa4')][_0xbd89('0x49')]){return _0x11b417[_0xbd89('0xc1')]['Contacts'][0x0];}return db[_0xbd89('0xc2')][_0xbd89('0x5c')](_['defaults'](_0x3e95b3['body'],{'firstName':_0x59484f,'mobile':_0x59484f,'phone':_0x59484f,'ListId':_0x11b417['ListId']}));}})['then'](handleEntityNotFound(_0x474d1c,null))[_0xbd89('0x1f')](function(_0x4221b1){if(_0x4221b1){_0x6cc93b=_0x4221b1;return db['WhatsappInteraction']['find']({'where':{'ContactId':_0x6cc93b['id'],'closed':![],'WhatsappAccountId':_0x11b417['id']}})['then'](function(_0x3d765d){if(_0x3d765d){return[_0x3d765d,![]];}return db[_0xbd89('0xa8')][_0xbd89('0x5c')]({'UserId':_0x3e95b3[_0xbd89('0x5f')]['id'],'ContactId':_0x6cc93b['id'],'WhatsappAccountId':_0x11b417['id'],'phone':_0x59484f,'firstMsgDirection':_0xbd89('0xc3'),'Messages':[_[_0xbd89('0x51')](_0x3e95b3[_0xbd89('0x5d')],{'read':![],'body':_0x3e95b3[_0xbd89('0x5d')]['body'],'phone':_0x59484f,'WhatsappAccountId':_0x11b417['id'],'UserId':_0x3e95b3['user']['id'],'ContactId':_0x6cc93b['id']})]},{'include':[{'model':db[_0xbd89('0x89')],'as':'Messages'}]})['then'](function(_0x3a886c){return[_0x3a886c,!![]];});});}})[_0xbd89('0x71')](function(_0x196923,_0x3cf8af){if(_0x3cf8af){return _0x196923;}return db[_0xbd89('0x89')][_0xbd89('0x5c')](_[_0xbd89('0x51')](_0x3e95b3[_0xbd89('0x5d')],{'read':![],'body':_0x3e95b3[_0xbd89('0x5d')][_0xbd89('0x5d')],'phone':_0x59484f,'WhatsappAccountId':_0x11b417['id'],'WhatsappInteractionId':_0x196923['id'],'UserId':_0x3e95b3[_0xbd89('0x5f')]['id'],'ContactId':_0x6cc93b['id']}))['then'](function(_0x245458){_0x196923['dataValues'][_0xbd89('0xc4')]=[];_0x196923[_0xbd89('0xc5')]['Messages'][_0xbd89('0xac')](_0x245458[_0xbd89('0xc5')]);return _0x196923;});})[_0xbd89('0x1f')](respondWithResult(_0x474d1c,null))[_0xbd89('0x29')](handleError(_0x474d1c,null));};