Built motion from commit 85328c08.|2.5.50
[motion2.git] / server / api / whatsappInteraction / whatsappInteraction.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 _0xa321=['whatsapp_interaction_has_tags','it.WhatsappInteractionId\x20=\x20i.id','tools_tags','t.id\x20=\x20it.TagId','expr','search','parseSearch','sqlOperator','conditions','find','having','`\x20=\x200','`\x20>\x200','Contact','$substring','value','getFullTextValue','c.firstName\x20LIKE\x20?\x20OR\x20c.lastName\x20LIKE\x20?\x20OR\x20c.email\x20LIKE\x20?','ContactId','buildExpression','text','start','Tag','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','union','User','CONCAT_WS(\x27\x20\x27,\x20o.name,\x20o.fullname)\x20LIKE\x20?','keys','some','isEmpty','i.WhatsappAccountId\x20IN\x20?','concat','parse','$gte','$lte','i.createdAt\x20BETWEEN\x20?\x20AND\x20?','null','\x20IS\x20NULL','read','`unreadMessages`\x20=\x200','`unreadMessages`\x20>\x200','tag','isArray','filter','replace','isNumeric','i.id\x20LIKE\x20?','i.phone\x20LIKE\x20?','MATCH\x20(me.body)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','CONCAT(c.firstName,\x20\x27\x20\x27,\x20c.lastName)\x20LIKE\x20?','group','i.id','Sequelize','QueryTypes','SELECT','clone','unreadMessages','contactName','DESC','t.id\x20IN\x20?','resolve','WhatsappAccountId','i.WhatsappAccountId\x20IS\x20NOT\x20NULL','user','role','agent','getWhatsappAccounts','i.WhatsappAccountId\x20IS\x20NULL','toString','count','sequelize','keyBy','SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','a.key','Account.key','Account.mandatoryDisposition','i.*','c.firstName','Contact.firstName','c.lastName','Contact.lastName','c.email','Contact.email','c.phone','Contact.phone','c.mobile','o.fullname','Owner.fullname','o.internal','GROUP_CONCAT(DISTINCT\x20t.id)','TagIds','ui.WhatsappInteractionId\x20IN\x20?','groupBy','WhatsappInteractionId','all','rows','show','params','includeAll','include','merge','create','body','describe','addMessage','omit','findOne','WhatsappMessage','nolimit','format','YYYY-MM-DD\x20HH:mm:ss','options','addTags','setTags','ids','spread','emit','whatsappInteractionTags:save','removeTags','download','unix','join','root','server','files','tmp','attachments','transcript-%d-%s.zip','fullname','CmContact','lastName','Attachment','createdAt','secret','WhatsappAccount','Account','get','mkdirSync','Whatsapp','Owner','N.A.','closedAt','disposition','basename','existsSync','createReadStream','createWriteStream','direction','out','firstName','views','downloadInteraction.ejs','transcript-','.pdf','createPdfFromHTML','err','unlinkSync','eml-format','rimraf','zip-dir','fast-json-patch','moment','bluebird','util','path','fs-extra','squel','crypto','jsforce','desk.js','to-csv','papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../components/export/pdf','../../config/license/hardware','../../config/logger','api','../../config/environment','../../config/license/util','../../mysqldb','defaults','redis','localhost','socket.io-emitter','register','sendStatus','status','json','offset','undefined','limit','Content-Range','apply','save','update','end','error','stack','name','send','Users','map','split','forEach','Tags','push','then','catch','talking','answered','unmanaged','closed','UserId','waiting','total','index','WhatsappInteraction','rawAttributes','type','key','model','intersection','attributes','fields','query','length','hasOwnProperty','order','sort','where','filters','pick','select','field','color','from','u.id','u.fullname','ui.WhatsappInteractionId','left_join','users','u.id\x20=\x20ui.UserId','cm_contacts','c.id\x20=\x20i.ContactId\x20AND\x20c.deletedAt\x20IS\x20NULL','o.id\x20=\x20i.UserId','whatsapp_accounts','whatsapp_messages'];(function(_0x5906a5,_0x48af0a){var _0x1b9a31=function(_0x4b72ac){while(--_0x4b72ac){_0x5906a5['push'](_0x5906a5['shift']());}};_0x1b9a31(++_0x48af0a);}(_0xa321,0x9d));var _0x1a32=function(_0x40162a,_0x265b0c){_0x40162a=_0x40162a-0x0;var _0x488161=_0xa321[_0x40162a];return _0x488161;};'use strict';var emlformat=require(_0x1a32('0x0'));var rimraf=require(_0x1a32('0x1'));var zipdir=require(_0x1a32('0x2'));var jsonpatch=require(_0x1a32('0x3'));var rp=require('request-promise');var moment=require(_0x1a32('0x4'));var BPromise=require(_0x1a32('0x5'));var Mustache=require('mustache');var util=require(_0x1a32('0x6'));var path=require(_0x1a32('0x7'));var sox=require('sox');var csv=require('to-csv');var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x1a32('0x8'));var _=require('lodash');var squel=require(_0x1a32('0x9'));var crypto=require(_0x1a32('0xa'));var jsforce=require(_0x1a32('0xb'));var deskjs=require(_0x1a32('0xc'));var toCsv=require(_0x1a32('0xd'));var querystring=require('querystring');var Papa=require(_0x1a32('0xe'));var Redis=require(_0x1a32('0xf'));var authService=require('../../components/auth/service');var qs=require(_0x1a32('0x10'));var as=require(_0x1a32('0x11'));var pdf=require(_0x1a32('0x12'));var hardwareService=require(_0x1a32('0x13'));var logger=require(_0x1a32('0x14'))(_0x1a32('0x15'));var utils=require('../../config/utils');var config=require(_0x1a32('0x16'));var licenseUtil=require(_0x1a32('0x17'));var db=require(_0x1a32('0x18'))['db'];config['redis']=_[_0x1a32('0x19')](config[_0x1a32('0x1a')],{'host':_0x1a32('0x1b'),'port':0x18eb});var socket=require(_0x1a32('0x1c'))(new Redis(config[_0x1a32('0x1a')]));require('./whatsappInteraction.socket')[_0x1a32('0x1d')](socket);function respondWithStatusCode(_0x456e81,_0x1838d2){_0x1838d2=_0x1838d2||0xcc;return function(_0x268b0a){if(_0x268b0a){return _0x456e81[_0x1a32('0x1e')](_0x1838d2);}return _0x456e81[_0x1a32('0x1f')](_0x1838d2)['end']();};}function respondWithResult(_0x29c53d,_0x463763){_0x463763=_0x463763||0xc8;return function(_0x47bb8e){if(_0x47bb8e){return _0x29c53d[_0x1a32('0x1f')](_0x463763)[_0x1a32('0x20')](_0x47bb8e);}};}function respondWithFilteredResult(_0x2cac28,_0x3b2983){return function(_0x43404b){if(_0x43404b){var _0x303afb=typeof _0x3b2983[_0x1a32('0x21')]===_0x1a32('0x22')&&typeof _0x3b2983[_0x1a32('0x23')]===_0x1a32('0x22');var _0x2f6381=_0x43404b['count'];var _0x3231b2=_0x303afb?0x0:_0x3b2983[_0x1a32('0x21')];var _0x235fd0=_0x303afb?_0x43404b['count']:_0x3b2983[_0x1a32('0x21')]+_0x3b2983[_0x1a32('0x23')];var _0x4af60a;if(_0x235fd0>=_0x2f6381){_0x235fd0=_0x2f6381;_0x4af60a=0xc8;}else{_0x4af60a=0xce;}_0x2cac28[_0x1a32('0x1f')](_0x4af60a);return _0x2cac28['set'](_0x1a32('0x24'),_0x3231b2+'-'+_0x235fd0+'/'+_0x2f6381)[_0x1a32('0x20')](_0x43404b);}return null;};}function patchUpdates(_0x4bbf42){return function(_0x2765e2){try{jsonpatch[_0x1a32('0x25')](_0x2765e2,_0x4bbf42,!![]);}catch(_0x2c93b0){return BPromise['reject'](_0x2c93b0);}return _0x2765e2[_0x1a32('0x26')]();};}function saveUpdates(_0x1fe746,_0x4bf0a0){return function(_0x372b95){if(_0x372b95){return _0x372b95[_0x1a32('0x27')](_0x1fe746)['then'](function(_0x41c892){return _0x41c892;});}return null;};}function removeEntity(_0x4b3b33,_0x4c183c){return function(_0x5edf08){if(_0x5edf08){return _0x5edf08['destroy']()['then'](function(){_0x4b3b33[_0x1a32('0x1f')](0xcc)[_0x1a32('0x28')]();});}};}function handleEntityNotFound(_0x4771b7,_0x2094fa){return function(_0x382b3c){if(!_0x382b3c){_0x4771b7[_0x1a32('0x1e')](0x194);}return _0x382b3c;};}function handleError(_0x19e0e6,_0x2edc3e){_0x2edc3e=_0x2edc3e||0x1f4;return function(_0x48d69d){logger[_0x1a32('0x29')](_0x48d69d[_0x1a32('0x2a')]);if(_0x48d69d[_0x1a32('0x2b')]){delete _0x48d69d[_0x1a32('0x2b')];}_0x19e0e6[_0x1a32('0x1f')](_0x2edc3e)[_0x1a32('0x2c')](_0x48d69d);};}function getInteractionUsers(_0x821dbf,_0x1211e2){return new BPromise(function(_0x3bc28a,_0x54b122){try{if(_0x1211e2[_0x821dbf['id']]){_0x821dbf[_0x1a32('0x2d')]=_[_0x1a32('0x2e')](_0x1211e2[_0x821dbf['id']],function(_0x4f2dfc){return{'id':_0x4f2dfc['id'],'fullname':_0x4f2dfc['fullname']};});}}catch(_0xd3bf6e){_0x54b122(_0xd3bf6e);}_0x3bc28a(_0x821dbf);});}function getInteractionTags(_0x582606,_0x5b9f13){return new BPromise(function(_0x1d874e,_0x4ef9fd){try{if(_0x582606['TagIds']){_0x582606['Tags']=[];_0x582606['TagIds'][_0x1a32('0x2f')](',')[_0x1a32('0x30')](function(_0x7c255c){_0x582606[_0x1a32('0x31')][_0x1a32('0x32')](_0x5b9f13[_0x7c255c]);});}delete _0x582606['TagIds'];}catch(_0x53a6c7){_0x4ef9fd(_0x53a6c7);}_0x1d874e(_0x582606);});}function updateWhatsappInteraction(_0x3d6385,_0x4f430c,_0xd2455c){return new BPromise(function(_0x1b7d21,_0xfb0096){return getInteractionUsers(_0x3d6385,_0xd2455c)['then'](function(_0x24afda){return getInteractionTags(_0x24afda,_0x4f430c);})[_0x1a32('0x33')](function(_0x2121e2){return getStateInteraction(_0x2121e2);})[_0x1a32('0x33')](function(_0x3acb50){_0x1b7d21(_0x3acb50);})[_0x1a32('0x34')](function(_0x365ad9){_0xfb0096(_0x365ad9);});});}function getStateInteraction(_0x2e4b5c){return new BPromise(function(_0x1b0b1e){_0x2e4b5c['waiting']=0x0;_0x2e4b5c[_0x1a32('0x35')]=0x0;_0x2e4b5c[_0x1a32('0x36')]=0x0;_0x2e4b5c[_0x1a32('0x37')]=0x0;_0x2e4b5c['total']=0x0;if(!_0x2e4b5c[_0x1a32('0x38')]&&!_0x2e4b5c[_0x1a32('0x39')]){_0x2e4b5c[_0x1a32('0x3a')]+=0x1;}if(!_0x2e4b5c[_0x1a32('0x38')]&&_0x2e4b5c[_0x1a32('0x39')]){_0x2e4b5c[_0x1a32('0x35')]+=0x1;if(_0x2e4b5c[_0x1a32('0x3a')]){_0x2e4b5c[_0x1a32('0x3a')]-=0x1;}}if(_0x2e4b5c[_0x1a32('0x38')]&&_0x2e4b5c[_0x1a32('0x39')]){_0x2e4b5c[_0x1a32('0x36')]+=0x1;if(_0x2e4b5c[_0x1a32('0x35')]){_0x2e4b5c[_0x1a32('0x35')]-=0x1;}}if(_0x2e4b5c[_0x1a32('0x38')]&&!_0x2e4b5c[_0x1a32('0x39')]){_0x2e4b5c['unmanaged']+=0x1;if(_0x2e4b5c['waiting']){_0x2e4b5c['waiting']-=0x1;}}_0x2e4b5c[_0x1a32('0x3b')]+=0x1;_0x1b0b1e(_0x2e4b5c);});}exports[_0x1a32('0x3c')]=function(_0x1f1a98,_0x1745bd){var _0xeb42f7={},_0x54150d={},_0x14b8de={'count':0x0,'rows':[]};var _0x9638ff=_[_0x1a32('0x2e')](db[_0x1a32('0x3d')][_0x1a32('0x3e')],function(_0x466fab){return{'name':_0x466fab['fieldName'],'type':_0x466fab[_0x1a32('0x3f')][_0x1a32('0x40')]};});_0x54150d[_0x1a32('0x41')]=_[_0x1a32('0x2e')](_0x9638ff,_0x1a32('0x2b'));_0x54150d['query']=_['keys'](_0x1f1a98['query']);_0x54150d['filters']=_[_0x1a32('0x42')](_0x54150d[_0x1a32('0x41')],_0x54150d['query']);_0xeb42f7[_0x1a32('0x43')]=_[_0x1a32('0x42')](_0x54150d[_0x1a32('0x41')],qs[_0x1a32('0x44')](_0x1f1a98[_0x1a32('0x45')][_0x1a32('0x44')]));_0xeb42f7[_0x1a32('0x43')]=_0xeb42f7[_0x1a32('0x43')][_0x1a32('0x46')]?_0xeb42f7[_0x1a32('0x43')]:_0x54150d[_0x1a32('0x41')];if(!_0x1f1a98[_0x1a32('0x45')][_0x1a32('0x47')]('nolimit')){_0xeb42f7[_0x1a32('0x23')]=qs['limit'](_0x1f1a98['query'][_0x1a32('0x23')]);_0xeb42f7['offset']=qs[_0x1a32('0x21')](_0x1f1a98['query'][_0x1a32('0x21')]);}_0xeb42f7[_0x1a32('0x48')]=qs[_0x1a32('0x49')](_0x1f1a98[_0x1a32('0x45')][_0x1a32('0x49')]);_0xeb42f7[_0x1a32('0x4a')]=qs[_0x1a32('0x4b')](_[_0x1a32('0x4c')](_0x1f1a98[_0x1a32('0x45')],_0x54150d['filters']),_0x9638ff);var _0x3e0bad=[];var _0x1514ef=squel[_0x1a32('0x4d')]()['field']('id')[_0x1a32('0x4e')](_0x1a32('0x2b'))[_0x1a32('0x4e')](_0x1a32('0x4f'))[_0x1a32('0x50')]('tools_tags');var _0x31e568=squel[_0x1a32('0x4d')]()[_0x1a32('0x4e')](_0x1a32('0x51'))[_0x1a32('0x4e')](_0x1a32('0x52'))[_0x1a32('0x4e')](_0x1a32('0x53'))[_0x1a32('0x50')]('user_has_whatsapp_interactions','ui')[_0x1a32('0x54')](_0x1a32('0x55'),'u',_0x1a32('0x56'));var _0x4a0042=squel[_0x1a32('0x4d')]()[_0x1a32('0x50')]('whatsapp_interactions','i')[_0x1a32('0x54')](_0x1a32('0x57'),'c',_0x1a32('0x58'))['left_join'](_0x1a32('0x55'),'o',_0x1a32('0x59'))['left_join'](_0x1a32('0x5a'),'a','a.id\x20=\x20i.WhatsappAccountId')['left_join'](_0x1a32('0x5b'),'me','me.WhatsappInteractionId\x20=\x20i.id')['left_join'](_0x1a32('0x5c'),'it',_0x1a32('0x5d'))[_0x1a32('0x54')](_0x1a32('0x5e'),'t',_0x1a32('0x5f'));var _0x698ad2=squel[_0x1a32('0x60')]();var _0x484224=[];var _0x49ed24=squel[_0x1a32('0x60')]();var _0x572e54;if(_0x1f1a98[_0x1a32('0x45')][_0x1a32('0x61')]){_0x572e54=as[_0x1a32('0x62')](_0x1f1a98[_0x1a32('0x45')][_0x1a32('0x61')]);var _0x54566a=_0x572e54[_0x1a32('0x63')];for(var _0x2b77f9=0x0;_0x2b77f9<_0x572e54[_0x1a32('0x64')]['length'];_0x2b77f9++){var _0x5ea389=_0x572e54['conditions'][_0x2b77f9];var _0x29a0b9='i';var _0x41f088=_[_0x1a32('0x65')](_0x9638ff,[_0x1a32('0x2b'),_0x5ea389[_0x1a32('0x4e')]]);if(!_0x41f088){switch(_0x5ea389[_0x1a32('0x4e')]){case'unreadMessages':if(_0x5ea389['value']==0x1){_0x4a0042[_0x1a32('0x66')]('`'+_0x5ea389[_0x1a32('0x4e')]+_0x1a32('0x67'));}else{_0x4a0042[_0x1a32('0x66')]('`'+_0x5ea389[_0x1a32('0x4e')]+_0x1a32('0x68'));}break;case _0x1a32('0x69'):if(_0x5ea389['operator']===_0x1a32('0x6a')){if(_0x5ea389[_0x1a32('0x6b')][_0x1a32('0x2f')]('\x20')[_0x1a32('0x46')]>0x1){_0x698ad2[_0x54566a]('MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)',qs[_0x1a32('0x6c')](_0x5ea389[_0x1a32('0x6b')]),null);}else{var _0x5c1cb6='%'+_0x5ea389[_0x1a32('0x6b')]+'%';_0x698ad2[_0x54566a](_0x1a32('0x6d'),_0x5c1cb6,_0x5c1cb6,_0x5c1cb6);}}else{_0x41f088=_[_0x1a32('0x65')](_0x9638ff,[_0x1a32('0x2b'),_0x1a32('0x6e')]);_0x5ea389[_0x1a32('0x4e')]=_0x1a32('0x6e');_0x557074=as[_0x1a32('0x6f')](_0x29a0b9,_0x41f088[_0x1a32('0x3f')],_0x5ea389);_0x698ad2[_0x54566a](_0x557074[_0x1a32('0x70')],_0x557074['value'][_0x1a32('0x71')],_0x557074[_0x1a32('0x6b')]['end']);}break;case _0x1a32('0x72'):var _0x6532b1=_0x5ea389['value']['split'](',')[_0x1a32('0x2e')](function(_0x3f0803){return Number(_0x3f0803);});_0x6532b1[_0x1a32('0x30')](function(_0x32b3cb){_0x49ed24['or'](_0x1a32('0x73'),'%,'+_0x32b3cb+',%');});_0x484224=_[_0x1a32('0x74')](_0x484224,_0x6532b1);break;case _0x1a32('0x75'):if(_0x5ea389['operator']===_0x1a32('0x6a')){_0x698ad2[_0x54566a](_0x1a32('0x76'),'%'+_0x5ea389['value']+'%',null);}else{_0x41f088=_[_0x1a32('0x65')](_0x9638ff,[_0x1a32('0x2b'),_0x1a32('0x39')]);_0x5ea389[_0x1a32('0x4e')]=_0x1a32('0x39');_0x557074=as[_0x1a32('0x6f')](_0x29a0b9,_0x41f088[_0x1a32('0x3f')],_0x5ea389);_0x698ad2[_0x54566a](_0x557074[_0x1a32('0x70')],_0x557074[_0x1a32('0x6b')][_0x1a32('0x71')],_0x557074[_0x1a32('0x6b')][_0x1a32('0x28')]);}break;case'body':_0x557074=as['buildExpression']('me',null,_0x5ea389);_0x698ad2[_0x54566a](_0x557074[_0x1a32('0x70')],_0x557074[_0x1a32('0x6b')][_0x1a32('0x71')],_0x557074[_0x1a32('0x6b')][_0x1a32('0x28')]);break;}}else{var _0x557074=as['buildExpression'](_0x29a0b9,_0x41f088[_0x1a32('0x3f')],_0x5ea389);_0x698ad2[_0x54566a](_0x557074[_0x1a32('0x70')],_0x557074['value'][_0x1a32('0x71')],_0x557074[_0x1a32('0x6b')][_0x1a32('0x28')]);}}}else{var _0x5d2de7=_(_0x1f1a98['query'])[_0x1a32('0x77')]()[_0x1a32('0x2e')](function(_0x1b7a9e){return _[_0x1a32('0x78')](_0x9638ff,[_0x1a32('0x2b'),_0x1b7a9e])?_0x1b7a9e:undefined;})['compact']()['value']();if(!_[_0x1a32('0x79')](_0x5d2de7)){_0x5d2de7[_0x1a32('0x30')](function(_0x297a79){if(_0x297a79==='WhatsappAccountId'){_0x4a0042[_0x1a32('0x4a')](_0x1a32('0x7a'),[][_0x1a32('0x7b')](_0x1f1a98['query'][_0x297a79]));}else if(_0x297a79==='createdAt'){var _0x53e980=JSON[_0x1a32('0x7c')](_0x1f1a98[_0x1a32('0x45')][_0x297a79])[_0x1a32('0x7d')];var _0x4c4b23=JSON[_0x1a32('0x7c')](_0x1f1a98[_0x1a32('0x45')][_0x297a79])[_0x1a32('0x7e')];_0x4a0042[_0x1a32('0x4a')](_0x1a32('0x7f'),_0x53e980,_0x4c4b23);}else{if(_0x1f1a98[_0x1a32('0x45')][_0x297a79]===_0x1a32('0x80')){_0x4a0042[_0x1a32('0x4a')]('i.'+_0x297a79+_0x1a32('0x81'));}else{_0x4a0042[_0x1a32('0x4a')]('i.'+_0x297a79+'\x20=\x20?',_0x1f1a98[_0x1a32('0x45')][_0x297a79]);}}});}if(_0x1f1a98[_0x1a32('0x45')][_0x1a32('0x82')]){if(_0x1f1a98[_0x1a32('0x45')][_0x1a32('0x82')]==0x1){_0x4a0042[_0x1a32('0x66')](_0x1a32('0x83'));}else{_0x4a0042[_0x1a32('0x66')](_0x1a32('0x84'));}}if(_0x1f1a98[_0x1a32('0x45')][_0x1a32('0x85')]){_0x484224=_[_0x1a32('0x86')](_0x1f1a98[_0x1a32('0x45')][_0x1a32('0x85')])?_0x1f1a98['query'][_0x1a32('0x85')]:new Array(_0x1f1a98[_0x1a32('0x45')]['tag']);_0x484224['forEach'](function(_0x104ddb){_0x49ed24['or'](_0x1a32('0x73'),'%,'+_0x104ddb+',%');});}if(_0x1f1a98[_0x1a32('0x45')][_0x1a32('0x87')]){var _0x152d98=_0x1f1a98[_0x1a32('0x45')][_0x1a32('0x87')][_0x1a32('0x88')]('\x5c','\x5c\x5c')[_0x1a32('0x88')](/'/g,'\x27\x27');if(qs[_0x1a32('0x89')](_0x152d98)){_0x698ad2['or'](_0x1a32('0x8a'),_0x152d98+'%')['or'](_0x1a32('0x8b'),_0x152d98+'%');}else{_0x698ad2['or'](_0x1a32('0x8c'),qs[_0x1a32('0x6c')](_0x152d98))['or'](_0x1a32('0x8d'),_0x152d98+'%');}}}_0x4a0042[_0x1a32('0x4a')](_0x698ad2);_0x4a0042[_0x1a32('0x8e')](_0x1a32('0x8f'));var _0x3b6d11={'type':db[_0x1a32('0x90')][_0x1a32('0x91')][_0x1a32('0x92')],'raw':!![]};var _0x38ec64=_0x4a0042[_0x1a32('0x93')]();_0x38ec64['field']('i.id');_0x38ec64[_0x1a32('0x4e')]('SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)',_0x1a32('0x94'));if(_0xeb42f7[_0x1a32('0x48')]){_0xeb42f7[_0x1a32('0x48')][_0x1a32('0x30')](function(_0x17d6e9){var _0x33beff=_0x17d6e9[0x0]===_0x1a32('0x95')?_0x17d6e9[0x0]:'i.'+_0x17d6e9[0x0];_0x4a0042['order'](_0x33beff,_0x17d6e9[0x1]===_0x1a32('0x96')?![]:!![]);});}if(!_[_0x1a32('0x79')](_0x484224)){_0x4a0042[_0x1a32('0x66')](_0x49ed24);_0x38ec64[_0x1a32('0x4a')](_0x1a32('0x97'),_0x484224);}BPromise[_0x1a32('0x98')]()[_0x1a32('0x33')](function(){if(!_0x572e54){if(_0x1f1a98[_0x1a32('0x45')][_0x1a32('0x99')])return;_0x38ec64[_0x1a32('0x4a')](_0x1a32('0x9a'));_0x4a0042['where']('i.WhatsappAccountId\x20IS\x20NOT\x20NULL');return;}if(_0x1f1a98[_0x1a32('0x9b')][_0x1a32('0x9c')]!==_0x1a32('0x9d'))return;return _0x1f1a98[_0x1a32('0x9b')][_0x1a32('0x9e')]({'attributes':['id'],'raw':!![]})[_0x1a32('0x33')](function(_0x346493){if(_[_0x1a32('0x79')](_0x346493)){_0x38ec64['where']('i.WhatsappAccountId\x20IS\x20NULL');_0x4a0042[_0x1a32('0x4a')](_0x1a32('0x9f'));}else{_0x38ec64[_0x1a32('0x4a')]('i.WhatsappAccountId\x20IN\x20?',_[_0x1a32('0x2e')](_0x346493,'id'));_0x4a0042['where'](_0x1a32('0x7a'),_['map'](_0x346493,'id'));}});})[_0x1a32('0x33')](function(){if(_0x1f1a98[_0x1a32('0x9b')][_0x1a32('0x9c')]===_0x1a32('0x9d')&&!_0x572e54&&!_0x1f1a98[_0x1a32('0x45')]['WhatsappAccountId'])return[];return db['sequelize'][_0x1a32('0x45')](_0x38ec64[_0x1a32('0xa0')](),_0x3b6d11);})[_0x1a32('0x33')](function(_0xbdd559){_0x14b8de[_0x1a32('0xa1')]=_0xbdd559[_0x1a32('0x46')];if(_0x14b8de[_0x1a32('0xa1')]===0x0)return[];return db[_0x1a32('0xa2')]['query'](_0x1514ef[_0x1a32('0xa0')](),_0x3b6d11)[_0x1a32('0x33')](function(_0x52b52b){_0x3e0bad=_[_0x1a32('0xa3')](_0x52b52b,'id');_0x3b6d11=_['merge'](_0x3b6d11,{'model':db['WhatsappInteraction'],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0x1f1a98[_0x1a32('0x45')]['fields']){_0xeb42f7[_0x1a32('0x43')][_0x1a32('0x30')](function(_0x510be6){_0x4a0042[_0x1a32('0x4e')]('i.'+_0x510be6);});}else{_0x4a0042[_0x1a32('0x4e')](_0x1a32('0xa4'),_0x1a32('0x94'));_0x4a0042[_0x1a32('0x4e')](_0x1a32('0xa5'),_0x1a32('0xa6'));_0x4a0042[_0x1a32('0x4e')]('a.mandatoryDisposition',_0x1a32('0xa7'));_0x4a0042[_0x1a32('0x4e')]('CASE\x20WHEN\x20(c.firstName\x20IS\x20NOT\x20NULL\x20AND\x20c.firstName\x20<>\x20\x27\x27)\x20OR\x20(c.lastName\x20IS\x20NOT\x20NULL\x20AND\x20c.lastName\x20<>\x20\x27\x27)\x20THEN\x20CONCAT(IFNULL(c.firstName,\x20\x27\x27),\x20\x27\x20\x27,\x20IFNULL(c.lastName,\x20\x27\x27))\x20ELSE\x20\x27Unknown\x27\x20END',_0x1a32('0x95'));_0x4a0042['field'](_0x1a32('0xa8'));_0x4a0042[_0x1a32('0x4e')](_0x1a32('0xa9'),_0x1a32('0xaa'));_0x4a0042[_0x1a32('0x4e')](_0x1a32('0xab'),_0x1a32('0xac'));_0x4a0042['field'](_0x1a32('0xad'),_0x1a32('0xae'));_0x4a0042[_0x1a32('0x4e')](_0x1a32('0xaf'),_0x1a32('0xb0'));_0x4a0042[_0x1a32('0x4e')](_0x1a32('0xb1'),'Contact.mobile');_0x4a0042[_0x1a32('0x4e')]('c.fax','Contact.fax');_0x4a0042[_0x1a32('0x4e')](_0x1a32('0xb2'),_0x1a32('0xb3'));_0x4a0042[_0x1a32('0x4e')](_0x1a32('0xb4'),'Owner.internal');_0x4a0042[_0x1a32('0x4e')](_0x1a32('0xb5'),_0x1a32('0xb6'));}if(_0xeb42f7[_0x1a32('0x23')])_0x4a0042[_0x1a32('0x23')](_0xeb42f7[_0x1a32('0x23')]);if(_0xeb42f7['offset'])_0x4a0042['offset'](_0xeb42f7[_0x1a32('0x21')]);return db[_0x1a32('0xa2')][_0x1a32('0x45')](_0x4a0042[_0x1a32('0xa0')](),_0x3b6d11);})[_0x1a32('0x33')](function(_0x8fd415){if(_0x8fd415['length']>0x0)_0x31e568[_0x1a32('0x4a')](_0x1a32('0xb7'),_[_0x1a32('0x2e')](_0x8fd415,'id'));return db['sequelize'][_0x1a32('0x45')](_0x31e568['toString'](),_0x3b6d11)[_0x1a32('0x33')](function(_0x2c4ca7){var _0x48f101=_[_0x1a32('0xb8')](_0x2c4ca7,_0x1a32('0xb9'));var _0x536d69=[];_0x8fd415[_0x1a32('0x30')](function(_0x21adac){_0x536d69[_0x1a32('0x32')](updateWhatsappInteraction(_0x21adac,_0x3e0bad,_0x48f101));});return BPromise[_0x1a32('0xba')](_0x536d69);});});})[_0x1a32('0x33')](function(_0x27c971){_0x14b8de[_0x1a32('0xbb')]=_0x27c971;return _0x14b8de;})[_0x1a32('0x33')](respondWithFilteredResult(_0x1745bd,_0xeb42f7))[_0x1a32('0x34')](handleError(_0x1745bd,null));};exports[_0x1a32('0xbc')]=function(_0x2596ea,_0x5bee01){var _0x371964={'raw':![],'where':{'id':_0x2596ea[_0x1a32('0xbd')]['id']}},_0x3d67d1={};_0x3d67d1[_0x1a32('0x41')]=_[_0x1a32('0x77')](db[_0x1a32('0x3d')][_0x1a32('0x3e')]);_0x3d67d1[_0x1a32('0x45')]=_[_0x1a32('0x77')](_0x2596ea[_0x1a32('0x45')]);_0x3d67d1[_0x1a32('0x4b')]=_[_0x1a32('0x42')](_0x3d67d1['model'],_0x3d67d1['query']);_0x371964[_0x1a32('0x43')]=_[_0x1a32('0x42')](_0x3d67d1['model'],qs['fields'](_0x2596ea[_0x1a32('0x45')][_0x1a32('0x44')]));_0x371964[_0x1a32('0x43')]=_0x371964['attributes'][_0x1a32('0x46')]?_0x371964[_0x1a32('0x43')]:_0x3d67d1['model'];if(_0x2596ea['query'][_0x1a32('0xbe')]){_0x371964[_0x1a32('0xbf')]=[{'all':!![]}];}_0x371964=_[_0x1a32('0xc0')]({},_0x371964,_0x2596ea['options']);return db[_0x1a32('0x3d')][_0x1a32('0x65')](_0x371964)[_0x1a32('0x33')](handleEntityNotFound(_0x5bee01,null))['then'](respondWithResult(_0x5bee01,null))[_0x1a32('0x34')](handleError(_0x5bee01,null));};exports[_0x1a32('0xc1')]=function(_0x15ca3f,_0x329457){return db[_0x1a32('0x3d')][_0x1a32('0xc1')](_0x15ca3f[_0x1a32('0xc2')],{})[_0x1a32('0x33')](respondWithResult(_0x329457,0xc9))[_0x1a32('0x34')](handleError(_0x329457,null));};exports[_0x1a32('0x27')]=function(_0x2b02b1,_0x49100a){if(_0x2b02b1['body']['id']){delete _0x2b02b1['body']['id'];}return db[_0x1a32('0x3d')][_0x1a32('0x65')]({'where':{'id':_0x2b02b1['params']['id']}})[_0x1a32('0x33')](handleEntityNotFound(_0x49100a,null))[_0x1a32('0x33')](saveUpdates(_0x2b02b1['body'],null))[_0x1a32('0x33')](respondWithResult(_0x49100a,null))['catch'](handleError(_0x49100a,null));};exports['destroy']=function(_0xa1d6c7,_0x2f6182){return db[_0x1a32('0x3d')][_0x1a32('0x65')]({'where':{'id':_0xa1d6c7[_0x1a32('0xbd')]['id']}})[_0x1a32('0x33')](handleEntityNotFound(_0x2f6182,null))[_0x1a32('0x33')](removeEntity(_0x2f6182,null))[_0x1a32('0x34')](handleError(_0x2f6182,null));};exports[_0x1a32('0xc3')]=function(_0x4d9048,_0x539f6d){return db['WhatsappInteraction'][_0x1a32('0xc3')]()['then'](respondWithResult(_0x539f6d,null))[_0x1a32('0x34')](handleError(_0x539f6d,null));};exports[_0x1a32('0xc4')]=function(_0x47c2d5,_0x809276,_0x4e22c3){return db['WhatsappMessage']['find']({'where':{'id':_0x47c2d5[_0x1a32('0xbd')]['id']}})['then'](handleEntityNotFound(_0x809276,null))[_0x1a32('0x33')](function(_0x4bd898){if(_0x4bd898){return _0x4bd898[_0x1a32('0xc4')](_0x47c2d5['body']['ids'],_[_0x1a32('0xc5')](_0x47c2d5['body'],['ids','id'])||{});}})[_0x1a32('0x33')](respondWithResult(_0x809276,null))['catch'](handleError(_0x809276,null));};exports['getMessages']=function(_0x689c9f,_0x1faf0d,_0x23468d){var _0x2e3339={'raw':![],'where':{}};var _0x339ff4={};var _0x4ade0a={'count':0x0,'rows':[]};return db[_0x1a32('0x3d')][_0x1a32('0xc6')]({'where':{'id':_0x689c9f['params']['id']}})[_0x1a32('0x33')](handleEntityNotFound(_0x1faf0d,null))[_0x1a32('0x33')](function(_0x44383e){if(_0x44383e){_0x339ff4[_0x1a32('0x41')]=_[_0x1a32('0x77')](db[_0x1a32('0xc7')][_0x1a32('0x3e')]);_0x339ff4['query']=_[_0x1a32('0x77')](_0x689c9f[_0x1a32('0x45')]);_0x339ff4[_0x1a32('0x4b')]=_[_0x1a32('0x42')](_0x339ff4[_0x1a32('0x41')],_0x339ff4[_0x1a32('0x45')]);_0x2e3339[_0x1a32('0x43')]=_['intersection'](_0x339ff4[_0x1a32('0x41')],qs[_0x1a32('0x44')](_0x689c9f[_0x1a32('0x45')]['fields']));_0x2e3339[_0x1a32('0x43')]=_0x2e3339[_0x1a32('0x43')]['length']?_0x2e3339['attributes']:_0x339ff4[_0x1a32('0x41')];if(!_0x689c9f[_0x1a32('0x45')][_0x1a32('0x47')](_0x1a32('0xc8'))){_0x2e3339['limit']=qs['limit'](_0x689c9f['query'][_0x1a32('0x23')]);_0x2e3339[_0x1a32('0x21')]=qs[_0x1a32('0x21')](_0x689c9f[_0x1a32('0x45')][_0x1a32('0x21')]);}_0x2e3339[_0x1a32('0x48')]=qs[_0x1a32('0x49')](_0x689c9f[_0x1a32('0x45')][_0x1a32('0x49')]);_0x2e3339['where']=qs[_0x1a32('0x4b')](_['pick'](_0x689c9f['query'],_0x339ff4['filters']));_0x2e3339[_0x1a32('0x4a')][_0x1a32('0xb9')]=_0x44383e['id'];if(_0x689c9f['query'][_0x1a32('0x87')]){_0x2e3339[_0x1a32('0x4a')]=_[_0x1a32('0xc0')](_0x2e3339['where'],{'$or':_[_0x1a32('0x2e')](_0x2e3339[_0x1a32('0x43')],function(_0x318a38){var _0x49fc5f={};_0x49fc5f[_0x318a38]={'$like':'%'+_0x689c9f[_0x1a32('0x45')][_0x1a32('0x87')]+'%'};return _0x49fc5f;})});}if(_0x689c9f['query'][_0x1a32('0x7d')]){var _0x20a65b=_0x689c9f[_0x1a32('0x45')][_0x1a32('0x7d')]['split'](',');var _0xc1ceca={};_0xc1ceca[_0x20a65b[0x0]]={'$gte':moment(_0x20a65b[0x1])[_0x1a32('0xc9')](_0x1a32('0xca'))};_0x2e3339[_0x1a32('0x4a')]=_[_0x1a32('0xc0')](_0x2e3339[_0x1a32('0x4a')],_0xc1ceca);}_0x2e3339=_[_0x1a32('0xc0')]({},_0x2e3339,_0x689c9f[_0x1a32('0xcb')]);return db[_0x1a32('0xc7')][_0x1a32('0xa1')]({'where':_0x2e3339['where']})[_0x1a32('0x33')](function(_0x3b6648){_0x4ade0a[_0x1a32('0xa1')]=_0x3b6648;if(_0x689c9f[_0x1a32('0x45')][_0x1a32('0xbe')]){_0x2e3339[_0x1a32('0xbf')]=[{'all':!![]}];}return db['WhatsappMessage']['findAll'](_0x2e3339);})[_0x1a32('0x33')](function(_0x1a840b){_0x4ade0a['rows']=_0x1a840b;return _0x4ade0a;});}})[_0x1a32('0x33')](respondWithFilteredResult(_0x1faf0d,_0x2e3339))['catch'](handleError(_0x1faf0d,null));};exports[_0x1a32('0xcc')]=function(_0x235067,_0x4f06d5,_0x52069b){return db['WhatsappInteraction'][_0x1a32('0x65')]({'where':{'id':_0x235067[_0x1a32('0xbd')]['id']}})[_0x1a32('0x33')](handleEntityNotFound(_0x4f06d5,null))['then'](function(_0x21ee15){if(_0x21ee15){return _0x21ee15[_0x1a32('0xcd')](_0x235067['body'][_0x1a32('0xce')],_[_0x1a32('0xc5')](_0x235067[_0x1a32('0xc2')],[_0x1a32('0xce'),'id'])||{})[_0x1a32('0xcf')](function(){return db[_0x1a32('0x72')]['findAll']({'attributes':['id',_0x1a32('0x2b'),_0x1a32('0x4f')],'where':{'id':_0x235067['body'][_0x1a32('0xce')]}});})['then'](function(_0x42096e){socket[_0x1a32('0xd0')](_0x1a32('0xd1'),{'id':Number(_0x235067[_0x1a32('0xbd')]['id']),'tags':_0x42096e||[]});return{'id':Number(_0x235067['params']['id']),'tags':_0x42096e||[]};});}})[_0x1a32('0x33')](respondWithResult(_0x4f06d5,null))[_0x1a32('0x34')](handleError(_0x4f06d5,null));};exports[_0x1a32('0xd2')]=function(_0x4b3ad1,_0x285481,_0x41ecbc){return db[_0x1a32('0x3d')][_0x1a32('0x65')]({'where':{'id':_0x4b3ad1[_0x1a32('0xbd')]['id']}})[_0x1a32('0x33')](handleEntityNotFound(_0x285481,null))['then'](function(_0x28f562){if(_0x28f562){return _0x28f562['removeTags'](_0x4b3ad1[_0x1a32('0x45')][_0x1a32('0xce')]);}})[_0x1a32('0x33')](respondWithStatusCode(_0x285481,null))[_0x1a32('0x34')](handleError(_0x285481,null));};exports[_0x1a32('0xd3')]=function(_0x48ad34,_0x5229e4){var _0x353e57=moment()[_0x1a32('0xd4')]()[_0x1a32('0xa0')]();var _0x406141=path[_0x1a32('0xd5')](config[_0x1a32('0xd6')],_0x1a32('0xd7'),_0x1a32('0xd8'),_0x1a32('0xd9'));var _0xed6ca2=path['join'](config[_0x1a32('0xd6')],'server','files',_0x1a32('0xda'));var _0x30b6a4=path[_0x1a32('0xd5')](_0x406141,_0x353e57);var _0xc36f07=util[_0x1a32('0xc9')](_0x1a32('0xdb'),_0x48ad34[_0x1a32('0xbd')]['id'],_0x353e57);var _0x32c043=path[_0x1a32('0xd5')](_0x406141,_0xc36f07);var _0x3e9b7d=[];_0x3e9b7d[_0x1a32('0x32')]({'model':db[_0x1a32('0x75')],'as':_0x1a32('0x75'),'attributes':['id',_0x1a32('0xdc')],'raw':!![]});_0x3e9b7d['push']({'model':db[_0x1a32('0xdd')],'as':'Contact','attributes':['id','firstName',_0x1a32('0xde')],'raw':!![]});if(_0x48ad34[_0x1a32('0x45')][_0x1a32('0xda')]){_0x3e9b7d[_0x1a32('0x32')]({'model':db[_0x1a32('0xdf')],'as':_0x1a32('0xdf'),'raw':!![]});}var _0x5df506=[{'model':db[_0x1a32('0xc7')],'as':'Messages','attributes':['id',_0x1a32('0xc2'),_0x1a32('0xe0'),'direction',_0x1a32('0xe1'),_0x1a32('0x82')],'include':_0x3e9b7d}];_0x5df506[_0x1a32('0x32')]({'model':db[_0x1a32('0xe2')],'as':_0x1a32('0xe3'),'attributes':['id','name']});_0x5df506[_0x1a32('0x32')]({'model':db[_0x1a32('0x75')],'as':'Owner','attributes':['id',_0x1a32('0xdc')]});return db[_0x1a32('0x3d')][_0x1a32('0x65')]({'where':{'id':_0x48ad34[_0x1a32('0xbd')]['id']},'include':_0x5df506})[_0x1a32('0x33')](handleEntityNotFound(_0x5229e4,null))[_0x1a32('0x33')](function(_0xbbd6e1){if(_0xbbd6e1){var _0x3ebff3=_0xbbd6e1[_0x1a32('0xe4')]({'plain':!![]});fs[_0x1a32('0xe5')](_0x30b6a4);var _0x3a2c05={'channel':_0x1a32('0xe6'),'account':_0x3ebff3[_0x1a32('0xe3')][_0x1a32('0x2b')],'agent':_0x3ebff3[_0x1a32('0xe7')]?_0x3ebff3[_0x1a32('0xe7')]['fullname']:_0x1a32('0xe8'),'createdAt':moment(_0x3ebff3['createdAt'])['format'](_0x1a32('0xca'))[_0x1a32('0xa0')](),'closedAt':_0x3ebff3['closed']?moment(_0x3ebff3[_0x1a32('0xe9')])[_0x1a32('0xc9')](_0x1a32('0xca'))[_0x1a32('0xa0')]():'','disposition':_0x3ebff3[_0x1a32('0xea')],'messages':_(_0x3ebff3['Messages'])[_0x1a32('0x87')]({'secret':![]})['map'](function(_0x49557b){if(_0x49557b[_0x1a32('0xdf')]){var _0x2e841b=path[_0x1a32('0xd5')](_0xed6ca2,_0x49557b[_0x1a32('0xdf')][_0x1a32('0xeb')]);if(fs[_0x1a32('0xec')](_0x2e841b)){fs[_0x1a32('0xed')](_0x2e841b)['pipe'](fs[_0x1a32('0xee')](path[_0x1a32('0xd5')](_0x30b6a4,_0x49557b[_0x1a32('0xdf')][_0x1a32('0xeb')])));}}return{'date':moment(_0x49557b[_0x1a32('0xe0')])[_0x1a32('0xc9')]('YYYY-MM-DD\x20HH:mm:ss')[_0x1a32('0xa0')](),'sender':_0x49557b[_0x1a32('0xef')]===_0x1a32('0xf0')?_0x49557b[_0x1a32('0x75')]?_0x49557b[_0x1a32('0x75')][_0x1a32('0xdc')]:'System':_0x49557b[_0x1a32('0x69')][_0x1a32('0xf1')]+(_0x49557b[_0x1a32('0x69')]['lastName']?'\x20'+_0x49557b[_0x1a32('0x69')]['lastName']:''),'body':_0x49557b[_0x1a32('0xdf')]?_0x49557b[_0x1a32('0xdf')][_0x1a32('0xeb')]:_0x49557b['body'],'direction':_0x49557b[_0x1a32('0xef')]===_0x1a32('0xf0')?'A':'C','secret':_0x49557b[_0x1a32('0xe1')],'read':_0x49557b[_0x1a32('0x82')],'attachment':_0x49557b['Attachment']};})['value']()};return ejs['renderFile'](path[_0x1a32('0xd5')](config[_0x1a32('0xd6')],'server',_0x1a32('0xf2'),_0x1a32('0xf3')),{'interaction':_0x3a2c05})[_0x1a32('0x33')](function(_0x40b13b){var _0x49f417=path['join'](_0x30b6a4,_0x1a32('0xf4')+_0x3ebff3['id']+'-'+_0x353e57+_0x1a32('0xf5'));var _0xad17fd={'path':_0x49f417,'channel':_0x1a32('0xe6'),'interactionId':_0x3ebff3['id']};return pdf[_0x1a32('0xf6')](_0x40b13b,_0xad17fd);})['then'](function(){return new BPromise(function(_0x57f957,_0x51d19a){zipdir(_0x30b6a4,{'saveTo':_0x32c043},function(_0x4b7ae2,_0x4d3a3c){if(_0x4b7ae2)return _0x51d19a(_0x4b7ae2);return _0x57f957(_0x4d3a3c);});})[_0x1a32('0x33')](function(){return new BPromise(function(_0x33ca16,_0x4db394){rimraf(_0x30b6a4,function(_0x502c49){if(_0x502c49)_0x4db394(_0x502c49);return _0x33ca16();});});})[_0x1a32('0x33')](function(){return _0x5229e4[_0x1a32('0xd3')](_0x32c043,_0xc36f07,function(_0x4d46a8){if(_0x4d46a8){console['log'](_0x1a32('0xf7'),_0x4d46a8);}else{fs[_0x1a32('0xf8')](_0x32c043);}});});});}else{return _0x5229e4[_0x1a32('0x1e')](0xc8);}})[_0x1a32('0x34')](handleError(_0x5229e4,null));};