Built motion from commit (unavailable).|2.5.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 _0x4e29=['name','Users','map','TagIds','Tags','split','forEach','push','index','ChatInteraction','rawAttributes','fieldName','type','query','keys','filters','intersection','model','attributes','fields','hasOwnProperty','nolimit','limit','order','sort','where','select','field','from','tools_tags','ui.ChatInteractionId','users','u.id\x20=\x20ui.UserId','chat_interactions','left_join','chat_websites','a.id\x20=\x20i.ChatWebsiteId','chat_messages','me.ChatInteractionId\x20=\x20i.id','chat_interaction_has_tags','it.ChatInteractionId\x20=\x20i.id','t.id\x20=\x20it.TagId','expr','parseSearch','search','sqlOperator','conditions','length','find','unreadMessages','having','`\x20=\x200','`\x20>\x200','Contact','operator','$substring','value','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','start','union','CONCAT_WS(\x27\x20\x27,\x20o.name,\x20o.fullname)\x20LIKE\x20?','UserId','body','some','ChatWebsiteId','i.ChatWebsiteId\x20IN\x20?','parse','$gte','null','\x20=\x20?','read','`unreadMessages`\x20=\x200','tag','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','filter','replace','CONCAT(c.firstName,\x20\x27\x20\x27,\x20c.lastName)\x20LIKE\x20?','i.id','Sequelize','SELECT','clone','SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','contactName','DESC','isEmpty','t.id\x20IN\x20?','resolve','i.ChatWebsiteId\x20IS\x20NOT\x20NULL','agent','getChatWebsites','i.ChatWebsiteId\x20IS\x20NULL','user','role','sequelize','toString','merge','a.key','Account.key','a.mandatoryDisposition','Account.mandatoryDisposition','i.*','c.firstName','Contact.firstName','c.lastName','Contact.lastName','c.email','Contact.email','c.phone','Contact.phone','c.mobile','Contact.mobile','c.fax','Contact.fax','o.fullname','Owner.internal','GROUP_CONCAT(DISTINCT\x20t.id)','ui.ChatInteractionId\x20IN\x20?','groupBy','ChatInteractionId','all','show','includeAll','include','options','create','update','params','describe','createVidaooSession','findOne','ChatWebsite','vidaooApiKey','vidaooEscalation','POST','https://api-vidaoo.xcally.com/api/v1/sessions','MotionCWB:','follow','Error\x20in\x20Vidaoo\x20configuration','join_url','out','ValidationError','customUpdate','abandon','entity\x20not\x20found','Interaction\x20already\x20assigned','disposition','AbandonInteraction','attachmentUpload','file','basename','filename','mimetype','Attachment','attachmentDownload','Unauthorized','attachId','download','join','root','server/files/attachments/','close','mailTranscript','server/files/chat/upload/','pathTranscript','ChatMessage','Messages','User','CmContact','format','%s%d','agentAlias','customer','website_alias','alias','fullname','System','agent_fullname','createdAt','direction','secret','appendFileSync','MailAccount','MailServerOut','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','omit','ids','getMessages','pick','findAll','rows','getMyMessages','includeAgent','setTags','spread','Tag','color','emit','chatInteractionTags:save','removeTags','unix','server','files','transcript-%d-%s.zip','firstName','lastName','attachments','Owner','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>','%s\x20#%d','YYYY-MM-DD','Chat','Account','N.A.','closed','closedAt','YYYY-MM-DD\x20HH:mm:ss','browserName','osName','referer','customerIp','customerPort','tail','existsSync','createReadStream','pipe','renderFile','views','downloadInteraction.html','toFile','transcript-','.pdf','err','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','bluebird','mustache','util','path','to-csv','lodash','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','redis','defaults','socket.io-emitter','./chatInteraction.socket','register','jayson/promise','client','http','request','then','info','ChatInteraction,\x20%s,\x20%s','request\x20sent','debug','error','message','result','catch','sendStatus','status','end','json','count','offset','set','Content-Range','apply','reject'];(function(_0x15485b,_0x18eb6b){var _0x4f7b95=function(_0x2ccd67){while(--_0x2ccd67){_0x15485b['push'](_0x15485b['shift']());}};_0x4f7b95(++_0x18eb6b);}(_0x4e29,0x100));var _0x94e2=function(_0x3d78d7,_0x44acea){_0x3d78d7=_0x3d78d7-0x0;var _0x4b6784=_0x4e29[_0x3d78d7];return _0x4b6784;};'use strict';var pdf=require(_0x94e2('0x0'));var emlformat=require(_0x94e2('0x1'));var rimraf=require(_0x94e2('0x2'));var zipdir=require(_0x94e2('0x3'));var jsonpatch=require(_0x94e2('0x4'));var rp=require(_0x94e2('0x5'));var moment=require('moment');var BPromise=require(_0x94e2('0x6'));var Mustache=require(_0x94e2('0x7'));var util=require(_0x94e2('0x8'));var path=require(_0x94e2('0x9'));var sox=require('sox');var csv=require(_0x94e2('0xa'));var ejs=require('ejs');var fs=require('fs');var _=require(_0x94e2('0xb'));var squel=require('squel');var crypto=require(_0x94e2('0xc'));var jsforce=require(_0x94e2('0xd'));var deskjs=require(_0x94e2('0xe'));var toCsv=require(_0x94e2('0xa'));var querystring=require(_0x94e2('0xf'));var Papa=require(_0x94e2('0x10'));var Redis=require(_0x94e2('0x11'));var authService=require(_0x94e2('0x12'));var qs=require(_0x94e2('0x13'));var as=require(_0x94e2('0x14'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x94e2('0x15'))(_0x94e2('0x16'));var utils=require(_0x94e2('0x17'));var config=require(_0x94e2('0x18'));var licenseUtil=require(_0x94e2('0x19'));var db=require(_0x94e2('0x1a'))['db'];config[_0x94e2('0x1b')]=_[_0x94e2('0x1c')](config[_0x94e2('0x1b')],{'host':'localhost','port':0x18eb});var socket=require(_0x94e2('0x1d'))(new Redis(config[_0x94e2('0x1b')]));require(_0x94e2('0x1e'))[_0x94e2('0x1f')](socket);var jayson=require(_0x94e2('0x20'));var client=jayson[_0x94e2('0x21')][_0x94e2('0x22')]({'port':0x232b});var client9004=jayson[_0x94e2('0x21')][_0x94e2('0x22')]({'port':0x232c});function respondWithRpcPromise(_0xe022a8,_0x1867ec,_0x54b410,_0x438508){return new BPromise(function(_0x27e5ca,_0x50042b){var _0x1fbf9f=_0x438508||client;return _0x1fbf9f[_0x94e2('0x23')](_0xe022a8,_0x54b410)[_0x94e2('0x24')](function(_0x4363ad){logger[_0x94e2('0x25')](_0x94e2('0x26'),_0x1867ec,_0x94e2('0x27'));logger[_0x94e2('0x28')]('ChatInteraction,\x20%s,\x20%s,\x20%s',_0x1867ec,_0x94e2('0x27'),JSON['stringify'](_0x4363ad));if(_0x4363ad['error']){if(_0x4363ad[_0x94e2('0x29')]['code']===0x1f4){logger['error'](_0x94e2('0x26'),_0x1867ec,_0x4363ad[_0x94e2('0x29')][_0x94e2('0x2a')]);return _0x50042b(_0x4363ad[_0x94e2('0x29')][_0x94e2('0x2a')]);}logger[_0x94e2('0x29')](_0x94e2('0x26'),_0x1867ec,_0x4363ad[_0x94e2('0x29')][_0x94e2('0x2a')]);return _0x27e5ca(_0x4363ad[_0x94e2('0x29')][_0x94e2('0x2a')]);}else{logger[_0x94e2('0x25')](_0x94e2('0x26'),_0x1867ec,_0x94e2('0x27'));_0x27e5ca(_0x4363ad[_0x94e2('0x2b')][_0x94e2('0x2a')]);}})[_0x94e2('0x2c')](function(_0x41e82b){logger[_0x94e2('0x29')](_0x94e2('0x26'),_0x1867ec,_0x41e82b);_0x50042b(_0x41e82b);});});}function respondWithStatusCode(_0x2b0db6,_0x7dec90){_0x7dec90=_0x7dec90||0xcc;return function(_0x5618e0){if(_0x5618e0){return _0x2b0db6[_0x94e2('0x2d')](_0x7dec90);}return _0x2b0db6[_0x94e2('0x2e')](_0x7dec90)[_0x94e2('0x2f')]();};}function respondWithResult(_0x5120b8,_0x39056a){_0x39056a=_0x39056a||0xc8;return function(_0x3490e6){if(_0x3490e6){return _0x5120b8['status'](_0x39056a)[_0x94e2('0x30')](_0x3490e6);}};}function respondWithFilteredResult(_0x5f44a8,_0xb2ddd3){return function(_0x17b526){if(_0x17b526){var _0x5476fd=_0x17b526[_0x94e2('0x31')],_0x143364=_0xb2ddd3[_0x94e2('0x32')],_0x140c3e=_0xb2ddd3[_0x94e2('0x32')]+_0xb2ddd3['limit'],_0x3e7d4f;if(_0x140c3e>=_0x5476fd){_0x140c3e=_0x5476fd;_0x3e7d4f=0xc8;}else{_0x3e7d4f=0xce;}_0x5f44a8['status'](_0x3e7d4f);return _0x5f44a8[_0x94e2('0x33')](_0x94e2('0x34'),_0x143364+'-'+_0x140c3e+'/'+_0x5476fd)[_0x94e2('0x30')](_0x17b526);}return null;};}function patchUpdates(_0x726eec){return function(_0x514b08){try{jsonpatch[_0x94e2('0x35')](_0x514b08,_0x726eec,!![]);}catch(_0x3e54b6){return BPromise[_0x94e2('0x36')](_0x3e54b6);}return _0x514b08['save']();};}function saveUpdates(_0x4dd3e8,_0x28736f){return function(_0x4e246f){if(_0x4e246f){return _0x4e246f['update'](_0x4dd3e8)[_0x94e2('0x24')](function(_0x422e8a){return _0x422e8a;});}return null;};}function removeEntity(_0x5a1828,_0x3aa52f){return function(_0x5c281d){if(_0x5c281d){return _0x5c281d['destroy']()['then'](function(){_0x5a1828['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0x43c9ed,_0x42bd7f){return function(_0x298032){if(!_0x298032){_0x43c9ed[_0x94e2('0x2d')](0x194);}return _0x298032;};}function handleError(_0x5d57c8,_0x3e3bff){_0x3e3bff=_0x3e3bff||0x1f4;return function(_0x5e35b3){logger[_0x94e2('0x29')](_0x5e35b3['stack']);if(_0x5e35b3[_0x94e2('0x37')]){delete _0x5e35b3[_0x94e2('0x37')];}_0x5d57c8[_0x94e2('0x2e')](_0x3e3bff)['send'](_0x5e35b3);};}function getInteractionUsers(_0x4d10ee,_0x1e534d){return new BPromise(function(_0x33a1c9,_0x13e442){try{if(_0x1e534d[_0x4d10ee['id']]){_0x4d10ee[_0x94e2('0x38')]=_[_0x94e2('0x39')](_0x1e534d[_0x4d10ee['id']],function(_0x3911c3){return{'id':_0x3911c3['id'],'fullname':_0x3911c3['fullname']};});}}catch(_0xe5fefe){_0x13e442(_0xe5fefe);}_0x33a1c9(_0x4d10ee);});}function getInteractionTags(_0xcd18d6,_0x5ea7ae){return new BPromise(function(_0x16a526,_0x2a8e67){try{if(_0xcd18d6[_0x94e2('0x3a')]){_0xcd18d6[_0x94e2('0x3b')]=[];_0xcd18d6['TagIds'][_0x94e2('0x3c')](',')[_0x94e2('0x3d')](function(_0x41ec2a){_0xcd18d6['Tags'][_0x94e2('0x3e')](_0x5ea7ae[_0x41ec2a]);});}delete _0xcd18d6[_0x94e2('0x3a')];}catch(_0x83552b){_0x2a8e67(_0x83552b);}_0x16a526(_0xcd18d6);});}function updateChatInteraction(_0x179f18,_0x4c8a72,_0x471415){return new BPromise(function(_0x23941c,_0x5770c6){return getInteractionUsers(_0x179f18,_0x471415)[_0x94e2('0x24')](function(_0x5e2520){return getInteractionTags(_0x5e2520,_0x4c8a72);})['then'](function(_0x390ddc){_0x23941c(_0x390ddc);})[_0x94e2('0x2c')](function(_0x3b52ab){_0x5770c6(_0x3b52ab);});});}exports[_0x94e2('0x3f')]=function(_0x3da172,_0x327c9f){var _0x7b98b8={},_0x3a2b88={},_0x4f99ef={'count':0x0,'rows':[]};var _0x3dc7ac=_[_0x94e2('0x39')](db[_0x94e2('0x40')][_0x94e2('0x41')],function(_0x4b6d86){return{'name':_0x4b6d86[_0x94e2('0x42')],'type':_0x4b6d86[_0x94e2('0x43')]['key']};});_0x3a2b88['model']=_[_0x94e2('0x39')](_0x3dc7ac,_0x94e2('0x37'));_0x3a2b88[_0x94e2('0x44')]=_[_0x94e2('0x45')](_0x3da172[_0x94e2('0x44')]);_0x3a2b88[_0x94e2('0x46')]=_[_0x94e2('0x47')](_0x3a2b88[_0x94e2('0x48')],_0x3a2b88[_0x94e2('0x44')]);_0x7b98b8[_0x94e2('0x49')]=_[_0x94e2('0x47')](_0x3a2b88[_0x94e2('0x48')],qs[_0x94e2('0x4a')](_0x3da172[_0x94e2('0x44')][_0x94e2('0x4a')]));_0x7b98b8['attributes']=_0x7b98b8[_0x94e2('0x49')]['length']?_0x7b98b8['attributes']:_0x3a2b88[_0x94e2('0x48')];if(!_0x3da172['query'][_0x94e2('0x4b')](_0x94e2('0x4c'))){_0x7b98b8[_0x94e2('0x4d')]=qs[_0x94e2('0x4d')](_0x3da172[_0x94e2('0x44')]['limit']);_0x7b98b8[_0x94e2('0x32')]=qs['offset'](_0x3da172[_0x94e2('0x44')][_0x94e2('0x32')]);}_0x7b98b8[_0x94e2('0x4e')]=qs['sort'](_0x3da172['query'][_0x94e2('0x4f')]);_0x7b98b8[_0x94e2('0x50')]=qs[_0x94e2('0x46')](_['pick'](_0x3da172['query'],_0x3a2b88['filters']),_0x3dc7ac);var _0x20e87b=[];var _0x4bdd29=squel[_0x94e2('0x51')]()[_0x94e2('0x52')]('id')['field'](_0x94e2('0x37'))[_0x94e2('0x52')]('color')[_0x94e2('0x53')](_0x94e2('0x54'));var _0x16575b=squel[_0x94e2('0x51')]()['field']('u.id')[_0x94e2('0x52')]('u.fullname')[_0x94e2('0x52')](_0x94e2('0x55'))[_0x94e2('0x53')]('user_has_chat_interactions','ui')['left_join'](_0x94e2('0x56'),'u',_0x94e2('0x57'));var _0x33de1a=squel[_0x94e2('0x51')]()[_0x94e2('0x53')](_0x94e2('0x58'),'i')[_0x94e2('0x59')]('cm_contacts','c','c.id\x20=\x20i.ContactId\x20AND\x20c.deletedAt\x20IS\x20NULL')[_0x94e2('0x59')](_0x94e2('0x56'),'o','o.id\x20=\x20i.UserId')[_0x94e2('0x59')](_0x94e2('0x5a'),'a',_0x94e2('0x5b'))[_0x94e2('0x59')](_0x94e2('0x5c'),'me',_0x94e2('0x5d'))[_0x94e2('0x59')](_0x94e2('0x5e'),'it',_0x94e2('0x5f'))[_0x94e2('0x59')](_0x94e2('0x54'),'t',_0x94e2('0x60'));var _0x2d1aa3=squel[_0x94e2('0x61')]();var _0x1212a9=[];var _0x589518=squel[_0x94e2('0x61')]();var _0x1c296b;if(_0x3da172[_0x94e2('0x44')]['search']){_0x1c296b=as[_0x94e2('0x62')](_0x3da172[_0x94e2('0x44')][_0x94e2('0x63')]);var _0x3dd9ca=_0x1c296b[_0x94e2('0x64')];for(var _0x3ae0c7=0x0;_0x3ae0c7<_0x1c296b[_0x94e2('0x65')][_0x94e2('0x66')];_0x3ae0c7++){var _0x2897e0=_0x1c296b[_0x94e2('0x65')][_0x3ae0c7];var _0xa6744d='i';var _0x4441cb=_[_0x94e2('0x67')](_0x3dc7ac,['name',_0x2897e0['field']]);if(!_0x4441cb){switch(_0x2897e0['field']){case _0x94e2('0x68'):if(_0x2897e0['value']==0x1){_0x33de1a[_0x94e2('0x69')]('`'+_0x2897e0[_0x94e2('0x52')]+_0x94e2('0x6a'));}else{_0x33de1a[_0x94e2('0x69')]('`'+_0x2897e0[_0x94e2('0x52')]+_0x94e2('0x6b'));}break;case _0x94e2('0x6c'):if(_0x2897e0[_0x94e2('0x6d')]===_0x94e2('0x6e')){if(_0x2897e0[_0x94e2('0x6f')]['split']('\x20')[_0x94e2('0x66')]>0x1){_0x2d1aa3[_0x3dd9ca](_0x94e2('0x70'),qs[_0x94e2('0x71')](_0x2897e0[_0x94e2('0x6f')]),null);}else{var _0x31bdf0='%'+_0x2897e0[_0x94e2('0x6f')]+'%';_0x2d1aa3[_0x3dd9ca](_0x94e2('0x72'),_0x31bdf0,_0x31bdf0,_0x31bdf0);}}else{_0x4441cb=_[_0x94e2('0x67')](_0x3dc7ac,[_0x94e2('0x37'),'ContactId']);_0x2897e0['field']=_0x94e2('0x73');_0x2ea623=as[_0x94e2('0x74')](_0xa6744d,_0x4441cb['type'],_0x2897e0);_0x2d1aa3[_0x3dd9ca](_0x2ea623[_0x94e2('0x75')],_0x2ea623['value'][_0x94e2('0x76')],_0x2ea623['value'][_0x94e2('0x2f')]);}break;case'Tag':var _0x6f5745=_0x2897e0[_0x94e2('0x6f')][_0x94e2('0x3c')](',')[_0x94e2('0x39')](function(_0x57a6c3){return Number(_0x57a6c3);});_0x6f5745[_0x94e2('0x3d')](function(_0x33b6da){_0x589518['or']('CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','%,'+_0x33b6da+',%');});_0x1212a9=_[_0x94e2('0x77')](_0x1212a9,_0x6f5745);break;case'User':if(_0x2897e0[_0x94e2('0x6d')]==='$substring'){_0x2d1aa3[_0x3dd9ca](_0x94e2('0x78'),'%'+_0x2897e0[_0x94e2('0x6f')]+'%',null);}else{_0x4441cb=_[_0x94e2('0x67')](_0x3dc7ac,[_0x94e2('0x37'),'UserId']);_0x2897e0['field']=_0x94e2('0x79');_0x2ea623=as['buildExpression'](_0xa6744d,_0x4441cb[_0x94e2('0x43')],_0x2897e0);_0x2d1aa3[_0x3dd9ca](_0x2ea623[_0x94e2('0x75')],_0x2ea623['value'][_0x94e2('0x76')],_0x2ea623['value'][_0x94e2('0x2f')]);}break;case _0x94e2('0x7a'):_0x2ea623=as[_0x94e2('0x74')]('me',null,_0x2897e0);_0x2d1aa3[_0x3dd9ca](_0x2ea623[_0x94e2('0x75')],_0x2ea623[_0x94e2('0x6f')][_0x94e2('0x76')],_0x2ea623['value']['end']);break;}}else{var _0x2ea623=as[_0x94e2('0x74')](_0xa6744d,_0x4441cb['type'],_0x2897e0);_0x2d1aa3[_0x3dd9ca](_0x2ea623[_0x94e2('0x75')],_0x2ea623[_0x94e2('0x6f')]['start'],_0x2ea623['value'][_0x94e2('0x2f')]);}}}else{var _0x5de2e9=_(_0x3da172[_0x94e2('0x44')])[_0x94e2('0x45')]()[_0x94e2('0x39')](function(_0x5793f1){return _[_0x94e2('0x7b')](_0x3dc7ac,[_0x94e2('0x37'),_0x5793f1])?_0x5793f1:undefined;})['compact']()['value']();if(!_['isEmpty'](_0x5de2e9)){_0x5de2e9[_0x94e2('0x3d')](function(_0x24970f){if(_0x24970f===_0x94e2('0x7c')){_0x33de1a[_0x94e2('0x50')](_0x94e2('0x7d'),[]['concat'](_0x3da172['query'][_0x24970f]));}else if(_0x24970f==='createdAt'){var _0x377a87=JSON[_0x94e2('0x7e')](_0x3da172['query'][_0x24970f])[_0x94e2('0x7f')];var _0x4ccc5c=JSON[_0x94e2('0x7e')](_0x3da172[_0x94e2('0x44')][_0x24970f])['$lte'];_0x33de1a[_0x94e2('0x50')]('i.createdAt\x20BETWEEN\x20?\x20AND\x20?',_0x377a87,_0x4ccc5c);}else{if(_0x3da172[_0x94e2('0x44')][_0x24970f]===_0x94e2('0x80')){_0x33de1a[_0x94e2('0x50')]('i.'+_0x24970f+'\x20IS\x20NULL');}else{_0x33de1a[_0x94e2('0x50')]('i.'+_0x24970f+_0x94e2('0x81'),_0x3da172[_0x94e2('0x44')][_0x24970f]);}}});}if(_0x3da172[_0x94e2('0x44')][_0x94e2('0x82')]){if(_0x3da172[_0x94e2('0x44')]['read']==0x1){_0x33de1a['having'](_0x94e2('0x83'));}else{_0x33de1a[_0x94e2('0x69')]('`unreadMessages`\x20>\x200');}}if(_0x3da172[_0x94e2('0x44')][_0x94e2('0x84')]){_0x1212a9=_['isArray'](_0x3da172[_0x94e2('0x44')][_0x94e2('0x84')])?_0x3da172['query'][_0x94e2('0x84')]:new Array(_0x3da172['query'][_0x94e2('0x84')]);_0x1212a9['forEach'](function(_0x4b1800){_0x589518['or'](_0x94e2('0x85'),'%,'+_0x4b1800+',%');});}if(_0x3da172[_0x94e2('0x44')][_0x94e2('0x86')]){var _0x1754ab=_0x3da172[_0x94e2('0x44')]['filter'][_0x94e2('0x87')]('\x5c','\x5c\x5c')[_0x94e2('0x87')](/'/g,'\x27\x27');if(qs['isNumeric'](_0x1754ab)){_0x2d1aa3['or']('i.id\x20LIKE\x20?',_0x1754ab+'%');}else{_0x2d1aa3['or']('MATCH\x20(me.body)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)',qs[_0x94e2('0x71')](_0x1754ab))['or'](_0x94e2('0x88'),_0x1754ab+'%');}}}_0x33de1a[_0x94e2('0x50')](_0x2d1aa3);_0x33de1a['group'](_0x94e2('0x89'));var _0x19f828={'type':db[_0x94e2('0x8a')]['QueryTypes'][_0x94e2('0x8b')],'raw':!![]};var _0x8b073a=_0x33de1a[_0x94e2('0x8c')]();_0x8b073a['field'](_0x94e2('0x89'));_0x8b073a[_0x94e2('0x52')](_0x94e2('0x8d'),_0x94e2('0x68'));if(_0x7b98b8[_0x94e2('0x4e')]){_0x7b98b8[_0x94e2('0x4e')]['forEach'](function(_0x50ce35){var _0x5cf45c=_0x50ce35[0x0]===_0x94e2('0x8e')?_0x50ce35[0x0]:'i.'+_0x50ce35[0x0];_0x33de1a['order'](_0x5cf45c,_0x50ce35[0x1]===_0x94e2('0x8f')?![]:!![]);});}if(!_[_0x94e2('0x90')](_0x1212a9)){_0x33de1a['having'](_0x589518);_0x8b073a[_0x94e2('0x50')](_0x94e2('0x91'),_0x1212a9);}BPromise[_0x94e2('0x92')]()[_0x94e2('0x24')](function(){if(!_0x1c296b){if(_0x3da172['query']['ChatWebsiteId'])return;_0x8b073a['where']('i.ChatWebsiteId\x20IS\x20NOT\x20NULL');_0x33de1a[_0x94e2('0x50')](_0x94e2('0x93'));return;}if(_0x3da172['user']['role']!==_0x94e2('0x94'))return;return _0x3da172['user'][_0x94e2('0x95')]({'attributes':['id'],'raw':!![]})[_0x94e2('0x24')](function(_0x3539d4){if(_[_0x94e2('0x90')](_0x3539d4)){_0x8b073a[_0x94e2('0x50')](_0x94e2('0x96'));_0x33de1a[_0x94e2('0x50')]('i.ChatWebsiteId\x20IS\x20NULL');}else{_0x8b073a['where'](_0x94e2('0x7d'),_[_0x94e2('0x39')](_0x3539d4,'id'));_0x33de1a[_0x94e2('0x50')](_0x94e2('0x7d'),_[_0x94e2('0x39')](_0x3539d4,'id'));}});})[_0x94e2('0x24')](function(){if(_0x3da172[_0x94e2('0x97')][_0x94e2('0x98')]===_0x94e2('0x94')&&!_0x1c296b&&!_0x3da172[_0x94e2('0x44')][_0x94e2('0x7c')])return[];return db[_0x94e2('0x99')][_0x94e2('0x44')](_0x8b073a[_0x94e2('0x9a')](),_0x19f828);})[_0x94e2('0x24')](function(_0x568881){_0x4f99ef[_0x94e2('0x31')]=_0x568881[_0x94e2('0x66')];if(_0x4f99ef[_0x94e2('0x31')]===0x0)return[];return db[_0x94e2('0x99')][_0x94e2('0x44')](_0x4bdd29[_0x94e2('0x9a')](),_0x19f828)[_0x94e2('0x24')](function(_0x52626b){_0x20e87b=_['keyBy'](_0x52626b,'id');_0x19f828=_[_0x94e2('0x9b')](_0x19f828,{'model':db['ChatInteraction'],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0x3da172['query'][_0x94e2('0x4a')]){_0x7b98b8[_0x94e2('0x49')]['forEach'](function(_0x5d4005){_0x33de1a[_0x94e2('0x52')]('i.'+_0x5d4005);});}else{_0x33de1a[_0x94e2('0x52')]('SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','unreadMessages');_0x33de1a['field'](_0x94e2('0x9c'),_0x94e2('0x9d'));_0x33de1a['field'](_0x94e2('0x9e'),_0x94e2('0x9f'));_0x33de1a[_0x94e2('0x52')]('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',_0x94e2('0x8e'));_0x33de1a[_0x94e2('0x52')](_0x94e2('0xa0'));_0x33de1a[_0x94e2('0x52')](_0x94e2('0xa1'),_0x94e2('0xa2'));_0x33de1a[_0x94e2('0x52')](_0x94e2('0xa3'),_0x94e2('0xa4'));_0x33de1a[_0x94e2('0x52')](_0x94e2('0xa5'),_0x94e2('0xa6'));_0x33de1a[_0x94e2('0x52')](_0x94e2('0xa7'),_0x94e2('0xa8'));_0x33de1a[_0x94e2('0x52')](_0x94e2('0xa9'),_0x94e2('0xaa'));_0x33de1a['field'](_0x94e2('0xab'),_0x94e2('0xac'));_0x33de1a[_0x94e2('0x52')](_0x94e2('0xad'),'Owner.fullname');_0x33de1a['field']('o.internal',_0x94e2('0xae'));_0x33de1a[_0x94e2('0x52')](_0x94e2('0xaf'),_0x94e2('0x3a'));}if(_0x7b98b8[_0x94e2('0x4d')])_0x33de1a[_0x94e2('0x4d')](_0x7b98b8[_0x94e2('0x4d')]);if(_0x7b98b8[_0x94e2('0x32')])_0x33de1a[_0x94e2('0x32')](_0x7b98b8['offset']);return db['sequelize'][_0x94e2('0x44')](_0x33de1a[_0x94e2('0x9a')](),_0x19f828);})[_0x94e2('0x24')](function(_0x322666){_0x16575b[_0x94e2('0x50')](_0x94e2('0xb0'),_[_0x94e2('0x39')](_0x322666,'id'));return db[_0x94e2('0x99')][_0x94e2('0x44')](_0x16575b['toString'](),_0x19f828)[_0x94e2('0x24')](function(_0x57d34c){var _0x89b33d=_[_0x94e2('0xb1')](_0x57d34c,_0x94e2('0xb2'));var _0x927da4=[];_0x322666[_0x94e2('0x3d')](function(_0xd0e596){_0x927da4[_0x94e2('0x3e')](updateChatInteraction(_0xd0e596,_0x20e87b,_0x89b33d));});return BPromise[_0x94e2('0xb3')](_0x927da4);});});})[_0x94e2('0x24')](function(_0x5642b0){_0x4f99ef['rows']=_0x5642b0;return _0x4f99ef;})[_0x94e2('0x24')](respondWithFilteredResult(_0x327c9f,_0x7b98b8))[_0x94e2('0x2c')](handleError(_0x327c9f,null));};exports[_0x94e2('0xb4')]=function(_0x377a32,_0x24ea0c){var _0x2441b2={'raw':![],'where':{'id':_0x377a32['params']['id']}},_0x5af0d9={};_0x5af0d9[_0x94e2('0x48')]=_[_0x94e2('0x45')](db[_0x94e2('0x40')]['rawAttributes']);_0x5af0d9[_0x94e2('0x44')]=_[_0x94e2('0x45')](_0x377a32['query']);_0x5af0d9[_0x94e2('0x46')]=_[_0x94e2('0x47')](_0x5af0d9[_0x94e2('0x48')],_0x5af0d9[_0x94e2('0x44')]);_0x2441b2[_0x94e2('0x49')]=_[_0x94e2('0x47')](_0x5af0d9[_0x94e2('0x48')],qs['fields'](_0x377a32[_0x94e2('0x44')][_0x94e2('0x4a')]));_0x2441b2[_0x94e2('0x49')]=_0x2441b2[_0x94e2('0x49')]['length']?_0x2441b2[_0x94e2('0x49')]:_0x5af0d9['model'];if(_0x377a32[_0x94e2('0x44')][_0x94e2('0xb5')]){_0x2441b2[_0x94e2('0xb6')]=[{'all':!![]}];}_0x2441b2=_[_0x94e2('0x9b')]({},_0x2441b2,_0x377a32[_0x94e2('0xb7')]);return db[_0x94e2('0x40')][_0x94e2('0x67')](_0x2441b2)[_0x94e2('0x24')](handleEntityNotFound(_0x24ea0c,null))[_0x94e2('0x24')](respondWithResult(_0x24ea0c,null))[_0x94e2('0x2c')](handleError(_0x24ea0c,null));};exports[_0x94e2('0xb8')]=function(_0x449f5e,_0x26ba12){return db[_0x94e2('0x40')][_0x94e2('0xb8')](_0x449f5e[_0x94e2('0x7a')],{})[_0x94e2('0x24')](respondWithResult(_0x26ba12,0xc9))[_0x94e2('0x2c')](handleError(_0x26ba12,null));};exports[_0x94e2('0xb9')]=function(_0x562e27,_0x1a92e9){if(_0x562e27['body']['id']){delete _0x562e27[_0x94e2('0x7a')]['id'];}return db[_0x94e2('0x40')][_0x94e2('0x67')]({'where':{'id':_0x562e27[_0x94e2('0xba')]['id']}})[_0x94e2('0x24')](handleEntityNotFound(_0x1a92e9,null))[_0x94e2('0x24')](saveUpdates(_0x562e27[_0x94e2('0x7a')],null))[_0x94e2('0x24')](respondWithResult(_0x1a92e9,null))[_0x94e2('0x2c')](handleError(_0x1a92e9,null));};exports['destroy']=function(_0x3b6e3b,_0x55b19c){return db[_0x94e2('0x40')][_0x94e2('0x67')]({'where':{'id':_0x3b6e3b[_0x94e2('0xba')]['id']}})[_0x94e2('0x24')](handleEntityNotFound(_0x55b19c,null))[_0x94e2('0x24')](removeEntity(_0x55b19c,null))[_0x94e2('0x2c')](handleError(_0x55b19c,null));};exports[_0x94e2('0xbb')]=function(_0x21248a,_0xff9baa){return db[_0x94e2('0x40')][_0x94e2('0xbb')]()[_0x94e2('0x24')](respondWithResult(_0xff9baa,null))[_0x94e2('0x2c')](handleError(_0xff9baa,null));};exports[_0x94e2('0xbc')]=function(_0x4d1c63,_0xc78f43){var _0x2ef04d=_0x4d1c63[_0x94e2('0xba')]['id'];var _0x4fa5cb;var _0xee3dd5;var _0x396010;return db[_0x94e2('0x40')][_0x94e2('0xbd')]({'where':{'id':_0x2ef04d}})[_0x94e2('0x24')](function(_0x1c9cf0){_0x4fa5cb=_0x1c9cf0;return db[_0x94e2('0xbe')]['findOne']({'where':{'id':_0x1c9cf0[_0x94e2('0x7c')]},'attributes':['id',_0x94e2('0xbf'),_0x94e2('0xc0')],'raw':!![]});})[_0x94e2('0x24')](function(_0x3b9f21){if(_0x3b9f21&&_0x3b9f21[_0x94e2('0xbf')]&&_0x3b9f21[_0x94e2('0xc0')]){_0xee3dd5=_0x3b9f21;var _0x2810ac={'rejectUnauthorized':![],'method':_0x94e2('0xc1'),'uri':_0x94e2('0xc2'),'headers':{'X-APIKEY':_0x3b9f21[_0x94e2('0xbf')]},'body':{'name':_0x94e2('0xc3')+_0x2ef04d},'redirect':_0x94e2('0xc4'),'json':!![]};return rp(_0x2810ac);}else{throw new db[(_0x94e2('0x8a'))]['ValidationError'](_0x94e2('0xc5'));}})['then'](function(_0x239cc2){_0x396010=_0x239cc2;if(_0x396010['id']){var _0x5f5854={'body':_0x396010[_0x94e2('0xc6')],'ChatWebsiteId':_0xee3dd5['id'],'ChatInteractionId':_0x4fa5cb['id'],'direction':_0x94e2('0xc7'),'UserId':_0x4d1c63['user']['id']};return db['ChatMessage'][_0x94e2('0xb8')](_0x5f5854,{});}else{throw new db[(_0x94e2('0x8a'))][(_0x94e2('0xc8'))]('Unable\x20to\x20create\x20Vidaoo\x20session');}})[_0x94e2('0x24')](function(){return _0x4fa5cb['updateAttributes']({'vidaooSessionId':_0x396010['id']});})[_0x94e2('0x24')](respondWithResult(_0xc78f43,null))[_0x94e2('0x2c')](handleError(_0xc78f43,null));};exports[_0x94e2('0xc9')]=function(_0x521bc0,_0x32220f){if(_0x521bc0[_0x94e2('0x7a')]['id']){delete _0x521bc0[_0x94e2('0x7a')]['id'];}return db['ChatInteraction'][_0x94e2('0x67')]({'where':{'id':_0x521bc0[_0x94e2('0xba')]['id']}})['then'](handleEntityNotFound(_0x32220f,null))[_0x94e2('0x24')](saveUpdates(_0x521bc0[_0x94e2('0x7a')],null))[_0x94e2('0x24')](respondWithResult(_0x32220f,null))['catch'](handleError(_0x32220f,null));};exports['abandon']=function(_0x11cd43,_0x396b3d,_0x5c060a){if(_0x11cd43[_0x94e2('0x7a')]['id']){delete _0x11cd43[_0x94e2('0x7a')]['id'];}return db[_0x94e2('0x40')][_0x94e2('0x67')]({'where':{'id':_0x11cd43[_0x94e2('0xba')]['id']}})[_0x94e2('0x24')](function(_0x208e59){if(!_0x208e59){logger['error']('abandonInteraction,\x20%s,\x20%s,\x20%s',_0x94e2('0xca'),0x194,_0x94e2('0xcb'));_0x396b3d[_0x94e2('0x2d')](0x194);}else{if(_0x208e59[_0x94e2('0x79')]){throw new db[(_0x94e2('0x8a'))][(_0x94e2('0xc8'))](_0x94e2('0xcc'));}}return _0x208e59;})[_0x94e2('0x24')](function(_0x133293){if(_0x133293){return _0x133293[_0x94e2('0xb9')]({'closed':_0x11cd43[_0x94e2('0x7a')]['closed'],'disposition':_0x11cd43[_0x94e2('0x7a')][_0x94e2('0xcd')]})['then'](function(_0x48e7db){return _0x48e7db;});}})['then'](function(_0x5b9dda){return respondWithRpcPromise(_0x94e2('0xce'),_0x94e2('0xca'),_0x11cd43['body'],client9004);})[_0x94e2('0x24')](respondWithResult(_0x396b3d,null))[_0x94e2('0x2c')](handleError(_0x396b3d,null));};exports[_0x94e2('0xcf')]=function(_0x1a0804,_0x32d40c,_0x535399){_0x1a0804[_0x94e2('0x7a')]['name']=_0x1a0804[_0x94e2('0xd0')]['originalname'];_0x1a0804[_0x94e2('0x7a')][_0x94e2('0xd1')]=_0x1a0804[_0x94e2('0xd0')][_0x94e2('0xd2')];_0x1a0804[_0x94e2('0x7a')]['type']=_0x1a0804[_0x94e2('0xd0')][_0x94e2('0xd3')];return db[_0x94e2('0xd4')]['create'](_0x1a0804[_0x94e2('0x7a')])[_0x94e2('0x24')](respondWithResult(_0x32d40c,0xc9))[_0x94e2('0x2c')](handleError(_0x32d40c,null));};exports[_0x94e2('0xd5')]=function(_0x57e1cb,_0x1be5a2,_0x3f7405){return db[_0x94e2('0x40')][_0x94e2('0xbd')]({'where':{'id':_0x57e1cb[_0x94e2('0xba')]['id']},'raw':!![]})[_0x94e2('0x24')](handleEntityNotFound(_0x1be5a2,null))[_0x94e2('0x24')](function(_0x2d8d10){if(_0x2d8d10){if(_0x2d8d10['closed']){return _0x1be5a2[_0x94e2('0x2e')](0x193)['json']({'status':0x193,'message':_0x94e2('0xd6')});}return db['Attachment'][_0x94e2('0xbd')]({'where':{'id':_0x57e1cb[_0x94e2('0x44')][_0x94e2('0xd7')]},'raw':!![]})[_0x94e2('0x24')](handleEntityNotFound(_0x1be5a2,null));}})[_0x94e2('0x24')](function(_0x480923){if(_0x480923){return _0x1be5a2[_0x94e2('0xd8')](path[_0x94e2('0xd9')](config[_0x94e2('0xda')],_0x94e2('0xdb'),_0x480923[_0x94e2('0xd1')]));}})[_0x94e2('0x2c')](handleError(_0x1be5a2,null));};exports[_0x94e2('0xdc')]=function(_0x6f03e9,_0x18a4a1){var _0x305f10=null;var _0x547df7=null;var _0x5dbd11=null;var _0x5d3ab3=null;if(_0x6f03e9[_0x94e2('0x7a')]['id']){delete _0x6f03e9[_0x94e2('0x7a')]['id'];}if(_0x6f03e9[_0x94e2('0x7a')][_0x94e2('0xdd')]){_0x5d3ab3=path[_0x94e2('0xd9')](config[_0x94e2('0xda')],_0x94e2('0xde'),util['format']('transcript-%s.txt',Date['now']()));_0x6f03e9[_0x94e2('0x7a')][_0x94e2('0xdf')]=_0x5d3ab3;}return db[_0x94e2('0x40')]['find']({'where':{'id':_0x6f03e9[_0x94e2('0xba')]['id']},'include':[{'model':db[_0x94e2('0xe0')],'as':_0x94e2('0xe1'),'include':[{'model':db[_0x94e2('0xe2')],'as':_0x94e2('0xe2')}]}]})[_0x94e2('0x24')](handleEntityNotFound(_0x18a4a1,null))[_0x94e2('0x24')](saveUpdates(_0x6f03e9['body'],null))[_0x94e2('0x24')](function(_0x5760e7){if(_0x5760e7){_0x305f10=_0x5760e7;return db[_0x94e2('0xbe')][_0x94e2('0x67')]({'where':{'id':_0x305f10['ChatWebsiteId']}});}})[_0x94e2('0x24')](function(_0x30a1aa){if(_0x30a1aa){_0x5dbd11=_0x30a1aa;return db[_0x94e2('0xe3')][_0x94e2('0x67')]({'where':{'id':_0x305f10[_0x94e2('0x73')]}});}})['then'](function(_0x1d647b){if(_0x1d647b){_0x547df7=_0x1d647b;if(_0x5d3ab3){var _0x4e71ba=null;for(var _0x18b807=0x1;_0x18b807<_0x305f10['Messages']['length'];++_0x18b807){_0x4e71ba=_0x305f10[_0x94e2('0xe1')][_0x18b807];var _0x4b0c62=_0x4e71ba[_0x94e2('0x79')]?util[_0x94e2('0xe4')](_0x94e2('0xe5'),_0x5dbd11[_0x94e2('0xe6')],_0x4e71ba['UserId']):'System';var _0x17d248=_0x6f03e9[_0x94e2('0x7a')][_0x94e2('0xe7')]||util['format'](_0x94e2('0xe5'),'Visitor',_0x4e71ba[_0x94e2('0x73')]);switch(_0x5dbd11['agentIdentifier']){case _0x94e2('0xe8'):_0x4b0c62=_0x4e71ba[_0x94e2('0x79')]?util['format'](_0x94e2('0xe5'),_0x5dbd11[_0x94e2('0xe6')],_0x4e71ba['UserId']):'System';break;case'agent_alias':_0x4b0c62=_0x4e71ba[_0x94e2('0x79')]?_0x4e71ba['User'][_0x94e2('0xe9')]||_0x4e71ba[_0x94e2('0xe2')][_0x94e2('0xea')]:_0x94e2('0xeb');break;case _0x94e2('0xec'):_0x4b0c62=_0x4e71ba[_0x94e2('0x79')]?_0x4e71ba['User'][_0x94e2('0xea')]:_0x94e2('0xeb');break;default:_0x4b0c62=_0x4e71ba[_0x94e2('0x79')]?util[_0x94e2('0xe4')](_0x94e2('0xe5'),_0x5dbd11[_0x94e2('0xe6')],_0x4e71ba[_0x94e2('0x79')]):_0x94e2('0xeb');}var _0x27fa90=util['format']('[%s]\x20%s:\x20%s\x0a',moment(_0x4e71ba[_0x94e2('0xed')])[_0x94e2('0xe4')]('MM/DD/YYYY\x20HH:mm:ss'),_0x4e71ba[_0x94e2('0xee')]==='in'?_0x17d248:_0x4b0c62,_0x4e71ba['body']);if(!_0x4e71ba[_0x94e2('0xef')]){fs[_0x94e2('0xf0')](_0x5d3ab3,_0x27fa90);}}return db[_0x94e2('0xf1')][_0x94e2('0xbd')]({'where':{'service':!![]},'include':[{'model':db[_0x94e2('0xf2')],'as':'Smtp','raw':!![]}]});}}})[_0x94e2('0x24')](function(_0x406b17){if(_0x406b17&&_0x406b17[_0x94e2('0xf3')]&&_0x6f03e9['body']){var _0x325d01={'tls':{'rejectUnauthorized':![]}};if(_0x406b17[_0x94e2('0xf3')][_0x94e2('0xf4')]){_0x325d01[_0x94e2('0xf4')]=_0x406b17['Smtp'][_0x94e2('0xf4')];}else{_0x325d01[_0x94e2('0xf5')]=_0x406b17[_0x94e2('0xf3')]['host'];_0x325d01[_0x94e2('0xf6')]=_0x406b17[_0x94e2('0xf3')][_0x94e2('0xf6')];_0x325d01[_0x94e2('0xf7')]=_0x406b17[_0x94e2('0xf3')][_0x94e2('0xf7')];}if(_0x406b17[_0x94e2('0xf3')][_0x94e2('0xf8')]){_0x325d01[_0x94e2('0xf9')]={'user':_0x406b17[_0x94e2('0xf3')][_0x94e2('0x97')],'pass':_0x406b17['Smtp'][_0x94e2('0xfa')]};}return respondWithRpcPromise(_0x94e2('0xfb'),_0x94e2('0xfc'),{'account':_0x325d01,'message':{'from':util['format'](_0x94e2('0xfd'),_0x406b17[_0x94e2('0x37')],_0x406b17[_0x94e2('0xfe')]||_0x406b17[_0x94e2('0xf3')][_0x94e2('0x97')]),'to':_0x6f03e9[_0x94e2('0x7a')][_0x94e2('0xdd')],'subject':_0x94e2('0xff'),'text':util[_0x94e2('0xe4')](_0x94e2('0x100'),_0x6f03e9[_0x94e2('0x7a')]['mailTranscript']),'attachments':[{'path':_0x5d3ab3}]}})[_0x94e2('0x24')](function(){return _0x305f10;})[_0x94e2('0x2c')](function(_0x43ac39){console[_0x94e2('0x29')](_0x43ac39);});}else{return _0x305f10;}})[_0x94e2('0x24')](respondWithStatusCode(_0x18a4a1,0xc8))[_0x94e2('0x2c')](handleError(_0x18a4a1,null));};exports[_0x94e2('0x101')]=function(_0x1ee05e,_0x2edd07,_0x4d6de2){return db[_0x94e2('0xe0')][_0x94e2('0x67')]({'where':{'id':_0x1ee05e[_0x94e2('0xba')]['id']}})['then'](handleEntityNotFound(_0x2edd07,null))[_0x94e2('0x24')](function(_0x2821bc){if(_0x2821bc){return _0x2821bc[_0x94e2('0x101')](_0x1ee05e['body']['ids'],_[_0x94e2('0x102')](_0x1ee05e['body'],[_0x94e2('0x103'),'id'])||{});}})[_0x94e2('0x24')](respondWithResult(_0x2edd07,null))[_0x94e2('0x2c')](handleError(_0x2edd07,null));};exports[_0x94e2('0x104')]=function(_0x2229de,_0x4379a0,_0x14ce64){var _0x41c3cf={'raw':![],'where':{}};var _0x332194={};var _0x53862a={'count':0x0,'rows':[]};return db[_0x94e2('0x40')][_0x94e2('0xbd')]({'where':{'id':_0x2229de[_0x94e2('0xba')]['id']}})['then'](handleEntityNotFound(_0x4379a0,null))[_0x94e2('0x24')](function(_0x439d93){if(_0x439d93){_0x332194['model']=_[_0x94e2('0x45')](db[_0x94e2('0xe0')][_0x94e2('0x41')]);_0x332194[_0x94e2('0x44')]=_['keys'](_0x2229de['query']);_0x332194[_0x94e2('0x46')]=_[_0x94e2('0x47')](_0x332194[_0x94e2('0x48')],_0x332194[_0x94e2('0x44')]);_0x41c3cf['attributes']=_[_0x94e2('0x47')](_0x332194[_0x94e2('0x48')],qs['fields'](_0x2229de['query']['fields']));_0x41c3cf[_0x94e2('0x49')]=_0x41c3cf['attributes'][_0x94e2('0x66')]?_0x41c3cf[_0x94e2('0x49')]:_0x332194[_0x94e2('0x48')];if(!_0x2229de[_0x94e2('0x44')]['hasOwnProperty'](_0x94e2('0x4c'))){_0x41c3cf[_0x94e2('0x4d')]=qs['limit'](_0x2229de[_0x94e2('0x44')][_0x94e2('0x4d')]);_0x41c3cf['offset']=qs[_0x94e2('0x32')](_0x2229de[_0x94e2('0x44')][_0x94e2('0x32')]);}_0x41c3cf[_0x94e2('0x4e')]=qs[_0x94e2('0x4f')](_0x2229de[_0x94e2('0x44')][_0x94e2('0x4f')]);_0x41c3cf[_0x94e2('0x50')]=qs[_0x94e2('0x46')](_[_0x94e2('0x105')](_0x2229de[_0x94e2('0x44')],_0x332194[_0x94e2('0x46')]));_0x41c3cf[_0x94e2('0x50')]['ChatInteractionId']=_0x439d93['id'];if(_0x2229de[_0x94e2('0x44')][_0x94e2('0x86')]){_0x41c3cf[_0x94e2('0x50')]=_['merge'](_0x41c3cf['where'],{'$or':_['map'](_0x41c3cf[_0x94e2('0x49')],function(_0x1026b6){var _0x450b85={};_0x450b85[_0x1026b6]={'$like':'%'+_0x2229de[_0x94e2('0x44')]['filter']+'%'};return _0x450b85;})});}if(_0x2229de[_0x94e2('0x44')]['$gte']){var _0x2631ef=_0x2229de[_0x94e2('0x44')][_0x94e2('0x7f')]['split'](',');var _0x5201f0={};_0x5201f0[_0x2631ef[0x0]]={'$gte':moment(_0x2631ef[0x1])['format']('YYYY-MM-DD\x20HH:mm:ss')};_0x41c3cf['where']=_['merge'](_0x41c3cf[_0x94e2('0x50')],_0x5201f0);}_0x41c3cf=_[_0x94e2('0x9b')]({},_0x41c3cf,_0x2229de[_0x94e2('0xb7')]);return db[_0x94e2('0xe0')][_0x94e2('0x31')]({'where':_0x41c3cf[_0x94e2('0x50')]})[_0x94e2('0x24')](function(_0x187517){_0x53862a[_0x94e2('0x31')]=_0x187517;if(_0x2229de['query'][_0x94e2('0xb5')]){_0x41c3cf[_0x94e2('0xb6')]=[{'all':!![]}];}return db['ChatMessage'][_0x94e2('0x106')](_0x41c3cf);})[_0x94e2('0x24')](function(_0x4ee2b6){_0x53862a[_0x94e2('0x107')]=_0x4ee2b6;return _0x53862a;});}})['then'](respondWithFilteredResult(_0x4379a0,_0x41c3cf))[_0x94e2('0x2c')](handleError(_0x4379a0,null));};exports[_0x94e2('0x108')]=function(_0x4071d8,_0x3bf70c,_0x3e8cb8){var _0x3a5e0d={'where':{}},_0x117c10={},_0xe31308={'count':0x0,'rows':[]};return db[_0x94e2('0x40')][_0x94e2('0xbd')]({'where':{'id':_0x4071d8[_0x94e2('0xba')]['id']}})[_0x94e2('0x24')](handleEntityNotFound(_0x3bf70c,null))['then'](function(_0x292f05){if(_0x292f05){_0x117c10[_0x94e2('0x48')]=_['keys'](db[_0x94e2('0xe0')][_0x94e2('0x41')]);_0x117c10[_0x94e2('0x44')]=_['keys'](_0x4071d8[_0x94e2('0x44')]);_0x117c10[_0x94e2('0x46')]=_['intersection'](_0x117c10['model'],_0x117c10['query']);_0x3a5e0d['attributes']=_[_0x94e2('0x47')](_0x117c10[_0x94e2('0x48')],qs[_0x94e2('0x4a')](_0x4071d8['query'][_0x94e2('0x4a')]));_0x3a5e0d[_0x94e2('0x49')]=_0x3a5e0d['attributes'][_0x94e2('0x66')]?_0x3a5e0d[_0x94e2('0x49')]:_0x117c10[_0x94e2('0x48')];if(!_0x4071d8[_0x94e2('0x44')][_0x94e2('0x4b')]('nolimit')){_0x3a5e0d[_0x94e2('0x4d')]=qs[_0x94e2('0x4d')](_0x4071d8['query']['limit']);_0x3a5e0d[_0x94e2('0x32')]=qs[_0x94e2('0x32')](_0x4071d8[_0x94e2('0x44')][_0x94e2('0x32')]);}_0x3a5e0d[_0x94e2('0x4e')]=qs['sort'](_0x4071d8['query']['sort']);_0x3a5e0d['where']=qs[_0x94e2('0x46')](_[_0x94e2('0x105')](_0x4071d8['query'],_0x117c10[_0x94e2('0x46')]));_0x3a5e0d[_0x94e2('0x50')][_0x94e2('0xb2')]=_0x292f05['id'];if(_0x4071d8[_0x94e2('0x44')][_0x94e2('0x86')]){_0x3a5e0d[_0x94e2('0x50')]=_['merge'](_0x3a5e0d['where'],{'$or':_[_0x94e2('0x39')](_0x3a5e0d[_0x94e2('0x49')],function(_0x4f4754){var _0x69ff5b={};_0x69ff5b[_0x4f4754]={'$like':'%'+_0x4071d8['query']['filter']+'%'};return _0x69ff5b;})});}_0x3a5e0d['where'][_0x94e2('0xef')]=![];if(_0x4071d8[_0x94e2('0x44')]['id']){_0x3a5e0d['where']['id']={'$gt':_0x4071d8[_0x94e2('0x44')]['id']};}_0x3a5e0d=_['merge']({},_0x3a5e0d,_0x4071d8[_0x94e2('0xb7')]);return db[_0x94e2('0xe0')][_0x94e2('0x31')]({'where':_0x3a5e0d[_0x94e2('0x50')]})['then'](function(_0x23dc5a){_0xe31308['count']=_0x23dc5a;_0x3a5e0d['include']=[];if(_0x4071d8[_0x94e2('0x44')][_0x94e2('0x109')]){_0x3a5e0d[_0x94e2('0xb6')][_0x94e2('0x3e')]({'model':db[_0x94e2('0xe2')],'as':_0x94e2('0xe2'),'attributes':['id',_0x94e2('0xea'),_0x94e2('0xe9')]});}if(_0x4071d8[_0x94e2('0x44')][_0x94e2('0xb5')]){_0x3a5e0d['include']=[{'all':!![]}];}return db['ChatMessage']['findAll'](_0x3a5e0d);})['then'](function(_0x5d67ee){_0xe31308[_0x94e2('0x107')]=_0x5d67ee;return _0xe31308;});}})[_0x94e2('0x24')](respondWithFilteredResult(_0x3bf70c,_0x3a5e0d))[_0x94e2('0x2c')](handleError(_0x3bf70c,null));};exports['addTags']=function(_0x5cb869,_0x477085,_0x5a1e0d){return db[_0x94e2('0x40')][_0x94e2('0x67')]({'where':{'id':_0x5cb869[_0x94e2('0xba')]['id']}})['then'](handleEntityNotFound(_0x477085,null))[_0x94e2('0x24')](function(_0x2a8232){if(_0x2a8232){return _0x2a8232[_0x94e2('0x10a')](_0x5cb869[_0x94e2('0x7a')][_0x94e2('0x103')],_[_0x94e2('0x102')](_0x5cb869[_0x94e2('0x7a')],['ids','id'])||{})[_0x94e2('0x10b')](function(){return db[_0x94e2('0x10c')][_0x94e2('0x106')]({'attributes':['id',_0x94e2('0x37'),_0x94e2('0x10d')],'where':{'id':_0x5cb869['body'][_0x94e2('0x103')]}});})[_0x94e2('0x24')](function(_0x2df239){socket[_0x94e2('0x10e')](_0x94e2('0x10f'),{'id':Number(_0x5cb869[_0x94e2('0xba')]['id']),'tags':_0x2df239||[]});return{'id':Number(_0x5cb869[_0x94e2('0xba')]['id']),'tags':_0x2df239||[]};});}})[_0x94e2('0x24')](respondWithResult(_0x477085,null))[_0x94e2('0x2c')](handleError(_0x477085,null));};exports[_0x94e2('0x110')]=function(_0x21ab15,_0x21f411,_0x30610a){return db[_0x94e2('0x40')][_0x94e2('0x67')]({'where':{'id':_0x21ab15[_0x94e2('0xba')]['id']}})[_0x94e2('0x24')](handleEntityNotFound(_0x21f411,null))['then'](function(_0x2ce333){if(_0x2ce333){return _0x2ce333[_0x94e2('0x110')](_0x21ab15[_0x94e2('0x44')][_0x94e2('0x103')]);}})['then'](respondWithStatusCode(_0x21f411,null))[_0x94e2('0x2c')](handleError(_0x21f411,null));};exports[_0x94e2('0xd8')]=function(_0x4071cf,_0x2ca5fd){var _0x53fdff=moment()[_0x94e2('0x111')]()[_0x94e2('0x9a')]();var _0x26e80e=path['join'](config[_0x94e2('0xda')],_0x94e2('0x112'),_0x94e2('0x113'),'tmp');var _0x36452a=path[_0x94e2('0xd9')](config['root'],_0x94e2('0x112'),_0x94e2('0x113'),'attachments');var _0x442917=path[_0x94e2('0xd9')](_0x26e80e,_0x53fdff);var _0x538a7c=util[_0x94e2('0xe4')](_0x94e2('0x114'),_0x4071cf[_0x94e2('0xba')]['id'],_0x53fdff);var _0x33b99b=path['join'](_0x26e80e,_0x538a7c);var _0x4eb090=[];_0x4eb090[_0x94e2('0x3e')]({'model':db[_0x94e2('0xe2')],'as':'User','attributes':['id',_0x94e2('0xea')],'raw':!![]});_0x4eb090[_0x94e2('0x3e')]({'model':db[_0x94e2('0xe3')],'as':'Contact','attributes':['id',_0x94e2('0x115'),_0x94e2('0x116')],'raw':!![]});if(_0x4071cf[_0x94e2('0x44')][_0x94e2('0x117')]){_0x4eb090['push']({'model':db['Attachment'],'as':'Attachment','raw':!![]});}var _0x1256e8=[{'model':db[_0x94e2('0xe0')],'as':_0x94e2('0xe1'),'attributes':['id','body',_0x94e2('0xed'),_0x94e2('0xee'),_0x94e2('0xef'),_0x94e2('0x82')],'include':_0x4eb090}];_0x1256e8[_0x94e2('0x3e')]({'model':db[_0x94e2('0xbe')],'as':'Account','attributes':['id',_0x94e2('0x37')]});_0x1256e8['push']({'model':db[_0x94e2('0xe2')],'as':_0x94e2('0x118'),'attributes':['id',_0x94e2('0xea')]});return db[_0x94e2('0x40')]['find']({'where':{'id':_0x4071cf[_0x94e2('0xba')]['id']},'include':_0x1256e8})[_0x94e2('0x24')](handleEntityNotFound(_0x2ca5fd,null))[_0x94e2('0x24')](function(_0x743a7f){if(_0x743a7f){var _0x2ac239=_0x743a7f[_0x94e2('0x119')]({'plain':!![]});fs[_0x94e2('0x11a')](_0x442917);var _0x306932={'format':'A4','border':_0x94e2('0x11b'),'header':{'height':_0x94e2('0x11c'),'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':_0x94e2('0x11d'),'contents':{'default':util[_0x94e2('0xe4')](_0x94e2('0x11e'),util[_0x94e2('0xe4')](_0x94e2('0x11f'),'Chat',_0x2ac239['id']),moment()['format'](_0x94e2('0x120'))[_0x94e2('0x9a')]())}}};var _0x48e7f3={'channel':_0x94e2('0x121'),'account':_0x2ac239[_0x94e2('0x122')]['name'],'agent':_0x2ac239[_0x94e2('0x118')]?_0x2ac239[_0x94e2('0x118')]['fullname']:_0x94e2('0x123'),'createdAt':moment(_0x2ac239[_0x94e2('0xed')])['format']('YYYY-MM-DD\x20HH:mm:ss')['toString'](),'closedAt':_0x2ac239[_0x94e2('0x124')]?moment(_0x2ac239[_0x94e2('0x125')])['format'](_0x94e2('0x126'))[_0x94e2('0x9a')]():'','disposition':_0x2ac239['disposition'],'chatInfo':{'browser':_0x2ac239[_0x94e2('0x127')],'os':_0x2ac239[_0x94e2('0x128')],'referer':_0x2ac239[_0x94e2('0x129')],'customerIp':_0x2ac239[_0x94e2('0x12a')],'customerPort':_0x2ac239['customerPort']?_0x2ac239[_0x94e2('0x12b')]:_0x94e2('0x123')},'messages':_(_0x2ac239[_0x94e2('0xe1')])[_0x94e2('0x12c')]()[_0x94e2('0x86')]({'secret':![]})['map'](function(_0x563c66){if(_0x563c66['Attachment']){var _0x45ef07=path['join'](_0x36452a,_0x563c66[_0x94e2('0xd4')][_0x94e2('0xd1')]);if(fs[_0x94e2('0x12d')](_0x45ef07)){fs[_0x94e2('0x12e')](_0x45ef07)[_0x94e2('0x12f')](fs['createWriteStream'](path['join'](_0x442917,_0x563c66[_0x94e2('0xd4')]['basename'])));}}return{'date':moment(_0x563c66[_0x94e2('0xed')])[_0x94e2('0xe4')](_0x94e2('0x126'))[_0x94e2('0x9a')](),'sender':_0x563c66[_0x94e2('0xee')]===_0x94e2('0xc7')?_0x563c66[_0x94e2('0xe2')]?_0x563c66[_0x94e2('0xe2')]['fullname']:_0x94e2('0xeb'):_0x563c66[_0x94e2('0x6c')][_0x94e2('0x115')]+(_0x563c66[_0x94e2('0x6c')][_0x94e2('0x116')]?'\x20'+_0x563c66['Contact'][_0x94e2('0x116')]:''),'body':_0x563c66[_0x94e2('0xd4')]?_0x563c66[_0x94e2('0xd4')]['basename']:_0x563c66[_0x94e2('0x7a')],'direction':_0x563c66[_0x94e2('0xee')]===_0x94e2('0xc7')?'A':'C','secret':_0x563c66[_0x94e2('0xef')],'read':_0x563c66[_0x94e2('0x82')],'attachment':_0x563c66['Attachment']};})[_0x94e2('0x6f')]()};return ejs[_0x94e2('0x130')](path[_0x94e2('0xd9')](config[_0x94e2('0xda')],_0x94e2('0x112'),_0x94e2('0x131'),_0x94e2('0x132')),{'interaction':_0x48e7f3})[_0x94e2('0x24')](function(_0x2baa41){return new BPromise(function(_0x12cfa8,_0x9fa11a){pdf['create'](_0x2baa41,_0x306932)[_0x94e2('0x133')](path['join'](_0x442917,_0x94e2('0x134')+_0x2ac239['id']+'-'+_0x53fdff+_0x94e2('0x135')),function(_0x2e3af6,_0x1b7957){if(_0x2e3af6)return _0x9fa11a(_0x2e3af6);_0x12cfa8(_0x1b7957);});});})[_0x94e2('0x24')](function(){return new BPromise(function(_0x114cca,_0x57c9d5){zipdir(_0x442917,{'saveTo':_0x33b99b},function(_0x413b86,_0x2df043){if(_0x413b86)return _0x57c9d5(_0x413b86);return _0x114cca(_0x2df043);});})['then'](function(){return new BPromise(function(_0x3849b8,_0x2c3aba){rimraf(_0x442917,function(_0xc579a8){if(_0xc579a8)_0x2c3aba(_0xc579a8);return _0x3849b8();});});})[_0x94e2('0x24')](function(){return _0x2ca5fd[_0x94e2('0xd8')](_0x33b99b,_0x538a7c,function(_0x132786){if(_0x132786){console['log'](_0x94e2('0x136'),_0x132786);}else{fs['unlinkSync'](_0x33b99b);}});});});}else{return _0x2ca5fd['sendStatus'](0xc8);}})[_0x94e2('0x2c')](handleError(_0x2ca5fd,null));};