57ee07c76c32d8c2e8e623817ca1d71e0aaf466a
[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 _0x3af1=['agent_fullname','[%s]\x20%s:\x20%s\x0a','MM/DD/YYYY\x20HH:mm:ss','direction','secret','MailAccount','MailServerOut','Smtp','service','host','port','secure','authentication','auth','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','getMessages','YYYY-MM-DD\x20HH:mm:ss','rows','getMyMessages','includeAgent','findAll','addTags','setTags','omit','spread','emit','chatInteractionTags:save','removeTags','server','files','join','attachments','transcript-%d-%s.zip','CmContact','firstName','lastName','Attachment','Account','get','10px','40px','30px','<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>','%s\x20#%d','Chat','YYYY-MM-DD','Owner','N.A.','disposition','browserName','osName','referer','customerPort','tail','existsSync','createReadStream','pipe','createWriteStream','renderFile','views','downloadInteraction.html','toFile','transcript-','.pdf','log','unlinkSync','html-pdf','eml-format','rimraf','request-promise','bluebird','mustache','util','sox','to-csv','ejs','squel','crypto','jsforce','querystring','papaparse','../../components/auth/service','../../config/license/hardware','../../config/logger','api','../../config/utils','redis','defaults','localhost','socket.io-emitter','./chatInteraction.socket','jayson/promise','client','http','request','then','info','ChatInteraction,\x20%s,\x20%s','request\x20sent','ChatInteraction,\x20%s,\x20%s,\x20%s','stringify','error','message','result','catch','sendStatus','status','json','offset','set','Content-Range','apply','reject','save','update','destroy','end','stack','name','send','Users','map','fullname','TagIds','Tags','split','push','ChatInteraction','rawAttributes','fieldName','type','key','query','keys','filters','intersection','model','attributes','fields','hasOwnProperty','nolimit','limit','order','sort','pick','select','field','u.fullname','user_has_chat_interactions','u.id\x20=\x20ui.UserId','chat_interactions','cm_contacts','c.id\x20=\x20i.ContactId\x20AND\x20c.deletedAt\x20IS\x20NULL','left_join','a.id\x20=\x20i.ChatWebsiteId','chat_messages','me.ChatInteractionId\x20=\x20i.id','chat_interaction_has_tags','it.ChatInteractionId\x20=\x20i.id','tools_tags','expr','parseSearch','sqlOperator','conditions','length','find','value','having','`\x20>\x200','Contact','operator','$substring','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?','ContactId','buildExpression','text','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','some','compact','isEmpty','where','i.ChatWebsiteId\x20IN\x20?','concat','createdAt','parse','$lte','null','\x20IS\x20NULL','\x20=\x20?','read','`unreadMessages`\x20=\x200','`unreadMessages`\x20>\x200','tag','filter','replace','isNumeric','MATCH\x20(me.body)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','CONCAT(c.firstName,\x20\x27\x20\x27,\x20c.lastName)\x20LIKE\x20?','SELECT','clone','i.id','SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','contactName','DESC','t.id\x20IN\x20?','resolve','ChatWebsiteId','i.ChatWebsiteId\x20IS\x20NOT\x20NULL','role','getChatWebsites','i.ChatWebsiteId\x20IS\x20NULL','agent','sequelize','toString','count','keyBy','merge','unreadMessages','Account.key','a.mandatoryDisposition','i.*','c.firstName','Contact.firstName','c.lastName','Contact.email','c.phone','Contact.phone','c.mobile','Contact.mobile','Contact.fax','o.fullname','Owner.fullname','Owner.internal','GROUP_CONCAT(DISTINCT\x20t.id)','ui.ChatInteractionId\x20IN\x20?','groupBy','ChatInteractionId','show','params','includeAll','include','options','create','describe','createVidaooSession','findOne','ChatWebsite','vidaooEscalation','vidaooApiKey','POST','https://api-vidaoo.xcally.com/api/v1/sessions','MotionCWB:','Sequelize','ValidationError','join_url','out','user','Unable\x20to\x20create\x20Vidaoo\x20session','updateAttributes','customUpdate','abandon','entity\x20not\x20found','Interaction\x20already\x20assigned','closed','AbandonInteraction','attachmentUpload','file','basename','filename','mimetype','attachmentDownload','Unauthorized','attachId','download','server/files/attachments/','close','mailTranscript','root','server/files/chat/upload/','transcript-%s.txt','now','ChatMessage','Messages','%s%d','agentAlias','System','customer','format','Visitor','agentIdentifier','agent_alias','alias'];(function(_0x191f22,_0x4ac8fc){var _0x429243=function(_0xe820b4){while(--_0xe820b4){_0x191f22['push'](_0x191f22['shift']());}};_0x429243(++_0x4ac8fc);}(_0x3af1,0x17d));var _0x13af=function(_0x2193a9,_0x375a88){_0x2193a9=_0x2193a9-0x0;var _0xdafaf4=_0x3af1[_0x2193a9];return _0xdafaf4;};'use strict';var pdf=require(_0x13af('0x0'));var emlformat=require(_0x13af('0x1'));var rimraf=require(_0x13af('0x2'));var zipdir=require('zip-dir');var jsonpatch=require('fast-json-patch');var rp=require(_0x13af('0x3'));var moment=require('moment');var BPromise=require(_0x13af('0x4'));var Mustache=require(_0x13af('0x5'));var util=require(_0x13af('0x6'));var path=require('path');var sox=require(_0x13af('0x7'));var csv=require(_0x13af('0x8'));var ejs=require(_0x13af('0x9'));var fs=require('fs');var _=require('lodash');var squel=require(_0x13af('0xa'));var crypto=require(_0x13af('0xb'));var jsforce=require(_0x13af('0xc'));var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require(_0x13af('0xd'));var Papa=require(_0x13af('0xe'));var Redis=require('ioredis');var authService=require(_0x13af('0xf'));var qs=require('../../components/parsers/qs');var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x13af('0x10'));var logger=require(_0x13af('0x11'))(_0x13af('0x12'));var utils=require(_0x13af('0x13'));var config=require('../../config/environment');var licenseUtil=require('../../config/license/util');var db=require('../../mysqldb')['db'];config[_0x13af('0x14')]=_[_0x13af('0x15')](config[_0x13af('0x14')],{'host':_0x13af('0x16'),'port':0x18eb});var socket=require(_0x13af('0x17'))(new Redis(config[_0x13af('0x14')]));require(_0x13af('0x18'))['register'](socket);var jayson=require(_0x13af('0x19'));var client=jayson[_0x13af('0x1a')][_0x13af('0x1b')]({'port':0x232b});var client9004=jayson[_0x13af('0x1a')]['http']({'port':0x232c});function respondWithRpcPromise(_0x9cf7b4,_0x236e07,_0x47b597,_0x473ba1){return new BPromise(function(_0x113e99,_0x4c121c){var _0xdd4117=_0x473ba1||client;return _0xdd4117[_0x13af('0x1c')](_0x9cf7b4,_0x47b597)[_0x13af('0x1d')](function(_0x2a5032){logger[_0x13af('0x1e')](_0x13af('0x1f'),_0x236e07,_0x13af('0x20'));logger['debug'](_0x13af('0x21'),_0x236e07,_0x13af('0x20'),JSON[_0x13af('0x22')](_0x2a5032));if(_0x2a5032[_0x13af('0x23')]){if(_0x2a5032[_0x13af('0x23')]['code']===0x1f4){logger[_0x13af('0x23')]('ChatInteraction,\x20%s,\x20%s',_0x236e07,_0x2a5032[_0x13af('0x23')][_0x13af('0x24')]);return _0x4c121c(_0x2a5032[_0x13af('0x23')]['message']);}logger[_0x13af('0x23')](_0x13af('0x1f'),_0x236e07,_0x2a5032[_0x13af('0x23')][_0x13af('0x24')]);return _0x113e99(_0x2a5032[_0x13af('0x23')][_0x13af('0x24')]);}else{logger['info'](_0x13af('0x1f'),_0x236e07,'request\x20sent');_0x113e99(_0x2a5032[_0x13af('0x25')][_0x13af('0x24')]);}})[_0x13af('0x26')](function(_0x4582c8){logger[_0x13af('0x23')]('ChatInteraction,\x20%s,\x20%s',_0x236e07,_0x4582c8);_0x4c121c(_0x4582c8);});});}function respondWithStatusCode(_0x21d8a4,_0x56c954){_0x56c954=_0x56c954||0xcc;return function(_0xd494a7){if(_0xd494a7){return _0x21d8a4[_0x13af('0x27')](_0x56c954);}return _0x21d8a4[_0x13af('0x28')](_0x56c954)['end']();};}function respondWithResult(_0x522085,_0x4e291d){_0x4e291d=_0x4e291d||0xc8;return function(_0x1a47ae){if(_0x1a47ae){return _0x522085[_0x13af('0x28')](_0x4e291d)[_0x13af('0x29')](_0x1a47ae);}};}function respondWithFilteredResult(_0x1c28c9,_0x4d1eeb){return function(_0x4ef57e){if(_0x4ef57e){var _0x5a3fc5=_0x4ef57e['count'],_0x5578a6=_0x4d1eeb[_0x13af('0x2a')],_0x15a4e9=_0x4d1eeb[_0x13af('0x2a')]+_0x4d1eeb['limit'],_0x2ddd9e;if(_0x15a4e9>=_0x5a3fc5){_0x15a4e9=_0x5a3fc5;_0x2ddd9e=0xc8;}else{_0x2ddd9e=0xce;}_0x1c28c9[_0x13af('0x28')](_0x2ddd9e);return _0x1c28c9[_0x13af('0x2b')](_0x13af('0x2c'),_0x5578a6+'-'+_0x15a4e9+'/'+_0x5a3fc5)['json'](_0x4ef57e);}return null;};}function patchUpdates(_0x49cdd1){return function(_0x46d87c){try{jsonpatch[_0x13af('0x2d')](_0x46d87c,_0x49cdd1,!![]);}catch(_0x579b01){return BPromise[_0x13af('0x2e')](_0x579b01);}return _0x46d87c[_0x13af('0x2f')]();};}function saveUpdates(_0x5cf90b,_0x1df1c5){return function(_0x1dc51d){if(_0x1dc51d){return _0x1dc51d[_0x13af('0x30')](_0x5cf90b)[_0x13af('0x1d')](function(_0x375c17){return _0x375c17;});}return null;};}function removeEntity(_0x70f349,_0x5638f1){return function(_0xf59be9){if(_0xf59be9){return _0xf59be9[_0x13af('0x31')]()['then'](function(){_0x70f349['status'](0xcc)[_0x13af('0x32')]();});}};}function handleEntityNotFound(_0x4455d2,_0x13bd7b){return function(_0x30cc1d){if(!_0x30cc1d){_0x4455d2['sendStatus'](0x194);}return _0x30cc1d;};}function handleError(_0x28da1f,_0x529df4){_0x529df4=_0x529df4||0x1f4;return function(_0x48a439){logger[_0x13af('0x23')](_0x48a439[_0x13af('0x33')]);if(_0x48a439['name']){delete _0x48a439[_0x13af('0x34')];}_0x28da1f[_0x13af('0x28')](_0x529df4)[_0x13af('0x35')](_0x48a439);};}function getInteractionUsers(_0x2de301,_0x934730){return new BPromise(function(_0x419f4c,_0x60e99d){try{if(_0x934730[_0x2de301['id']]){_0x2de301[_0x13af('0x36')]=_[_0x13af('0x37')](_0x934730[_0x2de301['id']],function(_0x4ef488){return{'id':_0x4ef488['id'],'fullname':_0x4ef488[_0x13af('0x38')]};});}}catch(_0x2355e){_0x60e99d(_0x2355e);}_0x419f4c(_0x2de301);});}function getInteractionTags(_0x117adb,_0x3bb448){return new BPromise(function(_0x1027de,_0x5b5c79){try{if(_0x117adb[_0x13af('0x39')]){_0x117adb[_0x13af('0x3a')]=[];_0x117adb[_0x13af('0x39')][_0x13af('0x3b')](',')['forEach'](function(_0x9b5455){_0x117adb[_0x13af('0x3a')][_0x13af('0x3c')](_0x3bb448[_0x9b5455]);});}delete _0x117adb[_0x13af('0x39')];}catch(_0x43ce6c){_0x5b5c79(_0x43ce6c);}_0x1027de(_0x117adb);});}function updateChatInteraction(_0x2455c4,_0x407b8c,_0x589582){return new BPromise(function(_0x565b00,_0x379dfe){return getInteractionUsers(_0x2455c4,_0x589582)[_0x13af('0x1d')](function(_0x4e1b70){return getInteractionTags(_0x4e1b70,_0x407b8c);})[_0x13af('0x1d')](function(_0x5d8db0){_0x565b00(_0x5d8db0);})[_0x13af('0x26')](function(_0x2b6964){_0x379dfe(_0x2b6964);});});}exports['index']=function(_0x8d2340,_0x157bce){var _0x344156={},_0x1f1ca9={},_0x11dc9e={'count':0x0,'rows':[]};var _0xbc92f8=_[_0x13af('0x37')](db[_0x13af('0x3d')][_0x13af('0x3e')],function(_0x5e1464){return{'name':_0x5e1464[_0x13af('0x3f')],'type':_0x5e1464[_0x13af('0x40')][_0x13af('0x41')]};});_0x1f1ca9['model']=_[_0x13af('0x37')](_0xbc92f8,_0x13af('0x34'));_0x1f1ca9[_0x13af('0x42')]=_[_0x13af('0x43')](_0x8d2340[_0x13af('0x42')]);_0x1f1ca9[_0x13af('0x44')]=_[_0x13af('0x45')](_0x1f1ca9[_0x13af('0x46')],_0x1f1ca9[_0x13af('0x42')]);_0x344156[_0x13af('0x47')]=_[_0x13af('0x45')](_0x1f1ca9[_0x13af('0x46')],qs[_0x13af('0x48')](_0x8d2340['query'][_0x13af('0x48')]));_0x344156['attributes']=_0x344156['attributes']['length']?_0x344156[_0x13af('0x47')]:_0x1f1ca9[_0x13af('0x46')];if(!_0x8d2340['query'][_0x13af('0x49')](_0x13af('0x4a'))){_0x344156[_0x13af('0x4b')]=qs['limit'](_0x8d2340[_0x13af('0x42')][_0x13af('0x4b')]);_0x344156[_0x13af('0x2a')]=qs[_0x13af('0x2a')](_0x8d2340[_0x13af('0x42')][_0x13af('0x2a')]);}_0x344156[_0x13af('0x4c')]=qs[_0x13af('0x4d')](_0x8d2340[_0x13af('0x42')][_0x13af('0x4d')]);_0x344156['where']=qs['filters'](_[_0x13af('0x4e')](_0x8d2340['query'],_0x1f1ca9[_0x13af('0x44')]),_0xbc92f8);var _0x5c567d=[];var _0x58465c=squel[_0x13af('0x4f')]()[_0x13af('0x50')]('id')['field'](_0x13af('0x34'))[_0x13af('0x50')]('color')['from']('tools_tags');var _0x42203c=squel[_0x13af('0x4f')]()[_0x13af('0x50')]('u.id')['field'](_0x13af('0x51'))['field']('ui.ChatInteractionId')['from'](_0x13af('0x52'),'ui')['left_join']('users','u',_0x13af('0x53'));var _0x2e5e97=squel[_0x13af('0x4f')]()['from'](_0x13af('0x54'),'i')['left_join'](_0x13af('0x55'),'c',_0x13af('0x56'))[_0x13af('0x57')]('users','o','o.id\x20=\x20i.UserId')[_0x13af('0x57')]('chat_websites','a',_0x13af('0x58'))[_0x13af('0x57')](_0x13af('0x59'),'me',_0x13af('0x5a'))[_0x13af('0x57')](_0x13af('0x5b'),'it',_0x13af('0x5c'))['left_join'](_0x13af('0x5d'),'t','t.id\x20=\x20it.TagId');var _0x5a25d5=squel[_0x13af('0x5e')]();var _0x30e3f0=[];var _0x5be780=squel[_0x13af('0x5e')]();var _0x24fc3c;if(_0x8d2340[_0x13af('0x42')]['search']){_0x24fc3c=as[_0x13af('0x5f')](_0x8d2340[_0x13af('0x42')]['search']);var _0x3dc26e=_0x24fc3c[_0x13af('0x60')];for(var _0x2609f5=0x0;_0x2609f5<_0x24fc3c[_0x13af('0x61')][_0x13af('0x62')];_0x2609f5++){var _0x2b1401=_0x24fc3c[_0x13af('0x61')][_0x2609f5];var _0x50c686='i';var _0x3e1310=_[_0x13af('0x63')](_0xbc92f8,[_0x13af('0x34'),_0x2b1401[_0x13af('0x50')]]);if(!_0x3e1310){switch(_0x2b1401['field']){case'unreadMessages':if(_0x2b1401[_0x13af('0x64')]==0x1){_0x2e5e97[_0x13af('0x65')]('`'+_0x2b1401[_0x13af('0x50')]+'`\x20=\x200');}else{_0x2e5e97['having']('`'+_0x2b1401[_0x13af('0x50')]+_0x13af('0x66'));}break;case _0x13af('0x67'):if(_0x2b1401[_0x13af('0x68')]===_0x13af('0x69')){if(_0x2b1401['value'][_0x13af('0x3b')]('\x20')[_0x13af('0x62')]>0x1){_0x5a25d5[_0x3dc26e](_0x13af('0x6a'),qs[_0x13af('0x6b')](_0x2b1401[_0x13af('0x64')]),null);}else{var _0x2155dd='%'+_0x2b1401[_0x13af('0x64')]+'%';_0x5a25d5[_0x3dc26e](_0x13af('0x6c'),_0x2155dd,_0x2155dd,_0x2155dd);}}else{_0x3e1310=_[_0x13af('0x63')](_0xbc92f8,['name',_0x13af('0x6d')]);_0x2b1401[_0x13af('0x50')]='ContactId';_0x185964=as[_0x13af('0x6e')](_0x50c686,_0x3e1310[_0x13af('0x40')],_0x2b1401);_0x5a25d5[_0x3dc26e](_0x185964[_0x13af('0x6f')],_0x185964['value']['start'],_0x185964[_0x13af('0x64')][_0x13af('0x32')]);}break;case _0x13af('0x70'):var _0x4a0ada=_0x2b1401[_0x13af('0x64')][_0x13af('0x3b')](',')[_0x13af('0x37')](function(_0xf6ab16){return Number(_0xf6ab16);});_0x4a0ada[_0x13af('0x71')](function(_0xe99bad){_0x5be780['or'](_0x13af('0x72'),'%,'+_0xe99bad+',%');});_0x30e3f0=_[_0x13af('0x73')](_0x30e3f0,_0x4a0ada);break;case _0x13af('0x74'):if(_0x2b1401['operator']===_0x13af('0x69')){_0x5a25d5[_0x3dc26e](_0x13af('0x75'),'%'+_0x2b1401[_0x13af('0x64')]+'%',null);}else{_0x3e1310=_[_0x13af('0x63')](_0xbc92f8,['name',_0x13af('0x76')]);_0x2b1401[_0x13af('0x50')]='UserId';_0x185964=as['buildExpression'](_0x50c686,_0x3e1310['type'],_0x2b1401);_0x5a25d5[_0x3dc26e](_0x185964[_0x13af('0x6f')],_0x185964['value']['start'],_0x185964[_0x13af('0x64')]['end']);}break;case _0x13af('0x77'):_0x185964=as[_0x13af('0x6e')]('me',null,_0x2b1401);_0x5a25d5[_0x3dc26e](_0x185964[_0x13af('0x6f')],_0x185964['value']['start'],_0x185964[_0x13af('0x64')]['end']);break;}}else{var _0x185964=as[_0x13af('0x6e')](_0x50c686,_0x3e1310[_0x13af('0x40')],_0x2b1401);_0x5a25d5[_0x3dc26e](_0x185964[_0x13af('0x6f')],_0x185964[_0x13af('0x64')]['start'],_0x185964[_0x13af('0x64')][_0x13af('0x32')]);}}}else{var _0x5eaab7=_(_0x8d2340[_0x13af('0x42')])[_0x13af('0x43')]()[_0x13af('0x37')](function(_0x21a4b9){return _[_0x13af('0x78')](_0xbc92f8,[_0x13af('0x34'),_0x21a4b9])?_0x21a4b9:undefined;})[_0x13af('0x79')]()['value']();if(!_[_0x13af('0x7a')](_0x5eaab7)){_0x5eaab7[_0x13af('0x71')](function(_0x1701ec){if(_0x1701ec==='ChatWebsiteId'){_0x2e5e97[_0x13af('0x7b')](_0x13af('0x7c'),[][_0x13af('0x7d')](_0x8d2340[_0x13af('0x42')][_0x1701ec]));}else if(_0x1701ec===_0x13af('0x7e')){var _0x98e29c=JSON[_0x13af('0x7f')](_0x8d2340['query'][_0x1701ec])['$gte'];var _0x43785d=JSON['parse'](_0x8d2340[_0x13af('0x42')][_0x1701ec])[_0x13af('0x80')];_0x2e5e97['where']('i.createdAt\x20BETWEEN\x20?\x20AND\x20?',_0x98e29c,_0x43785d);}else{if(_0x8d2340[_0x13af('0x42')][_0x1701ec]===_0x13af('0x81')){_0x2e5e97[_0x13af('0x7b')]('i.'+_0x1701ec+_0x13af('0x82'));}else{_0x2e5e97[_0x13af('0x7b')]('i.'+_0x1701ec+_0x13af('0x83'),_0x8d2340['query'][_0x1701ec]);}}});}if(_0x8d2340[_0x13af('0x42')][_0x13af('0x84')]){if(_0x8d2340['query']['read']==0x1){_0x2e5e97[_0x13af('0x65')](_0x13af('0x85'));}else{_0x2e5e97[_0x13af('0x65')](_0x13af('0x86'));}}if(_0x8d2340[_0x13af('0x42')][_0x13af('0x87')]){_0x30e3f0=_['isArray'](_0x8d2340[_0x13af('0x42')][_0x13af('0x87')])?_0x8d2340[_0x13af('0x42')][_0x13af('0x87')]:new Array(_0x8d2340[_0x13af('0x42')][_0x13af('0x87')]);_0x30e3f0[_0x13af('0x71')](function(_0x32acf1){_0x5be780['or'](_0x13af('0x72'),'%,'+_0x32acf1+',%');});}if(_0x8d2340[_0x13af('0x42')][_0x13af('0x88')]){var _0x57161e=_0x8d2340[_0x13af('0x42')][_0x13af('0x88')][_0x13af('0x89')]('\x5c','\x5c\x5c')['replace'](/'/g,'\x27\x27');if(qs[_0x13af('0x8a')](_0x57161e)){_0x5a25d5['or']('i.id\x20LIKE\x20?',_0x57161e+'%');}else{_0x5a25d5['or'](_0x13af('0x8b'),qs[_0x13af('0x6b')](_0x57161e))['or'](_0x13af('0x8c'),_0x57161e+'%');}}}_0x2e5e97[_0x13af('0x7b')](_0x5a25d5);_0x2e5e97['group']('i.id');var _0x3a8539={'type':db['Sequelize']['QueryTypes'][_0x13af('0x8d')],'raw':!![]};var _0x33d157=_0x2e5e97[_0x13af('0x8e')]();_0x33d157[_0x13af('0x50')](_0x13af('0x8f'));_0x33d157[_0x13af('0x50')](_0x13af('0x90'),'unreadMessages');if(_0x344156['order']){_0x344156[_0x13af('0x4c')][_0x13af('0x71')](function(_0x89a836){var _0x19ea58=_0x89a836[0x0]===_0x13af('0x91')?_0x89a836[0x0]:'i.'+_0x89a836[0x0];_0x2e5e97['order'](_0x19ea58,_0x89a836[0x1]===_0x13af('0x92')?![]:!![]);});}if(!_[_0x13af('0x7a')](_0x30e3f0)){_0x2e5e97[_0x13af('0x65')](_0x5be780);_0x33d157[_0x13af('0x7b')](_0x13af('0x93'),_0x30e3f0);}BPromise[_0x13af('0x94')]()[_0x13af('0x1d')](function(){if(!_0x24fc3c){if(_0x8d2340[_0x13af('0x42')][_0x13af('0x95')])return;_0x33d157[_0x13af('0x7b')](_0x13af('0x96'));_0x2e5e97[_0x13af('0x7b')](_0x13af('0x96'));return;}if(_0x8d2340['user'][_0x13af('0x97')]!=='agent')return;return _0x8d2340['user'][_0x13af('0x98')]({'attributes':['id'],'raw':!![]})[_0x13af('0x1d')](function(_0x31c2d8){if(_[_0x13af('0x7a')](_0x31c2d8)){_0x33d157[_0x13af('0x7b')](_0x13af('0x99'));_0x2e5e97[_0x13af('0x7b')](_0x13af('0x99'));}else{_0x33d157[_0x13af('0x7b')](_0x13af('0x7c'),_[_0x13af('0x37')](_0x31c2d8,'id'));_0x2e5e97[_0x13af('0x7b')](_0x13af('0x7c'),_[_0x13af('0x37')](_0x31c2d8,'id'));}});})[_0x13af('0x1d')](function(){if(_0x8d2340['user'][_0x13af('0x97')]===_0x13af('0x9a')&&!_0x24fc3c&&!_0x8d2340[_0x13af('0x42')][_0x13af('0x95')])return[];return db[_0x13af('0x9b')][_0x13af('0x42')](_0x33d157[_0x13af('0x9c')](),_0x3a8539);})['then'](function(_0x24468b){_0x11dc9e[_0x13af('0x9d')]=_0x24468b[_0x13af('0x62')];if(_0x11dc9e[_0x13af('0x9d')]===0x0)return[];return db[_0x13af('0x9b')][_0x13af('0x42')](_0x58465c[_0x13af('0x9c')](),_0x3a8539)[_0x13af('0x1d')](function(_0x5547a5){_0x5c567d=_[_0x13af('0x9e')](_0x5547a5,'id');_0x3a8539=_[_0x13af('0x9f')](_0x3a8539,{'model':db['ChatInteraction'],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0x8d2340['query']['fields']){_0x344156['attributes'][_0x13af('0x71')](function(_0x30f8ef){_0x2e5e97[_0x13af('0x50')]('i.'+_0x30f8ef);});}else{_0x2e5e97[_0x13af('0x50')](_0x13af('0x90'),_0x13af('0xa0'));_0x2e5e97[_0x13af('0x50')]('a.key',_0x13af('0xa1'));_0x2e5e97[_0x13af('0x50')](_0x13af('0xa2'),'Account.mandatoryDisposition');_0x2e5e97[_0x13af('0x50')]('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',_0x13af('0x91'));_0x2e5e97[_0x13af('0x50')](_0x13af('0xa3'));_0x2e5e97[_0x13af('0x50')](_0x13af('0xa4'),_0x13af('0xa5'));_0x2e5e97[_0x13af('0x50')](_0x13af('0xa6'),'Contact.lastName');_0x2e5e97[_0x13af('0x50')]('c.email',_0x13af('0xa7'));_0x2e5e97[_0x13af('0x50')](_0x13af('0xa8'),_0x13af('0xa9'));_0x2e5e97[_0x13af('0x50')](_0x13af('0xaa'),_0x13af('0xab'));_0x2e5e97[_0x13af('0x50')]('c.fax',_0x13af('0xac'));_0x2e5e97[_0x13af('0x50')](_0x13af('0xad'),_0x13af('0xae'));_0x2e5e97['field']('o.internal',_0x13af('0xaf'));_0x2e5e97[_0x13af('0x50')](_0x13af('0xb0'),'TagIds');}if(_0x344156[_0x13af('0x4b')])_0x2e5e97[_0x13af('0x4b')](_0x344156[_0x13af('0x4b')]);if(_0x344156['offset'])_0x2e5e97[_0x13af('0x2a')](_0x344156[_0x13af('0x2a')]);return db[_0x13af('0x9b')][_0x13af('0x42')](_0x2e5e97[_0x13af('0x9c')](),_0x3a8539);})[_0x13af('0x1d')](function(_0x4f1cd5){_0x42203c[_0x13af('0x7b')](_0x13af('0xb1'),_['map'](_0x4f1cd5,'id'));return db[_0x13af('0x9b')]['query'](_0x42203c['toString'](),_0x3a8539)[_0x13af('0x1d')](function(_0x4aedba){var _0x336ab1=_[_0x13af('0xb2')](_0x4aedba,_0x13af('0xb3'));var _0x2b934e=[];_0x4f1cd5[_0x13af('0x71')](function(_0x1f9d9a){_0x2b934e['push'](updateChatInteraction(_0x1f9d9a,_0x5c567d,_0x336ab1));});return BPromise['all'](_0x2b934e);});});})[_0x13af('0x1d')](function(_0x46bb56){_0x11dc9e['rows']=_0x46bb56;return _0x11dc9e;})['then'](respondWithFilteredResult(_0x157bce,_0x344156))['catch'](handleError(_0x157bce,null));};exports[_0x13af('0xb4')]=function(_0x11ae0e,_0x4fedbd){var _0x1520f7={'raw':![],'where':{'id':_0x11ae0e[_0x13af('0xb5')]['id']}},_0x347ebb={};_0x347ebb[_0x13af('0x46')]=_[_0x13af('0x43')](db[_0x13af('0x3d')]['rawAttributes']);_0x347ebb[_0x13af('0x42')]=_[_0x13af('0x43')](_0x11ae0e[_0x13af('0x42')]);_0x347ebb['filters']=_[_0x13af('0x45')](_0x347ebb['model'],_0x347ebb['query']);_0x1520f7[_0x13af('0x47')]=_[_0x13af('0x45')](_0x347ebb[_0x13af('0x46')],qs[_0x13af('0x48')](_0x11ae0e[_0x13af('0x42')]['fields']));_0x1520f7[_0x13af('0x47')]=_0x1520f7[_0x13af('0x47')][_0x13af('0x62')]?_0x1520f7[_0x13af('0x47')]:_0x347ebb[_0x13af('0x46')];if(_0x11ae0e[_0x13af('0x42')][_0x13af('0xb6')]){_0x1520f7[_0x13af('0xb7')]=[{'all':!![]}];}_0x1520f7=_[_0x13af('0x9f')]({},_0x1520f7,_0x11ae0e[_0x13af('0xb8')]);return db['ChatInteraction'][_0x13af('0x63')](_0x1520f7)['then'](handleEntityNotFound(_0x4fedbd,null))[_0x13af('0x1d')](respondWithResult(_0x4fedbd,null))[_0x13af('0x26')](handleError(_0x4fedbd,null));};exports[_0x13af('0xb9')]=function(_0x1105d9,_0x4813c2){return db[_0x13af('0x3d')][_0x13af('0xb9')](_0x1105d9[_0x13af('0x77')],{})[_0x13af('0x1d')](respondWithResult(_0x4813c2,0xc9))[_0x13af('0x26')](handleError(_0x4813c2,null));};exports['update']=function(_0x2e2b78,_0x3ee78a){if(_0x2e2b78[_0x13af('0x77')]['id']){delete _0x2e2b78['body']['id'];}return db[_0x13af('0x3d')][_0x13af('0x63')]({'where':{'id':_0x2e2b78[_0x13af('0xb5')]['id']}})[_0x13af('0x1d')](handleEntityNotFound(_0x3ee78a,null))['then'](saveUpdates(_0x2e2b78['body'],null))['then'](respondWithResult(_0x3ee78a,null))[_0x13af('0x26')](handleError(_0x3ee78a,null));};exports[_0x13af('0x31')]=function(_0x79c0d7,_0x4f2af1){return db['ChatInteraction'][_0x13af('0x63')]({'where':{'id':_0x79c0d7['params']['id']}})[_0x13af('0x1d')](handleEntityNotFound(_0x4f2af1,null))[_0x13af('0x1d')](removeEntity(_0x4f2af1,null))[_0x13af('0x26')](handleError(_0x4f2af1,null));};exports[_0x13af('0xba')]=function(_0x55245a,_0x27a21f){return db[_0x13af('0x3d')][_0x13af('0xba')]()['then'](respondWithResult(_0x27a21f,null))[_0x13af('0x26')](handleError(_0x27a21f,null));};exports[_0x13af('0xbb')]=function(_0x2eb889,_0x14479c){var _0x1e8924=_0x2eb889[_0x13af('0xb5')]['id'];var _0x33ecda;var _0x12d91a;var _0x3e20ad;return db[_0x13af('0x3d')][_0x13af('0xbc')]({'where':{'id':_0x1e8924}})[_0x13af('0x1d')](function(_0x6a0af0){_0x33ecda=_0x6a0af0;return db[_0x13af('0xbd')][_0x13af('0xbc')]({'where':{'id':_0x6a0af0[_0x13af('0x95')]},'attributes':['id','vidaooApiKey',_0x13af('0xbe')],'raw':!![]});})['then'](function(_0x3fb89c){if(_0x3fb89c&&_0x3fb89c[_0x13af('0xbf')]&&_0x3fb89c['vidaooEscalation']){_0x12d91a=_0x3fb89c;var _0x4ef18a={'rejectUnauthorized':![],'method':_0x13af('0xc0'),'uri':_0x13af('0xc1'),'headers':{'X-APIKEY':_0x3fb89c[_0x13af('0xbf')]},'body':{'name':_0x13af('0xc2')+_0x1e8924},'redirect':'follow','json':!![]};return rp(_0x4ef18a);}else{throw new db[(_0x13af('0xc3'))][(_0x13af('0xc4'))]('Error\x20in\x20Vidaoo\x20configuration');}})[_0x13af('0x1d')](function(_0x5c8cdf){_0x3e20ad=_0x5c8cdf;if(_0x3e20ad['id']){var _0x1f07eb={'body':_0x3e20ad[_0x13af('0xc5')],'ChatWebsiteId':_0x12d91a['id'],'ChatInteractionId':_0x33ecda['id'],'direction':_0x13af('0xc6'),'UserId':_0x2eb889[_0x13af('0xc7')]['id']};return db['ChatMessage'][_0x13af('0xb9')](_0x1f07eb,{});}else{throw new db[(_0x13af('0xc3'))][(_0x13af('0xc4'))](_0x13af('0xc8'));}})[_0x13af('0x1d')](function(){return _0x33ecda[_0x13af('0xc9')]({'vidaooSessionId':_0x3e20ad['id']});})['then'](respondWithResult(_0x14479c,null))[_0x13af('0x26')](handleError(_0x14479c,null));};exports[_0x13af('0xca')]=function(_0x1d1758,_0x34c363){if(_0x1d1758['body']['id']){delete _0x1d1758[_0x13af('0x77')]['id'];}return db[_0x13af('0x3d')]['find']({'where':{'id':_0x1d1758[_0x13af('0xb5')]['id']}})[_0x13af('0x1d')](handleEntityNotFound(_0x34c363,null))[_0x13af('0x1d')](saveUpdates(_0x1d1758[_0x13af('0x77')],null))[_0x13af('0x1d')](respondWithResult(_0x34c363,null))[_0x13af('0x26')](handleError(_0x34c363,null));};exports[_0x13af('0xcb')]=function(_0x1e601c,_0x17f3b0,_0x3339ee){if(_0x1e601c[_0x13af('0x77')]['id']){delete _0x1e601c['body']['id'];}return db['ChatInteraction'][_0x13af('0x63')]({'where':{'id':_0x1e601c[_0x13af('0xb5')]['id']}})[_0x13af('0x1d')](function(_0x1f666a){if(!_0x1f666a){logger[_0x13af('0x23')]('abandonInteraction,\x20%s,\x20%s,\x20%s',_0x13af('0xcb'),0x194,_0x13af('0xcc'));_0x17f3b0[_0x13af('0x27')](0x194);}else{if(_0x1f666a[_0x13af('0x76')]){throw new db[(_0x13af('0xc3'))]['ValidationError'](_0x13af('0xcd'));}}return _0x1f666a;})[_0x13af('0x1d')](function(_0x348899){if(_0x348899){return _0x348899['update']({'closed':_0x1e601c[_0x13af('0x77')][_0x13af('0xce')],'disposition':_0x1e601c['body']['disposition']})[_0x13af('0x1d')](function(_0x4ba388){return _0x4ba388;});}})[_0x13af('0x1d')](function(_0x5b9b49){return respondWithRpcPromise(_0x13af('0xcf'),_0x13af('0xcb'),_0x1e601c['body'],client9004);})[_0x13af('0x1d')](respondWithResult(_0x17f3b0,null))[_0x13af('0x26')](handleError(_0x17f3b0,null));};exports[_0x13af('0xd0')]=function(_0x467c22,_0x4e74dc,_0x25f169){_0x467c22['body']['name']=_0x467c22[_0x13af('0xd1')]['originalname'];_0x467c22[_0x13af('0x77')][_0x13af('0xd2')]=_0x467c22[_0x13af('0xd1')][_0x13af('0xd3')];_0x467c22['body']['type']=_0x467c22[_0x13af('0xd1')][_0x13af('0xd4')];return db['Attachment'][_0x13af('0xb9')](_0x467c22['body'])[_0x13af('0x1d')](respondWithResult(_0x4e74dc,0xc9))[_0x13af('0x26')](handleError(_0x4e74dc,null));};exports[_0x13af('0xd5')]=function(_0x3562a5,_0x4697b7,_0x265a66){return db[_0x13af('0x3d')][_0x13af('0xbc')]({'where':{'id':_0x3562a5[_0x13af('0xb5')]['id']},'raw':!![]})['then'](handleEntityNotFound(_0x4697b7,null))['then'](function(_0x3e94b7){if(_0x3e94b7){if(_0x3e94b7[_0x13af('0xce')]){return _0x4697b7['status'](0x193)['json']({'status':0x193,'message':_0x13af('0xd6')});}return db['Attachment']['findOne']({'where':{'id':_0x3562a5['query'][_0x13af('0xd7')]},'raw':!![]})[_0x13af('0x1d')](handleEntityNotFound(_0x4697b7,null));}})[_0x13af('0x1d')](function(_0x5b3977){if(_0x5b3977){return _0x4697b7[_0x13af('0xd8')](path['join'](config['root'],_0x13af('0xd9'),_0x5b3977['basename']));}})[_0x13af('0x26')](handleError(_0x4697b7,null));};exports[_0x13af('0xda')]=function(_0xf3d7a5,_0x38904e){var _0x4ba639=null;var _0x205ef9=null;var _0x3d2d29=null;var _0x2894d4=null;if(_0xf3d7a5[_0x13af('0x77')]['id']){delete _0xf3d7a5[_0x13af('0x77')]['id'];}if(_0xf3d7a5[_0x13af('0x77')][_0x13af('0xdb')]){_0x2894d4=path['join'](config[_0x13af('0xdc')],_0x13af('0xdd'),util['format'](_0x13af('0xde'),Date[_0x13af('0xdf')]()));_0xf3d7a5[_0x13af('0x77')]['pathTranscript']=_0x2894d4;}return db['ChatInteraction'][_0x13af('0x63')]({'where':{'id':_0xf3d7a5[_0x13af('0xb5')]['id']},'include':[{'model':db[_0x13af('0xe0')],'as':_0x13af('0xe1'),'include':[{'model':db[_0x13af('0x74')],'as':_0x13af('0x74')}]}]})[_0x13af('0x1d')](handleEntityNotFound(_0x38904e,null))[_0x13af('0x1d')](saveUpdates(_0xf3d7a5[_0x13af('0x77')],null))[_0x13af('0x1d')](function(_0x10b789){if(_0x10b789){_0x4ba639=_0x10b789;return db['ChatWebsite']['find']({'where':{'id':_0x4ba639['ChatWebsiteId']}});}})[_0x13af('0x1d')](function(_0x27c4bb){if(_0x27c4bb){_0x3d2d29=_0x27c4bb;return db['CmContact'][_0x13af('0x63')]({'where':{'id':_0x4ba639[_0x13af('0x6d')]}});}})[_0x13af('0x1d')](function(_0x1b043b){if(_0x1b043b){_0x205ef9=_0x1b043b;if(_0x2894d4){var _0x1060f4=null;for(var _0x3fa77a=0x1;_0x3fa77a<_0x4ba639['Messages'][_0x13af('0x62')];++_0x3fa77a){_0x1060f4=_0x4ba639['Messages'][_0x3fa77a];var _0x25d352=_0x1060f4['UserId']?util['format'](_0x13af('0xe2'),_0x3d2d29[_0x13af('0xe3')],_0x1060f4['UserId']):_0x13af('0xe4');var _0x40d5cc=_0xf3d7a5[_0x13af('0x77')][_0x13af('0xe5')]||util[_0x13af('0xe6')](_0x13af('0xe2'),_0x13af('0xe7'),_0x1060f4[_0x13af('0x6d')]);switch(_0x3d2d29[_0x13af('0xe8')]){case'website_alias':_0x25d352=_0x1060f4[_0x13af('0x76')]?util[_0x13af('0xe6')](_0x13af('0xe2'),_0x3d2d29[_0x13af('0xe3')],_0x1060f4[_0x13af('0x76')]):'System';break;case _0x13af('0xe9'):_0x25d352=_0x1060f4[_0x13af('0x76')]?_0x1060f4['User'][_0x13af('0xea')]||_0x1060f4['User']['fullname']:_0x13af('0xe4');break;case _0x13af('0xeb'):_0x25d352=_0x1060f4[_0x13af('0x76')]?_0x1060f4[_0x13af('0x74')][_0x13af('0x38')]:'System';break;default:_0x25d352=_0x1060f4['UserId']?util[_0x13af('0xe6')](_0x13af('0xe2'),_0x3d2d29[_0x13af('0xe3')],_0x1060f4[_0x13af('0x76')]):_0x13af('0xe4');}var _0x3be604=util['format'](_0x13af('0xec'),moment(_0x1060f4[_0x13af('0x7e')])[_0x13af('0xe6')](_0x13af('0xed')),_0x1060f4[_0x13af('0xee')]==='in'?_0x40d5cc:_0x25d352,_0x1060f4[_0x13af('0x77')]);if(!_0x1060f4[_0x13af('0xef')]){fs['appendFileSync'](_0x2894d4,_0x3be604);}}return db[_0x13af('0xf0')][_0x13af('0xbc')]({'where':{'service':!![]},'include':[{'model':db[_0x13af('0xf1')],'as':_0x13af('0xf2'),'raw':!![]}]});}}})[_0x13af('0x1d')](function(_0x441d9b){if(_0x441d9b&&_0x441d9b[_0x13af('0xf2')]&&_0xf3d7a5[_0x13af('0x77')]){var _0x5c6f28={'tls':{'rejectUnauthorized':![]}};if(_0x441d9b[_0x13af('0xf2')][_0x13af('0xf3')]){_0x5c6f28[_0x13af('0xf3')]=_0x441d9b[_0x13af('0xf2')][_0x13af('0xf3')];}else{_0x5c6f28[_0x13af('0xf4')]=_0x441d9b[_0x13af('0xf2')][_0x13af('0xf4')];_0x5c6f28[_0x13af('0xf5')]=_0x441d9b['Smtp'][_0x13af('0xf5')];_0x5c6f28['secure']=_0x441d9b[_0x13af('0xf2')][_0x13af('0xf6')];}if(_0x441d9b[_0x13af('0xf2')][_0x13af('0xf7')]){_0x5c6f28[_0x13af('0xf8')]={'user':_0x441d9b[_0x13af('0xf2')][_0x13af('0xc7')],'pass':_0x441d9b[_0x13af('0xf2')][_0x13af('0xf9')]};}return respondWithRpcPromise(_0x13af('0xfa'),_0x13af('0xfb'),{'account':_0x5c6f28,'message':{'from':util[_0x13af('0xe6')](_0x13af('0xfc'),_0x441d9b[_0x13af('0x34')],_0x441d9b[_0x13af('0xfd')]||_0x441d9b[_0x13af('0xf2')][_0x13af('0xc7')]),'to':_0xf3d7a5[_0x13af('0x77')][_0x13af('0xdb')],'subject':'Mail\x20Transcript','text':util[_0x13af('0xe6')](_0x13af('0xfe'),_0xf3d7a5['body'][_0x13af('0xdb')]),'attachments':[{'path':_0x2894d4}]}})[_0x13af('0x1d')](function(){return _0x4ba639;})[_0x13af('0x26')](function(_0x6759f5){console[_0x13af('0x23')](_0x6759f5);});}else{return _0x4ba639;}})['then'](respondWithStatusCode(_0x38904e,0xc8))[_0x13af('0x26')](handleError(_0x38904e,null));};exports[_0x13af('0xff')]=function(_0x5796a0,_0x2b063e,_0x2d75bc){return db[_0x13af('0xe0')][_0x13af('0x63')]({'where':{'id':_0x5796a0['params']['id']}})[_0x13af('0x1d')](handleEntityNotFound(_0x2b063e,null))[_0x13af('0x1d')](function(_0x2fe430){if(_0x2fe430){return _0x2fe430['addMessage'](_0x5796a0[_0x13af('0x77')]['ids'],_['omit'](_0x5796a0[_0x13af('0x77')],[_0x13af('0x100'),'id'])||{});}})['then'](respondWithResult(_0x2b063e,null))[_0x13af('0x26')](handleError(_0x2b063e,null));};exports[_0x13af('0x101')]=function(_0x34a3d9,_0x2728c4,_0x2d91b5){var _0x1352c0={'raw':![],'where':{}};var _0x47ad54={};var _0x5d4579={'count':0x0,'rows':[]};return db[_0x13af('0x3d')]['findOne']({'where':{'id':_0x34a3d9[_0x13af('0xb5')]['id']}})[_0x13af('0x1d')](handleEntityNotFound(_0x2728c4,null))[_0x13af('0x1d')](function(_0x49df37){if(_0x49df37){_0x47ad54[_0x13af('0x46')]=_[_0x13af('0x43')](db[_0x13af('0xe0')][_0x13af('0x3e')]);_0x47ad54['query']=_[_0x13af('0x43')](_0x34a3d9[_0x13af('0x42')]);_0x47ad54[_0x13af('0x44')]=_[_0x13af('0x45')](_0x47ad54[_0x13af('0x46')],_0x47ad54[_0x13af('0x42')]);_0x1352c0[_0x13af('0x47')]=_[_0x13af('0x45')](_0x47ad54[_0x13af('0x46')],qs[_0x13af('0x48')](_0x34a3d9['query'][_0x13af('0x48')]));_0x1352c0[_0x13af('0x47')]=_0x1352c0[_0x13af('0x47')]['length']?_0x1352c0[_0x13af('0x47')]:_0x47ad54['model'];if(!_0x34a3d9[_0x13af('0x42')][_0x13af('0x49')](_0x13af('0x4a'))){_0x1352c0[_0x13af('0x4b')]=qs['limit'](_0x34a3d9[_0x13af('0x42')]['limit']);_0x1352c0['offset']=qs[_0x13af('0x2a')](_0x34a3d9[_0x13af('0x42')]['offset']);}_0x1352c0[_0x13af('0x4c')]=qs[_0x13af('0x4d')](_0x34a3d9['query'][_0x13af('0x4d')]);_0x1352c0['where']=qs[_0x13af('0x44')](_[_0x13af('0x4e')](_0x34a3d9[_0x13af('0x42')],_0x47ad54[_0x13af('0x44')]));_0x1352c0[_0x13af('0x7b')][_0x13af('0xb3')]=_0x49df37['id'];if(_0x34a3d9[_0x13af('0x42')][_0x13af('0x88')]){_0x1352c0[_0x13af('0x7b')]=_['merge'](_0x1352c0['where'],{'$or':_[_0x13af('0x37')](_0x1352c0[_0x13af('0x47')],function(_0x5ea7e1){var _0x2cd32c={};_0x2cd32c[_0x5ea7e1]={'$like':'%'+_0x34a3d9[_0x13af('0x42')][_0x13af('0x88')]+'%'};return _0x2cd32c;})});}if(_0x34a3d9['query']['$gte']){var _0x33412e=_0x34a3d9['query']['$gte'][_0x13af('0x3b')](',');var _0x1d2ba4={};_0x1d2ba4[_0x33412e[0x0]]={'$gte':moment(_0x33412e[0x1])['format'](_0x13af('0x102'))};_0x1352c0['where']=_[_0x13af('0x9f')](_0x1352c0[_0x13af('0x7b')],_0x1d2ba4);}_0x1352c0=_[_0x13af('0x9f')]({},_0x1352c0,_0x34a3d9['options']);return db[_0x13af('0xe0')]['count']({'where':_0x1352c0['where']})[_0x13af('0x1d')](function(_0xba19fa){_0x5d4579[_0x13af('0x9d')]=_0xba19fa;if(_0x34a3d9[_0x13af('0x42')][_0x13af('0xb6')]){_0x1352c0[_0x13af('0xb7')]=[{'all':!![]}];}return db['ChatMessage']['findAll'](_0x1352c0);})['then'](function(_0x1cfb7f){_0x5d4579[_0x13af('0x103')]=_0x1cfb7f;return _0x5d4579;});}})[_0x13af('0x1d')](respondWithFilteredResult(_0x2728c4,_0x1352c0))[_0x13af('0x26')](handleError(_0x2728c4,null));};exports[_0x13af('0x104')]=function(_0x38c13a,_0x29af77,_0x50996e){var _0x2364dc={'where':{}},_0x4337ee={},_0x39ea81={'count':0x0,'rows':[]};return db[_0x13af('0x3d')][_0x13af('0xbc')]({'where':{'id':_0x38c13a[_0x13af('0xb5')]['id']}})['then'](handleEntityNotFound(_0x29af77,null))[_0x13af('0x1d')](function(_0x2adc38){if(_0x2adc38){_0x4337ee[_0x13af('0x46')]=_[_0x13af('0x43')](db[_0x13af('0xe0')][_0x13af('0x3e')]);_0x4337ee[_0x13af('0x42')]=_[_0x13af('0x43')](_0x38c13a[_0x13af('0x42')]);_0x4337ee[_0x13af('0x44')]=_[_0x13af('0x45')](_0x4337ee['model'],_0x4337ee[_0x13af('0x42')]);_0x2364dc[_0x13af('0x47')]=_[_0x13af('0x45')](_0x4337ee[_0x13af('0x46')],qs[_0x13af('0x48')](_0x38c13a[_0x13af('0x42')][_0x13af('0x48')]));_0x2364dc[_0x13af('0x47')]=_0x2364dc[_0x13af('0x47')]['length']?_0x2364dc['attributes']:_0x4337ee[_0x13af('0x46')];if(!_0x38c13a[_0x13af('0x42')][_0x13af('0x49')](_0x13af('0x4a'))){_0x2364dc[_0x13af('0x4b')]=qs[_0x13af('0x4b')](_0x38c13a[_0x13af('0x42')][_0x13af('0x4b')]);_0x2364dc[_0x13af('0x2a')]=qs['offset'](_0x38c13a[_0x13af('0x42')][_0x13af('0x2a')]);}_0x2364dc[_0x13af('0x4c')]=qs[_0x13af('0x4d')](_0x38c13a[_0x13af('0x42')][_0x13af('0x4d')]);_0x2364dc['where']=qs[_0x13af('0x44')](_[_0x13af('0x4e')](_0x38c13a[_0x13af('0x42')],_0x4337ee['filters']));_0x2364dc[_0x13af('0x7b')][_0x13af('0xb3')]=_0x2adc38['id'];if(_0x38c13a[_0x13af('0x42')][_0x13af('0x88')]){_0x2364dc[_0x13af('0x7b')]=_[_0x13af('0x9f')](_0x2364dc[_0x13af('0x7b')],{'$or':_['map'](_0x2364dc[_0x13af('0x47')],function(_0xfbac80){var _0x23bf84={};_0x23bf84[_0xfbac80]={'$like':'%'+_0x38c13a[_0x13af('0x42')]['filter']+'%'};return _0x23bf84;})});}_0x2364dc[_0x13af('0x7b')]['secret']=![];if(_0x38c13a[_0x13af('0x42')]['id']){_0x2364dc[_0x13af('0x7b')]['id']={'$gt':_0x38c13a[_0x13af('0x42')]['id']};}_0x2364dc=_['merge']({},_0x2364dc,_0x38c13a[_0x13af('0xb8')]);return db[_0x13af('0xe0')][_0x13af('0x9d')]({'where':_0x2364dc[_0x13af('0x7b')]})[_0x13af('0x1d')](function(_0x44b650){_0x39ea81[_0x13af('0x9d')]=_0x44b650;_0x2364dc[_0x13af('0xb7')]=[];if(_0x38c13a['query'][_0x13af('0x105')]){_0x2364dc['include'][_0x13af('0x3c')]({'model':db[_0x13af('0x74')],'as':_0x13af('0x74'),'attributes':['id','fullname',_0x13af('0xea')]});}if(_0x38c13a[_0x13af('0x42')][_0x13af('0xb6')]){_0x2364dc[_0x13af('0xb7')]=[{'all':!![]}];}return db[_0x13af('0xe0')][_0x13af('0x106')](_0x2364dc);})[_0x13af('0x1d')](function(_0x138d38){_0x39ea81['rows']=_0x138d38;return _0x39ea81;});}})[_0x13af('0x1d')](respondWithFilteredResult(_0x29af77,_0x2364dc))[_0x13af('0x26')](handleError(_0x29af77,null));};exports[_0x13af('0x107')]=function(_0x598550,_0xef0422,_0x4c6e20){return db[_0x13af('0x3d')][_0x13af('0x63')]({'where':{'id':_0x598550[_0x13af('0xb5')]['id']}})[_0x13af('0x1d')](handleEntityNotFound(_0xef0422,null))['then'](function(_0x581af3){if(_0x581af3){return _0x581af3[_0x13af('0x108')](_0x598550[_0x13af('0x77')][_0x13af('0x100')],_[_0x13af('0x109')](_0x598550[_0x13af('0x77')],[_0x13af('0x100'),'id'])||{})[_0x13af('0x10a')](function(){return db[_0x13af('0x70')]['findAll']({'attributes':['id','name','color'],'where':{'id':_0x598550[_0x13af('0x77')][_0x13af('0x100')]}});})[_0x13af('0x1d')](function(_0x44103c){socket[_0x13af('0x10b')](_0x13af('0x10c'),{'id':Number(_0x598550['params']['id']),'tags':_0x44103c||[]});return{'id':Number(_0x598550[_0x13af('0xb5')]['id']),'tags':_0x44103c||[]};});}})[_0x13af('0x1d')](respondWithResult(_0xef0422,null))['catch'](handleError(_0xef0422,null));};exports[_0x13af('0x10d')]=function(_0x327ecc,_0x48f7f4,_0x46b2c5){return db[_0x13af('0x3d')][_0x13af('0x63')]({'where':{'id':_0x327ecc[_0x13af('0xb5')]['id']}})['then'](handleEntityNotFound(_0x48f7f4,null))['then'](function(_0x510fa0){if(_0x510fa0){return _0x510fa0[_0x13af('0x10d')](_0x327ecc[_0x13af('0x42')][_0x13af('0x100')]);}})[_0x13af('0x1d')](respondWithStatusCode(_0x48f7f4,null))[_0x13af('0x26')](handleError(_0x48f7f4,null));};exports[_0x13af('0xd8')]=function(_0x20aa5c,_0x2a98cf){var _0x308481=moment()['unix']()[_0x13af('0x9c')]();var _0x4f76be=path['join'](config['root'],_0x13af('0x10e'),_0x13af('0x10f'),'tmp');var _0x4a573b=path[_0x13af('0x110')](config['root'],'server',_0x13af('0x10f'),_0x13af('0x111'));var _0x4e0895=path[_0x13af('0x110')](_0x4f76be,_0x308481);var _0x434684=util[_0x13af('0xe6')](_0x13af('0x112'),_0x20aa5c[_0x13af('0xb5')]['id'],_0x308481);var _0x16d445=path[_0x13af('0x110')](_0x4f76be,_0x434684);var _0x3b8c94=[];_0x3b8c94[_0x13af('0x3c')]({'model':db[_0x13af('0x74')],'as':_0x13af('0x74'),'attributes':['id',_0x13af('0x38')],'raw':!![]});_0x3b8c94[_0x13af('0x3c')]({'model':db[_0x13af('0x113')],'as':_0x13af('0x67'),'attributes':['id',_0x13af('0x114'),_0x13af('0x115')],'raw':!![]});if(_0x20aa5c[_0x13af('0x42')][_0x13af('0x111')]){_0x3b8c94[_0x13af('0x3c')]({'model':db[_0x13af('0x116')],'as':_0x13af('0x116'),'raw':!![]});}var _0x45c9f3=[{'model':db[_0x13af('0xe0')],'as':_0x13af('0xe1'),'attributes':['id',_0x13af('0x77'),'createdAt','direction',_0x13af('0xef'),_0x13af('0x84')],'include':_0x3b8c94}];_0x45c9f3[_0x13af('0x3c')]({'model':db[_0x13af('0xbd')],'as':_0x13af('0x117'),'attributes':['id',_0x13af('0x34')]});_0x45c9f3['push']({'model':db[_0x13af('0x74')],'as':'Owner','attributes':['id',_0x13af('0x38')]});return db[_0x13af('0x3d')][_0x13af('0x63')]({'where':{'id':_0x20aa5c[_0x13af('0xb5')]['id']},'include':_0x45c9f3})['then'](handleEntityNotFound(_0x2a98cf,null))[_0x13af('0x1d')](function(_0x33f6b9){if(_0x33f6b9){var _0x5d31c9=_0x33f6b9[_0x13af('0x118')]({'plain':!![]});fs['mkdirSync'](_0x4e0895);var _0x583274={'format':'A4','border':_0x13af('0x119'),'header':{'height':_0x13af('0x11a'),'contents':{'first':'<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>'}},'footer':{'height':_0x13af('0x11b'),'contents':{'default':util[_0x13af('0xe6')](_0x13af('0x11c'),util[_0x13af('0xe6')](_0x13af('0x11d'),_0x13af('0x11e'),_0x5d31c9['id']),moment()[_0x13af('0xe6')](_0x13af('0x11f'))['toString']())}}};var _0x2dc8c9={'channel':_0x13af('0x11e'),'account':_0x5d31c9[_0x13af('0x117')][_0x13af('0x34')],'agent':_0x5d31c9[_0x13af('0x120')]?_0x5d31c9[_0x13af('0x120')][_0x13af('0x38')]:_0x13af('0x121'),'createdAt':moment(_0x5d31c9[_0x13af('0x7e')])[_0x13af('0xe6')](_0x13af('0x102'))['toString'](),'closedAt':_0x5d31c9['closed']?moment(_0x5d31c9['closedAt'])[_0x13af('0xe6')](_0x13af('0x102'))[_0x13af('0x9c')]():'','disposition':_0x5d31c9[_0x13af('0x122')],'chatInfo':{'browser':_0x5d31c9[_0x13af('0x123')],'os':_0x5d31c9[_0x13af('0x124')],'referer':_0x5d31c9[_0x13af('0x125')],'customerIp':_0x5d31c9['customerIp'],'customerPort':_0x5d31c9[_0x13af('0x126')]?_0x5d31c9[_0x13af('0x126')]:_0x13af('0x121')},'messages':_(_0x5d31c9[_0x13af('0xe1')])[_0x13af('0x127')]()[_0x13af('0x88')]({'secret':![]})[_0x13af('0x37')](function(_0x3a0b5d){if(_0x3a0b5d['Attachment']){var _0x2b272e=path[_0x13af('0x110')](_0x4a573b,_0x3a0b5d[_0x13af('0x116')]['basename']);if(fs[_0x13af('0x128')](_0x2b272e)){fs[_0x13af('0x129')](_0x2b272e)[_0x13af('0x12a')](fs[_0x13af('0x12b')](path[_0x13af('0x110')](_0x4e0895,_0x3a0b5d['Attachment']['basename'])));}}return{'date':moment(_0x3a0b5d['createdAt'])['format'](_0x13af('0x102'))[_0x13af('0x9c')](),'sender':_0x3a0b5d[_0x13af('0xee')]===_0x13af('0xc6')?_0x3a0b5d[_0x13af('0x74')]?_0x3a0b5d['User'][_0x13af('0x38')]:_0x13af('0xe4'):_0x3a0b5d[_0x13af('0x67')][_0x13af('0x114')]+(_0x3a0b5d[_0x13af('0x67')]['lastName']?'\x20'+_0x3a0b5d[_0x13af('0x67')][_0x13af('0x115')]:''),'body':_0x3a0b5d[_0x13af('0x116')]?_0x3a0b5d[_0x13af('0x116')][_0x13af('0xd2')]:_0x3a0b5d[_0x13af('0x77')],'direction':_0x3a0b5d[_0x13af('0xee')]===_0x13af('0xc6')?'A':'C','secret':_0x3a0b5d[_0x13af('0xef')],'read':_0x3a0b5d['read'],'attachment':_0x3a0b5d['Attachment']};})[_0x13af('0x64')]()};return ejs[_0x13af('0x12c')](path[_0x13af('0x110')](config['root'],_0x13af('0x10e'),_0x13af('0x12d'),_0x13af('0x12e')),{'interaction':_0x2dc8c9})['then'](function(_0x2b56b6){return new BPromise(function(_0x5648cd,_0x2b3843){pdf[_0x13af('0xb9')](_0x2b56b6,_0x583274)[_0x13af('0x12f')](path['join'](_0x4e0895,_0x13af('0x130')+_0x5d31c9['id']+'-'+_0x308481+_0x13af('0x131')),function(_0x1eac1b,_0x5c212d){if(_0x1eac1b)return _0x2b3843(_0x1eac1b);_0x5648cd(_0x5c212d);});});})['then'](function(){return new BPromise(function(_0x158ad1,_0x8df92f){zipdir(_0x4e0895,{'saveTo':_0x16d445},function(_0x123f71,_0x51af65){if(_0x123f71)return _0x8df92f(_0x123f71);return _0x158ad1(_0x51af65);});})['then'](function(){return new BPromise(function(_0x55d877,_0x234858){rimraf(_0x4e0895,function(_0x5c28b4){if(_0x5c28b4)_0x234858(_0x5c28b4);return _0x55d877();});});})[_0x13af('0x1d')](function(){return _0x2a98cf[_0x13af('0xd8')](_0x16d445,_0x434684,function(_0x2dfae5){if(_0x2dfae5){console[_0x13af('0x132')]('err',_0x2dfae5);}else{fs[_0x13af('0x133')](_0x16d445);}});});});}else{return _0x2a98cf[_0x13af('0x27')](0xc8);}})['catch'](handleError(_0x2a98cf,null));};