Built motion from commit (unavailable).|2.5.14
[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 _0xaa7c=['join','server/files/chat/upload/','format','transcript-%s.txt','now','pathTranscript','Messages','%s%d','Visitor','agentIdentifier','agentAlias','System','agent_alias','alias','agent_fullname','fullname','[%s]\x20%s:\x20%s\x0a','MM/DD/YYYY\x20HH:mm:ss','direction','secret','MailAccount','Smtp','service','host','port','secure','authentication','auth','pass','SendMail','sendMail','\x22%s\x22\x20<%s>','email','Mail\x20Transcript','Hi\x20%s,\x20attached\x20you\x20can\x20find\x20your\x20transcript\x20file.\x20\x0a\x0aRegards.\x20\x0a\x0a','addMessage','ids','omit','getMyMessages','hasOwnProperty','includeAgent','findAll','spread','emit','chatInteractionTags:save','removeTags','download','server','files','tmp','attachments','transcript-%d-%s.zip','CmContact','firstName','Owner','get','mkdirSync','40px','<div\x20class=\x22header\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<h5>Interaction\x20Transcript</h5>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>','30px','YYYY-MM-DD','Chat','Account','N.A.','closedAt','YYYY-MM-DD\x20HH:mm:ss','disposition','browserName','osName','referer','tail','existsSync','createReadStream','pipe','Contact','lastName','renderFile','views','downloadInteraction.html','transcript-','.pdf','err','unlinkSync','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','moment','bluebird','mustache','util','path','sox','ejs','squel','crypto','jsforce','to-csv','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','api','../../config/license/util','../../mysqldb','redis','register','jayson/promise','client','http','request','then','info','ChatInteraction,\x20%s,\x20%s','request\x20sent','debug','ChatInteraction,\x20%s,\x20%s,\x20%s','stringify','error','code','message','result','catch','sendStatus','status','end','json','offset','limit','set','Content-Range','apply','reject','save','update','destroy','stack','name','send','map','TagIds','Tags','split','forEach','push','index','ChatInteraction','fieldName','type','key','model','query','keys','filters','intersection','attributes','fields','nolimit','sort','where','pick','select','field','color','tools_tags','u.id','u.fullname','ui.ChatInteractionId','from','user_has_chat_interactions','left_join','users','u.id\x20=\x20ui.UserId','chat_interactions','cm_contacts','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','chat_interaction_has_tags','it.ChatInteractionId\x20=\x20i.id','expr','parseSearch','sqlOperator','conditions','length','unreadMessages','value','having','`\x20=\x200','`\x20>\x200','MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','getFullTextValue','c.firstName\x20LIKE\x20?\x20OR\x20c.lastName\x20LIKE\x20?\x20OR\x20c.email\x20LIKE\x20?','find','ContactId','text','start','Tag','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','union','User','operator','$substring','CONCAT_WS(\x27\x20\x27,\x20o.name,\x20o.fullname)\x20LIKE\x20?','UserId','buildExpression','body','compact','ChatWebsiteId','i.ChatWebsiteId\x20IN\x20?','createdAt','parse','$gte','$lte','i.createdAt\x20BETWEEN\x20?\x20AND\x20?','null','\x20IS\x20NULL','\x20=\x20?','read','`unreadMessages`\x20=\x200','`unreadMessages`\x20>\x200','tag','isArray','filter','replace','isNumeric','i.id\x20LIKE\x20?','MATCH\x20(me.body)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','CONCAT(c.firstName,\x20\x27\x20\x27,\x20c.lastName)\x20LIKE\x20?','i.id','Sequelize','QueryTypes','SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','order','contactName','isEmpty','t.id\x20IN\x20?','i.ChatWebsiteId\x20IS\x20NOT\x20NULL','user','agent','getChatWebsites','i.ChatWebsiteId\x20IS\x20NULL','role','sequelize','toString','count','keyBy','merge','a.key','Account.key','a.mandatoryDisposition','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','i.*','c.firstName','c.lastName','Contact.lastName','c.email','Contact.email','c.phone','Contact.phone','c.mobile','Contact.mobile','c.fax','Contact.fax','o.fullname','Owner.fullname','o.internal','ui.ChatInteractionId\x20IN\x20?','ChatInteractionId','all','rows','params','rawAttributes','includeAll','include','options','create','describe','createVidaooSession','ChatWebsite','findOne','vidaooEscalation','vidaooApiKey','POST','https://api-vidaoo.xcally.com/api/v1/sessions','follow','ValidationError','Error\x20in\x20Vidaoo\x20configuration','out','ChatMessage','updateAttributes','abandonInteraction,\x20%s,\x20%s,\x20%s','abandon','entity\x20not\x20found','Interaction\x20already\x20assigned','attachmentUpload','file','originalname','basename','filename','mimetype','Attachment','closed','Unauthorized','attachId','root','close','mailTranscript'];(function(_0x4ed2d6,_0x3c7ce8){var _0x2a7198=function(_0x1dcf4a){while(--_0x1dcf4a){_0x4ed2d6['push'](_0x4ed2d6['shift']());}};_0x2a7198(++_0x3c7ce8);}(_0xaa7c,0x18e));var _0xcaa7=function(_0x15c671,_0x531c1d){_0x15c671=_0x15c671-0x0;var _0x2e314d=_0xaa7c[_0x15c671];return _0x2e314d;};'use strict';var pdf=require(_0xcaa7('0x0'));var emlformat=require(_0xcaa7('0x1'));var rimraf=require(_0xcaa7('0x2'));var zipdir=require(_0xcaa7('0x3'));var jsonpatch=require(_0xcaa7('0x4'));var rp=require('request-promise');var moment=require(_0xcaa7('0x5'));var BPromise=require(_0xcaa7('0x6'));var Mustache=require(_0xcaa7('0x7'));var util=require(_0xcaa7('0x8'));var path=require(_0xcaa7('0x9'));var sox=require(_0xcaa7('0xa'));var csv=require('to-csv');var ejs=require(_0xcaa7('0xb'));var fs=require('fs');var _=require('lodash');var squel=require(_0xcaa7('0xc'));var crypto=require(_0xcaa7('0xd'));var jsforce=require(_0xcaa7('0xe'));var deskjs=require('desk.js');var toCsv=require(_0xcaa7('0xf'));var querystring=require(_0xcaa7('0x10'));var Papa=require(_0xcaa7('0x11'));var Redis=require(_0xcaa7('0x12'));var authService=require(_0xcaa7('0x13'));var qs=require(_0xcaa7('0x14'));var as=require(_0xcaa7('0x15'));var hardwareService=require('../../config/license/hardware');var logger=require(_0xcaa7('0x16'))(_0xcaa7('0x17'));var utils=require('../../config/utils');var config=require('../../config/environment');var licenseUtil=require(_0xcaa7('0x18'));var db=require(_0xcaa7('0x19'))['db'];config[_0xcaa7('0x1a')]=_['defaults'](config[_0xcaa7('0x1a')],{'host':'localhost','port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config['redis']));require('./chatInteraction.socket')[_0xcaa7('0x1b')](socket);var jayson=require(_0xcaa7('0x1c'));var client=jayson[_0xcaa7('0x1d')][_0xcaa7('0x1e')]({'port':0x232b});var client9004=jayson[_0xcaa7('0x1d')][_0xcaa7('0x1e')]({'port':0x232c});function respondWithRpcPromise(_0x221c68,_0x15d730,_0x4eb035,_0x15b18c){return new BPromise(function(_0x34f082,_0x18777f){var _0x2f69e8=_0x15b18c||client;return _0x2f69e8[_0xcaa7('0x1f')](_0x221c68,_0x4eb035)[_0xcaa7('0x20')](function(_0x520766){logger[_0xcaa7('0x21')](_0xcaa7('0x22'),_0x15d730,_0xcaa7('0x23'));logger[_0xcaa7('0x24')](_0xcaa7('0x25'),_0x15d730,_0xcaa7('0x23'),JSON[_0xcaa7('0x26')](_0x520766));if(_0x520766[_0xcaa7('0x27')]){if(_0x520766['error'][_0xcaa7('0x28')]===0x1f4){logger['error'](_0xcaa7('0x22'),_0x15d730,_0x520766[_0xcaa7('0x27')][_0xcaa7('0x29')]);return _0x18777f(_0x520766[_0xcaa7('0x27')]['message']);}logger[_0xcaa7('0x27')](_0xcaa7('0x22'),_0x15d730,_0x520766[_0xcaa7('0x27')][_0xcaa7('0x29')]);return _0x34f082(_0x520766['error'][_0xcaa7('0x29')]);}else{logger[_0xcaa7('0x21')](_0xcaa7('0x22'),_0x15d730,_0xcaa7('0x23'));_0x34f082(_0x520766[_0xcaa7('0x2a')][_0xcaa7('0x29')]);}})[_0xcaa7('0x2b')](function(_0x438047){logger[_0xcaa7('0x27')]('ChatInteraction,\x20%s,\x20%s',_0x15d730,_0x438047);_0x18777f(_0x438047);});});}function respondWithStatusCode(_0x168385,_0x2c2667){_0x2c2667=_0x2c2667||0xcc;return function(_0x31ccf6){if(_0x31ccf6){return _0x168385[_0xcaa7('0x2c')](_0x2c2667);}return _0x168385[_0xcaa7('0x2d')](_0x2c2667)[_0xcaa7('0x2e')]();};}function respondWithResult(_0x473e74,_0x454ee7){_0x454ee7=_0x454ee7||0xc8;return function(_0x29089){if(_0x29089){return _0x473e74[_0xcaa7('0x2d')](_0x454ee7)[_0xcaa7('0x2f')](_0x29089);}};}function respondWithFilteredResult(_0x56e9c4,_0x17558a){return function(_0x453c4d){if(_0x453c4d){var _0x31be4a=_0x453c4d['count'],_0x523270=_0x17558a[_0xcaa7('0x30')],_0x4daafc=_0x17558a[_0xcaa7('0x30')]+_0x17558a[_0xcaa7('0x31')],_0x117670;if(_0x4daafc>=_0x31be4a){_0x4daafc=_0x31be4a;_0x117670=0xc8;}else{_0x117670=0xce;}_0x56e9c4[_0xcaa7('0x2d')](_0x117670);return _0x56e9c4[_0xcaa7('0x32')](_0xcaa7('0x33'),_0x523270+'-'+_0x4daafc+'/'+_0x31be4a)[_0xcaa7('0x2f')](_0x453c4d);}return null;};}function patchUpdates(_0x435967){return function(_0x35660e){try{jsonpatch[_0xcaa7('0x34')](_0x35660e,_0x435967,!![]);}catch(_0x1d00cf){return BPromise[_0xcaa7('0x35')](_0x1d00cf);}return _0x35660e[_0xcaa7('0x36')]();};}function saveUpdates(_0x6ddb2e,_0x4d819c){return function(_0x58aa65){if(_0x58aa65){return _0x58aa65[_0xcaa7('0x37')](_0x6ddb2e)[_0xcaa7('0x20')](function(_0x5edac0){return _0x5edac0;});}return null;};}function removeEntity(_0x5b5094,_0x48ba13){return function(_0x4b666a){if(_0x4b666a){return _0x4b666a[_0xcaa7('0x38')]()[_0xcaa7('0x20')](function(){_0x5b5094['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0x769a4f,_0x4b2bda){return function(_0x45b03e){if(!_0x45b03e){_0x769a4f[_0xcaa7('0x2c')](0x194);}return _0x45b03e;};}function handleError(_0xb32708,_0x358fac){_0x358fac=_0x358fac||0x1f4;return function(_0x4b6c0d){logger['error'](_0x4b6c0d[_0xcaa7('0x39')]);if(_0x4b6c0d[_0xcaa7('0x3a')]){delete _0x4b6c0d[_0xcaa7('0x3a')];}_0xb32708['status'](_0x358fac)[_0xcaa7('0x3b')](_0x4b6c0d);};}function getInteractionUsers(_0x4e431f,_0x2c6373){return new BPromise(function(_0x4eaf8f,_0x5e8265){try{if(_0x2c6373[_0x4e431f['id']]){_0x4e431f['Users']=_[_0xcaa7('0x3c')](_0x2c6373[_0x4e431f['id']],function(_0x6a2bb8){return{'id':_0x6a2bb8['id'],'fullname':_0x6a2bb8['fullname']};});}}catch(_0x45c0b4){_0x5e8265(_0x45c0b4);}_0x4eaf8f(_0x4e431f);});}function getInteractionTags(_0x260522,_0x17fb6a){return new BPromise(function(_0x14b526,_0x4abb6e){try{if(_0x260522[_0xcaa7('0x3d')]){_0x260522[_0xcaa7('0x3e')]=[];_0x260522[_0xcaa7('0x3d')][_0xcaa7('0x3f')](',')[_0xcaa7('0x40')](function(_0x5ae528){_0x260522[_0xcaa7('0x3e')][_0xcaa7('0x41')](_0x17fb6a[_0x5ae528]);});}delete _0x260522['TagIds'];}catch(_0x35b989){_0x4abb6e(_0x35b989);}_0x14b526(_0x260522);});}function updateChatInteraction(_0x4a7ac6,_0x5846ce,_0x43d0a1){return new BPromise(function(_0xada7dc,_0x25395c){return getInteractionUsers(_0x4a7ac6,_0x43d0a1)[_0xcaa7('0x20')](function(_0x470ade){return getInteractionTags(_0x470ade,_0x5846ce);})[_0xcaa7('0x20')](function(_0x105147){_0xada7dc(_0x105147);})[_0xcaa7('0x2b')](function(_0x429e68){_0x25395c(_0x429e68);});});}exports[_0xcaa7('0x42')]=function(_0x5307ea,_0x26625f){var _0x3d4e7d={},_0x18a844={},_0x98beb1={'count':0x0,'rows':[]};var _0x3b527c=_[_0xcaa7('0x3c')](db[_0xcaa7('0x43')]['rawAttributes'],function(_0x4ad0e2){return{'name':_0x4ad0e2[_0xcaa7('0x44')],'type':_0x4ad0e2[_0xcaa7('0x45')][_0xcaa7('0x46')]};});_0x18a844[_0xcaa7('0x47')]=_[_0xcaa7('0x3c')](_0x3b527c,_0xcaa7('0x3a'));_0x18a844[_0xcaa7('0x48')]=_[_0xcaa7('0x49')](_0x5307ea[_0xcaa7('0x48')]);_0x18a844[_0xcaa7('0x4a')]=_[_0xcaa7('0x4b')](_0x18a844[_0xcaa7('0x47')],_0x18a844[_0xcaa7('0x48')]);_0x3d4e7d[_0xcaa7('0x4c')]=_[_0xcaa7('0x4b')](_0x18a844[_0xcaa7('0x47')],qs[_0xcaa7('0x4d')](_0x5307ea['query'][_0xcaa7('0x4d')]));_0x3d4e7d['attributes']=_0x3d4e7d[_0xcaa7('0x4c')]['length']?_0x3d4e7d[_0xcaa7('0x4c')]:_0x18a844[_0xcaa7('0x47')];if(!_0x5307ea[_0xcaa7('0x48')]['hasOwnProperty'](_0xcaa7('0x4e'))){_0x3d4e7d[_0xcaa7('0x31')]=qs[_0xcaa7('0x31')](_0x5307ea['query'][_0xcaa7('0x31')]);_0x3d4e7d[_0xcaa7('0x30')]=qs[_0xcaa7('0x30')](_0x5307ea[_0xcaa7('0x48')][_0xcaa7('0x30')]);}_0x3d4e7d['order']=qs[_0xcaa7('0x4f')](_0x5307ea[_0xcaa7('0x48')]['sort']);_0x3d4e7d[_0xcaa7('0x50')]=qs[_0xcaa7('0x4a')](_[_0xcaa7('0x51')](_0x5307ea[_0xcaa7('0x48')],_0x18a844[_0xcaa7('0x4a')]),_0x3b527c);var _0x407c97=[];var _0x35e95a=squel[_0xcaa7('0x52')]()[_0xcaa7('0x53')]('id')['field']('name')[_0xcaa7('0x53')](_0xcaa7('0x54'))['from'](_0xcaa7('0x55'));var _0x3b2df9=squel['select']()['field'](_0xcaa7('0x56'))[_0xcaa7('0x53')](_0xcaa7('0x57'))[_0xcaa7('0x53')](_0xcaa7('0x58'))[_0xcaa7('0x59')](_0xcaa7('0x5a'),'ui')[_0xcaa7('0x5b')](_0xcaa7('0x5c'),'u',_0xcaa7('0x5d'));var _0x1dc0f8=squel[_0xcaa7('0x52')]()[_0xcaa7('0x59')](_0xcaa7('0x5e'),'i')['left_join'](_0xcaa7('0x5f'),'c',_0xcaa7('0x60'))[_0xcaa7('0x5b')](_0xcaa7('0x5c'),'o',_0xcaa7('0x61'))['left_join'](_0xcaa7('0x62'),'a',_0xcaa7('0x63'))[_0xcaa7('0x5b')](_0xcaa7('0x64'),'me',_0xcaa7('0x65'))[_0xcaa7('0x5b')](_0xcaa7('0x66'),'it',_0xcaa7('0x67'))['left_join'](_0xcaa7('0x55'),'t','t.id\x20=\x20it.TagId');var _0x8590b=squel[_0xcaa7('0x68')]();var _0x12a94b=[];var _0xcb2c20=squel['expr']();var _0x566017;if(_0x5307ea['query']['search']){_0x566017=as[_0xcaa7('0x69')](_0x5307ea['query']['search']);var _0x114ea9=_0x566017[_0xcaa7('0x6a')];for(var _0x48e911=0x0;_0x48e911<_0x566017[_0xcaa7('0x6b')][_0xcaa7('0x6c')];_0x48e911++){var _0x30c542=_0x566017[_0xcaa7('0x6b')][_0x48e911];var _0x3d67a='i';var _0x252fed=_['find'](_0x3b527c,[_0xcaa7('0x3a'),_0x30c542[_0xcaa7('0x53')]]);if(!_0x252fed){switch(_0x30c542['field']){case _0xcaa7('0x6d'):if(_0x30c542[_0xcaa7('0x6e')]==0x1){_0x1dc0f8[_0xcaa7('0x6f')]('`'+_0x30c542[_0xcaa7('0x53')]+_0xcaa7('0x70'));}else{_0x1dc0f8[_0xcaa7('0x6f')]('`'+_0x30c542[_0xcaa7('0x53')]+_0xcaa7('0x71'));}break;case'Contact':if(_0x30c542['operator']==='$substring'){if(_0x30c542[_0xcaa7('0x6e')]['split']('\x20')['length']>0x1){_0x8590b[_0x114ea9](_0xcaa7('0x72'),qs[_0xcaa7('0x73')](_0x30c542[_0xcaa7('0x6e')]),null);}else{var _0x46621e='%'+_0x30c542[_0xcaa7('0x6e')]+'%';_0x8590b[_0x114ea9](_0xcaa7('0x74'),_0x46621e,_0x46621e,_0x46621e);}}else{_0x252fed=_[_0xcaa7('0x75')](_0x3b527c,[_0xcaa7('0x3a'),_0xcaa7('0x76')]);_0x30c542[_0xcaa7('0x53')]=_0xcaa7('0x76');_0x919b9=as['buildExpression'](_0x3d67a,_0x252fed[_0xcaa7('0x45')],_0x30c542);_0x8590b[_0x114ea9](_0x919b9[_0xcaa7('0x77')],_0x919b9[_0xcaa7('0x6e')][_0xcaa7('0x78')],_0x919b9[_0xcaa7('0x6e')]['end']);}break;case _0xcaa7('0x79'):var _0x35771b=_0x30c542[_0xcaa7('0x6e')][_0xcaa7('0x3f')](',')[_0xcaa7('0x3c')](function(_0x5120e5){return Number(_0x5120e5);});_0x35771b[_0xcaa7('0x40')](function(_0x4c3b1e){_0xcb2c20['or'](_0xcaa7('0x7a'),'%,'+_0x4c3b1e+',%');});_0x12a94b=_[_0xcaa7('0x7b')](_0x12a94b,_0x35771b);break;case _0xcaa7('0x7c'):if(_0x30c542[_0xcaa7('0x7d')]===_0xcaa7('0x7e')){_0x8590b[_0x114ea9](_0xcaa7('0x7f'),'%'+_0x30c542[_0xcaa7('0x6e')]+'%',null);}else{_0x252fed=_[_0xcaa7('0x75')](_0x3b527c,[_0xcaa7('0x3a'),_0xcaa7('0x80')]);_0x30c542[_0xcaa7('0x53')]=_0xcaa7('0x80');_0x919b9=as[_0xcaa7('0x81')](_0x3d67a,_0x252fed['type'],_0x30c542);_0x8590b[_0x114ea9](_0x919b9[_0xcaa7('0x77')],_0x919b9[_0xcaa7('0x6e')][_0xcaa7('0x78')],_0x919b9[_0xcaa7('0x6e')][_0xcaa7('0x2e')]);}break;case _0xcaa7('0x82'):_0x919b9=as['buildExpression']('me',null,_0x30c542);_0x8590b[_0x114ea9](_0x919b9['text'],_0x919b9['value'][_0xcaa7('0x78')],_0x919b9[_0xcaa7('0x6e')][_0xcaa7('0x2e')]);break;}}else{var _0x919b9=as[_0xcaa7('0x81')](_0x3d67a,_0x252fed[_0xcaa7('0x45')],_0x30c542);_0x8590b[_0x114ea9](_0x919b9[_0xcaa7('0x77')],_0x919b9[_0xcaa7('0x6e')][_0xcaa7('0x78')],_0x919b9[_0xcaa7('0x6e')]['end']);}}}else{var _0x23f65c=_(_0x5307ea[_0xcaa7('0x48')])['keys']()['map'](function(_0x4c44b3){return _['some'](_0x3b527c,[_0xcaa7('0x3a'),_0x4c44b3])?_0x4c44b3:undefined;})[_0xcaa7('0x83')]()['value']();if(!_['isEmpty'](_0x23f65c)){_0x23f65c[_0xcaa7('0x40')](function(_0x4ba481){if(_0x4ba481===_0xcaa7('0x84')){_0x1dc0f8['where'](_0xcaa7('0x85'),[]['concat'](_0x5307ea[_0xcaa7('0x48')][_0x4ba481]));}else if(_0x4ba481===_0xcaa7('0x86')){var _0x599c62=JSON[_0xcaa7('0x87')](_0x5307ea[_0xcaa7('0x48')][_0x4ba481])[_0xcaa7('0x88')];var _0x4a839d=JSON[_0xcaa7('0x87')](_0x5307ea['query'][_0x4ba481])[_0xcaa7('0x89')];_0x1dc0f8[_0xcaa7('0x50')](_0xcaa7('0x8a'),_0x599c62,_0x4a839d);}else{if(_0x5307ea[_0xcaa7('0x48')][_0x4ba481]===_0xcaa7('0x8b')){_0x1dc0f8[_0xcaa7('0x50')]('i.'+_0x4ba481+_0xcaa7('0x8c'));}else{_0x1dc0f8[_0xcaa7('0x50')]('i.'+_0x4ba481+_0xcaa7('0x8d'),_0x5307ea[_0xcaa7('0x48')][_0x4ba481]);}}});}if(_0x5307ea['query']['read']){if(_0x5307ea[_0xcaa7('0x48')][_0xcaa7('0x8e')]==0x1){_0x1dc0f8['having'](_0xcaa7('0x8f'));}else{_0x1dc0f8[_0xcaa7('0x6f')](_0xcaa7('0x90'));}}if(_0x5307ea[_0xcaa7('0x48')][_0xcaa7('0x91')]){_0x12a94b=_[_0xcaa7('0x92')](_0x5307ea[_0xcaa7('0x48')][_0xcaa7('0x91')])?_0x5307ea[_0xcaa7('0x48')][_0xcaa7('0x91')]:new Array(_0x5307ea[_0xcaa7('0x48')][_0xcaa7('0x91')]);_0x12a94b[_0xcaa7('0x40')](function(_0x449cd4){_0xcb2c20['or'](_0xcaa7('0x7a'),'%,'+_0x449cd4+',%');});}if(_0x5307ea['query'][_0xcaa7('0x93')]){var _0x4955a0=_0x5307ea[_0xcaa7('0x48')][_0xcaa7('0x93')][_0xcaa7('0x94')]('\x5c','\x5c\x5c')[_0xcaa7('0x94')](/'/g,'\x27\x27');if(qs[_0xcaa7('0x95')](_0x4955a0)){_0x8590b['or'](_0xcaa7('0x96'),_0x4955a0+'%');}else{_0x8590b['or'](_0xcaa7('0x97'),qs['getFullTextValue'](_0x4955a0))['or'](_0xcaa7('0x98'),_0x4955a0+'%');}}}_0x1dc0f8[_0xcaa7('0x50')](_0x8590b);_0x1dc0f8['group'](_0xcaa7('0x99'));var _0x587525={'type':db[_0xcaa7('0x9a')][_0xcaa7('0x9b')]['SELECT'],'raw':!![]};var _0x53c72f=_0x1dc0f8['clone']();_0x53c72f[_0xcaa7('0x53')]('i.id');_0x53c72f['field'](_0xcaa7('0x9c'),_0xcaa7('0x6d'));if(_0x3d4e7d[_0xcaa7('0x9d')]){_0x3d4e7d['order'][_0xcaa7('0x40')](function(_0x32b5a0){var _0x474c4a=_0x32b5a0[0x0]===_0xcaa7('0x9e')?_0x32b5a0[0x0]:'i.'+_0x32b5a0[0x0];_0x1dc0f8['order'](_0x474c4a,_0x32b5a0[0x1]==='DESC'?![]:!![]);});}if(!_[_0xcaa7('0x9f')](_0x12a94b)){_0x1dc0f8[_0xcaa7('0x6f')](_0xcb2c20);_0x53c72f[_0xcaa7('0x50')](_0xcaa7('0xa0'),_0x12a94b);}BPromise['resolve']()[_0xcaa7('0x20')](function(){if(!_0x566017){if(_0x5307ea[_0xcaa7('0x48')][_0xcaa7('0x84')]||_0x5307ea[_0xcaa7('0x48')]['journey'])return;_0x53c72f['where'](_0xcaa7('0xa1'));_0x1dc0f8[_0xcaa7('0x50')](_0xcaa7('0xa1'));return;}if(_0x5307ea[_0xcaa7('0xa2')]['role']!==_0xcaa7('0xa3'))return;return _0x5307ea['user'][_0xcaa7('0xa4')]({'attributes':['id'],'raw':!![]})[_0xcaa7('0x20')](function(_0x4f0b07){if(_[_0xcaa7('0x9f')](_0x4f0b07)){_0x53c72f[_0xcaa7('0x50')](_0xcaa7('0xa5'));_0x1dc0f8['where'](_0xcaa7('0xa5'));}else{_0x53c72f['where'](_0xcaa7('0x85'),_[_0xcaa7('0x3c')](_0x4f0b07,'id'));_0x1dc0f8['where'](_0xcaa7('0x85'),_[_0xcaa7('0x3c')](_0x4f0b07,'id'));}});})['then'](function(){if(_0x5307ea[_0xcaa7('0xa2')][_0xcaa7('0xa6')]===_0xcaa7('0xa3')&&!_0x566017&&!_0x5307ea[_0xcaa7('0x48')][_0xcaa7('0x84')])return[];return db[_0xcaa7('0xa7')][_0xcaa7('0x48')](_0x53c72f[_0xcaa7('0xa8')](),_0x587525);})['then'](function(_0x299eb3){_0x98beb1[_0xcaa7('0xa9')]=_0x299eb3[_0xcaa7('0x6c')];if(_0x98beb1[_0xcaa7('0xa9')]===0x0)return[];return db['sequelize'][_0xcaa7('0x48')](_0x35e95a[_0xcaa7('0xa8')](),_0x587525)[_0xcaa7('0x20')](function(_0x5979a9){_0x407c97=_[_0xcaa7('0xaa')](_0x5979a9,'id');_0x587525=_[_0xcaa7('0xab')](_0x587525,{'model':db[_0xcaa7('0x43')],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0x5307ea[_0xcaa7('0x48')]['fields']){_0x3d4e7d[_0xcaa7('0x4c')][_0xcaa7('0x40')](function(_0x25262f){_0x1dc0f8[_0xcaa7('0x53')]('i.'+_0x25262f);});}else{_0x1dc0f8['field'](_0xcaa7('0x9c'),_0xcaa7('0x6d'));_0x1dc0f8[_0xcaa7('0x53')](_0xcaa7('0xac'),_0xcaa7('0xad'));_0x1dc0f8[_0xcaa7('0x53')](_0xcaa7('0xae'),'Account.mandatoryDisposition');_0x1dc0f8['field'](_0xcaa7('0xaf'),_0xcaa7('0x9e'));_0x1dc0f8['field'](_0xcaa7('0xb0'));_0x1dc0f8[_0xcaa7('0x53')](_0xcaa7('0xb1'),'Contact.firstName');_0x1dc0f8[_0xcaa7('0x53')](_0xcaa7('0xb2'),_0xcaa7('0xb3'));_0x1dc0f8[_0xcaa7('0x53')](_0xcaa7('0xb4'),_0xcaa7('0xb5'));_0x1dc0f8[_0xcaa7('0x53')](_0xcaa7('0xb6'),_0xcaa7('0xb7'));_0x1dc0f8[_0xcaa7('0x53')](_0xcaa7('0xb8'),_0xcaa7('0xb9'));_0x1dc0f8[_0xcaa7('0x53')](_0xcaa7('0xba'),_0xcaa7('0xbb'));_0x1dc0f8[_0xcaa7('0x53')](_0xcaa7('0xbc'),_0xcaa7('0xbd'));_0x1dc0f8['field'](_0xcaa7('0xbe'),'Owner.internal');_0x1dc0f8[_0xcaa7('0x53')]('GROUP_CONCAT(DISTINCT\x20t.id)',_0xcaa7('0x3d'));}if(_0x3d4e7d[_0xcaa7('0x31')])_0x1dc0f8[_0xcaa7('0x31')](_0x3d4e7d['limit']);if(_0x3d4e7d[_0xcaa7('0x30')])_0x1dc0f8[_0xcaa7('0x30')](_0x3d4e7d['offset']);return db[_0xcaa7('0xa7')][_0xcaa7('0x48')](_0x1dc0f8[_0xcaa7('0xa8')](),_0x587525);})[_0xcaa7('0x20')](function(_0x42d8ca){_0x3b2df9[_0xcaa7('0x50')](_0xcaa7('0xbf'),_[_0xcaa7('0x3c')](_0x42d8ca,'id'));return db[_0xcaa7('0xa7')][_0xcaa7('0x48')](_0x3b2df9['toString'](),_0x587525)[_0xcaa7('0x20')](function(_0x2ad108){var _0x3b204a=_['groupBy'](_0x2ad108,_0xcaa7('0xc0'));var _0x5c3394=[];_0x42d8ca['forEach'](function(_0x537b76){_0x5c3394[_0xcaa7('0x41')](updateChatInteraction(_0x537b76,_0x407c97,_0x3b204a));});return BPromise[_0xcaa7('0xc1')](_0x5c3394);});});})[_0xcaa7('0x20')](function(_0x3e4c78){_0x98beb1[_0xcaa7('0xc2')]=_0x3e4c78;return _0x98beb1;})[_0xcaa7('0x20')](respondWithFilteredResult(_0x26625f,_0x3d4e7d))['catch'](handleError(_0x26625f,null));};exports['show']=function(_0x2d9e18,_0x7f2fe6){var _0x26a871={'raw':![],'where':{'id':_0x2d9e18[_0xcaa7('0xc3')]['id']}},_0x5dfa3e={};_0x5dfa3e[_0xcaa7('0x47')]=_[_0xcaa7('0x49')](db['ChatInteraction'][_0xcaa7('0xc4')]);_0x5dfa3e[_0xcaa7('0x48')]=_[_0xcaa7('0x49')](_0x2d9e18['query']);_0x5dfa3e[_0xcaa7('0x4a')]=_[_0xcaa7('0x4b')](_0x5dfa3e[_0xcaa7('0x47')],_0x5dfa3e[_0xcaa7('0x48')]);_0x26a871[_0xcaa7('0x4c')]=_[_0xcaa7('0x4b')](_0x5dfa3e[_0xcaa7('0x47')],qs['fields'](_0x2d9e18[_0xcaa7('0x48')][_0xcaa7('0x4d')]));_0x26a871[_0xcaa7('0x4c')]=_0x26a871[_0xcaa7('0x4c')]['length']?_0x26a871[_0xcaa7('0x4c')]:_0x5dfa3e['model'];if(_0x2d9e18['query'][_0xcaa7('0xc5')]){_0x26a871[_0xcaa7('0xc6')]=[{'all':!![]}];}_0x26a871=_[_0xcaa7('0xab')]({},_0x26a871,_0x2d9e18[_0xcaa7('0xc7')]);return db[_0xcaa7('0x43')][_0xcaa7('0x75')](_0x26a871)['then'](handleEntityNotFound(_0x7f2fe6,null))[_0xcaa7('0x20')](respondWithResult(_0x7f2fe6,null))[_0xcaa7('0x2b')](handleError(_0x7f2fe6,null));};exports[_0xcaa7('0xc8')]=function(_0x3c87a6,_0x5b8daa){return db[_0xcaa7('0x43')]['create'](_0x3c87a6[_0xcaa7('0x82')],{})['then'](respondWithResult(_0x5b8daa,0xc9))[_0xcaa7('0x2b')](handleError(_0x5b8daa,null));};exports['update']=function(_0x256a81,_0x478610){if(_0x256a81[_0xcaa7('0x82')]['id']){delete _0x256a81[_0xcaa7('0x82')]['id'];}return db[_0xcaa7('0x43')][_0xcaa7('0x75')]({'where':{'id':_0x256a81['params']['id']}})[_0xcaa7('0x20')](handleEntityNotFound(_0x478610,null))['then'](saveUpdates(_0x256a81[_0xcaa7('0x82')],null))[_0xcaa7('0x20')](respondWithResult(_0x478610,null))['catch'](handleError(_0x478610,null));};exports['destroy']=function(_0x1755ea,_0x20293e){return db[_0xcaa7('0x43')][_0xcaa7('0x75')]({'where':{'id':_0x1755ea[_0xcaa7('0xc3')]['id']}})[_0xcaa7('0x20')](handleEntityNotFound(_0x20293e,null))[_0xcaa7('0x20')](removeEntity(_0x20293e,null))[_0xcaa7('0x2b')](handleError(_0x20293e,null));};exports['describe']=function(_0x510172,_0x363089){return db['ChatInteraction'][_0xcaa7('0xc9')]()[_0xcaa7('0x20')](respondWithResult(_0x363089,null))[_0xcaa7('0x2b')](handleError(_0x363089,null));};exports[_0xcaa7('0xca')]=function(_0x343de0,_0x4eae50){var _0x307f21=_0x343de0[_0xcaa7('0xc3')]['id'];var _0x1fde73;var _0xf15c75;var _0x3e8059;return db[_0xcaa7('0x43')]['findOne']({'where':{'id':_0x307f21}})[_0xcaa7('0x20')](function(_0x23f72d){_0x1fde73=_0x23f72d;return db[_0xcaa7('0xcb')][_0xcaa7('0xcc')]({'where':{'id':_0x23f72d['ChatWebsiteId']},'attributes':['id','vidaooApiKey',_0xcaa7('0xcd')],'raw':!![]});})['then'](function(_0x470bd6){if(_0x470bd6&&_0x470bd6[_0xcaa7('0xce')]&&_0x470bd6[_0xcaa7('0xcd')]){_0xf15c75=_0x470bd6;var _0x13c6b4={'rejectUnauthorized':![],'method':_0xcaa7('0xcf'),'uri':_0xcaa7('0xd0'),'headers':{'X-APIKEY':_0x470bd6[_0xcaa7('0xce')]},'body':{'name':'MotionCWB:'+_0x307f21},'redirect':_0xcaa7('0xd1'),'json':!![]};return rp(_0x13c6b4);}else{throw new db[(_0xcaa7('0x9a'))][(_0xcaa7('0xd2'))](_0xcaa7('0xd3'));}})[_0xcaa7('0x20')](function(_0x25bc27){_0x3e8059=_0x25bc27;if(_0x3e8059['id']){var _0x4a2c77={'body':_0x3e8059['join_url'],'ChatWebsiteId':_0xf15c75['id'],'ChatInteractionId':_0x1fde73['id'],'direction':_0xcaa7('0xd4'),'UserId':_0x343de0[_0xcaa7('0xa2')]['id']};return db[_0xcaa7('0xd5')][_0xcaa7('0xc8')](_0x4a2c77,{});}else{throw new db[(_0xcaa7('0x9a'))]['ValidationError']('Unable\x20to\x20create\x20Vidaoo\x20session');}})[_0xcaa7('0x20')](function(){return _0x1fde73[_0xcaa7('0xd6')]({'vidaooSessionId':_0x3e8059['id']});})['then'](respondWithResult(_0x4eae50,null))[_0xcaa7('0x2b')](handleError(_0x4eae50,null));};exports['customUpdate']=function(_0x103d7a,_0x7d66a3){if(_0x103d7a[_0xcaa7('0x82')]['id']){delete _0x103d7a[_0xcaa7('0x82')]['id'];}return db[_0xcaa7('0x43')]['find']({'where':{'id':_0x103d7a['params']['id']}})['then'](handleEntityNotFound(_0x7d66a3,null))[_0xcaa7('0x20')](saveUpdates(_0x103d7a[_0xcaa7('0x82')],null))[_0xcaa7('0x20')](respondWithResult(_0x7d66a3,null))['catch'](handleError(_0x7d66a3,null));};exports['abandon']=function(_0x2521e6,_0x375dcb,_0x13507b){if(_0x2521e6['body']['id']){delete _0x2521e6[_0xcaa7('0x82')]['id'];}return db[_0xcaa7('0x43')][_0xcaa7('0x75')]({'where':{'id':_0x2521e6[_0xcaa7('0xc3')]['id']}})['then'](function(_0x113474){if(!_0x113474){logger['error'](_0xcaa7('0xd7'),_0xcaa7('0xd8'),0x194,_0xcaa7('0xd9'));_0x375dcb[_0xcaa7('0x2c')](0x194);}else{if(_0x113474[_0xcaa7('0x80')]){throw new db[(_0xcaa7('0x9a'))][(_0xcaa7('0xd2'))](_0xcaa7('0xda'));}}return _0x113474;})[_0xcaa7('0x20')](function(_0x8a07ac){if(_0x8a07ac){return _0x8a07ac[_0xcaa7('0x37')]({'closed':_0x2521e6['body']['closed'],'disposition':_0x2521e6[_0xcaa7('0x82')]['disposition']})[_0xcaa7('0x20')](function(_0x18a8c8){return _0x18a8c8;});}})['then'](function(_0x49261b){return respondWithRpcPromise('AbandonInteraction',_0xcaa7('0xd8'),_0x2521e6[_0xcaa7('0x82')],client9004);})[_0xcaa7('0x20')](respondWithResult(_0x375dcb,null))[_0xcaa7('0x2b')](handleError(_0x375dcb,null));};exports[_0xcaa7('0xdb')]=function(_0x5050b2,_0x2ea384,_0x3ed730){_0x5050b2['body']['name']=_0x5050b2[_0xcaa7('0xdc')][_0xcaa7('0xdd')];_0x5050b2[_0xcaa7('0x82')][_0xcaa7('0xde')]=_0x5050b2[_0xcaa7('0xdc')][_0xcaa7('0xdf')];_0x5050b2['body'][_0xcaa7('0x45')]=_0x5050b2[_0xcaa7('0xdc')][_0xcaa7('0xe0')];return db[_0xcaa7('0xe1')][_0xcaa7('0xc8')](_0x5050b2[_0xcaa7('0x82')])['then'](respondWithResult(_0x2ea384,0xc9))[_0xcaa7('0x2b')](handleError(_0x2ea384,null));};exports['attachmentDownload']=function(_0x1244a8,_0x25edce,_0x501cdd){return db[_0xcaa7('0x43')][_0xcaa7('0xcc')]({'where':{'id':_0x1244a8[_0xcaa7('0xc3')]['id']},'raw':!![]})[_0xcaa7('0x20')](handleEntityNotFound(_0x25edce,null))[_0xcaa7('0x20')](function(_0x589e6e){if(_0x589e6e){if(_0x589e6e[_0xcaa7('0xe2')]){return _0x25edce['status'](0x193)[_0xcaa7('0x2f')]({'status':0x193,'message':_0xcaa7('0xe3')});}return db[_0xcaa7('0xe1')][_0xcaa7('0xcc')]({'where':{'id':_0x1244a8[_0xcaa7('0x48')][_0xcaa7('0xe4')]},'raw':!![]})[_0xcaa7('0x20')](handleEntityNotFound(_0x25edce,null));}})[_0xcaa7('0x20')](function(_0x4db065){if(_0x4db065){return _0x25edce['download'](path['join'](config[_0xcaa7('0xe5')],'server/files/attachments/',_0x4db065[_0xcaa7('0xde')]));}})['catch'](handleError(_0x25edce,null));};exports[_0xcaa7('0xe6')]=function(_0x9ff6a8,_0x1d2bdf){var _0x3bb7b8=null;var _0x4c3470=null;var _0x4926e6=null;var _0x3dbf9c=null;if(_0x9ff6a8[_0xcaa7('0x82')]['id']){delete _0x9ff6a8[_0xcaa7('0x82')]['id'];}if(_0x9ff6a8[_0xcaa7('0x82')][_0xcaa7('0xe7')]){_0x3dbf9c=path[_0xcaa7('0xe8')](config[_0xcaa7('0xe5')],_0xcaa7('0xe9'),util[_0xcaa7('0xea')](_0xcaa7('0xeb'),Date[_0xcaa7('0xec')]()));_0x9ff6a8[_0xcaa7('0x82')][_0xcaa7('0xed')]=_0x3dbf9c;}return db['ChatInteraction'][_0xcaa7('0x75')]({'where':{'id':_0x9ff6a8[_0xcaa7('0xc3')]['id']},'include':[{'model':db['ChatMessage'],'as':_0xcaa7('0xee'),'include':[{'model':db['User'],'as':'User'}]}]})['then'](handleEntityNotFound(_0x1d2bdf,null))[_0xcaa7('0x20')](saveUpdates(_0x9ff6a8[_0xcaa7('0x82')],null))[_0xcaa7('0x20')](function(_0x3d320a){if(_0x3d320a){_0x3bb7b8=_0x3d320a;return db[_0xcaa7('0xcb')]['find']({'where':{'id':_0x3bb7b8[_0xcaa7('0x84')]}});}})[_0xcaa7('0x20')](function(_0x597698){if(_0x597698){_0x4926e6=_0x597698;return db['CmContact'][_0xcaa7('0x75')]({'where':{'id':_0x3bb7b8['ContactId']}});}})[_0xcaa7('0x20')](function(_0x1063ac){if(_0x1063ac){_0x4c3470=_0x1063ac;if(_0x3dbf9c){var _0x29e240=null;for(var _0x48eff5=0x1;_0x48eff5<_0x3bb7b8[_0xcaa7('0xee')][_0xcaa7('0x6c')];++_0x48eff5){_0x29e240=_0x3bb7b8[_0xcaa7('0xee')][_0x48eff5];var _0x5efc60=_0x29e240['UserId']?util[_0xcaa7('0xea')]('%s%d',_0x4926e6['agentAlias'],_0x29e240['UserId']):'System';var _0x1080ef=_0x9ff6a8['body']['customer']||util['format'](_0xcaa7('0xef'),_0xcaa7('0xf0'),_0x29e240[_0xcaa7('0x76')]);switch(_0x4926e6[_0xcaa7('0xf1')]){case'website_alias':_0x5efc60=_0x29e240[_0xcaa7('0x80')]?util[_0xcaa7('0xea')]('%s%d',_0x4926e6[_0xcaa7('0xf2')],_0x29e240[_0xcaa7('0x80')]):_0xcaa7('0xf3');break;case _0xcaa7('0xf4'):_0x5efc60=_0x29e240[_0xcaa7('0x80')]?_0x29e240['User'][_0xcaa7('0xf5')]||_0x29e240[_0xcaa7('0x7c')]['fullname']:_0xcaa7('0xf3');break;case _0xcaa7('0xf6'):_0x5efc60=_0x29e240[_0xcaa7('0x80')]?_0x29e240[_0xcaa7('0x7c')][_0xcaa7('0xf7')]:_0xcaa7('0xf3');break;default:_0x5efc60=_0x29e240[_0xcaa7('0x80')]?util[_0xcaa7('0xea')](_0xcaa7('0xef'),_0x4926e6[_0xcaa7('0xf2')],_0x29e240[_0xcaa7('0x80')]):_0xcaa7('0xf3');}var _0x49beff=util['format'](_0xcaa7('0xf8'),moment(_0x29e240['createdAt'])[_0xcaa7('0xea')](_0xcaa7('0xf9')),_0x29e240[_0xcaa7('0xfa')]==='in'?_0x1080ef:_0x5efc60,_0x29e240[_0xcaa7('0x82')]);if(!_0x29e240[_0xcaa7('0xfb')]){fs['appendFileSync'](_0x3dbf9c,_0x49beff);}}return db[_0xcaa7('0xfc')][_0xcaa7('0xcc')]({'where':{'service':!![]},'include':[{'model':db['MailServerOut'],'as':_0xcaa7('0xfd'),'raw':!![]}]});}}})['then'](function(_0x21e924){if(_0x21e924&&_0x21e924[_0xcaa7('0xfd')]&&_0x9ff6a8['body']){var _0xfb3362={'tls':{'rejectUnauthorized':![]}};if(_0x21e924[_0xcaa7('0xfd')][_0xcaa7('0xfe')]){_0xfb3362[_0xcaa7('0xfe')]=_0x21e924['Smtp'][_0xcaa7('0xfe')];}else{_0xfb3362[_0xcaa7('0xff')]=_0x21e924[_0xcaa7('0xfd')][_0xcaa7('0xff')];_0xfb3362[_0xcaa7('0x100')]=_0x21e924[_0xcaa7('0xfd')][_0xcaa7('0x100')];_0xfb3362['secure']=_0x21e924['Smtp'][_0xcaa7('0x101')];}if(_0x21e924['Smtp'][_0xcaa7('0x102')]){_0xfb3362[_0xcaa7('0x103')]={'user':_0x21e924[_0xcaa7('0xfd')][_0xcaa7('0xa2')],'pass':_0x21e924['Smtp'][_0xcaa7('0x104')]};}return respondWithRpcPromise(_0xcaa7('0x105'),_0xcaa7('0x106'),{'account':_0xfb3362,'message':{'from':util[_0xcaa7('0xea')](_0xcaa7('0x107'),_0x21e924[_0xcaa7('0x3a')],_0x21e924[_0xcaa7('0x108')]||_0x21e924['Smtp'][_0xcaa7('0xa2')]),'to':_0x9ff6a8['body'][_0xcaa7('0xe7')],'subject':_0xcaa7('0x109'),'text':util[_0xcaa7('0xea')](_0xcaa7('0x10a'),_0x9ff6a8[_0xcaa7('0x82')][_0xcaa7('0xe7')]),'attachments':[{'path':_0x3dbf9c}]}})[_0xcaa7('0x20')](function(){return _0x3bb7b8;})[_0xcaa7('0x2b')](function(_0x5240a3){console[_0xcaa7('0x27')](_0x5240a3);});}else{return _0x3bb7b8;}})[_0xcaa7('0x20')](respondWithStatusCode(_0x1d2bdf,0xc8))[_0xcaa7('0x2b')](handleError(_0x1d2bdf,null));};exports[_0xcaa7('0x10b')]=function(_0x3d1a55,_0x47de25,_0xd69ce5){return db[_0xcaa7('0xd5')][_0xcaa7('0x75')]({'where':{'id':_0x3d1a55['params']['id']}})[_0xcaa7('0x20')](handleEntityNotFound(_0x47de25,null))[_0xcaa7('0x20')](function(_0x4b6666){if(_0x4b6666){return _0x4b6666[_0xcaa7('0x10b')](_0x3d1a55[_0xcaa7('0x82')][_0xcaa7('0x10c')],_[_0xcaa7('0x10d')](_0x3d1a55[_0xcaa7('0x82')],[_0xcaa7('0x10c'),'id'])||{});}})[_0xcaa7('0x20')](respondWithResult(_0x47de25,null))['catch'](handleError(_0x47de25,null));};exports['getMessages']=function(_0x2faee1,_0x2da7be,_0x1665e3){var _0x6452aa={'raw':![],'where':{}};var _0x13e945={};var _0x57be27={'count':0x0,'rows':[]};return db[_0xcaa7('0x43')]['findOne']({'where':{'id':_0x2faee1[_0xcaa7('0xc3')]['id']}})[_0xcaa7('0x20')](handleEntityNotFound(_0x2da7be,null))['then'](function(_0x466294){if(_0x466294){_0x13e945[_0xcaa7('0x47')]=_['keys'](db[_0xcaa7('0xd5')][_0xcaa7('0xc4')]);_0x13e945[_0xcaa7('0x48')]=_[_0xcaa7('0x49')](_0x2faee1[_0xcaa7('0x48')]);_0x13e945[_0xcaa7('0x4a')]=_[_0xcaa7('0x4b')](_0x13e945[_0xcaa7('0x47')],_0x13e945[_0xcaa7('0x48')]);_0x6452aa[_0xcaa7('0x4c')]=_[_0xcaa7('0x4b')](_0x13e945['model'],qs[_0xcaa7('0x4d')](_0x2faee1[_0xcaa7('0x48')][_0xcaa7('0x4d')]));_0x6452aa[_0xcaa7('0x4c')]=_0x6452aa[_0xcaa7('0x4c')][_0xcaa7('0x6c')]?_0x6452aa[_0xcaa7('0x4c')]:_0x13e945[_0xcaa7('0x47')];if(!_0x2faee1['query']['hasOwnProperty'](_0xcaa7('0x4e'))){_0x6452aa[_0xcaa7('0x31')]=qs[_0xcaa7('0x31')](_0x2faee1[_0xcaa7('0x48')][_0xcaa7('0x31')]);_0x6452aa[_0xcaa7('0x30')]=qs[_0xcaa7('0x30')](_0x2faee1[_0xcaa7('0x48')][_0xcaa7('0x30')]);}_0x6452aa[_0xcaa7('0x9d')]=qs[_0xcaa7('0x4f')](_0x2faee1[_0xcaa7('0x48')]['sort']);_0x6452aa[_0xcaa7('0x50')]=qs[_0xcaa7('0x4a')](_[_0xcaa7('0x51')](_0x2faee1[_0xcaa7('0x48')],_0x13e945[_0xcaa7('0x4a')]));_0x6452aa[_0xcaa7('0x50')][_0xcaa7('0xc0')]=_0x466294['id'];if(_0x2faee1[_0xcaa7('0x48')][_0xcaa7('0x93')]){_0x6452aa['where']=_[_0xcaa7('0xab')](_0x6452aa[_0xcaa7('0x50')],{'$or':_[_0xcaa7('0x3c')](_0x6452aa[_0xcaa7('0x4c')],function(_0x79cf8a){var _0x26aeb7={};_0x26aeb7[_0x79cf8a]={'$like':'%'+_0x2faee1[_0xcaa7('0x48')]['filter']+'%'};return _0x26aeb7;})});}if(_0x2faee1[_0xcaa7('0x48')][_0xcaa7('0x88')]){var _0xcceac4=_0x2faee1[_0xcaa7('0x48')][_0xcaa7('0x88')][_0xcaa7('0x3f')](',');var _0x504e23={};_0x504e23[_0xcceac4[0x0]]={'$gte':moment(_0xcceac4[0x1])[_0xcaa7('0xea')]('YYYY-MM-DD\x20HH:mm:ss')};_0x6452aa[_0xcaa7('0x50')]=_[_0xcaa7('0xab')](_0x6452aa['where'],_0x504e23);}_0x6452aa=_['merge']({},_0x6452aa,_0x2faee1['options']);return db['ChatMessage'][_0xcaa7('0xa9')]({'where':_0x6452aa[_0xcaa7('0x50')]})[_0xcaa7('0x20')](function(_0xc6657){_0x57be27[_0xcaa7('0xa9')]=_0xc6657;if(_0x2faee1[_0xcaa7('0x48')][_0xcaa7('0xc5')]){_0x6452aa[_0xcaa7('0xc6')]=[{'all':!![]}];}return db[_0xcaa7('0xd5')]['findAll'](_0x6452aa);})[_0xcaa7('0x20')](function(_0x23901b){_0x57be27[_0xcaa7('0xc2')]=_0x23901b;return _0x57be27;});}})[_0xcaa7('0x20')](respondWithFilteredResult(_0x2da7be,_0x6452aa))['catch'](handleError(_0x2da7be,null));};exports[_0xcaa7('0x10e')]=function(_0x306a34,_0x3e7062,_0x3ebece){var _0x180123={'where':{}},_0x51d06e={},_0x536dbf={'count':0x0,'rows':[]};return db[_0xcaa7('0x43')][_0xcaa7('0xcc')]({'where':{'id':_0x306a34[_0xcaa7('0xc3')]['id']}})[_0xcaa7('0x20')](handleEntityNotFound(_0x3e7062,null))[_0xcaa7('0x20')](function(_0x38722c){if(_0x38722c){_0x51d06e[_0xcaa7('0x47')]=_[_0xcaa7('0x49')](db[_0xcaa7('0xd5')]['rawAttributes']);_0x51d06e['query']=_[_0xcaa7('0x49')](_0x306a34[_0xcaa7('0x48')]);_0x51d06e[_0xcaa7('0x4a')]=_[_0xcaa7('0x4b')](_0x51d06e['model'],_0x51d06e[_0xcaa7('0x48')]);_0x180123[_0xcaa7('0x4c')]=_['intersection'](_0x51d06e[_0xcaa7('0x47')],qs[_0xcaa7('0x4d')](_0x306a34[_0xcaa7('0x48')][_0xcaa7('0x4d')]));_0x180123[_0xcaa7('0x4c')]=_0x180123['attributes'][_0xcaa7('0x6c')]?_0x180123[_0xcaa7('0x4c')]:_0x51d06e['model'];if(!_0x306a34[_0xcaa7('0x48')][_0xcaa7('0x10f')](_0xcaa7('0x4e'))){_0x180123[_0xcaa7('0x31')]=qs['limit'](_0x306a34[_0xcaa7('0x48')][_0xcaa7('0x31')]);_0x180123[_0xcaa7('0x30')]=qs[_0xcaa7('0x30')](_0x306a34[_0xcaa7('0x48')][_0xcaa7('0x30')]);}_0x180123['order']=qs[_0xcaa7('0x4f')](_0x306a34[_0xcaa7('0x48')][_0xcaa7('0x4f')]);_0x180123[_0xcaa7('0x50')]=qs[_0xcaa7('0x4a')](_[_0xcaa7('0x51')](_0x306a34['query'],_0x51d06e[_0xcaa7('0x4a')]));_0x180123[_0xcaa7('0x50')]['ChatInteractionId']=_0x38722c['id'];if(_0x306a34[_0xcaa7('0x48')][_0xcaa7('0x93')]){_0x180123[_0xcaa7('0x50')]=_['merge'](_0x180123['where'],{'$or':_[_0xcaa7('0x3c')](_0x180123[_0xcaa7('0x4c')],function(_0x30828f){var _0x254492={};_0x254492[_0x30828f]={'$like':'%'+_0x306a34[_0xcaa7('0x48')][_0xcaa7('0x93')]+'%'};return _0x254492;})});}_0x180123[_0xcaa7('0x50')][_0xcaa7('0xfb')]=![];if(_0x306a34['query']['id']){_0x180123['where']['id']={'$gt':_0x306a34[_0xcaa7('0x48')]['id']};}_0x180123=_[_0xcaa7('0xab')]({},_0x180123,_0x306a34['options']);return db[_0xcaa7('0xd5')][_0xcaa7('0xa9')]({'where':_0x180123[_0xcaa7('0x50')]})['then'](function(_0x53e1eb){_0x536dbf['count']=_0x53e1eb;_0x180123['include']=[];if(_0x306a34[_0xcaa7('0x48')][_0xcaa7('0x110')]){_0x180123[_0xcaa7('0xc6')]['push']({'model':db['User'],'as':_0xcaa7('0x7c'),'attributes':['id','fullname',_0xcaa7('0xf5')]});}if(_0x306a34['query'][_0xcaa7('0xc5')]){_0x180123[_0xcaa7('0xc6')]=[{'all':!![]}];}return db[_0xcaa7('0xd5')][_0xcaa7('0x111')](_0x180123);})[_0xcaa7('0x20')](function(_0x202fe8){_0x536dbf['rows']=_0x202fe8;return _0x536dbf;});}})[_0xcaa7('0x20')](respondWithFilteredResult(_0x3e7062,_0x180123))[_0xcaa7('0x2b')](handleError(_0x3e7062,null));};exports['addTags']=function(_0x1c64da,_0x1a8463,_0x593ca3){return db[_0xcaa7('0x43')][_0xcaa7('0x75')]({'where':{'id':_0x1c64da[_0xcaa7('0xc3')]['id']}})[_0xcaa7('0x20')](handleEntityNotFound(_0x1a8463,null))[_0xcaa7('0x20')](function(_0x1b3ba5){if(_0x1b3ba5){return _0x1b3ba5['setTags'](_0x1c64da['body'][_0xcaa7('0x10c')],_[_0xcaa7('0x10d')](_0x1c64da[_0xcaa7('0x82')],[_0xcaa7('0x10c'),'id'])||{})[_0xcaa7('0x112')](function(){return db[_0xcaa7('0x79')][_0xcaa7('0x111')]({'attributes':['id',_0xcaa7('0x3a'),'color'],'where':{'id':_0x1c64da[_0xcaa7('0x82')]['ids']}});})[_0xcaa7('0x20')](function(_0x4c5c69){socket[_0xcaa7('0x113')](_0xcaa7('0x114'),{'id':Number(_0x1c64da[_0xcaa7('0xc3')]['id']),'tags':_0x4c5c69||[]});return{'id':Number(_0x1c64da[_0xcaa7('0xc3')]['id']),'tags':_0x4c5c69||[]};});}})['then'](respondWithResult(_0x1a8463,null))['catch'](handleError(_0x1a8463,null));};exports['removeTags']=function(_0x13cfbd,_0xbc153f,_0x52c550){return db[_0xcaa7('0x43')][_0xcaa7('0x75')]({'where':{'id':_0x13cfbd['params']['id']}})[_0xcaa7('0x20')](handleEntityNotFound(_0xbc153f,null))[_0xcaa7('0x20')](function(_0x34f882){if(_0x34f882){return _0x34f882[_0xcaa7('0x115')](_0x13cfbd[_0xcaa7('0x48')][_0xcaa7('0x10c')]);}})[_0xcaa7('0x20')](respondWithStatusCode(_0xbc153f,null))[_0xcaa7('0x2b')](handleError(_0xbc153f,null));};exports[_0xcaa7('0x116')]=function(_0x3fb5ee,_0x50314e){var _0x4b0e0c=moment()['unix']()[_0xcaa7('0xa8')]();var _0x55b147=path[_0xcaa7('0xe8')](config[_0xcaa7('0xe5')],_0xcaa7('0x117'),_0xcaa7('0x118'),_0xcaa7('0x119'));var _0x535793=path[_0xcaa7('0xe8')](config['root'],_0xcaa7('0x117'),_0xcaa7('0x118'),_0xcaa7('0x11a'));var _0x5e4513=path['join'](_0x55b147,_0x4b0e0c);var _0x11fa56=util[_0xcaa7('0xea')](_0xcaa7('0x11b'),_0x3fb5ee[_0xcaa7('0xc3')]['id'],_0x4b0e0c);var _0x2cd366=path[_0xcaa7('0xe8')](_0x55b147,_0x11fa56);var _0x4da3d9=[];_0x4da3d9[_0xcaa7('0x41')]({'model':db[_0xcaa7('0x7c')],'as':'User','attributes':['id',_0xcaa7('0xf7')],'raw':!![]});_0x4da3d9[_0xcaa7('0x41')]({'model':db[_0xcaa7('0x11c')],'as':'Contact','attributes':['id',_0xcaa7('0x11d'),'lastName'],'raw':!![]});if(_0x3fb5ee[_0xcaa7('0x48')][_0xcaa7('0x11a')]){_0x4da3d9[_0xcaa7('0x41')]({'model':db[_0xcaa7('0xe1')],'as':'Attachment','raw':!![]});}var _0x9eefa7=[{'model':db[_0xcaa7('0xd5')],'as':'Messages','attributes':['id',_0xcaa7('0x82'),_0xcaa7('0x86'),_0xcaa7('0xfa'),'secret',_0xcaa7('0x8e')],'include':_0x4da3d9}];_0x9eefa7[_0xcaa7('0x41')]({'model':db[_0xcaa7('0xcb')],'as':'Account','attributes':['id',_0xcaa7('0x3a')]});_0x9eefa7[_0xcaa7('0x41')]({'model':db['User'],'as':_0xcaa7('0x11e'),'attributes':['id',_0xcaa7('0xf7')]});return db[_0xcaa7('0x43')][_0xcaa7('0x75')]({'where':{'id':_0x3fb5ee[_0xcaa7('0xc3')]['id']},'include':_0x9eefa7})[_0xcaa7('0x20')](handleEntityNotFound(_0x50314e,null))[_0xcaa7('0x20')](function(_0x2494f0){if(_0x2494f0){var _0x1961c3=_0x2494f0[_0xcaa7('0x11f')]({'plain':!![]});fs[_0xcaa7('0x120')](_0x5e4513);var _0x5c7b48={'format':'A4','border':'10px','header':{'height':_0xcaa7('0x121'),'contents':{'first':_0xcaa7('0x122')}},'footer':{'height':_0xcaa7('0x123'),'contents':{'default':util[_0xcaa7('0xea')]('<hr\x20class=\x22separator\x22/>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22footer\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22left\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span>%s</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22center\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span>{{page}}/{{pages}}</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22right\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span>%s</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>',util[_0xcaa7('0xea')]('%s\x20#%d','Chat',_0x1961c3['id']),moment()[_0xcaa7('0xea')](_0xcaa7('0x124'))[_0xcaa7('0xa8')]())}}};var _0x459bc3={'channel':_0xcaa7('0x125'),'account':_0x1961c3[_0xcaa7('0x126')]['name'],'agent':_0x1961c3['Owner']?_0x1961c3[_0xcaa7('0x11e')][_0xcaa7('0xf7')]:_0xcaa7('0x127'),'createdAt':moment(_0x1961c3[_0xcaa7('0x86')])[_0xcaa7('0xea')]('YYYY-MM-DD\x20HH:mm:ss')[_0xcaa7('0xa8')](),'closedAt':_0x1961c3[_0xcaa7('0xe2')]?moment(_0x1961c3[_0xcaa7('0x128')])[_0xcaa7('0xea')](_0xcaa7('0x129'))[_0xcaa7('0xa8')]():'','disposition':_0x1961c3[_0xcaa7('0x12a')],'chatInfo':{'browser':_0x1961c3[_0xcaa7('0x12b')],'os':_0x1961c3[_0xcaa7('0x12c')],'referer':_0x1961c3[_0xcaa7('0x12d')],'customerIp':_0x1961c3['customerIp'],'customerPort':_0x1961c3['customerPort']?_0x1961c3['customerPort']:_0xcaa7('0x127')},'messages':_(_0x1961c3[_0xcaa7('0xee')])[_0xcaa7('0x12e')]()[_0xcaa7('0x93')]({'secret':![]})[_0xcaa7('0x3c')](function(_0x3e931a){if(_0x3e931a['Attachment']){var _0x512cf1=path[_0xcaa7('0xe8')](_0x535793,_0x3e931a[_0xcaa7('0xe1')][_0xcaa7('0xde')]);if(fs[_0xcaa7('0x12f')](_0x512cf1)){fs[_0xcaa7('0x130')](_0x512cf1)[_0xcaa7('0x131')](fs['createWriteStream'](path[_0xcaa7('0xe8')](_0x5e4513,_0x3e931a['Attachment'][_0xcaa7('0xde')])));}}return{'date':moment(_0x3e931a[_0xcaa7('0x86')])['format'](_0xcaa7('0x129'))[_0xcaa7('0xa8')](),'sender':_0x3e931a[_0xcaa7('0xfa')]===_0xcaa7('0xd4')?_0x3e931a[_0xcaa7('0x7c')]?_0x3e931a[_0xcaa7('0x7c')]['fullname']:_0xcaa7('0xf3'):_0x3e931a[_0xcaa7('0x132')][_0xcaa7('0x11d')]+(_0x3e931a[_0xcaa7('0x132')][_0xcaa7('0x133')]?'\x20'+_0x3e931a[_0xcaa7('0x132')][_0xcaa7('0x133')]:''),'body':_0x3e931a[_0xcaa7('0xe1')]?_0x3e931a[_0xcaa7('0xe1')][_0xcaa7('0xde')]:_0x3e931a[_0xcaa7('0x82')],'direction':_0x3e931a[_0xcaa7('0xfa')]===_0xcaa7('0xd4')?'A':'C','secret':_0x3e931a[_0xcaa7('0xfb')],'read':_0x3e931a[_0xcaa7('0x8e')],'attachment':_0x3e931a[_0xcaa7('0xe1')]};})[_0xcaa7('0x6e')]()};return ejs[_0xcaa7('0x134')](path['join'](config['root'],_0xcaa7('0x117'),_0xcaa7('0x135'),_0xcaa7('0x136')),{'interaction':_0x459bc3})['then'](function(_0x32981d){return new BPromise(function(_0xc9bc80,_0xedd6ec){pdf[_0xcaa7('0xc8')](_0x32981d,_0x5c7b48)['toFile'](path[_0xcaa7('0xe8')](_0x5e4513,_0xcaa7('0x137')+_0x1961c3['id']+'-'+_0x4b0e0c+_0xcaa7('0x138')),function(_0x5b590a,_0x42d06f){if(_0x5b590a)return _0xedd6ec(_0x5b590a);_0xc9bc80(_0x42d06f);});});})[_0xcaa7('0x20')](function(){return new BPromise(function(_0x183694,_0x28adec){zipdir(_0x5e4513,{'saveTo':_0x2cd366},function(_0x332577,_0x430de9){if(_0x332577)return _0x28adec(_0x332577);return _0x183694(_0x430de9);});})[_0xcaa7('0x20')](function(){return new BPromise(function(_0x41383b,_0x12b51d){rimraf(_0x5e4513,function(_0x238fb9){if(_0x238fb9)_0x12b51d(_0x238fb9);return _0x41383b();});});})[_0xcaa7('0x20')](function(){return _0x50314e[_0xcaa7('0x116')](_0x2cd366,_0x11fa56,function(_0x5871c3){if(_0x5871c3){console['log'](_0xcaa7('0x139'),_0x5871c3);}else{fs[_0xcaa7('0x13a')](_0x2cd366);}});});});}else{return _0x50314e[_0xcaa7('0x2c')](0xc8);}})[_0xcaa7('0x2b')](handleError(_0x50314e,null));};