Built motion from commit (unavailable).|2.4.21
[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 _0x1883=['$substring','CONCAT_WS(\x27\x20\x27,\x20o.name,\x20o.fullname)\x20LIKE\x20?','UserId','buildExpression','body','text','some','ChatWebsiteId','where','i.ChatWebsiteId\x20IN\x20?','createdAt','parse','$lte','i.createdAt\x20BETWEEN\x20?\x20AND\x20?','\x20IS\x20NULL','read','tag','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','filter','replace','\x27\x27\x27\x27','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?','group','i.id','QueryTypes','SELECT','clone','DESC','isEmpty','t.id\x20IN\x20?','resolve','journey','i.ChatWebsiteId\x20IS\x20NOT\x20NULL','user','getChatWebsites','sequelize','toString','keyBy','merge','Account.key','a.mandatoryDisposition','Account.mandatoryDisposition','c.lastName','c.email','Contact.email','c.phone','Contact.phone','Contact.mobile','c.fax','Contact.fax','o.fullname','Owner.fullname','o.internal','ui.ChatInteractionId\x20IN\x20?','groupBy','push','all','rows','show','params','keys','create','describe','abandon','abandonInteraction,\x20%s,\x20%s,\x20%s','entity\x20not\x20found','ValidationError','Interaction\x20already\x20assigned','disposition','originalname','file','mimetype','Attachment','findOne','closed','attachId','download','join','root','server/files/attachments/','basename','close','mailTranscript','server/files/chat/upload/','format','transcript-%s.txt','now','Messages','ChatWebsite','CmContact','%s%d','System','Visitor','agentIdentifier','agentAlias','alias','agent_fullname','[%s]\x20%s:\x20%s\x0a','MM/DD/YYYY\x20HH:mm:ss','secret','appendFileSync','MailAccount','MailServerOut','Smtp','service','host','port','secure','authentication','auth','pass','SendMail','sendMail','\x22%s\x22\x20<%s>','email','Mail\x20Transcript','addMessage','ChatMessage','ids','getMessages','ChatInteractionId','$gte','YYYY-MM-DD\x20HH:mm:ss','include','findAll','getMyMessages','options','includeAll','addTags','omit','spread','color','emit','chatInteractionTags:save','removeTags','unix','files','tmp','server','attachments','transcript-%d-%s.zip','firstName','lastName','direction','get','mkdirSync','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>','Chat','YYYY-MM-DD','Account','Owner','N.A.','closedAt','osName','referer','customerIp','customerPort','createReadStream','pipe','out','downloadInteraction.html','transcript-','.pdf','log','err','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','ejs','lodash','squel','crypto','desk.js','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/utils','redis','defaults','localhost','socket.io-emitter','register','http','test','Sequelize','The\x20password\x20must\x20be\x20at\x20least\x208\x20characters\x20long\x20and\x20have\x201\x20lowercase\x20character,\x201\x20uppercase\x20character,\x201\x20number\x20and\x201\x20special\x20character\x20~!@#$%^&-_=+[{]}.','then','debug','ChatInteraction,\x20%s,\x20%s,\x20%s','request\x20sent','error','code','ChatInteraction,\x20%s,\x20%s','message','info','result','catch','sendStatus','status','end','json','count','offset','limit','set','Content-Range','apply','reject','save','update','destroy','stack','name','send','Users','map','fullname','Tags','TagIds','split','forEach','index','ChatInteraction','rawAttributes','type','key','model','query','filters','intersection','fields','attributes','hasOwnProperty','nolimit','order','sort','pick','select','field','from','user_has_chat_interactions','users','u.id\x20=\x20ui.UserId','cm_contacts','c.id\x20=\x20i.ContactId\x20AND\x20c.deletedAt\x20IS\x20NULL','left_join','o.id\x20=\x20i.UserId','chat_websites','a.id\x20=\x20i.ChatWebsiteId','chat_interaction_has_tags','it.ChatInteractionId\x20=\x20i.id','tools_tags','t.id\x20=\x20it.TagId','expr','parseSearch','search','conditions','length','unreadMessages','value','having','`\x20>\x200','Contact','operator','getFullTextValue','c.firstName\x20LIKE\x20?\x20OR\x20c.lastName\x20LIKE\x20?\x20OR\x20c.email\x20LIKE\x20?','find','ContactId','start','Tag','union','User'];(function(_0x2064e5,_0x4f6fa2){var _0x21a233=function(_0x1b2491){while(--_0x1b2491){_0x2064e5['push'](_0x2064e5['shift']());}};_0x21a233(++_0x4f6fa2);}(_0x1883,0xab));var _0x3188=function(_0x574f56,_0x24404f){_0x574f56=_0x574f56-0x0;var _0x2e8c7e=_0x1883[_0x574f56];return _0x2e8c7e;};'use strict';var pdf=require(_0x3188('0x0'));var emlformat=require(_0x3188('0x1'));var rimraf=require(_0x3188('0x2'));var zipdir=require(_0x3188('0x3'));var jsonpatch=require(_0x3188('0x4'));var rp=require(_0x3188('0x5'));var moment=require(_0x3188('0x6'));var BPromise=require(_0x3188('0x7'));var Mustache=require(_0x3188('0x8'));var util=require(_0x3188('0x9'));var path=require(_0x3188('0xa'));var sox=require(_0x3188('0xb'));var csv=require(_0x3188('0xc'));var ejs=require(_0x3188('0xd'));var fs=require('fs');var _=require(_0x3188('0xe'));var squel=require(_0x3188('0xf'));var crypto=require(_0x3188('0x10'));var jsforce=require('jsforce');var deskjs=require(_0x3188('0x11'));var toCsv=require(_0x3188('0xc'));var querystring=require('querystring');var Papa=require(_0x3188('0x12'));var Redis=require('ioredis');var authService=require(_0x3188('0x13'));var qs=require(_0x3188('0x14'));var as=require(_0x3188('0x15'));var hardwareService=require(_0x3188('0x16'));var logger=require('../../config/logger')(_0x3188('0x17'));var utils=require(_0x3188('0x18'));var config=require('../../config/environment');var db=require('../../mysqldb')['db'];config[_0x3188('0x19')]=_[_0x3188('0x1a')](config[_0x3188('0x19')],{'host':_0x3188('0x1b'),'port':0x18eb});var socket=require(_0x3188('0x1c'))(new Redis(config[_0x3188('0x19')]));require('./chatInteraction.socket')[_0x3188('0x1d')](socket);var jayson=require('jayson/promise');var client=jayson['client'][_0x3188('0x1e')]({'port':0x232b});var client9004=jayson['client']['http']({'port':0x232c});function checkPasswordPattern(_0x32c239,_0x1beead,_0xa2269){if(_0xa2269){var _0x195d8e=new RegExp(/(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[?!@#\$%\^&\*~\-_=+[{\]\}])(?=.{8,})/);if(_0x195d8e[_0x3188('0x1f')](_0x1beead)){return _0x32c239;}else{throw new db[(_0x3188('0x20'))]['ValidationError'](_0x3188('0x21'));}}else{return _0x32c239;}}function respondWithRpcPromise(_0x1c3598,_0x3f5b35,_0x37e646,_0x18a71a){return new BPromise(function(_0x4f27b0,_0xac7f48){var _0x4602c6=_0x18a71a||client;return _0x4602c6['request'](_0x1c3598,_0x37e646)[_0x3188('0x22')](function(_0x36050a){logger['info']('ChatInteraction,\x20%s,\x20%s',_0x3f5b35,'request\x20sent');logger[_0x3188('0x23')](_0x3188('0x24'),_0x3f5b35,_0x3188('0x25'),JSON['stringify'](_0x36050a));if(_0x36050a['error']){if(_0x36050a[_0x3188('0x26')][_0x3188('0x27')]===0x1f4){logger[_0x3188('0x26')](_0x3188('0x28'),_0x3f5b35,_0x36050a[_0x3188('0x26')]['message']);return _0xac7f48(_0x36050a[_0x3188('0x26')][_0x3188('0x29')]);}logger['error'](_0x3188('0x28'),_0x3f5b35,_0x36050a['error']['message']);return _0x4f27b0(_0x36050a[_0x3188('0x26')][_0x3188('0x29')]);}else{logger[_0x3188('0x2a')](_0x3188('0x28'),_0x3f5b35,_0x3188('0x25'));_0x4f27b0(_0x36050a[_0x3188('0x2b')][_0x3188('0x29')]);}})[_0x3188('0x2c')](function(_0x4b4675){logger[_0x3188('0x26')](_0x3188('0x28'),_0x3f5b35,_0x4b4675);_0xac7f48(_0x4b4675);});});}function respondWithStatusCode(_0x52bb13,_0xd3ee40){_0xd3ee40=_0xd3ee40||0xcc;return function(_0x14299b){if(_0x14299b){return _0x52bb13[_0x3188('0x2d')](_0xd3ee40);}return _0x52bb13[_0x3188('0x2e')](_0xd3ee40)[_0x3188('0x2f')]();};}function respondWithResult(_0x1f1c6f,_0x8f810f){_0x8f810f=_0x8f810f||0xc8;return function(_0x472926){if(_0x472926){return _0x1f1c6f['status'](_0x8f810f)[_0x3188('0x30')](_0x472926);}};}function respondWithFilteredResult(_0x5d97d0,_0xaead48){return function(_0x5623f1){if(_0x5623f1){var _0x3f82ce=_0x5623f1[_0x3188('0x31')],_0x80f9a8=_0xaead48[_0x3188('0x32')],_0x3be4f7=_0xaead48[_0x3188('0x32')]+_0xaead48[_0x3188('0x33')],_0xacdad7;if(_0x3be4f7>=_0x3f82ce){_0x3be4f7=_0x3f82ce;_0xacdad7=0xc8;}else{_0xacdad7=0xce;}_0x5d97d0[_0x3188('0x2e')](_0xacdad7);return _0x5d97d0[_0x3188('0x34')](_0x3188('0x35'),_0x80f9a8+'-'+_0x3be4f7+'/'+_0x3f82ce)[_0x3188('0x30')](_0x5623f1);}return null;};}function patchUpdates(_0x2c1d68){return function(_0x461c3d){try{jsonpatch[_0x3188('0x36')](_0x461c3d,_0x2c1d68,!![]);}catch(_0x41c4cd){return BPromise[_0x3188('0x37')](_0x41c4cd);}return _0x461c3d[_0x3188('0x38')]();};}function saveUpdates(_0x5866bd,_0x47374b){return function(_0x4c9182){if(_0x4c9182){return _0x4c9182[_0x3188('0x39')](_0x5866bd)[_0x3188('0x22')](function(_0x577b5a){return _0x577b5a;});}return null;};}function removeEntity(_0x7848a6,_0x286a8b){return function(_0x1d5695){if(_0x1d5695){return _0x1d5695[_0x3188('0x3a')]()[_0x3188('0x22')](function(){_0x7848a6[_0x3188('0x2e')](0xcc)[_0x3188('0x2f')]();});}};}function handleEntityNotFound(_0x51b7a9,_0x4e4710){return function(_0xa876c8){if(!_0xa876c8){_0x51b7a9[_0x3188('0x2d')](0x194);}return _0xa876c8;};}function handleError(_0x3d298b,_0x1aa732){_0x1aa732=_0x1aa732||0x1f4;return function(_0x4a64a4){logger[_0x3188('0x26')](_0x4a64a4[_0x3188('0x3b')]);if(_0x4a64a4[_0x3188('0x3c')]){delete _0x4a64a4[_0x3188('0x3c')];}_0x3d298b['status'](_0x1aa732)[_0x3188('0x3d')](_0x4a64a4);};}function getInteractionUsers(_0x4a290f,_0x130e73){return new BPromise(function(_0x57895f,_0x2bd31e){try{if(_0x130e73[_0x4a290f['id']]){_0x4a290f[_0x3188('0x3e')]=_[_0x3188('0x3f')](_0x130e73[_0x4a290f['id']],function(_0x2990c4){return{'id':_0x2990c4['id'],'fullname':_0x2990c4[_0x3188('0x40')]};});}}catch(_0x2305bf){_0x2bd31e(_0x2305bf);}_0x57895f(_0x4a290f);});}function getInteractionTags(_0x4666b2,_0xa8443){return new BPromise(function(_0x6fa7e4,_0x138d90){try{if(_0x4666b2['TagIds']){_0x4666b2[_0x3188('0x41')]=[];_0x4666b2[_0x3188('0x42')][_0x3188('0x43')](',')[_0x3188('0x44')](function(_0x7b2f4b){_0x4666b2[_0x3188('0x41')]['push'](_0xa8443[_0x7b2f4b]);});}delete _0x4666b2[_0x3188('0x42')];}catch(_0x4aca31){_0x138d90(_0x4aca31);}_0x6fa7e4(_0x4666b2);});}function updateChatInteraction(_0x410935,_0x459a58,_0xb9a025){return new BPromise(function(_0x8f3756,_0x42c47b){return getInteractionUsers(_0x410935,_0xb9a025)['then'](function(_0x484eeb){return getInteractionTags(_0x484eeb,_0x459a58);})['then'](function(_0x4e6db6){_0x8f3756(_0x4e6db6);})['catch'](function(_0x763943){_0x42c47b(_0x763943);});});}exports[_0x3188('0x45')]=function(_0x3e5f90,_0x1b40b1){var _0x9b70b1={},_0x599345={},_0x2147a9={'count':0x0,'rows':[]};var _0x4e2b9c=_[_0x3188('0x3f')](db[_0x3188('0x46')][_0x3188('0x47')],function(_0x3e149e){return{'name':_0x3e149e['fieldName'],'type':_0x3e149e[_0x3188('0x48')][_0x3188('0x49')]};});_0x599345[_0x3188('0x4a')]=_[_0x3188('0x3f')](_0x4e2b9c,_0x3188('0x3c'));_0x599345['query']=_['keys'](_0x3e5f90[_0x3188('0x4b')]);_0x599345[_0x3188('0x4c')]=_['intersection'](_0x599345[_0x3188('0x4a')],_0x599345[_0x3188('0x4b')]);_0x9b70b1['attributes']=_[_0x3188('0x4d')](_0x599345[_0x3188('0x4a')],qs[_0x3188('0x4e')](_0x3e5f90[_0x3188('0x4b')][_0x3188('0x4e')]));_0x9b70b1['attributes']=_0x9b70b1[_0x3188('0x4f')]['length']?_0x9b70b1[_0x3188('0x4f')]:_0x599345[_0x3188('0x4a')];if(!_0x3e5f90[_0x3188('0x4b')][_0x3188('0x50')](_0x3188('0x51'))){_0x9b70b1[_0x3188('0x33')]=qs[_0x3188('0x33')](_0x3e5f90[_0x3188('0x4b')][_0x3188('0x33')]);_0x9b70b1[_0x3188('0x32')]=qs[_0x3188('0x32')](_0x3e5f90['query']['offset']);}_0x9b70b1[_0x3188('0x52')]=qs['sort'](_0x3e5f90[_0x3188('0x4b')][_0x3188('0x53')]);_0x9b70b1['where']=qs[_0x3188('0x4c')](_[_0x3188('0x54')](_0x3e5f90[_0x3188('0x4b')],_0x599345[_0x3188('0x4c')]));var _0xdaf748=[];var _0x2ceb79=squel[_0x3188('0x55')]()[_0x3188('0x56')]('id')['field'](_0x3188('0x3c'))[_0x3188('0x56')]('color')[_0x3188('0x57')]('tools_tags');var _0x152f3b=squel[_0x3188('0x55')]()[_0x3188('0x56')]('u.id')['field']('u.fullname')['field']('ui.ChatInteractionId')[_0x3188('0x57')](_0x3188('0x58'),'ui')['left_join'](_0x3188('0x59'),'u',_0x3188('0x5a'));var _0x47dd5b=squel['select']()['from']('chat_interactions','i')['left_join'](_0x3188('0x5b'),'c',_0x3188('0x5c'))[_0x3188('0x5d')](_0x3188('0x59'),'o',_0x3188('0x5e'))['left_join'](_0x3188('0x5f'),'a',_0x3188('0x60'))['left_join']('chat_messages','me','me.ChatInteractionId\x20=\x20i.id')[_0x3188('0x5d')](_0x3188('0x61'),'it',_0x3188('0x62'))['left_join'](_0x3188('0x63'),'t',_0x3188('0x64'));var _0x137c7b=squel[_0x3188('0x65')]();var _0x2fe303=[];var _0x4cd62c=squel[_0x3188('0x65')]();var _0x3aeac4;if(_0x3e5f90[_0x3188('0x4b')]['search']){_0x3aeac4=as[_0x3188('0x66')](_0x3e5f90[_0x3188('0x4b')][_0x3188('0x67')]);var _0x2a13bc=_0x3aeac4['sqlOperator'];for(var _0x33d751=0x0;_0x33d751<_0x3aeac4[_0x3188('0x68')][_0x3188('0x69')];_0x33d751++){var _0x19a36b=_0x3aeac4[_0x3188('0x68')][_0x33d751];var _0x1b8c54='i';var _0x36baff=_['find'](_0x4e2b9c,[_0x3188('0x3c'),_0x19a36b[_0x3188('0x56')]]);if(!_0x36baff){switch(_0x19a36b[_0x3188('0x56')]){case _0x3188('0x6a'):if(_0x19a36b[_0x3188('0x6b')]==0x1){_0x47dd5b[_0x3188('0x6c')]('`'+_0x19a36b[_0x3188('0x56')]+'`\x20=\x200');}else{_0x47dd5b[_0x3188('0x6c')]('`'+_0x19a36b[_0x3188('0x56')]+_0x3188('0x6d'));}break;case _0x3188('0x6e'):if(_0x19a36b[_0x3188('0x6f')]==='$substring'){if(_0x19a36b[_0x3188('0x6b')][_0x3188('0x43')]('\x20')['length']>0x1){_0x137c7b[_0x2a13bc]('MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)',qs[_0x3188('0x70')](_0x19a36b[_0x3188('0x6b')]),null);}else{var _0x1ef665='%'+_0x19a36b[_0x3188('0x6b')]+'%';_0x137c7b[_0x2a13bc](_0x3188('0x71'),_0x1ef665,_0x1ef665,_0x1ef665);}}else{_0x36baff=_[_0x3188('0x72')](_0x4e2b9c,[_0x3188('0x3c'),_0x3188('0x73')]);_0x19a36b[_0x3188('0x56')]=_0x3188('0x73');_0x156c9a=as['buildExpression'](_0x1b8c54,_0x36baff[_0x3188('0x48')],_0x19a36b);_0x137c7b[_0x2a13bc](_0x156c9a['text'],_0x156c9a['value'][_0x3188('0x74')],_0x156c9a['value'][_0x3188('0x2f')]);}break;case _0x3188('0x75'):var _0x7aa116=_0x19a36b[_0x3188('0x6b')][_0x3188('0x43')](',')[_0x3188('0x3f')](function(_0x5485dd){return Number(_0x5485dd);});_0x7aa116[_0x3188('0x44')](function(_0x325eab){_0x4cd62c['or']('CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','%,'+_0x325eab+',%');});_0x2fe303=_[_0x3188('0x76')](_0x2fe303,_0x7aa116);break;case _0x3188('0x77'):if(_0x19a36b[_0x3188('0x6f')]===_0x3188('0x78')){_0x137c7b[_0x2a13bc](_0x3188('0x79'),'%'+_0x19a36b[_0x3188('0x6b')]+'%',null);}else{_0x36baff=_['find'](_0x4e2b9c,[_0x3188('0x3c'),_0x3188('0x7a')]);_0x19a36b['field']=_0x3188('0x7a');_0x156c9a=as[_0x3188('0x7b')](_0x1b8c54,_0x36baff[_0x3188('0x48')],_0x19a36b);_0x137c7b[_0x2a13bc](_0x156c9a['text'],_0x156c9a[_0x3188('0x6b')][_0x3188('0x74')],_0x156c9a[_0x3188('0x6b')][_0x3188('0x2f')]);}break;case _0x3188('0x7c'):_0x156c9a=as[_0x3188('0x7b')]('me',null,_0x19a36b);_0x137c7b[_0x2a13bc](_0x156c9a[_0x3188('0x7d')],_0x156c9a['value']['start'],_0x156c9a['value']['end']);break;}}else{var _0x156c9a=as[_0x3188('0x7b')](_0x1b8c54,_0x36baff[_0x3188('0x48')],_0x19a36b);_0x137c7b[_0x2a13bc](_0x156c9a[_0x3188('0x7d')],_0x156c9a[_0x3188('0x6b')]['start'],_0x156c9a[_0x3188('0x6b')]['end']);}}}else{var _0x4553cc=_(_0x3e5f90[_0x3188('0x4b')])['keys']()[_0x3188('0x3f')](function(_0x5470b1){return _[_0x3188('0x7e')](_0x4e2b9c,[_0x3188('0x3c'),_0x5470b1])?_0x5470b1:undefined;})['compact']()[_0x3188('0x6b')]();if(!_['isEmpty'](_0x4553cc)){_0x4553cc[_0x3188('0x44')](function(_0x1a7df0){if(_0x1a7df0===_0x3188('0x7f')){_0x47dd5b[_0x3188('0x80')](_0x3188('0x81'),[]['concat'](_0x3e5f90[_0x3188('0x4b')][_0x1a7df0]));}else if(_0x1a7df0===_0x3188('0x82')){var _0x562449=JSON[_0x3188('0x83')](_0x3e5f90[_0x3188('0x4b')][_0x1a7df0])['$gte'];var _0x47da9c=JSON[_0x3188('0x83')](_0x3e5f90[_0x3188('0x4b')][_0x1a7df0])[_0x3188('0x84')];_0x47dd5b[_0x3188('0x80')](_0x3188('0x85'),_0x562449,_0x47da9c);}else{if(_0x3e5f90[_0x3188('0x4b')][_0x1a7df0]==='null'){_0x47dd5b[_0x3188('0x80')]('i.'+_0x1a7df0+_0x3188('0x86'));}else{_0x47dd5b[_0x3188('0x80')]('i.'+_0x1a7df0+'\x20=\x20?',_0x3e5f90[_0x3188('0x4b')][_0x1a7df0]);}}});}if(_0x3e5f90[_0x3188('0x4b')][_0x3188('0x87')]){if(_0x3e5f90[_0x3188('0x4b')][_0x3188('0x87')]==0x1){_0x47dd5b[_0x3188('0x6c')]('`unreadMessages`\x20=\x200');}else{_0x47dd5b['having']('`unreadMessages`\x20>\x200');}}if(_0x3e5f90[_0x3188('0x4b')][_0x3188('0x88')]){_0x2fe303=_['isArray'](_0x3e5f90[_0x3188('0x4b')][_0x3188('0x88')])?_0x3e5f90[_0x3188('0x4b')][_0x3188('0x88')]:new Array(_0x3e5f90[_0x3188('0x4b')][_0x3188('0x88')]);_0x2fe303['forEach'](function(_0x1cd313){_0x4cd62c['or'](_0x3188('0x89'),'%,'+_0x1cd313+',%');});}if(_0x3e5f90[_0x3188('0x4b')][_0x3188('0x8a')]){var _0xc02fb5=_0x3e5f90[_0x3188('0x4b')][_0x3188('0x8a')][_0x3188('0x8b')]('\x5c','\x5c\x5c')[_0x3188('0x8b')]('\x27\x27',_0x3188('0x8c'));if(qs[_0x3188('0x8d')](_0xc02fb5)){_0x137c7b['or'](_0x3188('0x8e'),_0xc02fb5+'%');}else{_0x137c7b['or'](_0x3188('0x8f'),qs[_0x3188('0x70')](_0xc02fb5))['or'](_0x3188('0x90'),_0xc02fb5+'%');}}}_0x47dd5b[_0x3188('0x80')](_0x137c7b);_0x47dd5b[_0x3188('0x91')](_0x3188('0x92'));var _0x4d4578={'type':db[_0x3188('0x20')][_0x3188('0x93')][_0x3188('0x94')],'raw':!![]};var _0x24246d=_0x47dd5b[_0x3188('0x95')]();_0x24246d['field'](_0x3188('0x92'));_0x24246d[_0x3188('0x56')]('SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)',_0x3188('0x6a'));if(_0x9b70b1[_0x3188('0x52')]){_0x9b70b1[_0x3188('0x52')]['forEach'](function(_0x3470ad){_0x47dd5b['order']('i.'+_0x3470ad[0x0],_0x3470ad[0x1]===_0x3188('0x96')?![]:!![]);});}if(!_[_0x3188('0x97')](_0x2fe303)){_0x47dd5b[_0x3188('0x6c')](_0x4cd62c);_0x24246d[_0x3188('0x80')](_0x3188('0x98'),_0x2fe303);}BPromise[_0x3188('0x99')]()['then'](function(){if(!_0x3aeac4){if(_0x3e5f90['query'][_0x3188('0x7f')]||_0x3e5f90[_0x3188('0x4b')][_0x3188('0x9a')])return;_0x24246d[_0x3188('0x80')](_0x3188('0x9b'));_0x47dd5b[_0x3188('0x80')]('i.ChatWebsiteId\x20IS\x20NOT\x20NULL');return;}return _0x3e5f90[_0x3188('0x9c')][_0x3188('0x9d')]({'attributes':['id'],'raw':!![]})[_0x3188('0x22')](function(_0x3cc024){if(_['isEmpty'](_0x3cc024)){_0x24246d[_0x3188('0x80')]('i.ChatWebsiteId\x20IS\x20NULL');_0x47dd5b['where']('i.ChatWebsiteId\x20IS\x20NULL');}else{_0x24246d['where'](_0x3188('0x81'),_[_0x3188('0x3f')](_0x3cc024,'id'));_0x47dd5b['where'](_0x3188('0x81'),_[_0x3188('0x3f')](_0x3cc024,'id'));}});})['then'](function(){db[_0x3188('0x9e')]['query'](_0x24246d[_0x3188('0x9f')](),_0x4d4578)[_0x3188('0x22')](function(_0x5d98a3){_0x2147a9[_0x3188('0x31')]=_0x5d98a3[_0x3188('0x69')];if(_0x2147a9[_0x3188('0x31')]===0x0)return[];return db[_0x3188('0x9e')][_0x3188('0x4b')](_0x2ceb79[_0x3188('0x9f')](),_0x4d4578)[_0x3188('0x22')](function(_0x915b26){_0xdaf748=_[_0x3188('0xa0')](_0x915b26,'id');_0x4d4578=_[_0x3188('0xa1')](_0x4d4578,{'model':db['ChatInteraction'],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0x3e5f90[_0x3188('0x4b')][_0x3188('0x4e')]){_0x9b70b1[_0x3188('0x4f')]['forEach'](function(_0x96eda5){_0x47dd5b['field']('i.'+_0x96eda5);});}else{_0x47dd5b[_0x3188('0x56')]('SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','unreadMessages');_0x47dd5b['field']('a.key',_0x3188('0xa2'));_0x47dd5b[_0x3188('0x56')](_0x3188('0xa3'),_0x3188('0xa4'));_0x47dd5b[_0x3188('0x56')]('i.*');_0x47dd5b[_0x3188('0x56')]('c.firstName','Contact.firstName');_0x47dd5b[_0x3188('0x56')](_0x3188('0xa5'),'Contact.lastName');_0x47dd5b[_0x3188('0x56')](_0x3188('0xa6'),_0x3188('0xa7'));_0x47dd5b[_0x3188('0x56')](_0x3188('0xa8'),_0x3188('0xa9'));_0x47dd5b[_0x3188('0x56')]('c.mobile',_0x3188('0xaa'));_0x47dd5b[_0x3188('0x56')](_0x3188('0xab'),_0x3188('0xac'));_0x47dd5b[_0x3188('0x56')](_0x3188('0xad'),_0x3188('0xae'));_0x47dd5b[_0x3188('0x56')](_0x3188('0xaf'),'Owner.internal');_0x47dd5b[_0x3188('0x56')]('GROUP_CONCAT(DISTINCT\x20t.id)',_0x3188('0x42'));}_0x47dd5b[_0x3188('0x33')](_0x9b70b1[_0x3188('0x33')]);_0x47dd5b[_0x3188('0x32')](_0x9b70b1[_0x3188('0x32')]);return db[_0x3188('0x9e')][_0x3188('0x4b')](_0x47dd5b[_0x3188('0x9f')](),_0x4d4578);})[_0x3188('0x22')](function(_0x378a11){_0x152f3b[_0x3188('0x80')](_0x3188('0xb0'),_['map'](_0x378a11,'id'));return db[_0x3188('0x9e')][_0x3188('0x4b')](_0x152f3b[_0x3188('0x9f')](),_0x4d4578)[_0x3188('0x22')](function(_0x2f32ba){var _0x40e157=_[_0x3188('0xb1')](_0x2f32ba,'ChatInteractionId');var _0x97f747=[];_0x378a11[_0x3188('0x44')](function(_0x9d24f7){_0x97f747[_0x3188('0xb2')](updateChatInteraction(_0x9d24f7,_0xdaf748,_0x40e157));});return BPromise[_0x3188('0xb3')](_0x97f747);});});})['then'](function(_0x4d5668){_0x2147a9[_0x3188('0xb4')]=_0x4d5668;return _0x2147a9;})[_0x3188('0x22')](respondWithFilteredResult(_0x1b40b1,_0x9b70b1));})[_0x3188('0x2c')](handleError(_0x1b40b1,null));};exports[_0x3188('0xb5')]=function(_0x26ab72,_0x4816e4){var _0x2f1fd0={'raw':![],'where':{'id':_0x26ab72[_0x3188('0xb6')]['id']}},_0x1d3d26={};_0x1d3d26['model']=_[_0x3188('0xb7')](db[_0x3188('0x46')][_0x3188('0x47')]);_0x1d3d26[_0x3188('0x4b')]=_[_0x3188('0xb7')](_0x26ab72[_0x3188('0x4b')]);_0x1d3d26[_0x3188('0x4c')]=_['intersection'](_0x1d3d26[_0x3188('0x4a')],_0x1d3d26[_0x3188('0x4b')]);_0x2f1fd0[_0x3188('0x4f')]=_['intersection'](_0x1d3d26['model'],qs[_0x3188('0x4e')](_0x26ab72[_0x3188('0x4b')]['fields']));_0x2f1fd0['attributes']=_0x2f1fd0['attributes']['length']?_0x2f1fd0['attributes']:_0x1d3d26[_0x3188('0x4a')];if(_0x26ab72[_0x3188('0x4b')]['includeAll']){_0x2f1fd0['include']=[{'all':!![]}];}_0x2f1fd0=_[_0x3188('0xa1')]({},_0x2f1fd0,_0x26ab72['options']);return db[_0x3188('0x46')][_0x3188('0x72')](_0x2f1fd0)['then'](handleEntityNotFound(_0x4816e4,null))[_0x3188('0x22')](respondWithResult(_0x4816e4,null))[_0x3188('0x2c')](handleError(_0x4816e4,null));};exports[_0x3188('0xb8')]=function(_0x236743,_0x38d35c){return db['ChatInteraction']['create'](_0x236743['body'],{})[_0x3188('0x22')](respondWithResult(_0x38d35c,0xc9))[_0x3188('0x2c')](handleError(_0x38d35c,null));};exports[_0x3188('0x39')]=function(_0x4a0965,_0xd42b45){if(_0x4a0965[_0x3188('0x7c')]['id']){delete _0x4a0965['body']['id'];}return db[_0x3188('0x46')]['find']({'where':{'id':_0x4a0965[_0x3188('0xb6')]['id']}})['then'](handleEntityNotFound(_0xd42b45,null))[_0x3188('0x22')](saveUpdates(_0x4a0965[_0x3188('0x7c')],null))[_0x3188('0x22')](respondWithResult(_0xd42b45,null))['catch'](handleError(_0xd42b45,null));};exports['destroy']=function(_0x42c678,_0x5f453e){return db[_0x3188('0x46')][_0x3188('0x72')]({'where':{'id':_0x42c678[_0x3188('0xb6')]['id']}})[_0x3188('0x22')](handleEntityNotFound(_0x5f453e,null))[_0x3188('0x22')](removeEntity(_0x5f453e,null))[_0x3188('0x2c')](handleError(_0x5f453e,null));};exports['describe']=function(_0xe27a48,_0x398b06){return db['ChatInteraction'][_0x3188('0xb9')]()[_0x3188('0x22')](respondWithResult(_0x398b06,null))[_0x3188('0x2c')](handleError(_0x398b06,null));};exports['customUpdate']=function(_0x2be193,_0x38deea){if(_0x2be193[_0x3188('0x7c')]['id']){delete _0x2be193[_0x3188('0x7c')]['id'];}return db[_0x3188('0x46')]['find']({'where':{'id':_0x2be193[_0x3188('0xb6')]['id']}})[_0x3188('0x22')](handleEntityNotFound(_0x38deea,null))['then'](saveUpdates(_0x2be193[_0x3188('0x7c')],null))[_0x3188('0x22')](respondWithResult(_0x38deea,null))['catch'](handleError(_0x38deea,null));};exports[_0x3188('0xba')]=function(_0x43b185,_0x43815d,_0x4d70fa){if(_0x43b185[_0x3188('0x7c')]['id']){delete _0x43b185[_0x3188('0x7c')]['id'];}return db[_0x3188('0x46')]['find']({'where':{'id':_0x43b185[_0x3188('0xb6')]['id']}})['then'](function(_0xdf7c6b){if(!_0xdf7c6b){logger[_0x3188('0x26')](_0x3188('0xbb'),_0x3188('0xba'),0x194,_0x3188('0xbc'));_0x43815d[_0x3188('0x2d')](0x194);}else{if(_0xdf7c6b[_0x3188('0x7a')]){throw new db[(_0x3188('0x20'))][(_0x3188('0xbd'))](_0x3188('0xbe'));}}return _0xdf7c6b;})[_0x3188('0x22')](function(_0x1deff4){if(_0x1deff4){return _0x1deff4[_0x3188('0x39')]({'closed':_0x43b185[_0x3188('0x7c')]['closed'],'disposition':_0x43b185[_0x3188('0x7c')][_0x3188('0xbf')]})['then'](function(_0x1c617b){return _0x1c617b;});}})[_0x3188('0x22')](function(_0x521e90){return respondWithRpcPromise('AbandonInteraction',_0x3188('0xba'),_0x43b185[_0x3188('0x7c')],client9004);})[_0x3188('0x22')](respondWithResult(_0x43815d,null))[_0x3188('0x2c')](handleError(_0x43815d,null));};exports['attachmentUpload']=function(_0x3b6a63,_0x746153,_0x485669){_0x3b6a63[_0x3188('0x7c')][_0x3188('0x3c')]=_0x3b6a63['file'][_0x3188('0xc0')];_0x3b6a63[_0x3188('0x7c')]['basename']=_0x3b6a63['file']['filename'];_0x3b6a63['body'][_0x3188('0x48')]=_0x3b6a63[_0x3188('0xc1')][_0x3188('0xc2')];return db[_0x3188('0xc3')][_0x3188('0xb8')](_0x3b6a63[_0x3188('0x7c')])['then'](respondWithResult(_0x746153,0xc9))[_0x3188('0x2c')](handleError(_0x746153,null));};exports['attachmentDownload']=function(_0x3706bb,_0x3ef3f8,_0x14d3f1){return db[_0x3188('0x46')][_0x3188('0xc4')]({'where':{'id':_0x3706bb[_0x3188('0xb6')]['id']},'raw':!![]})[_0x3188('0x22')](handleEntityNotFound(_0x3ef3f8,null))[_0x3188('0x22')](function(_0x5a7d17){if(_0x5a7d17){if(_0x5a7d17[_0x3188('0xc5')]){return _0x3ef3f8[_0x3188('0x2e')](0x193)[_0x3188('0x30')]({'status':0x193,'message':'Unauthorized'});}return db[_0x3188('0xc3')]['findOne']({'where':{'id':_0x3706bb['query'][_0x3188('0xc6')]},'raw':!![]})['then'](handleEntityNotFound(_0x3ef3f8,null));}})['then'](function(_0x8a3be9){if(_0x8a3be9){return _0x3ef3f8[_0x3188('0xc7')](path[_0x3188('0xc8')](config[_0x3188('0xc9')],_0x3188('0xca'),_0x8a3be9[_0x3188('0xcb')]));}})[_0x3188('0x2c')](handleError(_0x3ef3f8,null));};exports[_0x3188('0xcc')]=function(_0x5c95df,_0x55d345){var _0x58379b=null;var _0x3de1d6=null;var _0x1039da=null;var _0x1d96fd=null;if(_0x5c95df[_0x3188('0x7c')]['id']){delete _0x5c95df[_0x3188('0x7c')]['id'];}if(_0x5c95df[_0x3188('0x7c')][_0x3188('0xcd')]){_0x1d96fd=path['join'](config[_0x3188('0xc9')],_0x3188('0xce'),util[_0x3188('0xcf')](_0x3188('0xd0'),Date[_0x3188('0xd1')]()));_0x5c95df[_0x3188('0x7c')]['pathTranscript']=_0x1d96fd;}return db[_0x3188('0x46')][_0x3188('0x72')]({'where':{'id':_0x5c95df[_0x3188('0xb6')]['id']},'include':[{'model':db['ChatMessage'],'as':_0x3188('0xd2'),'include':[{'model':db[_0x3188('0x77')],'as':'User'}]}]})['then'](handleEntityNotFound(_0x55d345,null))[_0x3188('0x22')](saveUpdates(_0x5c95df[_0x3188('0x7c')],null))[_0x3188('0x22')](function(_0x292d60){if(_0x292d60){_0x58379b=_0x292d60;return db[_0x3188('0xd3')][_0x3188('0x72')]({'where':{'id':_0x58379b[_0x3188('0x7f')]}});}})[_0x3188('0x22')](function(_0xf33a00){if(_0xf33a00){_0x1039da=_0xf33a00;return db[_0x3188('0xd4')][_0x3188('0x72')]({'where':{'id':_0x58379b[_0x3188('0x73')]}});}})[_0x3188('0x22')](function(_0x5706c4){if(_0x5706c4){_0x3de1d6=_0x5706c4;if(_0x1d96fd){var _0x5eba38=null;for(var _0x365a3b=0x1;_0x365a3b<_0x58379b[_0x3188('0xd2')][_0x3188('0x69')];++_0x365a3b){_0x5eba38=_0x58379b[_0x3188('0xd2')][_0x365a3b];var _0x28f40e=_0x5eba38[_0x3188('0x7a')]?util['format'](_0x3188('0xd5'),_0x1039da['agentAlias'],_0x5eba38['UserId']):_0x3188('0xd6');var _0x40dd00=_0x5c95df[_0x3188('0x7c')]['customer']||util[_0x3188('0xcf')](_0x3188('0xd5'),_0x3188('0xd7'),_0x5eba38[_0x3188('0x73')]);switch(_0x1039da[_0x3188('0xd8')]){case'website_alias':_0x28f40e=_0x5eba38[_0x3188('0x7a')]?util[_0x3188('0xcf')](_0x3188('0xd5'),_0x1039da[_0x3188('0xd9')],_0x5eba38['UserId']):_0x3188('0xd6');break;case'agent_alias':_0x28f40e=_0x5eba38[_0x3188('0x7a')]?_0x5eba38[_0x3188('0x77')][_0x3188('0xda')]||_0x5eba38[_0x3188('0x77')]['fullname']:_0x3188('0xd6');break;case _0x3188('0xdb'):_0x28f40e=_0x5eba38[_0x3188('0x7a')]?_0x5eba38['User'][_0x3188('0x40')]:_0x3188('0xd6');break;default:_0x28f40e=_0x5eba38['UserId']?util[_0x3188('0xcf')]('%s%d',_0x1039da[_0x3188('0xd9')],_0x5eba38[_0x3188('0x7a')]):'System';}var _0xacce00=util[_0x3188('0xcf')](_0x3188('0xdc'),moment(_0x5eba38[_0x3188('0x82')])['format'](_0x3188('0xdd')),_0x5eba38['direction']==='in'?_0x40dd00:_0x28f40e,_0x5eba38['body']);if(!_0x5eba38[_0x3188('0xde')]){fs[_0x3188('0xdf')](_0x1d96fd,_0xacce00);}}return db[_0x3188('0xe0')][_0x3188('0xc4')]({'where':{'service':!![]},'include':[{'model':db[_0x3188('0xe1')],'as':'Smtp','raw':!![]}]});}}})[_0x3188('0x22')](function(_0x2dca13){if(_0x2dca13&&_0x2dca13[_0x3188('0xe2')]&&_0x5c95df[_0x3188('0x7c')]){var _0x1dc108={'tls':{'rejectUnauthorized':![]}};if(_0x2dca13[_0x3188('0xe2')][_0x3188('0xe3')]){_0x1dc108[_0x3188('0xe3')]=_0x2dca13[_0x3188('0xe2')][_0x3188('0xe3')];}else{_0x1dc108[_0x3188('0xe4')]=_0x2dca13[_0x3188('0xe2')][_0x3188('0xe4')];_0x1dc108[_0x3188('0xe5')]=_0x2dca13[_0x3188('0xe2')][_0x3188('0xe5')];_0x1dc108[_0x3188('0xe6')]=_0x2dca13[_0x3188('0xe2')][_0x3188('0xe6')];}if(_0x2dca13[_0x3188('0xe2')][_0x3188('0xe7')]){_0x1dc108[_0x3188('0xe8')]={'user':_0x2dca13[_0x3188('0xe2')][_0x3188('0x9c')],'pass':_0x2dca13['Smtp'][_0x3188('0xe9')]};}return respondWithRpcPromise(_0x3188('0xea'),_0x3188('0xeb'),{'account':_0x1dc108,'message':{'from':util['format'](_0x3188('0xec'),_0x2dca13[_0x3188('0x3c')],_0x2dca13[_0x3188('0xed')]||_0x2dca13['Smtp'][_0x3188('0x9c')]),'to':_0x5c95df[_0x3188('0x7c')][_0x3188('0xcd')],'subject':_0x3188('0xee'),'text':util[_0x3188('0xcf')]('Hi\x20%s,\x20attached\x20you\x20can\x20find\x20your\x20transcript\x20file.\x20\x0a\x0aRegards.\x20\x0a\x0a',_0x5c95df[_0x3188('0x7c')][_0x3188('0xcd')]),'attachments':[{'path':_0x1d96fd}]}})[_0x3188('0x22')](function(){return _0x58379b;})[_0x3188('0x2c')](function(_0x26d30d){console[_0x3188('0x26')](_0x26d30d);});}else{return _0x58379b;}})['then'](respondWithStatusCode(_0x55d345,0xc8))['catch'](handleError(_0x55d345,null));};exports[_0x3188('0xef')]=function(_0x6e1592,_0x2ed3e9,_0x3c3541){return db[_0x3188('0xf0')][_0x3188('0x72')]({'where':{'id':_0x6e1592[_0x3188('0xb6')]['id']}})['then'](handleEntityNotFound(_0x2ed3e9,null))[_0x3188('0x22')](function(_0x523ce1){if(_0x523ce1){return _0x523ce1['addMessage'](_0x6e1592[_0x3188('0x7c')][_0x3188('0xf1')],_['omit'](_0x6e1592[_0x3188('0x7c')],[_0x3188('0xf1'),'id'])||{});}})[_0x3188('0x22')](respondWithResult(_0x2ed3e9,null))[_0x3188('0x2c')](handleError(_0x2ed3e9,null));};exports[_0x3188('0xf2')]=function(_0x589878,_0x26bf05,_0x5e94c3){var _0x130aff={'raw':![],'where':{}};var _0x41a63f={};var _0x331b26={'count':0x0,'rows':[]};return db[_0x3188('0x46')][_0x3188('0xc4')]({'where':{'id':_0x589878[_0x3188('0xb6')]['id']}})[_0x3188('0x22')](handleEntityNotFound(_0x26bf05,null))[_0x3188('0x22')](function(_0x140a37){if(_0x140a37){_0x41a63f['model']=_[_0x3188('0xb7')](db[_0x3188('0xf0')][_0x3188('0x47')]);_0x41a63f[_0x3188('0x4b')]=_[_0x3188('0xb7')](_0x589878[_0x3188('0x4b')]);_0x41a63f['filters']=_[_0x3188('0x4d')](_0x41a63f[_0x3188('0x4a')],_0x41a63f[_0x3188('0x4b')]);_0x130aff['attributes']=_[_0x3188('0x4d')](_0x41a63f[_0x3188('0x4a')],qs[_0x3188('0x4e')](_0x589878[_0x3188('0x4b')][_0x3188('0x4e')]));_0x130aff[_0x3188('0x4f')]=_0x130aff[_0x3188('0x4f')]['length']?_0x130aff[_0x3188('0x4f')]:_0x41a63f[_0x3188('0x4a')];if(!_0x589878[_0x3188('0x4b')][_0x3188('0x50')]('nolimit')){_0x130aff['limit']=qs[_0x3188('0x33')](_0x589878[_0x3188('0x4b')][_0x3188('0x33')]);_0x130aff[_0x3188('0x32')]=qs[_0x3188('0x32')](_0x589878['query']['offset']);}_0x130aff['order']=qs['sort'](_0x589878[_0x3188('0x4b')][_0x3188('0x53')]);_0x130aff[_0x3188('0x80')]=qs[_0x3188('0x4c')](_[_0x3188('0x54')](_0x589878[_0x3188('0x4b')],_0x41a63f[_0x3188('0x4c')]));_0x130aff['where'][_0x3188('0xf3')]=_0x140a37['id'];if(_0x589878['query'][_0x3188('0x8a')]){_0x130aff[_0x3188('0x80')]=_[_0x3188('0xa1')](_0x130aff[_0x3188('0x80')],{'$or':_['map'](_0x130aff[_0x3188('0x4f')],function(_0x229ab4){var _0x1a2e57={};_0x1a2e57[_0x229ab4]={'$like':'%'+_0x589878[_0x3188('0x4b')][_0x3188('0x8a')]+'%'};return _0x1a2e57;})});}if(_0x589878[_0x3188('0x4b')][_0x3188('0xf4')]){var _0x378610=_0x589878[_0x3188('0x4b')][_0x3188('0xf4')]['split'](',');var _0x59b33c={};_0x59b33c[_0x378610[0x0]]={'$gte':moment(_0x378610[0x1])[_0x3188('0xcf')](_0x3188('0xf5'))};_0x130aff[_0x3188('0x80')]=_[_0x3188('0xa1')](_0x130aff[_0x3188('0x80')],_0x59b33c);}_0x130aff=_[_0x3188('0xa1')]({},_0x130aff,_0x589878['options']);return db[_0x3188('0xf0')][_0x3188('0x31')]({'where':_0x130aff[_0x3188('0x80')]})[_0x3188('0x22')](function(_0x1045c7){_0x331b26['count']=_0x1045c7;if(_0x589878[_0x3188('0x4b')]['includeAll']){_0x130aff[_0x3188('0xf6')]=[{'all':!![]}];}return db[_0x3188('0xf0')][_0x3188('0xf7')](_0x130aff);})['then'](function(_0x50bb55){_0x331b26['rows']=_0x50bb55;return _0x331b26;});}})[_0x3188('0x22')](respondWithFilteredResult(_0x26bf05,_0x130aff))['catch'](handleError(_0x26bf05,null));};exports[_0x3188('0xf8')]=function(_0x4129a5,_0x50a567,_0x18f6ee){var _0x1b497b={'where':{}},_0xfeb926={},_0x1bf545={'count':0x0,'rows':[]};return db[_0x3188('0x46')][_0x3188('0xc4')]({'where':{'id':_0x4129a5[_0x3188('0xb6')]['id']}})[_0x3188('0x22')](handleEntityNotFound(_0x50a567,null))[_0x3188('0x22')](function(_0x315aad){if(_0x315aad){_0xfeb926[_0x3188('0x4a')]=_[_0x3188('0xb7')](db[_0x3188('0xf0')][_0x3188('0x47')]);_0xfeb926[_0x3188('0x4b')]=_[_0x3188('0xb7')](_0x4129a5[_0x3188('0x4b')]);_0xfeb926[_0x3188('0x4c')]=_[_0x3188('0x4d')](_0xfeb926[_0x3188('0x4a')],_0xfeb926[_0x3188('0x4b')]);_0x1b497b[_0x3188('0x4f')]=_[_0x3188('0x4d')](_0xfeb926[_0x3188('0x4a')],qs[_0x3188('0x4e')](_0x4129a5[_0x3188('0x4b')][_0x3188('0x4e')]));_0x1b497b[_0x3188('0x4f')]=_0x1b497b[_0x3188('0x4f')][_0x3188('0x69')]?_0x1b497b['attributes']:_0xfeb926[_0x3188('0x4a')];if(!_0x4129a5[_0x3188('0x4b')]['hasOwnProperty'](_0x3188('0x51'))){_0x1b497b[_0x3188('0x33')]=qs[_0x3188('0x33')](_0x4129a5[_0x3188('0x4b')][_0x3188('0x33')]);_0x1b497b[_0x3188('0x32')]=qs[_0x3188('0x32')](_0x4129a5['query'][_0x3188('0x32')]);}_0x1b497b[_0x3188('0x52')]=qs[_0x3188('0x53')](_0x4129a5[_0x3188('0x4b')][_0x3188('0x53')]);_0x1b497b[_0x3188('0x80')]=qs[_0x3188('0x4c')](_[_0x3188('0x54')](_0x4129a5[_0x3188('0x4b')],_0xfeb926[_0x3188('0x4c')]));_0x1b497b[_0x3188('0x80')][_0x3188('0xf3')]=_0x315aad['id'];if(_0x4129a5['query']['filter']){_0x1b497b[_0x3188('0x80')]=_['merge'](_0x1b497b[_0x3188('0x80')],{'$or':_['map'](_0x1b497b[_0x3188('0x4f')],function(_0x5c0983){var _0x2ba9c6={};_0x2ba9c6[_0x5c0983]={'$like':'%'+_0x4129a5['query']['filter']+'%'};return _0x2ba9c6;})});}_0x1b497b[_0x3188('0x80')][_0x3188('0xde')]=![];if(_0x4129a5[_0x3188('0x4b')]['id']){_0x1b497b[_0x3188('0x80')]['id']={'$gt':_0x4129a5[_0x3188('0x4b')]['id']};}_0x1b497b=_['merge']({},_0x1b497b,_0x4129a5[_0x3188('0xf9')]);return db['ChatMessage']['count']({'where':_0x1b497b['where']})[_0x3188('0x22')](function(_0x3a18f1){_0x1bf545[_0x3188('0x31')]=_0x3a18f1;_0x1b497b[_0x3188('0xf6')]=[];if(_0x4129a5[_0x3188('0x4b')]['includeAgent']){_0x1b497b[_0x3188('0xf6')][_0x3188('0xb2')]({'model':db[_0x3188('0x77')],'as':'User','attributes':['id',_0x3188('0x40'),_0x3188('0xda')]});}if(_0x4129a5[_0x3188('0x4b')][_0x3188('0xfa')]){_0x1b497b['include']=[{'all':!![]}];}return db[_0x3188('0xf0')][_0x3188('0xf7')](_0x1b497b);})[_0x3188('0x22')](function(_0x2de71a){_0x1bf545[_0x3188('0xb4')]=_0x2de71a;return _0x1bf545;});}})[_0x3188('0x22')](respondWithFilteredResult(_0x50a567,_0x1b497b))[_0x3188('0x2c')](handleError(_0x50a567,null));};exports[_0x3188('0xfb')]=function(_0xa976ca,_0x3e0553,_0x4b232a){return db[_0x3188('0x46')][_0x3188('0x72')]({'where':{'id':_0xa976ca['params']['id']}})[_0x3188('0x22')](handleEntityNotFound(_0x3e0553,null))[_0x3188('0x22')](function(_0x1fecc9){if(_0x1fecc9){return _0x1fecc9['setTags'](_0xa976ca[_0x3188('0x7c')][_0x3188('0xf1')],_[_0x3188('0xfc')](_0xa976ca[_0x3188('0x7c')],[_0x3188('0xf1'),'id'])||{})[_0x3188('0xfd')](function(){return db[_0x3188('0x75')]['findAll']({'attributes':['id','name',_0x3188('0xfe')],'where':{'id':_0xa976ca[_0x3188('0x7c')][_0x3188('0xf1')]}});})['then'](function(_0x5630e5){socket[_0x3188('0xff')](_0x3188('0x100'),{'id':Number(_0xa976ca[_0x3188('0xb6')]['id']),'tags':_0x5630e5||[]});return{'id':Number(_0xa976ca[_0x3188('0xb6')]['id']),'tags':_0x5630e5||[]};});}})['then'](respondWithResult(_0x3e0553,null))['catch'](handleError(_0x3e0553,null));};exports['removeTags']=function(_0x223a47,_0x57b463,_0x1388b8){return db['ChatInteraction'][_0x3188('0x72')]({'where':{'id':_0x223a47[_0x3188('0xb6')]['id']}})[_0x3188('0x22')](handleEntityNotFound(_0x57b463,null))[_0x3188('0x22')](function(_0x3a6172){if(_0x3a6172){return _0x3a6172[_0x3188('0x101')](_0x223a47[_0x3188('0x4b')][_0x3188('0xf1')]);}})['then'](respondWithStatusCode(_0x57b463,null))[_0x3188('0x2c')](handleError(_0x57b463,null));};exports[_0x3188('0xc7')]=function(_0xf9a7de,_0x5e413f){var _0x422c37=moment()[_0x3188('0x102')]()['toString']();var _0x96882a=path[_0x3188('0xc8')](config[_0x3188('0xc9')],'server',_0x3188('0x103'),_0x3188('0x104'));var _0x2d32fa=path[_0x3188('0xc8')](config[_0x3188('0xc9')],_0x3188('0x105'),_0x3188('0x103'),_0x3188('0x106'));var _0x18b0cb=path[_0x3188('0xc8')](_0x96882a,_0x422c37);var _0x50b668=util[_0x3188('0xcf')](_0x3188('0x107'),_0xf9a7de[_0x3188('0xb6')]['id'],_0x422c37);var _0x125db4=path[_0x3188('0xc8')](_0x96882a,_0x50b668);var _0x19e383=[];_0x19e383[_0x3188('0xb2')]({'model':db[_0x3188('0x77')],'as':'User','attributes':['id',_0x3188('0x40')],'raw':!![]});_0x19e383['push']({'model':db[_0x3188('0xd4')],'as':'Contact','attributes':['id',_0x3188('0x108'),_0x3188('0x109')],'raw':!![]});if(_0xf9a7de['query'][_0x3188('0x106')]){_0x19e383[_0x3188('0xb2')]({'model':db[_0x3188('0xc3')],'as':_0x3188('0xc3'),'raw':!![]});}var _0x48357f=[{'model':db[_0x3188('0xf0')],'as':_0x3188('0xd2'),'attributes':['id','body',_0x3188('0x82'),_0x3188('0x10a'),'secret',_0x3188('0x87')],'include':_0x19e383}];_0x48357f[_0x3188('0xb2')]({'model':db[_0x3188('0xd3')],'as':'Account','attributes':['id',_0x3188('0x3c')]});_0x48357f[_0x3188('0xb2')]({'model':db[_0x3188('0x77')],'as':'Owner','attributes':['id',_0x3188('0x40')]});return db[_0x3188('0x46')]['find']({'where':{'id':_0xf9a7de[_0x3188('0xb6')]['id']},'include':_0x48357f})[_0x3188('0x22')](handleEntityNotFound(_0x5e413f,null))[_0x3188('0x22')](function(_0x7f510d){if(_0x7f510d){var _0x39c42a=_0x7f510d[_0x3188('0x10b')]({'plain':!![]});fs[_0x3188('0x10c')](_0x18b0cb);var _0x2b6edf={'format':'A4','border':_0x3188('0x10d'),'header':{'height':_0x3188('0x10e'),'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':_0x3188('0x10f'),'contents':{'default':util[_0x3188('0xcf')](_0x3188('0x110'),util[_0x3188('0xcf')]('%s\x20#%d',_0x3188('0x111'),_0x39c42a['id']),moment()['format'](_0x3188('0x112'))[_0x3188('0x9f')]())}}};var _0x5c522d={'channel':'Chat','account':_0x39c42a[_0x3188('0x113')]['name'],'agent':_0x39c42a[_0x3188('0x114')]?_0x39c42a[_0x3188('0x114')]['fullname']:_0x3188('0x115'),'createdAt':moment(_0x39c42a['createdAt'])[_0x3188('0xcf')](_0x3188('0xf5'))[_0x3188('0x9f')](),'closedAt':_0x39c42a[_0x3188('0xc5')]?moment(_0x39c42a[_0x3188('0x116')])[_0x3188('0xcf')](_0x3188('0xf5'))[_0x3188('0x9f')]():'','disposition':_0x39c42a[_0x3188('0xbf')],'chatInfo':{'browser':_0x39c42a['browserName'],'os':_0x39c42a[_0x3188('0x117')],'referer':_0x39c42a[_0x3188('0x118')],'customerIp':_0x39c42a[_0x3188('0x119')],'customerPort':_0x39c42a['customerPort']?_0x39c42a[_0x3188('0x11a')]:_0x3188('0x115')},'messages':_(_0x39c42a[_0x3188('0xd2')])['tail']()['filter']({'secret':![]})[_0x3188('0x3f')](function(_0x48d317){if(_0x48d317['Attachment']){var _0x52e2e5=path['join'](_0x2d32fa,_0x48d317[_0x3188('0xc3')]['basename']);if(fs['existsSync'](_0x52e2e5)){fs[_0x3188('0x11b')](_0x52e2e5)[_0x3188('0x11c')](fs['createWriteStream'](path['join'](_0x18b0cb,_0x48d317[_0x3188('0xc3')][_0x3188('0xcb')])));}}return{'date':moment(_0x48d317['createdAt'])[_0x3188('0xcf')](_0x3188('0xf5'))[_0x3188('0x9f')](),'sender':_0x48d317[_0x3188('0x10a')]==='out'?_0x48d317[_0x3188('0x77')]?_0x48d317[_0x3188('0x77')][_0x3188('0x40')]:_0x3188('0xd6'):_0x48d317['Contact'][_0x3188('0x108')]+(_0x48d317['Contact']['lastName']?'\x20'+_0x48d317[_0x3188('0x6e')]['lastName']:''),'body':_0x48d317[_0x3188('0xc3')]?_0x48d317[_0x3188('0xc3')][_0x3188('0xcb')]:_0x48d317[_0x3188('0x7c')],'direction':_0x48d317[_0x3188('0x10a')]===_0x3188('0x11d')?'A':'C','secret':_0x48d317['secret'],'read':_0x48d317['read'],'attachment':_0x48d317['Attachment']};})[_0x3188('0x6b')]()};return ejs['renderFile'](path['join'](config[_0x3188('0xc9')],_0x3188('0x105'),'views',_0x3188('0x11e')),{'interaction':_0x5c522d})[_0x3188('0x22')](function(_0x5d36f8){return new BPromise(function(_0x1f83f3,_0x48e4ce){pdf[_0x3188('0xb8')](_0x5d36f8,_0x2b6edf)['toFile'](path[_0x3188('0xc8')](_0x18b0cb,_0x3188('0x11f')+_0x39c42a['id']+'-'+_0x422c37+_0x3188('0x120')),function(_0x239ddd,_0x47d265){if(_0x239ddd)return _0x48e4ce(_0x239ddd);_0x1f83f3(_0x47d265);});});})['then'](function(){return new BPromise(function(_0x354b1a,_0x5adfd8){zipdir(_0x18b0cb,{'saveTo':_0x125db4},function(_0x3b4a50,_0x3e25a8){if(_0x3b4a50)return _0x5adfd8(_0x3b4a50);return _0x354b1a(_0x3e25a8);});})['then'](function(){return new BPromise(function(_0x1b71ec,_0x4cf30b){rimraf(_0x18b0cb,function(_0x12139c){if(_0x12139c)_0x4cf30b(_0x12139c);return _0x1b71ec();});});})[_0x3188('0x22')](function(){return _0x5e413f[_0x3188('0xc7')](_0x125db4,_0x50b668,function(_0x46c5c2){if(_0x46c5c2){console[_0x3188('0x121')](_0x3188('0x122'),_0x46c5c2);}else{fs['unlinkSync'](_0x125db4);}});});});}else{return _0x5e413f['sendStatus'](0xc8);}})[_0x3188('0x2c')](handleError(_0x5e413f,null));};