Built motion from commit (unavailable).|2.5.30
[motion2.git] / server / api / chatInteraction / chatInteraction.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 _0x41bb=['sqlOperator','conditions','find','having','`\x20=\x200','`\x20>\x200','Contact','operator','$substring','value','split','MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','getFullTextValue','ContactId','buildExpression','text','start','Tag','forEach','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','union','User','CONCAT_WS(\x27\x20\x27,\x20o.name,\x20o.fullname)\x20LIKE\x20?','UserId','body','keys','some','compact','ChatWebsiteId','i.ChatWebsiteId\x20IN\x20?','createdAt','parse','null','\x20=\x20?','read','`unreadMessages`\x20>\x200','tag','isArray','filter','replace','isNumeric','i.id\x20LIKE\x20?','CONCAT(c.firstName,\x20\x27\x20\x27,\x20c.lastName)\x20LIKE\x20?','group','Sequelize','SELECT','i.id','SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','unreadMessages','DESC','isEmpty','t.id\x20IN\x20?','i.ChatWebsiteId\x20IS\x20NOT\x20NULL','user','role','agent','getChatWebsites','sequelize','merge','ChatInteraction','a.key','a.mandatoryDisposition','contactName','i.*','c.firstName','Contact.firstName','c.lastName','Contact.lastName','c.email','c.phone','Contact.phone','Contact.mobile','Contact.fax','Owner.fullname','Owner.internal','ui.ChatInteractionId\x20IN\x20?','groupBy','ChatInteractionId','all','rows','show','params','rawAttributes','includeAll','include','options','create','describe','createVidaooSession','findOne','vidaooApiKey','vidaooEscalation','POST','https://api-vidaoo.xcally.com/api/v1/sessions','MotionCWB:','follow','ValidationError','join_url','ChatMessage','Unable\x20to\x20create\x20Vidaoo\x20session','customUpdate','abandon','abandonInteraction,\x20%s,\x20%s,\x20%s','entity\x20not\x20found','Interaction\x20already\x20assigned','closed','disposition','AbandonInteraction','originalname','basename','filename','attachmentDownload','Attachment','attachId','ChatOfflineMessageId','join','root','server/files/attachments/','offline-chat/','download','mailTranscript','format','transcript-%s.txt','now','pathTranscript','Messages','CmContact','%s%d','System','customer','Visitor','agentIdentifier','website_alias','agentAlias','agent_alias','alias','[%s]\x20%s:\x20%s\x0a','MM/DD/YYYY\x20HH:mm:ss','secret','MailAccount','MailServerOut','Smtp','service','host','port','secure','authentication','pass','SendMail','sendMail','\x22%s\x22\x20<%s>','email','Hi\x20%s,\x20attached\x20you\x20can\x20find\x20your\x20transcript\x20file.\x20\x0a\x0aRegards.\x20\x0a\x0a','addMessage','ids','omit','getMessages','hasOwnProperty','$gte','YYYY-MM-DD\x20HH:mm:ss','findAll','getMyMessages','nolimit','includeAgent','push','chatInteractionTags:save','removeTags','unix','toString','server','tmp','attachments','transcript-%d-%s.zip','firstName','Owner','get','mkdirSync','Chat','Account','closedAt','osName','referer','customerIp','customerPort','tail','existsSync','createReadStream','pipe','createWriteStream','lastName','out','renderFile','downloadInteraction.html','transcript-','.pdf','createPdfFromHTML','err','eml-format','rimraf','fast-json-patch','moment','bluebird','mustache','util','sox','to-csv','ejs','crypto','jsforce','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','defaults','redis','localhost','socket.io-emitter','client','http','request','then','request\x20sent','ChatInteraction,\x20%s,\x20%s,\x20%s','stringify','code','error','ChatInteraction,\x20%s,\x20%s','message','info','result','catch','end','status','json','undefined','count','limit','set','Content-Range','apply','save','update','destroy','sendStatus','name','send','map','fullname','TagIds','Tags','index','fieldName','type','key','model','query','intersection','fields','attributes','length','offset','order','sort','where','filters','pick','select','field','color','from','tools_tags','u.id','u.fullname','ui.ChatInteractionId','user_has_chat_interactions','left_join','users','u.id\x20=\x20ui.UserId','c.id\x20=\x20i.ContactId\x20AND\x20c.deletedAt\x20IS\x20NULL','o.id\x20=\x20i.UserId','chat_websites','a.id\x20=\x20i.ChatWebsiteId','chat_messages','me.ChatInteractionId\x20=\x20i.id','it.ChatInteractionId\x20=\x20i.id','t.id\x20=\x20it.TagId','expr','parseSearch'];(function(_0x21b555,_0x102a9c){var _0x5efec1=function(_0x29a31a){while(--_0x29a31a){_0x21b555['push'](_0x21b555['shift']());}};_0x5efec1(++_0x102a9c);}(_0x41bb,0xc5));var _0xb41b=function(_0x44a4b5,_0x815767){_0x44a4b5=_0x44a4b5-0x0;var _0x4ceff1=_0x41bb[_0x44a4b5];return _0x4ceff1;};'use strict';var emlformat=require(_0xb41b('0x0'));var rimraf=require(_0xb41b('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0xb41b('0x2'));var rp=require('request-promise');var moment=require(_0xb41b('0x3'));var BPromise=require(_0xb41b('0x4'));var Mustache=require(_0xb41b('0x5'));var util=require(_0xb41b('0x6'));var path=require('path');var sox=require(_0xb41b('0x7'));var csv=require(_0xb41b('0x8'));var ejs=require(_0xb41b('0x9'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require('lodash');var squel=require('squel');var crypto=require(_0xb41b('0xa'));var jsforce=require(_0xb41b('0xb'));var deskjs=require('desk.js');var toCsv=require(_0xb41b('0x8'));var querystring=require(_0xb41b('0xc'));var Papa=require(_0xb41b('0xd'));var Redis=require(_0xb41b('0xe'));var authService=require(_0xb41b('0xf'));var qs=require(_0xb41b('0x10'));var as=require(_0xb41b('0x11'));var pdf=require('../../components/export/pdf');var hardwareService=require(_0xb41b('0x12'));var logger=require('../../config/logger')(_0xb41b('0x13'));var utils=require(_0xb41b('0x14'));var config=require(_0xb41b('0x15'));var licenseUtil=require(_0xb41b('0x16'));var db=require(_0xb41b('0x17'))['db'];config['redis']=_[_0xb41b('0x18')](config[_0xb41b('0x19')],{'host':_0xb41b('0x1a'),'port':0x18eb});var socket=require(_0xb41b('0x1b'))(new Redis(config[_0xb41b('0x19')]));require('./chatInteraction.socket')['register'](socket);var jayson=require('jayson/promise');var client=jayson[_0xb41b('0x1c')][_0xb41b('0x1d')]({'port':0x232b});var client9004=jayson[_0xb41b('0x1c')][_0xb41b('0x1d')]({'port':0x232c});function respondWithRpcPromise(_0x29ea51,_0x54591e,_0x2f3673,_0xd0b6b5){return new BPromise(function(_0x401dd9,_0xcf0728){var _0x43f4ea=_0xd0b6b5||client;return _0x43f4ea[_0xb41b('0x1e')](_0x29ea51,_0x2f3673)[_0xb41b('0x1f')](function(_0x5df8c2){logger['info']('ChatInteraction,\x20%s,\x20%s',_0x54591e,_0xb41b('0x20'));logger['debug'](_0xb41b('0x21'),_0x54591e,_0xb41b('0x20'),JSON[_0xb41b('0x22')](_0x5df8c2));if(_0x5df8c2['error']){if(_0x5df8c2['error'][_0xb41b('0x23')]===0x1f4){logger[_0xb41b('0x24')](_0xb41b('0x25'),_0x54591e,_0x5df8c2[_0xb41b('0x24')][_0xb41b('0x26')]);return _0xcf0728(_0x5df8c2[_0xb41b('0x24')]['message']);}logger['error'](_0xb41b('0x25'),_0x54591e,_0x5df8c2[_0xb41b('0x24')][_0xb41b('0x26')]);return _0x401dd9(_0x5df8c2['error'][_0xb41b('0x26')]);}else{logger[_0xb41b('0x27')]('ChatInteraction,\x20%s,\x20%s',_0x54591e,_0xb41b('0x20'));_0x401dd9(_0x5df8c2[_0xb41b('0x28')]['message']);}})[_0xb41b('0x29')](function(_0x4a7992){logger[_0xb41b('0x24')](_0xb41b('0x25'),_0x54591e,_0x4a7992);_0xcf0728(_0x4a7992);});});}function respondWithStatusCode(_0x53e3a2,_0x3af2c){_0x3af2c=_0x3af2c||0xcc;return function(_0x4265b8){if(_0x4265b8){return _0x53e3a2['sendStatus'](_0x3af2c);}return _0x53e3a2['status'](_0x3af2c)[_0xb41b('0x2a')]();};}function respondWithResult(_0x46aecf,_0x6b98aa){_0x6b98aa=_0x6b98aa||0xc8;return function(_0x36dda8){if(_0x36dda8){return _0x46aecf[_0xb41b('0x2b')](_0x6b98aa)[_0xb41b('0x2c')](_0x36dda8);}};}function respondWithFilteredResult(_0x253efb,_0x545395){return function(_0x26ef96){if(_0x26ef96){var _0xb68029=typeof _0x545395['offset']===_0xb41b('0x2d')&&typeof _0x545395['limit']===_0xb41b('0x2d');var _0x31d4cd=_0x26ef96['count'];var _0x23a6ed=_0xb68029?0x0:_0x545395['offset'];var _0x29da9f=_0xb68029?_0x26ef96[_0xb41b('0x2e')]:_0x545395['offset']+_0x545395[_0xb41b('0x2f')];var _0x41b326;if(_0x29da9f>=_0x31d4cd){_0x29da9f=_0x31d4cd;_0x41b326=0xc8;}else{_0x41b326=0xce;}_0x253efb[_0xb41b('0x2b')](_0x41b326);return _0x253efb[_0xb41b('0x30')](_0xb41b('0x31'),_0x23a6ed+'-'+_0x29da9f+'/'+_0x31d4cd)[_0xb41b('0x2c')](_0x26ef96);}return null;};}function patchUpdates(_0x157048){return function(_0x3de167){try{jsonpatch[_0xb41b('0x32')](_0x3de167,_0x157048,!![]);}catch(_0x4464d6){return BPromise['reject'](_0x4464d6);}return _0x3de167[_0xb41b('0x33')]();};}function saveUpdates(_0x4ab851,_0x4cb8ee){return function(_0x305803){if(_0x305803){return _0x305803[_0xb41b('0x34')](_0x4ab851)[_0xb41b('0x1f')](function(_0x18e70e){return _0x18e70e;});}return null;};}function removeEntity(_0x1b8681,_0xe204e4){return function(_0x1de31b){if(_0x1de31b){return _0x1de31b[_0xb41b('0x35')]()[_0xb41b('0x1f')](function(){_0x1b8681[_0xb41b('0x2b')](0xcc)[_0xb41b('0x2a')]();});}};}function handleEntityNotFound(_0x5db85e,_0x13e717){return function(_0x27990d){if(!_0x27990d){_0x5db85e[_0xb41b('0x36')](0x194);}return _0x27990d;};}function handleError(_0x23ac00,_0x45a071){_0x45a071=_0x45a071||0x1f4;return function(_0x10b3f6){logger['error'](_0x10b3f6['stack']);if(_0x10b3f6[_0xb41b('0x37')]){delete _0x10b3f6[_0xb41b('0x37')];}_0x23ac00['status'](_0x45a071)[_0xb41b('0x38')](_0x10b3f6);};}function getInteractionUsers(_0x47363e,_0x2622fd){return new BPromise(function(_0x1cd088,_0x3a3b3b){try{if(_0x2622fd[_0x47363e['id']]){_0x47363e['Users']=_[_0xb41b('0x39')](_0x2622fd[_0x47363e['id']],function(_0x5775d3){return{'id':_0x5775d3['id'],'fullname':_0x5775d3[_0xb41b('0x3a')]};});}}catch(_0x22c741){_0x3a3b3b(_0x22c741);}_0x1cd088(_0x47363e);});}function getInteractionTags(_0x799d6,_0x40789b){return new BPromise(function(_0x896c4,_0x2cb48d){try{if(_0x799d6[_0xb41b('0x3b')]){_0x799d6[_0xb41b('0x3c')]=[];_0x799d6[_0xb41b('0x3b')]['split'](',')['forEach'](function(_0x4e0a61){_0x799d6[_0xb41b('0x3c')]['push'](_0x40789b[_0x4e0a61]);});}delete _0x799d6['TagIds'];}catch(_0x781302){_0x2cb48d(_0x781302);}_0x896c4(_0x799d6);});}function updateChatInteraction(_0x5ded42,_0x2602c6,_0x17b009){return new BPromise(function(_0x10d6db,_0x249ffc){return getInteractionUsers(_0x5ded42,_0x17b009)[_0xb41b('0x1f')](function(_0x25c5b7){return getInteractionTags(_0x25c5b7,_0x2602c6);})[_0xb41b('0x1f')](function(_0x57e043){_0x10d6db(_0x57e043);})[_0xb41b('0x29')](function(_0xa70324){_0x249ffc(_0xa70324);});});}exports[_0xb41b('0x3d')]=function(_0x174d6c,_0x47bab5){var _0x2f1391={},_0x4be746={},_0x1c2c77={'count':0x0,'rows':[]};var _0x275039=_[_0xb41b('0x39')](db['ChatInteraction']['rawAttributes'],function(_0xe71120){return{'name':_0xe71120[_0xb41b('0x3e')],'type':_0xe71120[_0xb41b('0x3f')][_0xb41b('0x40')]};});_0x4be746[_0xb41b('0x41')]=_[_0xb41b('0x39')](_0x275039,_0xb41b('0x37'));_0x4be746['query']=_['keys'](_0x174d6c[_0xb41b('0x42')]);_0x4be746['filters']=_[_0xb41b('0x43')](_0x4be746['model'],_0x4be746[_0xb41b('0x42')]);_0x2f1391['attributes']=_[_0xb41b('0x43')](_0x4be746['model'],qs[_0xb41b('0x44')](_0x174d6c[_0xb41b('0x42')][_0xb41b('0x44')]));_0x2f1391[_0xb41b('0x45')]=_0x2f1391['attributes'][_0xb41b('0x46')]?_0x2f1391[_0xb41b('0x45')]:_0x4be746['model'];if(!_0x174d6c[_0xb41b('0x42')]['hasOwnProperty']('nolimit')){_0x2f1391['limit']=qs['limit'](_0x174d6c[_0xb41b('0x42')][_0xb41b('0x2f')]);_0x2f1391[_0xb41b('0x47')]=qs[_0xb41b('0x47')](_0x174d6c[_0xb41b('0x42')][_0xb41b('0x47')]);}_0x2f1391[_0xb41b('0x48')]=qs[_0xb41b('0x49')](_0x174d6c[_0xb41b('0x42')][_0xb41b('0x49')]);_0x2f1391[_0xb41b('0x4a')]=qs[_0xb41b('0x4b')](_[_0xb41b('0x4c')](_0x174d6c[_0xb41b('0x42')],_0x4be746[_0xb41b('0x4b')]),_0x275039);var _0x19893d=[];var _0x587270=squel[_0xb41b('0x4d')]()['field']('id')['field'](_0xb41b('0x37'))[_0xb41b('0x4e')](_0xb41b('0x4f'))[_0xb41b('0x50')](_0xb41b('0x51'));var _0x309bc1=squel[_0xb41b('0x4d')]()[_0xb41b('0x4e')](_0xb41b('0x52'))[_0xb41b('0x4e')](_0xb41b('0x53'))[_0xb41b('0x4e')](_0xb41b('0x54'))[_0xb41b('0x50')](_0xb41b('0x55'),'ui')[_0xb41b('0x56')](_0xb41b('0x57'),'u',_0xb41b('0x58'));var _0x3973e7=squel[_0xb41b('0x4d')]()[_0xb41b('0x50')]('chat_interactions','i')[_0xb41b('0x56')]('cm_contacts','c',_0xb41b('0x59'))[_0xb41b('0x56')](_0xb41b('0x57'),'o',_0xb41b('0x5a'))[_0xb41b('0x56')](_0xb41b('0x5b'),'a',_0xb41b('0x5c'))['left_join'](_0xb41b('0x5d'),'me',_0xb41b('0x5e'))[_0xb41b('0x56')]('chat_interaction_has_tags','it',_0xb41b('0x5f'))[_0xb41b('0x56')](_0xb41b('0x51'),'t',_0xb41b('0x60'));var _0x454671=squel[_0xb41b('0x61')]();var _0x43adb5=[];var _0x540763=squel['expr']();var _0xaeb50e;if(_0x174d6c[_0xb41b('0x42')]['search']){_0xaeb50e=as[_0xb41b('0x62')](_0x174d6c[_0xb41b('0x42')]['search']);var _0x2dced1=_0xaeb50e[_0xb41b('0x63')];for(var _0x95c923=0x0;_0x95c923<_0xaeb50e[_0xb41b('0x64')][_0xb41b('0x46')];_0x95c923++){var _0x2c08ee=_0xaeb50e[_0xb41b('0x64')][_0x95c923];var _0x3c8664='i';var _0x182b8a=_[_0xb41b('0x65')](_0x275039,['name',_0x2c08ee[_0xb41b('0x4e')]]);if(!_0x182b8a){switch(_0x2c08ee[_0xb41b('0x4e')]){case'unreadMessages':if(_0x2c08ee['value']==0x1){_0x3973e7[_0xb41b('0x66')]('`'+_0x2c08ee[_0xb41b('0x4e')]+_0xb41b('0x67'));}else{_0x3973e7['having']('`'+_0x2c08ee[_0xb41b('0x4e')]+_0xb41b('0x68'));}break;case _0xb41b('0x69'):if(_0x2c08ee[_0xb41b('0x6a')]===_0xb41b('0x6b')){if(_0x2c08ee[_0xb41b('0x6c')][_0xb41b('0x6d')]('\x20')[_0xb41b('0x46')]>0x1){_0x454671[_0x2dced1](_0xb41b('0x6e'),qs[_0xb41b('0x6f')](_0x2c08ee['value']),null);}else{var _0x44a12e='%'+_0x2c08ee[_0xb41b('0x6c')]+'%';_0x454671[_0x2dced1]('c.firstName\x20LIKE\x20?\x20OR\x20c.lastName\x20LIKE\x20?\x20OR\x20c.email\x20LIKE\x20?',_0x44a12e,_0x44a12e,_0x44a12e);}}else{_0x182b8a=_[_0xb41b('0x65')](_0x275039,[_0xb41b('0x37'),_0xb41b('0x70')]);_0x2c08ee['field']=_0xb41b('0x70');_0x21c9f1=as[_0xb41b('0x71')](_0x3c8664,_0x182b8a[_0xb41b('0x3f')],_0x2c08ee);_0x454671[_0x2dced1](_0x21c9f1[_0xb41b('0x72')],_0x21c9f1[_0xb41b('0x6c')][_0xb41b('0x73')],_0x21c9f1[_0xb41b('0x6c')][_0xb41b('0x2a')]);}break;case _0xb41b('0x74'):var _0x21e4a3=_0x2c08ee['value']['split'](',')['map'](function(_0x4a99ba){return Number(_0x4a99ba);});_0x21e4a3[_0xb41b('0x75')](function(_0x4ad6b5){_0x540763['or'](_0xb41b('0x76'),'%,'+_0x4ad6b5+',%');});_0x43adb5=_[_0xb41b('0x77')](_0x43adb5,_0x21e4a3);break;case _0xb41b('0x78'):if(_0x2c08ee[_0xb41b('0x6a')]==='$substring'){_0x454671[_0x2dced1](_0xb41b('0x79'),'%'+_0x2c08ee['value']+'%',null);}else{_0x182b8a=_[_0xb41b('0x65')](_0x275039,['name',_0xb41b('0x7a')]);_0x2c08ee['field']=_0xb41b('0x7a');_0x21c9f1=as[_0xb41b('0x71')](_0x3c8664,_0x182b8a['type'],_0x2c08ee);_0x454671[_0x2dced1](_0x21c9f1[_0xb41b('0x72')],_0x21c9f1[_0xb41b('0x6c')][_0xb41b('0x73')],_0x21c9f1[_0xb41b('0x6c')][_0xb41b('0x2a')]);}break;case _0xb41b('0x7b'):_0x21c9f1=as[_0xb41b('0x71')]('me',null,_0x2c08ee);_0x454671[_0x2dced1](_0x21c9f1['text'],_0x21c9f1[_0xb41b('0x6c')]['start'],_0x21c9f1[_0xb41b('0x6c')][_0xb41b('0x2a')]);break;}}else{var _0x21c9f1=as['buildExpression'](_0x3c8664,_0x182b8a['type'],_0x2c08ee);_0x454671[_0x2dced1](_0x21c9f1['text'],_0x21c9f1['value'][_0xb41b('0x73')],_0x21c9f1[_0xb41b('0x6c')][_0xb41b('0x2a')]);}}}else{var _0x54a56a=_(_0x174d6c['query'])[_0xb41b('0x7c')]()[_0xb41b('0x39')](function(_0xcdf16c){return _[_0xb41b('0x7d')](_0x275039,[_0xb41b('0x37'),_0xcdf16c])?_0xcdf16c:undefined;})[_0xb41b('0x7e')]()[_0xb41b('0x6c')]();if(!_['isEmpty'](_0x54a56a)){_0x54a56a['forEach'](function(_0x303ca3){if(_0x303ca3===_0xb41b('0x7f')){_0x3973e7['where'](_0xb41b('0x80'),[]['concat'](_0x174d6c[_0xb41b('0x42')][_0x303ca3]));}else if(_0x303ca3===_0xb41b('0x81')){var _0x5b2022=JSON[_0xb41b('0x82')](_0x174d6c[_0xb41b('0x42')][_0x303ca3])['$gte'];var _0x585d7c=JSON[_0xb41b('0x82')](_0x174d6c[_0xb41b('0x42')][_0x303ca3])['$lte'];_0x3973e7[_0xb41b('0x4a')]('i.createdAt\x20BETWEEN\x20?\x20AND\x20?',_0x5b2022,_0x585d7c);}else{if(_0x174d6c[_0xb41b('0x42')][_0x303ca3]===_0xb41b('0x83')){_0x3973e7['where']('i.'+_0x303ca3+'\x20IS\x20NULL');}else{_0x3973e7[_0xb41b('0x4a')]('i.'+_0x303ca3+_0xb41b('0x84'),_0x174d6c['query'][_0x303ca3]);}}});}if(_0x174d6c[_0xb41b('0x42')][_0xb41b('0x85')]){if(_0x174d6c[_0xb41b('0x42')]['read']==0x1){_0x3973e7[_0xb41b('0x66')]('`unreadMessages`\x20=\x200');}else{_0x3973e7['having'](_0xb41b('0x86'));}}if(_0x174d6c[_0xb41b('0x42')][_0xb41b('0x87')]){_0x43adb5=_[_0xb41b('0x88')](_0x174d6c[_0xb41b('0x42')][_0xb41b('0x87')])?_0x174d6c[_0xb41b('0x42')][_0xb41b('0x87')]:new Array(_0x174d6c[_0xb41b('0x42')][_0xb41b('0x87')]);_0x43adb5[_0xb41b('0x75')](function(_0x1c1694){_0x540763['or'](_0xb41b('0x76'),'%,'+_0x1c1694+',%');});}if(_0x174d6c['query'][_0xb41b('0x89')]){var _0x2cccf0=_0x174d6c[_0xb41b('0x42')][_0xb41b('0x89')][_0xb41b('0x8a')]('\x5c','\x5c\x5c')[_0xb41b('0x8a')](/'/g,'\x27\x27');if(qs[_0xb41b('0x8b')](_0x2cccf0)){_0x454671['or'](_0xb41b('0x8c'),_0x2cccf0+'%');}else{_0x454671['or']('MATCH\x20(me.body)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)',qs['getFullTextValue'](_0x2cccf0))['or'](_0xb41b('0x8d'),_0x2cccf0+'%');}}}_0x3973e7[_0xb41b('0x4a')](_0x454671);_0x3973e7[_0xb41b('0x8e')]('i.id');var _0x45be1f={'type':db[_0xb41b('0x8f')]['QueryTypes'][_0xb41b('0x90')],'raw':!![]};var _0x3f67b4=_0x3973e7['clone']();_0x3f67b4[_0xb41b('0x4e')](_0xb41b('0x91'));_0x3f67b4[_0xb41b('0x4e')](_0xb41b('0x92'),_0xb41b('0x93'));if(_0x2f1391[_0xb41b('0x48')]){_0x2f1391[_0xb41b('0x48')][_0xb41b('0x75')](function(_0x214372){var _0x5d0535=_0x214372[0x0]==='contactName'?_0x214372[0x0]:'i.'+_0x214372[0x0];_0x3973e7[_0xb41b('0x48')](_0x5d0535,_0x214372[0x1]===_0xb41b('0x94')?![]:!![]);});}if(!_[_0xb41b('0x95')](_0x43adb5)){_0x3973e7[_0xb41b('0x66')](_0x540763);_0x3f67b4[_0xb41b('0x4a')](_0xb41b('0x96'),_0x43adb5);}BPromise['resolve']()[_0xb41b('0x1f')](function(){if(!_0xaeb50e){if(_0x174d6c[_0xb41b('0x42')][_0xb41b('0x7f')])return;_0x3f67b4[_0xb41b('0x4a')](_0xb41b('0x97'));_0x3973e7[_0xb41b('0x4a')](_0xb41b('0x97'));return;}if(_0x174d6c[_0xb41b('0x98')][_0xb41b('0x99')]!==_0xb41b('0x9a'))return;return _0x174d6c[_0xb41b('0x98')][_0xb41b('0x9b')]({'attributes':['id'],'raw':!![]})[_0xb41b('0x1f')](function(_0x8f546f){if(_[_0xb41b('0x95')](_0x8f546f)){_0x3f67b4[_0xb41b('0x4a')]('i.ChatWebsiteId\x20IS\x20NULL');_0x3973e7['where']('i.ChatWebsiteId\x20IS\x20NULL');}else{_0x3f67b4[_0xb41b('0x4a')]('i.ChatWebsiteId\x20IN\x20?',_[_0xb41b('0x39')](_0x8f546f,'id'));_0x3973e7[_0xb41b('0x4a')]('i.ChatWebsiteId\x20IN\x20?',_[_0xb41b('0x39')](_0x8f546f,'id'));}});})[_0xb41b('0x1f')](function(){if(_0x174d6c[_0xb41b('0x98')][_0xb41b('0x99')]===_0xb41b('0x9a')&&!_0xaeb50e&&!_0x174d6c['query'][_0xb41b('0x7f')])return[];return db[_0xb41b('0x9c')]['query'](_0x3f67b4['toString'](),_0x45be1f);})[_0xb41b('0x1f')](function(_0x396784){_0x1c2c77['count']=_0x396784[_0xb41b('0x46')];if(_0x1c2c77[_0xb41b('0x2e')]===0x0)return[];return db[_0xb41b('0x9c')]['query'](_0x587270['toString'](),_0x45be1f)[_0xb41b('0x1f')](function(_0x1ae298){_0x19893d=_['keyBy'](_0x1ae298,'id');_0x45be1f=_[_0xb41b('0x9d')](_0x45be1f,{'model':db[_0xb41b('0x9e')],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0x174d6c[_0xb41b('0x42')]['fields']){_0x2f1391[_0xb41b('0x45')][_0xb41b('0x75')](function(_0x7b6ebc){_0x3973e7[_0xb41b('0x4e')]('i.'+_0x7b6ebc);});}else{_0x3973e7[_0xb41b('0x4e')](_0xb41b('0x92'),_0xb41b('0x93'));_0x3973e7[_0xb41b('0x4e')](_0xb41b('0x9f'),'Account.key');_0x3973e7[_0xb41b('0x4e')](_0xb41b('0xa0'),'Account.mandatoryDisposition');_0x3973e7[_0xb41b('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',_0xb41b('0xa1'));_0x3973e7['field'](_0xb41b('0xa2'));_0x3973e7[_0xb41b('0x4e')](_0xb41b('0xa3'),_0xb41b('0xa4'));_0x3973e7[_0xb41b('0x4e')](_0xb41b('0xa5'),_0xb41b('0xa6'));_0x3973e7[_0xb41b('0x4e')](_0xb41b('0xa7'),'Contact.email');_0x3973e7[_0xb41b('0x4e')](_0xb41b('0xa8'),_0xb41b('0xa9'));_0x3973e7[_0xb41b('0x4e')]('c.mobile',_0xb41b('0xaa'));_0x3973e7['field']('c.fax',_0xb41b('0xab'));_0x3973e7[_0xb41b('0x4e')]('o.fullname',_0xb41b('0xac'));_0x3973e7[_0xb41b('0x4e')]('o.internal',_0xb41b('0xad'));_0x3973e7['field']('GROUP_CONCAT(DISTINCT\x20t.id)',_0xb41b('0x3b'));}if(_0x2f1391[_0xb41b('0x2f')])_0x3973e7[_0xb41b('0x2f')](_0x2f1391[_0xb41b('0x2f')]);if(_0x2f1391['offset'])_0x3973e7[_0xb41b('0x47')](_0x2f1391[_0xb41b('0x47')]);return db[_0xb41b('0x9c')][_0xb41b('0x42')](_0x3973e7['toString'](),_0x45be1f);})[_0xb41b('0x1f')](function(_0x36d059){if(_0x36d059[_0xb41b('0x46')]>0x0)_0x309bc1[_0xb41b('0x4a')](_0xb41b('0xae'),_[_0xb41b('0x39')](_0x36d059,'id'));return db[_0xb41b('0x9c')][_0xb41b('0x42')](_0x309bc1['toString'](),_0x45be1f)[_0xb41b('0x1f')](function(_0xab1226){var _0x38c243=_[_0xb41b('0xaf')](_0xab1226,_0xb41b('0xb0'));var _0x182730=[];_0x36d059[_0xb41b('0x75')](function(_0x338407){_0x182730['push'](updateChatInteraction(_0x338407,_0x19893d,_0x38c243));});return BPromise[_0xb41b('0xb1')](_0x182730);});});})[_0xb41b('0x1f')](function(_0x5881cb){_0x1c2c77[_0xb41b('0xb2')]=_0x5881cb;return _0x1c2c77;})[_0xb41b('0x1f')](respondWithFilteredResult(_0x47bab5,_0x2f1391))['catch'](handleError(_0x47bab5,null));};exports[_0xb41b('0xb3')]=function(_0x33453a,_0x10998e){var _0x34c66c={'raw':![],'where':{'id':_0x33453a[_0xb41b('0xb4')]['id']}},_0x100e62={};_0x100e62[_0xb41b('0x41')]=_[_0xb41b('0x7c')](db[_0xb41b('0x9e')][_0xb41b('0xb5')]);_0x100e62['query']=_[_0xb41b('0x7c')](_0x33453a[_0xb41b('0x42')]);_0x100e62[_0xb41b('0x4b')]=_[_0xb41b('0x43')](_0x100e62['model'],_0x100e62[_0xb41b('0x42')]);_0x34c66c[_0xb41b('0x45')]=_[_0xb41b('0x43')](_0x100e62[_0xb41b('0x41')],qs[_0xb41b('0x44')](_0x33453a[_0xb41b('0x42')]['fields']));_0x34c66c[_0xb41b('0x45')]=_0x34c66c[_0xb41b('0x45')][_0xb41b('0x46')]?_0x34c66c['attributes']:_0x100e62[_0xb41b('0x41')];if(_0x33453a[_0xb41b('0x42')][_0xb41b('0xb6')]){_0x34c66c[_0xb41b('0xb7')]=[{'all':!![]}];}_0x34c66c=_[_0xb41b('0x9d')]({},_0x34c66c,_0x33453a[_0xb41b('0xb8')]);return db[_0xb41b('0x9e')][_0xb41b('0x65')](_0x34c66c)[_0xb41b('0x1f')](handleEntityNotFound(_0x10998e,null))['then'](respondWithResult(_0x10998e,null))[_0xb41b('0x29')](handleError(_0x10998e,null));};exports['create']=function(_0xd75f01,_0xee5780){return db[_0xb41b('0x9e')][_0xb41b('0xb9')](_0xd75f01[_0xb41b('0x7b')],{})[_0xb41b('0x1f')](respondWithResult(_0xee5780,0xc9))[_0xb41b('0x29')](handleError(_0xee5780,null));};exports[_0xb41b('0x34')]=function(_0x58a5c3,_0x2df8af){if(_0x58a5c3[_0xb41b('0x7b')]['id']){delete _0x58a5c3[_0xb41b('0x7b')]['id'];}return db['ChatInteraction']['find']({'where':{'id':_0x58a5c3['params']['id']}})[_0xb41b('0x1f')](handleEntityNotFound(_0x2df8af,null))[_0xb41b('0x1f')](saveUpdates(_0x58a5c3[_0xb41b('0x7b')],null))[_0xb41b('0x1f')](respondWithResult(_0x2df8af,null))['catch'](handleError(_0x2df8af,null));};exports[_0xb41b('0x35')]=function(_0x29917e,_0x471bb0){return db[_0xb41b('0x9e')][_0xb41b('0x65')]({'where':{'id':_0x29917e[_0xb41b('0xb4')]['id']}})[_0xb41b('0x1f')](handleEntityNotFound(_0x471bb0,null))[_0xb41b('0x1f')](removeEntity(_0x471bb0,null))[_0xb41b('0x29')](handleError(_0x471bb0,null));};exports[_0xb41b('0xba')]=function(_0x192b27,_0x4ec2f5){return db['ChatInteraction'][_0xb41b('0xba')]()['then'](respondWithResult(_0x4ec2f5,null))[_0xb41b('0x29')](handleError(_0x4ec2f5,null));};exports[_0xb41b('0xbb')]=function(_0x1e0c7b,_0x241edc){var _0x404c5c=_0x1e0c7b[_0xb41b('0xb4')]['id'];var _0x5ef3cc;var _0x4ae5ec;var _0x1faa87;return db[_0xb41b('0x9e')][_0xb41b('0xbc')]({'where':{'id':_0x404c5c}})[_0xb41b('0x1f')](function(_0x4d564d){_0x5ef3cc=_0x4d564d;return db['ChatWebsite'][_0xb41b('0xbc')]({'where':{'id':_0x4d564d[_0xb41b('0x7f')]},'attributes':['id',_0xb41b('0xbd'),_0xb41b('0xbe')],'raw':!![]});})[_0xb41b('0x1f')](function(_0x1d55c3){if(_0x1d55c3&&_0x1d55c3[_0xb41b('0xbd')]&&_0x1d55c3[_0xb41b('0xbe')]){_0x4ae5ec=_0x1d55c3;var _0x39e8fe={'rejectUnauthorized':![],'method':_0xb41b('0xbf'),'uri':_0xb41b('0xc0'),'headers':{'X-APIKEY':_0x1d55c3['vidaooApiKey']},'body':{'name':_0xb41b('0xc1')+_0x404c5c},'redirect':_0xb41b('0xc2'),'json':!![]};return rp(_0x39e8fe);}else{throw new db[(_0xb41b('0x8f'))][(_0xb41b('0xc3'))]('Error\x20in\x20Vidaoo\x20configuration');}})['then'](function(_0x89e14d){_0x1faa87=_0x89e14d;if(_0x1faa87['id']){var _0x527730={'body':_0x1faa87[_0xb41b('0xc4')],'ChatWebsiteId':_0x4ae5ec['id'],'ChatInteractionId':_0x5ef3cc['id'],'direction':'out','UserId':_0x1e0c7b['user']['id']};return db[_0xb41b('0xc5')][_0xb41b('0xb9')](_0x527730,{});}else{throw new db[(_0xb41b('0x8f'))][(_0xb41b('0xc3'))](_0xb41b('0xc6'));}})[_0xb41b('0x1f')](function(){return _0x5ef3cc['updateAttributes']({'vidaooSessionId':_0x1faa87['id']});})['then'](respondWithResult(_0x241edc,null))[_0xb41b('0x29')](handleError(_0x241edc,null));};exports[_0xb41b('0xc7')]=function(_0x2162d1,_0x46d33c){if(_0x2162d1['body']['id']){delete _0x2162d1[_0xb41b('0x7b')]['id'];}return db[_0xb41b('0x9e')][_0xb41b('0x65')]({'where':{'id':_0x2162d1[_0xb41b('0xb4')]['id']},'include':[{'model':db['CmContact'],'as':_0xb41b('0x69')}]})['then'](handleEntityNotFound(_0x46d33c,null))[_0xb41b('0x1f')](saveUpdates(_0x2162d1['body'],null))[_0xb41b('0x1f')](respondWithResult(_0x46d33c,null))['catch'](handleError(_0x46d33c,null));};exports[_0xb41b('0xc8')]=function(_0x5d64c0,_0x3984d3,_0x452185){if(_0x5d64c0['body']['id']){delete _0x5d64c0['body']['id'];}return db[_0xb41b('0x9e')][_0xb41b('0x65')]({'where':{'id':_0x5d64c0[_0xb41b('0xb4')]['id']}})['then'](function(_0x50561f){if(!_0x50561f){logger[_0xb41b('0x24')](_0xb41b('0xc9'),_0xb41b('0xc8'),0x194,_0xb41b('0xca'));_0x3984d3['sendStatus'](0x194);}else{if(_0x50561f[_0xb41b('0x7a')]){throw new db[(_0xb41b('0x8f'))][(_0xb41b('0xc3'))](_0xb41b('0xcb'));}}return _0x50561f;})[_0xb41b('0x1f')](function(_0x4bc9c3){if(_0x4bc9c3){return _0x4bc9c3[_0xb41b('0x34')]({'closed':_0x5d64c0['body'][_0xb41b('0xcc')],'disposition':_0x5d64c0[_0xb41b('0x7b')][_0xb41b('0xcd')]})[_0xb41b('0x1f')](function(_0x4c4986){return _0x4c4986;});}})[_0xb41b('0x1f')](function(_0x45b49d){return respondWithRpcPromise(_0xb41b('0xce'),_0xb41b('0xc8'),_0x5d64c0[_0xb41b('0x7b')],client9004);})[_0xb41b('0x1f')](respondWithResult(_0x3984d3,null))[_0xb41b('0x29')](handleError(_0x3984d3,null));};exports['attachmentUpload']=function(_0x210704,_0x4cbc7b,_0x4a1a38){_0x210704[_0xb41b('0x7b')][_0xb41b('0x37')]=_0x210704['file'][_0xb41b('0xcf')];_0x210704[_0xb41b('0x7b')][_0xb41b('0xd0')]=_0x210704['file'][_0xb41b('0xd1')];_0x210704['body'][_0xb41b('0x3f')]=_0x210704['file']['mimetype'];return db['Attachment'][_0xb41b('0xb9')](_0x210704[_0xb41b('0x7b')])[_0xb41b('0x1f')](respondWithResult(_0x4cbc7b,0xc9))[_0xb41b('0x29')](handleError(_0x4cbc7b,null));};exports[_0xb41b('0xd2')]=function(_0x828ef4,_0xeac2d,_0x5bb33a){return db[_0xb41b('0x9e')][_0xb41b('0xbc')]({'where':{'id':_0x828ef4[_0xb41b('0xb4')]['id']},'raw':!![]})[_0xb41b('0x1f')](handleEntityNotFound(_0xeac2d,null))[_0xb41b('0x1f')](function(_0x3cacdb){if(_0x3cacdb){if(_0x3cacdb[_0xb41b('0xcc')]){return _0xeac2d[_0xb41b('0x2b')](0x193)[_0xb41b('0x2c')]({'status':0x193,'message':'Unauthorized'});}return db[_0xb41b('0xd3')][_0xb41b('0xbc')]({'where':{'id':_0x828ef4[_0xb41b('0x42')][_0xb41b('0xd4')]},'raw':!![]})[_0xb41b('0x1f')](handleEntityNotFound(_0xeac2d,null));}})[_0xb41b('0x1f')](function(_0x67064c){if(_0x67064c){var _0x3d0d79=_0x67064c[_0xb41b('0xd5')]!==null;var _0x28eb04=path[_0xb41b('0xd6')](config[_0xb41b('0xd7')],_0xb41b('0xd8'));if(_0x3d0d79){_0x28eb04=path[_0xb41b('0xd6')](_0x28eb04,_0xb41b('0xd9'));}var _0x50067e=path[_0xb41b('0xd6')](_0x28eb04,_0x67064c['basename']);return _0xeac2d[_0xb41b('0xda')](_0x50067e);}})[_0xb41b('0x29')](handleError(_0xeac2d,null));};exports['close']=function(_0x1eab98,_0x19226d){var _0x51fc47=null;var _0x5d22b2=null;var _0x4965ee=null;var _0x2be734=null;if(_0x1eab98['body']['id']){delete _0x1eab98[_0xb41b('0x7b')]['id'];}if(_0x1eab98[_0xb41b('0x7b')][_0xb41b('0xdb')]){_0x2be734=path[_0xb41b('0xd6')](config[_0xb41b('0xd7')],'server/files/chat/upload/',util[_0xb41b('0xdc')](_0xb41b('0xdd'),Date[_0xb41b('0xde')]()));_0x1eab98[_0xb41b('0x7b')][_0xb41b('0xdf')]=_0x2be734;}return db[_0xb41b('0x9e')][_0xb41b('0x65')]({'where':{'id':_0x1eab98[_0xb41b('0xb4')]['id']},'include':[{'model':db['ChatMessage'],'as':_0xb41b('0xe0'),'include':[{'model':db[_0xb41b('0x78')],'as':'User'}]}]})['then'](handleEntityNotFound(_0x19226d,null))[_0xb41b('0x1f')](saveUpdates(_0x1eab98['body'],null))[_0xb41b('0x1f')](function(_0x19bb25){if(_0x19bb25){_0x51fc47=_0x19bb25;return db['ChatWebsite'][_0xb41b('0x65')]({'where':{'id':_0x51fc47[_0xb41b('0x7f')]}});}})[_0xb41b('0x1f')](function(_0x2c6617){if(_0x2c6617){_0x4965ee=_0x2c6617;return db[_0xb41b('0xe1')][_0xb41b('0x65')]({'where':{'id':_0x51fc47[_0xb41b('0x70')]}});}})[_0xb41b('0x1f')](function(_0x57f680){if(_0x57f680){_0x5d22b2=_0x57f680;if(_0x2be734){var _0x2ba9b2=null;for(var _0xb5844b=0x1;_0xb5844b<_0x51fc47['Messages']['length'];++_0xb5844b){_0x2ba9b2=_0x51fc47[_0xb41b('0xe0')][_0xb5844b];var _0x34b4bd=_0x2ba9b2[_0xb41b('0x7a')]?util['format'](_0xb41b('0xe2'),_0x4965ee['agentAlias'],_0x2ba9b2[_0xb41b('0x7a')]):_0xb41b('0xe3');var _0xff787=_0x1eab98[_0xb41b('0x7b')][_0xb41b('0xe4')]||util[_0xb41b('0xdc')](_0xb41b('0xe2'),_0xb41b('0xe5'),_0x2ba9b2['ContactId']);switch(_0x4965ee[_0xb41b('0xe6')]){case _0xb41b('0xe7'):_0x34b4bd=_0x2ba9b2[_0xb41b('0x7a')]?util['format'](_0xb41b('0xe2'),_0x4965ee[_0xb41b('0xe8')],_0x2ba9b2[_0xb41b('0x7a')]):'System';break;case _0xb41b('0xe9'):_0x34b4bd=_0x2ba9b2[_0xb41b('0x7a')]?_0x2ba9b2[_0xb41b('0x78')][_0xb41b('0xea')]||_0x2ba9b2[_0xb41b('0x78')][_0xb41b('0x3a')]:_0xb41b('0xe3');break;case'agent_fullname':_0x34b4bd=_0x2ba9b2[_0xb41b('0x7a')]?_0x2ba9b2[_0xb41b('0x78')][_0xb41b('0x3a')]:_0xb41b('0xe3');break;default:_0x34b4bd=_0x2ba9b2['UserId']?util[_0xb41b('0xdc')](_0xb41b('0xe2'),_0x4965ee[_0xb41b('0xe8')],_0x2ba9b2[_0xb41b('0x7a')]):_0xb41b('0xe3');}var _0x30029d=util[_0xb41b('0xdc')](_0xb41b('0xeb'),moment(_0x2ba9b2[_0xb41b('0x81')])[_0xb41b('0xdc')](_0xb41b('0xec')),_0x2ba9b2['direction']==='in'?_0xff787:_0x34b4bd,_0x2ba9b2[_0xb41b('0x7b')]);if(!_0x2ba9b2[_0xb41b('0xed')]){fs['appendFileSync'](_0x2be734,_0x30029d);}}return db[_0xb41b('0xee')][_0xb41b('0xbc')]({'where':{'service':!![]},'include':[{'model':db[_0xb41b('0xef')],'as':'Smtp','raw':!![]}]});}}})[_0xb41b('0x1f')](function(_0x2d431e){if(_0x2d431e&&_0x2d431e['Smtp']&&_0x1eab98['body']){var _0x512210={'tls':{'rejectUnauthorized':![]}};if(_0x2d431e[_0xb41b('0xf0')][_0xb41b('0xf1')]){_0x512210[_0xb41b('0xf1')]=_0x2d431e[_0xb41b('0xf0')][_0xb41b('0xf1')];}else{_0x512210[_0xb41b('0xf2')]=_0x2d431e[_0xb41b('0xf0')][_0xb41b('0xf2')];_0x512210[_0xb41b('0xf3')]=_0x2d431e[_0xb41b('0xf0')][_0xb41b('0xf3')];_0x512210[_0xb41b('0xf4')]=_0x2d431e[_0xb41b('0xf0')][_0xb41b('0xf4')];}if(_0x2d431e[_0xb41b('0xf0')][_0xb41b('0xf5')]){_0x512210['auth']={'user':_0x2d431e[_0xb41b('0xf0')]['user'],'pass':_0x2d431e[_0xb41b('0xf0')][_0xb41b('0xf6')]};}return respondWithRpcPromise(_0xb41b('0xf7'),_0xb41b('0xf8'),{'account':_0x512210,'message':{'from':util[_0xb41b('0xdc')](_0xb41b('0xf9'),_0x2d431e['name'],_0x2d431e[_0xb41b('0xfa')]||_0x2d431e[_0xb41b('0xf0')][_0xb41b('0x98')]),'to':_0x1eab98[_0xb41b('0x7b')][_0xb41b('0xdb')],'subject':'Mail\x20Transcript','text':util[_0xb41b('0xdc')](_0xb41b('0xfb'),_0x1eab98[_0xb41b('0x7b')][_0xb41b('0xdb')]),'attachments':[{'path':_0x2be734}]}})[_0xb41b('0x1f')](function(){return _0x51fc47;})[_0xb41b('0x29')](function(_0x82c503){console['error'](_0x82c503);});}else{return _0x51fc47;}})['then'](respondWithStatusCode(_0x19226d,0xc8))[_0xb41b('0x29')](handleError(_0x19226d,null));};exports['addMessage']=function(_0x516300,_0x1a35a6,_0x887738){return db['ChatMessage']['find']({'where':{'id':_0x516300['params']['id']}})[_0xb41b('0x1f')](handleEntityNotFound(_0x1a35a6,null))[_0xb41b('0x1f')](function(_0x11606f){if(_0x11606f){return _0x11606f[_0xb41b('0xfc')](_0x516300[_0xb41b('0x7b')][_0xb41b('0xfd')],_[_0xb41b('0xfe')](_0x516300[_0xb41b('0x7b')],[_0xb41b('0xfd'),'id'])||{});}})[_0xb41b('0x1f')](respondWithResult(_0x1a35a6,null))[_0xb41b('0x29')](handleError(_0x1a35a6,null));};exports[_0xb41b('0xff')]=function(_0xfbbace,_0x1e3144,_0x5f1fae){var _0x15fb5c={'raw':![],'where':{}};var _0xc490a={};var _0x30de67={'count':0x0,'rows':[]};return db[_0xb41b('0x9e')][_0xb41b('0xbc')]({'where':{'id':_0xfbbace[_0xb41b('0xb4')]['id']}})[_0xb41b('0x1f')](handleEntityNotFound(_0x1e3144,null))['then'](function(_0x3f6bd2){if(_0x3f6bd2){_0xc490a[_0xb41b('0x41')]=_['keys'](db[_0xb41b('0xc5')]['rawAttributes']);_0xc490a['query']=_['keys'](_0xfbbace[_0xb41b('0x42')]);_0xc490a[_0xb41b('0x4b')]=_[_0xb41b('0x43')](_0xc490a['model'],_0xc490a[_0xb41b('0x42')]);_0x15fb5c[_0xb41b('0x45')]=_[_0xb41b('0x43')](_0xc490a['model'],qs['fields'](_0xfbbace[_0xb41b('0x42')]['fields']));_0x15fb5c[_0xb41b('0x45')]=_0x15fb5c['attributes']['length']?_0x15fb5c[_0xb41b('0x45')]:_0xc490a[_0xb41b('0x41')];if(!_0xfbbace[_0xb41b('0x42')][_0xb41b('0x100')]('nolimit')){_0x15fb5c[_0xb41b('0x2f')]=qs[_0xb41b('0x2f')](_0xfbbace[_0xb41b('0x42')][_0xb41b('0x2f')]);_0x15fb5c[_0xb41b('0x47')]=qs['offset'](_0xfbbace['query'][_0xb41b('0x47')]);}_0x15fb5c['order']=qs[_0xb41b('0x49')](_0xfbbace[_0xb41b('0x42')][_0xb41b('0x49')]);_0x15fb5c['where']=qs['filters'](_[_0xb41b('0x4c')](_0xfbbace[_0xb41b('0x42')],_0xc490a['filters']));_0x15fb5c[_0xb41b('0x4a')][_0xb41b('0xb0')]=_0x3f6bd2['id'];if(_0xfbbace[_0xb41b('0x42')]['filter']){_0x15fb5c[_0xb41b('0x4a')]=_['merge'](_0x15fb5c[_0xb41b('0x4a')],{'$or':_[_0xb41b('0x39')](_0x15fb5c[_0xb41b('0x45')],function(_0x4a56a7){var _0x21da6a={};_0x21da6a[_0x4a56a7]={'$like':'%'+_0xfbbace[_0xb41b('0x42')]['filter']+'%'};return _0x21da6a;})});}if(_0xfbbace[_0xb41b('0x42')][_0xb41b('0x101')]){var _0xbf068=_0xfbbace[_0xb41b('0x42')]['$gte']['split'](',');var _0x4d5831={};_0x4d5831[_0xbf068[0x0]]={'$gte':moment(_0xbf068[0x1])[_0xb41b('0xdc')](_0xb41b('0x102'))};_0x15fb5c[_0xb41b('0x4a')]=_[_0xb41b('0x9d')](_0x15fb5c['where'],_0x4d5831);}_0x15fb5c=_[_0xb41b('0x9d')]({},_0x15fb5c,_0xfbbace[_0xb41b('0xb8')]);return db[_0xb41b('0xc5')][_0xb41b('0x2e')]({'where':_0x15fb5c[_0xb41b('0x4a')]})[_0xb41b('0x1f')](function(_0x5e1f71){_0x30de67[_0xb41b('0x2e')]=_0x5e1f71;if(_0xfbbace[_0xb41b('0x42')]['includeAll']){_0x15fb5c[_0xb41b('0xb7')]=[{'all':!![]}];}return db[_0xb41b('0xc5')][_0xb41b('0x103')](_0x15fb5c);})[_0xb41b('0x1f')](function(_0x27b38b){_0x30de67[_0xb41b('0xb2')]=_0x27b38b;return _0x30de67;});}})['then'](respondWithFilteredResult(_0x1e3144,_0x15fb5c))[_0xb41b('0x29')](handleError(_0x1e3144,null));};exports[_0xb41b('0x104')]=function(_0x49419d,_0x46f03f,_0x50b037){var _0x2565f8={'where':{}},_0x16de38={},_0x2ba385={'count':0x0,'rows':[]};return db[_0xb41b('0x9e')][_0xb41b('0xbc')]({'where':{'id':_0x49419d[_0xb41b('0xb4')]['id']}})[_0xb41b('0x1f')](handleEntityNotFound(_0x46f03f,null))['then'](function(_0x345b7c){if(_0x345b7c){_0x16de38[_0xb41b('0x41')]=_[_0xb41b('0x7c')](db[_0xb41b('0xc5')][_0xb41b('0xb5')]);_0x16de38[_0xb41b('0x42')]=_['keys'](_0x49419d[_0xb41b('0x42')]);_0x16de38[_0xb41b('0x4b')]=_[_0xb41b('0x43')](_0x16de38[_0xb41b('0x41')],_0x16de38[_0xb41b('0x42')]);_0x2565f8[_0xb41b('0x45')]=_[_0xb41b('0x43')](_0x16de38[_0xb41b('0x41')],qs['fields'](_0x49419d[_0xb41b('0x42')][_0xb41b('0x44')]));_0x2565f8['attributes']=_0x2565f8[_0xb41b('0x45')]['length']?_0x2565f8['attributes']:_0x16de38[_0xb41b('0x41')];if(!_0x49419d['query'][_0xb41b('0x100')](_0xb41b('0x105'))){_0x2565f8[_0xb41b('0x2f')]=qs[_0xb41b('0x2f')](_0x49419d['query']['limit']);_0x2565f8['offset']=qs[_0xb41b('0x47')](_0x49419d[_0xb41b('0x42')][_0xb41b('0x47')]);}_0x2565f8[_0xb41b('0x48')]=qs['sort'](_0x49419d[_0xb41b('0x42')][_0xb41b('0x49')]);_0x2565f8['where']=qs[_0xb41b('0x4b')](_[_0xb41b('0x4c')](_0x49419d['query'],_0x16de38[_0xb41b('0x4b')]));_0x2565f8[_0xb41b('0x4a')][_0xb41b('0xb0')]=_0x345b7c['id'];if(_0x49419d['query'][_0xb41b('0x89')]){_0x2565f8[_0xb41b('0x4a')]=_[_0xb41b('0x9d')](_0x2565f8[_0xb41b('0x4a')],{'$or':_[_0xb41b('0x39')](_0x2565f8['attributes'],function(_0x260986){var _0x5cf04a={};_0x5cf04a[_0x260986]={'$like':'%'+_0x49419d[_0xb41b('0x42')][_0xb41b('0x89')]+'%'};return _0x5cf04a;})});}_0x2565f8[_0xb41b('0x4a')]['secret']=![];if(_0x49419d[_0xb41b('0x42')]['id']){_0x2565f8[_0xb41b('0x4a')]['id']={'$gt':_0x49419d['query']['id']};}_0x2565f8=_[_0xb41b('0x9d')]({},_0x2565f8,_0x49419d[_0xb41b('0xb8')]);return db[_0xb41b('0xc5')][_0xb41b('0x2e')]({'where':_0x2565f8[_0xb41b('0x4a')]})[_0xb41b('0x1f')](function(_0x1708ae){_0x2ba385[_0xb41b('0x2e')]=_0x1708ae;_0x2565f8[_0xb41b('0xb7')]=[];if(_0x49419d[_0xb41b('0x42')][_0xb41b('0x106')]){_0x2565f8[_0xb41b('0xb7')][_0xb41b('0x107')]({'model':db[_0xb41b('0x78')],'as':_0xb41b('0x78'),'attributes':['id',_0xb41b('0x3a'),_0xb41b('0xea')]});}if(_0x49419d[_0xb41b('0x42')][_0xb41b('0xb6')]){_0x2565f8[_0xb41b('0xb7')]=[{'all':!![]}];}return db[_0xb41b('0xc5')][_0xb41b('0x103')](_0x2565f8);})[_0xb41b('0x1f')](function(_0x296261){_0x2ba385[_0xb41b('0xb2')]=_0x296261;return _0x2ba385;});}})[_0xb41b('0x1f')](respondWithFilteredResult(_0x46f03f,_0x2565f8))[_0xb41b('0x29')](handleError(_0x46f03f,null));};exports['addTags']=function(_0x3feed7,_0x137d43,_0x12e945){return db[_0xb41b('0x9e')][_0xb41b('0x65')]({'where':{'id':_0x3feed7[_0xb41b('0xb4')]['id']}})[_0xb41b('0x1f')](handleEntityNotFound(_0x137d43,null))['then'](function(_0x3d72b2){if(_0x3d72b2){return _0x3d72b2['setTags'](_0x3feed7[_0xb41b('0x7b')]['ids'],_[_0xb41b('0xfe')](_0x3feed7[_0xb41b('0x7b')],[_0xb41b('0xfd'),'id'])||{})['spread'](function(){return db['Tag'][_0xb41b('0x103')]({'attributes':['id',_0xb41b('0x37'),_0xb41b('0x4f')],'where':{'id':_0x3feed7[_0xb41b('0x7b')]['ids']}});})[_0xb41b('0x1f')](function(_0x4db16e){socket['emit'](_0xb41b('0x108'),{'id':Number(_0x3feed7['params']['id']),'tags':_0x4db16e||[]});return{'id':Number(_0x3feed7[_0xb41b('0xb4')]['id']),'tags':_0x4db16e||[]};});}})[_0xb41b('0x1f')](respondWithResult(_0x137d43,null))[_0xb41b('0x29')](handleError(_0x137d43,null));};exports['removeTags']=function(_0x1537ab,_0x479af4,_0xd3569a){return db[_0xb41b('0x9e')]['find']({'where':{'id':_0x1537ab[_0xb41b('0xb4')]['id']}})[_0xb41b('0x1f')](handleEntityNotFound(_0x479af4,null))[_0xb41b('0x1f')](function(_0xbcd013){if(_0xbcd013){return _0xbcd013[_0xb41b('0x109')](_0x1537ab[_0xb41b('0x42')][_0xb41b('0xfd')]);}})['then'](respondWithStatusCode(_0x479af4,null))[_0xb41b('0x29')](handleError(_0x479af4,null));};exports['download']=function(_0x3f1caf,_0x48e3ea){var _0x30f839=moment()[_0xb41b('0x10a')]()[_0xb41b('0x10b')]();var _0x519c48=path['join'](config[_0xb41b('0xd7')],_0xb41b('0x10c'),'files',_0xb41b('0x10d'));var _0x19da19=path['join'](config[_0xb41b('0xd7')],_0xb41b('0x10c'),'files',_0xb41b('0x10e'));var _0x5a8d5d=path[_0xb41b('0xd6')](_0x519c48,_0x30f839);var _0x2567aa=util['format'](_0xb41b('0x10f'),_0x3f1caf[_0xb41b('0xb4')]['id'],_0x30f839);var _0x140db8=path[_0xb41b('0xd6')](_0x519c48,_0x2567aa);var _0x43971e=[];_0x43971e['push']({'model':db[_0xb41b('0x78')],'as':'User','attributes':['id',_0xb41b('0x3a')],'raw':!![]});_0x43971e[_0xb41b('0x107')]({'model':db['CmContact'],'as':_0xb41b('0x69'),'attributes':['id',_0xb41b('0x110'),'lastName'],'raw':!![]});if(_0x3f1caf[_0xb41b('0x42')][_0xb41b('0x10e')]){_0x43971e[_0xb41b('0x107')]({'model':db[_0xb41b('0xd3')],'as':_0xb41b('0xd3'),'raw':!![]});}var _0x52c29b=[{'model':db[_0xb41b('0xc5')],'as':_0xb41b('0xe0'),'attributes':['id',_0xb41b('0x7b'),_0xb41b('0x81'),'direction',_0xb41b('0xed'),_0xb41b('0x85')],'include':_0x43971e}];_0x52c29b[_0xb41b('0x107')]({'model':db['ChatWebsite'],'as':'Account','attributes':['id',_0xb41b('0x37')]});_0x52c29b['push']({'model':db[_0xb41b('0x78')],'as':_0xb41b('0x111'),'attributes':['id','fullname']});return db[_0xb41b('0x9e')][_0xb41b('0x65')]({'where':{'id':_0x3f1caf[_0xb41b('0xb4')]['id']},'include':_0x52c29b})[_0xb41b('0x1f')](handleEntityNotFound(_0x48e3ea,null))[_0xb41b('0x1f')](function(_0xd249c0){if(_0xd249c0){var _0x4b70ad=_0xd249c0[_0xb41b('0x112')]({'plain':!![]});fs[_0xb41b('0x113')](_0x5a8d5d);var _0x214fca={'channel':_0xb41b('0x114'),'account':_0x4b70ad[_0xb41b('0x115')][_0xb41b('0x37')],'agent':_0x4b70ad[_0xb41b('0x111')]?_0x4b70ad['Owner'][_0xb41b('0x3a')]:'N.A.','createdAt':moment(_0x4b70ad['createdAt'])[_0xb41b('0xdc')]('YYYY-MM-DD\x20HH:mm:ss')[_0xb41b('0x10b')](),'closedAt':_0x4b70ad['closed']?moment(_0x4b70ad[_0xb41b('0x116')])['format'](_0xb41b('0x102'))['toString']():'','disposition':_0x4b70ad[_0xb41b('0xcd')],'chatInfo':{'browser':_0x4b70ad['browserName'],'os':_0x4b70ad[_0xb41b('0x117')],'referer':_0x4b70ad[_0xb41b('0x118')],'customerIp':_0x4b70ad[_0xb41b('0x119')],'customerPort':_0x4b70ad[_0xb41b('0x11a')]?_0x4b70ad['customerPort']:'N.A.'},'messages':_(_0x4b70ad[_0xb41b('0xe0')])[_0xb41b('0x11b')]()[_0xb41b('0x89')]({'secret':![]})[_0xb41b('0x39')](function(_0x54b385){if(_0x54b385[_0xb41b('0xd3')]){var _0x9e464b=path[_0xb41b('0xd6')](_0x19da19,_0x54b385[_0xb41b('0xd3')][_0xb41b('0xd0')]);if(fs[_0xb41b('0x11c')](_0x9e464b)){fs[_0xb41b('0x11d')](_0x9e464b)[_0xb41b('0x11e')](fs[_0xb41b('0x11f')](path[_0xb41b('0xd6')](_0x5a8d5d,_0x54b385[_0xb41b('0xd3')]['basename'])));}}return{'date':moment(_0x54b385[_0xb41b('0x81')])['format'](_0xb41b('0x102'))[_0xb41b('0x10b')](),'sender':_0x54b385['direction']==='out'?_0x54b385[_0xb41b('0x78')]?_0x54b385[_0xb41b('0x78')]['fullname']:_0xb41b('0xe3'):_0x54b385[_0xb41b('0x69')]['firstName']+(_0x54b385[_0xb41b('0x69')][_0xb41b('0x120')]?'\x20'+_0x54b385['Contact']['lastName']:''),'body':_0x54b385[_0xb41b('0xd3')]?_0x54b385['Attachment'][_0xb41b('0xd0')]:_0x54b385['body'],'direction':_0x54b385['direction']===_0xb41b('0x121')?'A':'C','secret':_0x54b385[_0xb41b('0xed')],'read':_0x54b385[_0xb41b('0x85')],'attachment':_0x54b385[_0xb41b('0xd3')]};})[_0xb41b('0x6c')]()};return ejs[_0xb41b('0x122')](path['join'](config[_0xb41b('0xd7')],_0xb41b('0x10c'),'views',_0xb41b('0x123')),{'interaction':_0x214fca})[_0xb41b('0x1f')](function(_0x3e89af){var _0x4e1641=path['join'](_0x5a8d5d,_0xb41b('0x124')+_0x4b70ad['id']+'-'+_0x30f839+_0xb41b('0x125'));var _0x539640={'path':_0x4e1641,'channel':_0xb41b('0x114'),'interactionId':_0x4b70ad['id']};return pdf[_0xb41b('0x126')](_0x3e89af,_0x539640);})['then'](function(){return new BPromise(function(_0x18455c,_0x3fa7e5){zipdir(_0x5a8d5d,{'saveTo':_0x140db8},function(_0x37fd96,_0x654abd){if(_0x37fd96)return _0x3fa7e5(_0x37fd96);return _0x18455c(_0x654abd);});})[_0xb41b('0x1f')](function(){return new BPromise(function(_0x5404e2,_0x5ac527){rimraf(_0x5a8d5d,function(_0x5d47f6){if(_0x5d47f6)_0x5ac527(_0x5d47f6);return _0x5404e2();});});})['then'](function(){return _0x48e3ea[_0xb41b('0xda')](_0x140db8,_0x2567aa,function(_0x5c0d4b){if(_0x5c0d4b){console['log'](_0xb41b('0x127'),_0x5c0d4b);}else{fs['unlinkSync'](_0x140db8);}});});});}else{return _0x48e3ea[_0xb41b('0x36')](0xc8);}})[_0xb41b('0x29')](handleError(_0x48e3ea,null));};