Built motion from commit (unavailable).|2.5.31
[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 _0x75ea=['destroy','end','sendStatus','stack','name','send','render','merge','body','contact','agent','account','fullname','TagIds','Tags','split','forEach','push','catch','index','map','ChatInteraction','rawAttributes','type','key','query','keys','filters','intersection','model','attributes','fields','length','hasOwnProperty','order','sort','where','pick','field','color','from','tools_tags','select','u.fullname','user_has_chat_interactions','left_join','users','chat_interactions','cm_contacts','c.id\x20=\x20i.ContactId\x20AND\x20c.deletedAt\x20IS\x20NULL','o.id\x20=\x20i.UserId','chat_websites','a.id\x20=\x20i.ChatWebsiteId','chat_messages','me.ChatInteractionId\x20=\x20i.id','it.ChatInteractionId\x20=\x20i.id','t.id\x20=\x20it.TagId','expr','search','parseSearch','conditions','find','unreadMessages','value','having','`\x20=\x200','Contact','operator','getFullTextValue','ContactId','start','Tag','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','union','User','$substring','UserId','buildExpression','text','some','isEmpty','i.ChatWebsiteId\x20IN\x20?','concat','parse','$gte','$lte','i.createdAt\x20BETWEEN\x20?\x20AND\x20?','\x20IS\x20NULL','\x20=\x20?','read','`unreadMessages`\x20=\x200','`unreadMessages`\x20>\x200','isArray','tag','filter','replace','isNumeric','i.id\x20LIKE\x20?','MATCH\x20(me.body)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','CONCAT(c.firstName,\x20\x27\x20\x27,\x20c.lastName)\x20LIKE\x20?','group','Sequelize','SELECT','i.id','SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','DESC','t.id\x20IN\x20?','resolve','ChatWebsiteId','i.ChatWebsiteId\x20IS\x20NOT\x20NULL','user','getChatWebsites','i.ChatWebsiteId\x20IS\x20NULL','role','toString','sequelize','keyBy','a.key','Account.key','a.mandatoryDisposition','Account.mandatoryDisposition','contactName','c.firstName','Contact.firstName','c.lastName','c.email','Contact.phone','c.mobile','c.fax','o.fullname','Owner.fullname','Owner.internal','ChatInteractionId','all','rows','show','includeAll','include','options','create','update','params','describe','createVidaooSession','ChatWebsite','findOne','vidaooApiKey','vidaooEscalation','vidaooTopic','vidaooNote','POST','https://api-vidaoo.xcally.com/api/v1/meetings','email','isNull','metadata','ValidationError','Error\x20in\x20Vidaoo\x20configuration','out','ChatMessage','Unable\x20to\x20create\x20Vidaoo\x20session','customUpdate','CmContact','abandon','abandonInteraction,\x20%s,\x20%s,\x20%s','entity\x20not\x20found','closed','AbandonInteraction','attachmentUpload','originalname','basename','file','filename','Attachment','attachmentDownload','Unauthorized','ChatOfflineMessageId','join','root','server/files/attachments/','offline-chat/','download','close','mailTranscript','server/files/chat/upload/','format','transcript-%s.txt','now','pathTranscript','Messages','agentAlias','System','customer','%s%d','Visitor','agentIdentifier','website_alias','agent_alias','agent_fullname','[%s]\x20%s:\x20%s\x0a','MM/DD/YYYY\x20HH:mm:ss','secret','appendFileSync','Smtp','service','host','secure','authentication','auth','pass','SendMail','sendMail','Hi\x20%s,\x20attached\x20you\x20can\x20find\x20your\x20transcript\x20file.\x20\x0a\x0aRegards.\x20\x0a\x0a','addMessage','ids','omit','getMyMessages','includeAgent','setTags','spread','findAll','emit','removeTags','server','tmp','files','transcript-%d-%s.zip','firstName','lastName','createdAt','Account','Owner','get','mkdirSync','Chat','N.A.','YYYY-MM-DD\x20HH:mm:ss','closedAt','disposition','osName','referer','customerPort','tail','existsSync','createReadStream','pipe','direction','renderFile','views','downloadInteraction.html','createPdfFromHTML','log','unlinkSync','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','sox','to-csv','ejs','fs-extra','lodash','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../components/export/pdf','../../config/license/hardware','../../config/logger','api','../../config/environment','../../config/license/util','../../mysqldb','redis','defaults','localhost','register','jayson/promise','client','http','request','then','info','ChatInteraction,\x20%s,\x20%s','request\x20sent','debug','ChatInteraction,\x20%s,\x20%s,\x20%s','error','code','message','status','json','offset','undefined','limit','count','apply','save'];(function(_0x2c21b7,_0x1f199f){var _0x1b8cef=function(_0x5e56c6){while(--_0x5e56c6){_0x2c21b7['push'](_0x2c21b7['shift']());}};_0x1b8cef(++_0x1f199f);}(_0x75ea,0xfc));var _0xa75e=function(_0x174a5a,_0x743f91){_0x174a5a=_0x174a5a-0x0;var _0x49d6f1=_0x75ea[_0x174a5a];return _0x49d6f1;};'use strict';var emlformat=require(_0xa75e('0x0'));var rimraf=require(_0xa75e('0x1'));var zipdir=require(_0xa75e('0x2'));var jsonpatch=require(_0xa75e('0x3'));var rp=require(_0xa75e('0x4'));var moment=require(_0xa75e('0x5'));var BPromise=require(_0xa75e('0x6'));var Mustache=require(_0xa75e('0x7'));var util=require(_0xa75e('0x8'));var path=require('path');var sox=require(_0xa75e('0x9'));var csv=require(_0xa75e('0xa'));var ejs=require(_0xa75e('0xb'));var fs=require('fs');var fs_extra=require(_0xa75e('0xc'));var _=require(_0xa75e('0xd'));var squel=require('squel');var crypto=require(_0xa75e('0xe'));var jsforce=require(_0xa75e('0xf'));var deskjs=require(_0xa75e('0x10'));var toCsv=require('to-csv');var querystring=require(_0xa75e('0x11'));var Papa=require(_0xa75e('0x12'));var Redis=require(_0xa75e('0x13'));var authService=require(_0xa75e('0x14'));var qs=require(_0xa75e('0x15'));var as=require(_0xa75e('0x16'));var pdf=require(_0xa75e('0x17'));var hardwareService=require(_0xa75e('0x18'));var logger=require(_0xa75e('0x19'))(_0xa75e('0x1a'));var utils=require('../../config/utils');var config=require(_0xa75e('0x1b'));var licenseUtil=require(_0xa75e('0x1c'));var db=require(_0xa75e('0x1d'))['db'];config[_0xa75e('0x1e')]=_[_0xa75e('0x1f')](config[_0xa75e('0x1e')],{'host':_0xa75e('0x20'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config['redis']));require('./chatInteraction.socket')[_0xa75e('0x21')](socket);var jayson=require(_0xa75e('0x22'));var client=jayson[_0xa75e('0x23')][_0xa75e('0x24')]({'port':0x232b});var client9004=jayson[_0xa75e('0x23')][_0xa75e('0x24')]({'port':0x232c});function respondWithRpcPromise(_0x5d5790,_0x38131c,_0x10dade,_0x2fcd07){return new BPromise(function(_0x2f29d2,_0x5e3507){var _0x1f6c6f=_0x2fcd07||client;return _0x1f6c6f[_0xa75e('0x25')](_0x5d5790,_0x10dade)[_0xa75e('0x26')](function(_0x4e4297){logger[_0xa75e('0x27')](_0xa75e('0x28'),_0x38131c,_0xa75e('0x29'));logger[_0xa75e('0x2a')](_0xa75e('0x2b'),_0x38131c,_0xa75e('0x29'),JSON['stringify'](_0x4e4297));if(_0x4e4297['error']){if(_0x4e4297[_0xa75e('0x2c')][_0xa75e('0x2d')]===0x1f4){logger[_0xa75e('0x2c')](_0xa75e('0x28'),_0x38131c,_0x4e4297[_0xa75e('0x2c')][_0xa75e('0x2e')]);return _0x5e3507(_0x4e4297[_0xa75e('0x2c')][_0xa75e('0x2e')]);}logger[_0xa75e('0x2c')](_0xa75e('0x28'),_0x38131c,_0x4e4297[_0xa75e('0x2c')][_0xa75e('0x2e')]);return _0x2f29d2(_0x4e4297[_0xa75e('0x2c')][_0xa75e('0x2e')]);}else{logger[_0xa75e('0x27')](_0xa75e('0x28'),_0x38131c,_0xa75e('0x29'));_0x2f29d2(_0x4e4297['result']['message']);}})['catch'](function(_0x53142a){logger[_0xa75e('0x2c')](_0xa75e('0x28'),_0x38131c,_0x53142a);_0x5e3507(_0x53142a);});});}function respondWithStatusCode(_0x5d6218,_0x1c3844){_0x1c3844=_0x1c3844||0xcc;return function(_0x22df03){if(_0x22df03){return _0x5d6218['sendStatus'](_0x1c3844);}return _0x5d6218[_0xa75e('0x2f')](_0x1c3844)['end']();};}function respondWithResult(_0x4e3ae2,_0x1d9ab8){_0x1d9ab8=_0x1d9ab8||0xc8;return function(_0x344af1){if(_0x344af1){return _0x4e3ae2['status'](_0x1d9ab8)[_0xa75e('0x30')](_0x344af1);}};}function respondWithFilteredResult(_0x3069fb,_0x152fa4){return function(_0x4b2f8a){if(_0x4b2f8a){var _0xc2ce0b=typeof _0x152fa4[_0xa75e('0x31')]===_0xa75e('0x32')&&typeof _0x152fa4[_0xa75e('0x33')]===_0xa75e('0x32');var _0x2eaf79=_0x4b2f8a[_0xa75e('0x34')];var _0x32812b=_0xc2ce0b?0x0:_0x152fa4['offset'];var _0x4df9ba=_0xc2ce0b?_0x4b2f8a['count']:_0x152fa4[_0xa75e('0x31')]+_0x152fa4[_0xa75e('0x33')];var _0x4f81e4;if(_0x4df9ba>=_0x2eaf79){_0x4df9ba=_0x2eaf79;_0x4f81e4=0xc8;}else{_0x4f81e4=0xce;}_0x3069fb[_0xa75e('0x2f')](_0x4f81e4);return _0x3069fb['set']('Content-Range',_0x32812b+'-'+_0x4df9ba+'/'+_0x2eaf79)[_0xa75e('0x30')](_0x4b2f8a);}return null;};}function patchUpdates(_0x59c90b){return function(_0x1def4a){try{jsonpatch[_0xa75e('0x35')](_0x1def4a,_0x59c90b,!![]);}catch(_0x319b87){return BPromise['reject'](_0x319b87);}return _0x1def4a[_0xa75e('0x36')]();};}function saveUpdates(_0x7a7a0a,_0x156113){return function(_0x1eb334){if(_0x1eb334){return _0x1eb334['update'](_0x7a7a0a)[_0xa75e('0x26')](function(_0x4e1a42){return _0x4e1a42;});}return null;};}function removeEntity(_0x2017d8,_0x17a071){return function(_0x475bf2){if(_0x475bf2){return _0x475bf2[_0xa75e('0x37')]()['then'](function(){_0x2017d8[_0xa75e('0x2f')](0xcc)[_0xa75e('0x38')]();});}};}function handleEntityNotFound(_0x5a1537,_0x3515f6){return function(_0x188a45){if(!_0x188a45){_0x5a1537[_0xa75e('0x39')](0x194);}return _0x188a45;};}function handleError(_0x533626,_0x22994d){_0x22994d=_0x22994d||0x1f4;return function(_0x487cc3){logger[_0xa75e('0x2c')](_0x487cc3[_0xa75e('0x3a')]);if(_0x487cc3[_0xa75e('0x3b')]){delete _0x487cc3[_0xa75e('0x3b')];}_0x533626['status'](_0x22994d)[_0xa75e('0x3c')](_0x487cc3);};}function getMustacheRender(_0x538c15,_0x205b41){return Mustache[_0xa75e('0x3d')](_0x538c15,_[_0xa75e('0x3e')](_0x205b41[_0xa75e('0x3f')],{'contact':_0x205b41[_0xa75e('0x40')],'message':_0x205b41[_0xa75e('0x2e')],'agent':_0x205b41[_0xa75e('0x41')],'interaction':_0x205b41['interaction'],'account':_0x205b41[_0xa75e('0x42')]}))||'';}function getInteractionUsers(_0x277d1f,_0x29f8d1){return new BPromise(function(_0x3d1b30,_0x2c06b0){try{if(_0x29f8d1[_0x277d1f['id']]){_0x277d1f['Users']=_['map'](_0x29f8d1[_0x277d1f['id']],function(_0x1655c8){return{'id':_0x1655c8['id'],'fullname':_0x1655c8[_0xa75e('0x43')]};});}}catch(_0x1c6d58){_0x2c06b0(_0x1c6d58);}_0x3d1b30(_0x277d1f);});}function getInteractionTags(_0x863e4e,_0xb24bf1){return new BPromise(function(_0xf39490,_0x308e70){try{if(_0x863e4e[_0xa75e('0x44')]){_0x863e4e[_0xa75e('0x45')]=[];_0x863e4e['TagIds'][_0xa75e('0x46')](',')[_0xa75e('0x47')](function(_0x2445fc){_0x863e4e['Tags'][_0xa75e('0x48')](_0xb24bf1[_0x2445fc]);});}delete _0x863e4e[_0xa75e('0x44')];}catch(_0x5e54cb){_0x308e70(_0x5e54cb);}_0xf39490(_0x863e4e);});}function updateChatInteraction(_0x3ec6bf,_0x5a2785,_0x49c9b4){return new BPromise(function(_0x438f1d,_0x55dd91){return getInteractionUsers(_0x3ec6bf,_0x49c9b4)[_0xa75e('0x26')](function(_0x1b3af5){return getInteractionTags(_0x1b3af5,_0x5a2785);})[_0xa75e('0x26')](function(_0x182105){_0x438f1d(_0x182105);})[_0xa75e('0x49')](function(_0x35529e){_0x55dd91(_0x35529e);});});}exports[_0xa75e('0x4a')]=function(_0x75bfe7,_0x206103){var _0x2a6f25={},_0x274aaa={},_0x3c0ac7={'count':0x0,'rows':[]};var _0xeb156d=_[_0xa75e('0x4b')](db[_0xa75e('0x4c')][_0xa75e('0x4d')],function(_0x1d01cb){return{'name':_0x1d01cb['fieldName'],'type':_0x1d01cb[_0xa75e('0x4e')][_0xa75e('0x4f')]};});_0x274aaa['model']=_[_0xa75e('0x4b')](_0xeb156d,'name');_0x274aaa[_0xa75e('0x50')]=_[_0xa75e('0x51')](_0x75bfe7['query']);_0x274aaa[_0xa75e('0x52')]=_[_0xa75e('0x53')](_0x274aaa[_0xa75e('0x54')],_0x274aaa['query']);_0x2a6f25[_0xa75e('0x55')]=_[_0xa75e('0x53')](_0x274aaa['model'],qs['fields'](_0x75bfe7[_0xa75e('0x50')][_0xa75e('0x56')]));_0x2a6f25[_0xa75e('0x55')]=_0x2a6f25[_0xa75e('0x55')][_0xa75e('0x57')]?_0x2a6f25[_0xa75e('0x55')]:_0x274aaa[_0xa75e('0x54')];if(!_0x75bfe7[_0xa75e('0x50')][_0xa75e('0x58')]('nolimit')){_0x2a6f25['limit']=qs[_0xa75e('0x33')](_0x75bfe7[_0xa75e('0x50')]['limit']);_0x2a6f25['offset']=qs['offset'](_0x75bfe7[_0xa75e('0x50')]['offset']);}_0x2a6f25[_0xa75e('0x59')]=qs[_0xa75e('0x5a')](_0x75bfe7['query'][_0xa75e('0x5a')]);_0x2a6f25[_0xa75e('0x5b')]=qs[_0xa75e('0x52')](_[_0xa75e('0x5c')](_0x75bfe7[_0xa75e('0x50')],_0x274aaa['filters']),_0xeb156d);var _0x2f0896=[];var _0x272c90=squel['select']()[_0xa75e('0x5d')]('id')[_0xa75e('0x5d')](_0xa75e('0x3b'))['field'](_0xa75e('0x5e'))[_0xa75e('0x5f')](_0xa75e('0x60'));var _0x1de2ee=squel[_0xa75e('0x61')]()[_0xa75e('0x5d')]('u.id')[_0xa75e('0x5d')](_0xa75e('0x62'))[_0xa75e('0x5d')]('ui.ChatInteractionId')[_0xa75e('0x5f')](_0xa75e('0x63'),'ui')[_0xa75e('0x64')](_0xa75e('0x65'),'u','u.id\x20=\x20ui.UserId');var _0x1d0a93=squel[_0xa75e('0x61')]()[_0xa75e('0x5f')](_0xa75e('0x66'),'i')[_0xa75e('0x64')](_0xa75e('0x67'),'c',_0xa75e('0x68'))[_0xa75e('0x64')](_0xa75e('0x65'),'o',_0xa75e('0x69'))[_0xa75e('0x64')](_0xa75e('0x6a'),'a',_0xa75e('0x6b'))[_0xa75e('0x64')](_0xa75e('0x6c'),'me',_0xa75e('0x6d'))[_0xa75e('0x64')]('chat_interaction_has_tags','it',_0xa75e('0x6e'))[_0xa75e('0x64')](_0xa75e('0x60'),'t',_0xa75e('0x6f'));var _0x3bb742=squel[_0xa75e('0x70')]();var _0x314f3e=[];var _0x274910=squel[_0xa75e('0x70')]();var _0x3f2d75;if(_0x75bfe7[_0xa75e('0x50')][_0xa75e('0x71')]){_0x3f2d75=as[_0xa75e('0x72')](_0x75bfe7[_0xa75e('0x50')][_0xa75e('0x71')]);var _0x39cbfe=_0x3f2d75['sqlOperator'];for(var _0x2f0692=0x0;_0x2f0692<_0x3f2d75[_0xa75e('0x73')][_0xa75e('0x57')];_0x2f0692++){var _0x12b3cc=_0x3f2d75[_0xa75e('0x73')][_0x2f0692];var _0x3c189a='i';var _0x44a73c=_[_0xa75e('0x74')](_0xeb156d,[_0xa75e('0x3b'),_0x12b3cc[_0xa75e('0x5d')]]);if(!_0x44a73c){switch(_0x12b3cc['field']){case _0xa75e('0x75'):if(_0x12b3cc[_0xa75e('0x76')]==0x1){_0x1d0a93[_0xa75e('0x77')]('`'+_0x12b3cc[_0xa75e('0x5d')]+_0xa75e('0x78'));}else{_0x1d0a93[_0xa75e('0x77')]('`'+_0x12b3cc['field']+'`\x20>\x200');}break;case _0xa75e('0x79'):if(_0x12b3cc[_0xa75e('0x7a')]==='$substring'){if(_0x12b3cc['value']['split']('\x20')[_0xa75e('0x57')]>0x1){_0x3bb742[_0x39cbfe]('MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)',qs[_0xa75e('0x7b')](_0x12b3cc[_0xa75e('0x76')]),null);}else{var _0xc5505='%'+_0x12b3cc[_0xa75e('0x76')]+'%';_0x3bb742[_0x39cbfe]('c.firstName\x20LIKE\x20?\x20OR\x20c.lastName\x20LIKE\x20?\x20OR\x20c.email\x20LIKE\x20?',_0xc5505,_0xc5505,_0xc5505);}}else{_0x44a73c=_[_0xa75e('0x74')](_0xeb156d,['name',_0xa75e('0x7c')]);_0x12b3cc[_0xa75e('0x5d')]=_0xa75e('0x7c');_0x19fb70=as['buildExpression'](_0x3c189a,_0x44a73c[_0xa75e('0x4e')],_0x12b3cc);_0x3bb742[_0x39cbfe](_0x19fb70['text'],_0x19fb70[_0xa75e('0x76')][_0xa75e('0x7d')],_0x19fb70['value'][_0xa75e('0x38')]);}break;case _0xa75e('0x7e'):var _0x831f01=_0x12b3cc[_0xa75e('0x76')][_0xa75e('0x46')](',')[_0xa75e('0x4b')](function(_0x473911){return Number(_0x473911);});_0x831f01[_0xa75e('0x47')](function(_0x2b9bc2){_0x274910['or'](_0xa75e('0x7f'),'%,'+_0x2b9bc2+',%');});_0x314f3e=_[_0xa75e('0x80')](_0x314f3e,_0x831f01);break;case _0xa75e('0x81'):if(_0x12b3cc['operator']===_0xa75e('0x82')){_0x3bb742[_0x39cbfe]('CONCAT_WS(\x27\x20\x27,\x20o.name,\x20o.fullname)\x20LIKE\x20?','%'+_0x12b3cc[_0xa75e('0x76')]+'%',null);}else{_0x44a73c=_[_0xa75e('0x74')](_0xeb156d,[_0xa75e('0x3b'),'UserId']);_0x12b3cc[_0xa75e('0x5d')]=_0xa75e('0x83');_0x19fb70=as[_0xa75e('0x84')](_0x3c189a,_0x44a73c['type'],_0x12b3cc);_0x3bb742[_0x39cbfe](_0x19fb70[_0xa75e('0x85')],_0x19fb70[_0xa75e('0x76')]['start'],_0x19fb70[_0xa75e('0x76')]['end']);}break;case'body':_0x19fb70=as['buildExpression']('me',null,_0x12b3cc);_0x3bb742[_0x39cbfe](_0x19fb70[_0xa75e('0x85')],_0x19fb70[_0xa75e('0x76')][_0xa75e('0x7d')],_0x19fb70[_0xa75e('0x76')][_0xa75e('0x38')]);break;}}else{var _0x19fb70=as[_0xa75e('0x84')](_0x3c189a,_0x44a73c['type'],_0x12b3cc);_0x3bb742[_0x39cbfe](_0x19fb70['text'],_0x19fb70['value'][_0xa75e('0x7d')],_0x19fb70[_0xa75e('0x76')][_0xa75e('0x38')]);}}}else{var _0x466261=_(_0x75bfe7[_0xa75e('0x50')])[_0xa75e('0x51')]()[_0xa75e('0x4b')](function(_0x32540c){return _[_0xa75e('0x86')](_0xeb156d,[_0xa75e('0x3b'),_0x32540c])?_0x32540c:undefined;})['compact']()[_0xa75e('0x76')]();if(!_[_0xa75e('0x87')](_0x466261)){_0x466261[_0xa75e('0x47')](function(_0x3c5475){if(_0x3c5475==='ChatWebsiteId'){_0x1d0a93[_0xa75e('0x5b')](_0xa75e('0x88'),[][_0xa75e('0x89')](_0x75bfe7[_0xa75e('0x50')][_0x3c5475]));}else if(_0x3c5475==='createdAt'){var _0x66d6a9=JSON[_0xa75e('0x8a')](_0x75bfe7[_0xa75e('0x50')][_0x3c5475])[_0xa75e('0x8b')];var _0x38c9f0=JSON[_0xa75e('0x8a')](_0x75bfe7['query'][_0x3c5475])[_0xa75e('0x8c')];_0x1d0a93[_0xa75e('0x5b')](_0xa75e('0x8d'),_0x66d6a9,_0x38c9f0);}else{if(_0x75bfe7[_0xa75e('0x50')][_0x3c5475]==='null'){_0x1d0a93[_0xa75e('0x5b')]('i.'+_0x3c5475+_0xa75e('0x8e'));}else{_0x1d0a93['where']('i.'+_0x3c5475+_0xa75e('0x8f'),_0x75bfe7['query'][_0x3c5475]);}}});}if(_0x75bfe7[_0xa75e('0x50')][_0xa75e('0x90')]){if(_0x75bfe7[_0xa75e('0x50')][_0xa75e('0x90')]==0x1){_0x1d0a93[_0xa75e('0x77')](_0xa75e('0x91'));}else{_0x1d0a93[_0xa75e('0x77')](_0xa75e('0x92'));}}if(_0x75bfe7['query']['tag']){_0x314f3e=_[_0xa75e('0x93')](_0x75bfe7[_0xa75e('0x50')]['tag'])?_0x75bfe7[_0xa75e('0x50')][_0xa75e('0x94')]:new Array(_0x75bfe7[_0xa75e('0x50')][_0xa75e('0x94')]);_0x314f3e[_0xa75e('0x47')](function(_0x4b112c){_0x274910['or']('CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','%,'+_0x4b112c+',%');});}if(_0x75bfe7[_0xa75e('0x50')][_0xa75e('0x95')]){var _0x47c789=_0x75bfe7[_0xa75e('0x50')]['filter'][_0xa75e('0x96')]('\x5c','\x5c\x5c')[_0xa75e('0x96')](/'/g,'\x27\x27');if(qs[_0xa75e('0x97')](_0x47c789)){_0x3bb742['or'](_0xa75e('0x98'),_0x47c789+'%');}else{_0x3bb742['or'](_0xa75e('0x99'),qs[_0xa75e('0x7b')](_0x47c789))['or'](_0xa75e('0x9a'),_0x47c789+'%');}}}_0x1d0a93[_0xa75e('0x5b')](_0x3bb742);_0x1d0a93[_0xa75e('0x9b')]('i.id');var _0x479e02={'type':db[_0xa75e('0x9c')]['QueryTypes'][_0xa75e('0x9d')],'raw':!![]};var _0x3a3edf=_0x1d0a93['clone']();_0x3a3edf[_0xa75e('0x5d')](_0xa75e('0x9e'));_0x3a3edf[_0xa75e('0x5d')](_0xa75e('0x9f'),_0xa75e('0x75'));if(_0x2a6f25[_0xa75e('0x59')]){_0x2a6f25['order']['forEach'](function(_0x22c5a2){var _0x5947ec=_0x22c5a2[0x0]==='contactName'?_0x22c5a2[0x0]:'i.'+_0x22c5a2[0x0];_0x1d0a93['order'](_0x5947ec,_0x22c5a2[0x1]===_0xa75e('0xa0')?![]:!![]);});}if(!_[_0xa75e('0x87')](_0x314f3e)){_0x1d0a93['having'](_0x274910);_0x3a3edf[_0xa75e('0x5b')](_0xa75e('0xa1'),_0x314f3e);}BPromise[_0xa75e('0xa2')]()['then'](function(){if(!_0x3f2d75){if(_0x75bfe7['query'][_0xa75e('0xa3')])return;_0x3a3edf[_0xa75e('0x5b')](_0xa75e('0xa4'));_0x1d0a93[_0xa75e('0x5b')](_0xa75e('0xa4'));return;}if(_0x75bfe7['user']['role']!=='agent')return;return _0x75bfe7[_0xa75e('0xa5')][_0xa75e('0xa6')]({'attributes':['id'],'raw':!![]})[_0xa75e('0x26')](function(_0x1d109f){if(_[_0xa75e('0x87')](_0x1d109f)){_0x3a3edf[_0xa75e('0x5b')]('i.ChatWebsiteId\x20IS\x20NULL');_0x1d0a93['where'](_0xa75e('0xa7'));}else{_0x3a3edf[_0xa75e('0x5b')]('i.ChatWebsiteId\x20IN\x20?',_[_0xa75e('0x4b')](_0x1d109f,'id'));_0x1d0a93['where'](_0xa75e('0x88'),_[_0xa75e('0x4b')](_0x1d109f,'id'));}});})['then'](function(){if(_0x75bfe7[_0xa75e('0xa5')][_0xa75e('0xa8')]===_0xa75e('0x41')&&!_0x3f2d75&&!_0x75bfe7['query']['ChatWebsiteId'])return[];return db['sequelize']['query'](_0x3a3edf[_0xa75e('0xa9')](),_0x479e02);})[_0xa75e('0x26')](function(_0x250177){_0x3c0ac7['count']=_0x250177['length'];if(_0x3c0ac7[_0xa75e('0x34')]===0x0)return[];return db[_0xa75e('0xaa')][_0xa75e('0x50')](_0x272c90[_0xa75e('0xa9')](),_0x479e02)[_0xa75e('0x26')](function(_0x2f303c){_0x2f0896=_[_0xa75e('0xab')](_0x2f303c,'id');_0x479e02=_[_0xa75e('0x3e')](_0x479e02,{'model':db[_0xa75e('0x4c')],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0x75bfe7['query'][_0xa75e('0x56')]){_0x2a6f25['attributes'][_0xa75e('0x47')](function(_0x2c504e){_0x1d0a93[_0xa75e('0x5d')]('i.'+_0x2c504e);});}else{_0x1d0a93[_0xa75e('0x5d')](_0xa75e('0x9f'),_0xa75e('0x75'));_0x1d0a93[_0xa75e('0x5d')](_0xa75e('0xac'),_0xa75e('0xad'));_0x1d0a93['field'](_0xa75e('0xae'),_0xa75e('0xaf'));_0x1d0a93[_0xa75e('0x5d')]('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',_0xa75e('0xb0'));_0x1d0a93['field']('i.*');_0x1d0a93[_0xa75e('0x5d')](_0xa75e('0xb1'),_0xa75e('0xb2'));_0x1d0a93[_0xa75e('0x5d')](_0xa75e('0xb3'),'Contact.lastName');_0x1d0a93[_0xa75e('0x5d')](_0xa75e('0xb4'),'Contact.email');_0x1d0a93[_0xa75e('0x5d')]('c.phone',_0xa75e('0xb5'));_0x1d0a93['field'](_0xa75e('0xb6'),'Contact.mobile');_0x1d0a93[_0xa75e('0x5d')](_0xa75e('0xb7'),'Contact.fax');_0x1d0a93['field'](_0xa75e('0xb8'),_0xa75e('0xb9'));_0x1d0a93['field']('o.internal',_0xa75e('0xba'));_0x1d0a93['field']('GROUP_CONCAT(DISTINCT\x20t.id)',_0xa75e('0x44'));}if(_0x2a6f25[_0xa75e('0x33')])_0x1d0a93['limit'](_0x2a6f25[_0xa75e('0x33')]);if(_0x2a6f25[_0xa75e('0x31')])_0x1d0a93['offset'](_0x2a6f25['offset']);return db[_0xa75e('0xaa')][_0xa75e('0x50')](_0x1d0a93['toString'](),_0x479e02);})[_0xa75e('0x26')](function(_0x9ee614){if(_0x9ee614[_0xa75e('0x57')]>0x0)_0x1de2ee['where']('ui.ChatInteractionId\x20IN\x20?',_['map'](_0x9ee614,'id'));return db[_0xa75e('0xaa')]['query'](_0x1de2ee[_0xa75e('0xa9')](),_0x479e02)['then'](function(_0x34d809){var _0x3e71c5=_['groupBy'](_0x34d809,_0xa75e('0xbb'));var _0x5b2ffd=[];_0x9ee614[_0xa75e('0x47')](function(_0x3f5f8b){_0x5b2ffd[_0xa75e('0x48')](updateChatInteraction(_0x3f5f8b,_0x2f0896,_0x3e71c5));});return BPromise[_0xa75e('0xbc')](_0x5b2ffd);});});})['then'](function(_0x3ddf60){_0x3c0ac7[_0xa75e('0xbd')]=_0x3ddf60;return _0x3c0ac7;})[_0xa75e('0x26')](respondWithFilteredResult(_0x206103,_0x2a6f25))[_0xa75e('0x49')](handleError(_0x206103,null));};exports[_0xa75e('0xbe')]=function(_0xa97ceb,_0x292b9e){var _0x5515c={'raw':![],'where':{'id':_0xa97ceb['params']['id']}},_0x50cdd7={};_0x50cdd7[_0xa75e('0x54')]=_['keys'](db['ChatInteraction'][_0xa75e('0x4d')]);_0x50cdd7[_0xa75e('0x50')]=_[_0xa75e('0x51')](_0xa97ceb[_0xa75e('0x50')]);_0x50cdd7[_0xa75e('0x52')]=_[_0xa75e('0x53')](_0x50cdd7['model'],_0x50cdd7[_0xa75e('0x50')]);_0x5515c[_0xa75e('0x55')]=_[_0xa75e('0x53')](_0x50cdd7[_0xa75e('0x54')],qs[_0xa75e('0x56')](_0xa97ceb[_0xa75e('0x50')]['fields']));_0x5515c[_0xa75e('0x55')]=_0x5515c[_0xa75e('0x55')][_0xa75e('0x57')]?_0x5515c[_0xa75e('0x55')]:_0x50cdd7['model'];if(_0xa97ceb[_0xa75e('0x50')][_0xa75e('0xbf')]){_0x5515c[_0xa75e('0xc0')]=[{'all':!![]}];}_0x5515c=_[_0xa75e('0x3e')]({},_0x5515c,_0xa97ceb[_0xa75e('0xc1')]);return db[_0xa75e('0x4c')][_0xa75e('0x74')](_0x5515c)[_0xa75e('0x26')](handleEntityNotFound(_0x292b9e,null))[_0xa75e('0x26')](respondWithResult(_0x292b9e,null))[_0xa75e('0x49')](handleError(_0x292b9e,null));};exports[_0xa75e('0xc2')]=function(_0x1f22ac,_0x6c044e){return db['ChatInteraction'][_0xa75e('0xc2')](_0x1f22ac['body'],{})[_0xa75e('0x26')](respondWithResult(_0x6c044e,0xc9))[_0xa75e('0x49')](handleError(_0x6c044e,null));};exports[_0xa75e('0xc3')]=function(_0x3f270a,_0x41eefd){if(_0x3f270a[_0xa75e('0x3f')]['id']){delete _0x3f270a[_0xa75e('0x3f')]['id'];}return db[_0xa75e('0x4c')][_0xa75e('0x74')]({'where':{'id':_0x3f270a[_0xa75e('0xc4')]['id']}})[_0xa75e('0x26')](handleEntityNotFound(_0x41eefd,null))['then'](saveUpdates(_0x3f270a[_0xa75e('0x3f')],null))[_0xa75e('0x26')](respondWithResult(_0x41eefd,null))[_0xa75e('0x49')](handleError(_0x41eefd,null));};exports[_0xa75e('0x37')]=function(_0x45653e,_0x1ddb1a){return db[_0xa75e('0x4c')][_0xa75e('0x74')]({'where':{'id':_0x45653e[_0xa75e('0xc4')]['id']}})[_0xa75e('0x26')](handleEntityNotFound(_0x1ddb1a,null))[_0xa75e('0x26')](removeEntity(_0x1ddb1a,null))[_0xa75e('0x49')](handleError(_0x1ddb1a,null));};exports[_0xa75e('0xc5')]=function(_0x299e1c,_0x1df16a){return db[_0xa75e('0x4c')][_0xa75e('0xc5')]()[_0xa75e('0x26')](respondWithResult(_0x1df16a,null))[_0xa75e('0x49')](handleError(_0x1df16a,null));};exports[_0xa75e('0xc6')]=function(_0x339e51,_0x14e8d4){var _0x59b4ea=_0x339e51['params']['id'];var _0x3a9715;var _0x4fc757;var _0x25b854;return db[_0xa75e('0x4c')]['findOne']({'where':{'id':_0x59b4ea}})[_0xa75e('0x26')](function(_0x21faea){_0x3a9715=_0x21faea;return db[_0xa75e('0xc7')][_0xa75e('0xc8')]({'where':{'id':_0x21faea[_0xa75e('0xa3')]},'attributes':['id',_0xa75e('0xc9'),_0xa75e('0xca'),_0xa75e('0xcb'),_0xa75e('0xcc'),'vidaooMetadata'],'raw':!![]});})[_0xa75e('0x26')](function(_0x1a6285){if(_0x1a6285&&_0x1a6285[_0xa75e('0xc9')]&&_0x1a6285['vidaooEscalation']){_0x4fc757=_0x1a6285;var _0x1e311c={'interaction':{'id':_0x59b4ea},'agent':{'id':_0x339e51[_0xa75e('0xa5')]['id'],'name':_0x339e51[_0xa75e('0xa5')][_0xa75e('0x3b')],'fullname':_0x339e51['user'][_0xa75e('0x43')],'email':_0x339e51[_0xa75e('0xa5')]['email']},'contact':_0x339e51[_0xa75e('0x3f')][_0xa75e('0x40')],'account':_0x339e51[_0xa75e('0x3f')]['account']};var _0x2be51a={'rejectUnauthorized':![],'method':_0xa75e('0xcd'),'url':_0xa75e('0xce'),'headers':{'X-APIKEY':_0x1a6285[_0xa75e('0xc9')]},'body':{'duration':null,'scheduledAt':null,'participants':[_0x339e51['user'][_0xa75e('0xcf')]],'buttons':null,'topic':_0x4fc757[_0xa75e('0xcb')],'note':_['isNull'](_0x4fc757[_0xa75e('0xcc')])?null:getMustacheRender(_0x4fc757[_0xa75e('0xcc')],_0x1e311c),'metadata':null},'redirect':'follow','json':!![]};try{if(!_[_0xa75e('0xd0')](_0x4fc757['vidaooMetadata'])){var _0x35d472=getMustacheRender(_0x4fc757['vidaooMetadata'],_0x1e311c);var _0x2fa01f=JSON[_0xa75e('0x8a')](_0x35d472);_0x2be51a[_0xa75e('0x3f')][_0xa75e('0xd1')]=_0x2fa01f;}}catch(_0x211865){throw new db[(_0xa75e('0x9c'))][(_0xa75e('0xd2'))]('Error\x20in\x20conversion\x20vidaooMetadata');}return rp(_0x2be51a);}else{throw new db[(_0xa75e('0x9c'))][(_0xa75e('0xd2'))](_0xa75e('0xd3'));}})[_0xa75e('0x26')](function(_0x1e5130){_0x25b854=_0x1e5130;if(_0x25b854['id']){var _0xbf37bb={'body':_0x25b854['join_url'],'ChatWebsiteId':_0x4fc757['id'],'ChatInteractionId':_0x3a9715['id'],'direction':_0xa75e('0xd4'),'UserId':_0x339e51[_0xa75e('0xa5')]['id']};return db[_0xa75e('0xd5')][_0xa75e('0xc2')](_0xbf37bb,{});}else{throw new db[(_0xa75e('0x9c'))]['ValidationError'](_0xa75e('0xd6'));}})[_0xa75e('0x26')](function(){return _0x3a9715['updateAttributes']({'vidaooSessionId':_0x25b854['id']});})[_0xa75e('0x26')](respondWithResult(_0x14e8d4,null))[_0xa75e('0x49')](handleError(_0x14e8d4,null));};exports[_0xa75e('0xd7')]=function(_0x23edac,_0x3badba){if(_0x23edac['body']['id']){delete _0x23edac['body']['id'];}return db[_0xa75e('0x4c')][_0xa75e('0x74')]({'where':{'id':_0x23edac[_0xa75e('0xc4')]['id']},'include':[{'model':db[_0xa75e('0xd8')],'as':_0xa75e('0x79')}]})[_0xa75e('0x26')](handleEntityNotFound(_0x3badba,null))[_0xa75e('0x26')](saveUpdates(_0x23edac[_0xa75e('0x3f')],null))['then'](respondWithResult(_0x3badba,null))[_0xa75e('0x49')](handleError(_0x3badba,null));};exports[_0xa75e('0xd9')]=function(_0x336fff,_0x54a951,_0x4fda96){if(_0x336fff[_0xa75e('0x3f')]['id']){delete _0x336fff[_0xa75e('0x3f')]['id'];}return db[_0xa75e('0x4c')][_0xa75e('0x74')]({'where':{'id':_0x336fff['params']['id']}})[_0xa75e('0x26')](function(_0x181003){if(!_0x181003){logger[_0xa75e('0x2c')](_0xa75e('0xda'),'abandon',0x194,_0xa75e('0xdb'));_0x54a951[_0xa75e('0x39')](0x194);}else{if(_0x181003[_0xa75e('0x83')]){throw new db[(_0xa75e('0x9c'))][(_0xa75e('0xd2'))]('Interaction\x20already\x20assigned');}}return _0x181003;})['then'](function(_0x198151){if(_0x198151){return _0x198151[_0xa75e('0xc3')]({'closed':_0x336fff[_0xa75e('0x3f')][_0xa75e('0xdc')],'disposition':_0x336fff['body']['disposition']})[_0xa75e('0x26')](function(_0x4a8d0e){return _0x4a8d0e;});}})[_0xa75e('0x26')](function(_0x20cb82){return respondWithRpcPromise(_0xa75e('0xdd'),'abandon',_0x336fff[_0xa75e('0x3f')],client9004);})[_0xa75e('0x26')](respondWithResult(_0x54a951,null))[_0xa75e('0x49')](handleError(_0x54a951,null));};exports[_0xa75e('0xde')]=function(_0x2a7a82,_0x542f9a,_0x1b0bf4){_0x2a7a82[_0xa75e('0x3f')][_0xa75e('0x3b')]=_0x2a7a82['file'][_0xa75e('0xdf')];_0x2a7a82['body'][_0xa75e('0xe0')]=_0x2a7a82[_0xa75e('0xe1')][_0xa75e('0xe2')];_0x2a7a82[_0xa75e('0x3f')][_0xa75e('0x4e')]=_0x2a7a82[_0xa75e('0xe1')]['mimetype'];return db[_0xa75e('0xe3')][_0xa75e('0xc2')](_0x2a7a82[_0xa75e('0x3f')])['then'](respondWithResult(_0x542f9a,0xc9))[_0xa75e('0x49')](handleError(_0x542f9a,null));};exports[_0xa75e('0xe4')]=function(_0x204cc3,_0x4e3370,_0x43f24a){return db[_0xa75e('0x4c')][_0xa75e('0xc8')]({'where':{'id':_0x204cc3['params']['id']},'raw':!![]})[_0xa75e('0x26')](handleEntityNotFound(_0x4e3370,null))[_0xa75e('0x26')](function(_0x4cd726){if(_0x4cd726){if(_0x4cd726[_0xa75e('0xdc')]){return _0x4e3370['status'](0x193)[_0xa75e('0x30')]({'status':0x193,'message':_0xa75e('0xe5')});}return db['Attachment'][_0xa75e('0xc8')]({'where':{'id':_0x204cc3['query']['attachId']},'raw':!![]})['then'](handleEntityNotFound(_0x4e3370,null));}})[_0xa75e('0x26')](function(_0x36ab4b){if(_0x36ab4b){var _0x48b52f=_0x36ab4b[_0xa75e('0xe6')]!==null;var _0x56cd19=path[_0xa75e('0xe7')](config[_0xa75e('0xe8')],_0xa75e('0xe9'));if(_0x48b52f){_0x56cd19=path[_0xa75e('0xe7')](_0x56cd19,_0xa75e('0xea'));}var _0x4df0c8=path[_0xa75e('0xe7')](_0x56cd19,_0x36ab4b[_0xa75e('0xe0')]);return _0x4e3370[_0xa75e('0xeb')](_0x4df0c8);}})['catch'](handleError(_0x4e3370,null));};exports[_0xa75e('0xec')]=function(_0x50e518,_0x4746fb){var _0x4aeaab=null;var _0xfff1df=null;var _0x1a587e=null;var _0x56de96=null;if(_0x50e518[_0xa75e('0x3f')]['id']){delete _0x50e518[_0xa75e('0x3f')]['id'];}if(_0x50e518[_0xa75e('0x3f')][_0xa75e('0xed')]){_0x56de96=path['join'](config[_0xa75e('0xe8')],_0xa75e('0xee'),util[_0xa75e('0xef')](_0xa75e('0xf0'),Date[_0xa75e('0xf1')]()));_0x50e518[_0xa75e('0x3f')][_0xa75e('0xf2')]=_0x56de96;}return db[_0xa75e('0x4c')]['find']({'where':{'id':_0x50e518[_0xa75e('0xc4')]['id']},'include':[{'model':db['ChatMessage'],'as':_0xa75e('0xf3'),'include':[{'model':db[_0xa75e('0x81')],'as':_0xa75e('0x81')}]}]})[_0xa75e('0x26')](handleEntityNotFound(_0x4746fb,null))['then'](saveUpdates(_0x50e518[_0xa75e('0x3f')],null))[_0xa75e('0x26')](function(_0x36a5a1){if(_0x36a5a1){_0x4aeaab=_0x36a5a1;return db[_0xa75e('0xc7')][_0xa75e('0x74')]({'where':{'id':_0x4aeaab[_0xa75e('0xa3')]}});}})['then'](function(_0x57dd18){if(_0x57dd18){_0x1a587e=_0x57dd18;return db['CmContact'][_0xa75e('0x74')]({'where':{'id':_0x4aeaab[_0xa75e('0x7c')]}});}})[_0xa75e('0x26')](function(_0x3aeff4){if(_0x3aeff4){_0xfff1df=_0x3aeff4;if(_0x56de96){var _0x3430bd=null;for(var _0x24b861=0x1;_0x24b861<_0x4aeaab[_0xa75e('0xf3')][_0xa75e('0x57')];++_0x24b861){_0x3430bd=_0x4aeaab[_0xa75e('0xf3')][_0x24b861];var _0x358b72=_0x3430bd[_0xa75e('0x83')]?util['format']('%s%d',_0x1a587e[_0xa75e('0xf4')],_0x3430bd[_0xa75e('0x83')]):_0xa75e('0xf5');var _0x3745bc=_0x50e518[_0xa75e('0x3f')][_0xa75e('0xf6')]||util['format'](_0xa75e('0xf7'),_0xa75e('0xf8'),_0x3430bd[_0xa75e('0x7c')]);switch(_0x1a587e[_0xa75e('0xf9')]){case _0xa75e('0xfa'):_0x358b72=_0x3430bd[_0xa75e('0x83')]?util[_0xa75e('0xef')](_0xa75e('0xf7'),_0x1a587e[_0xa75e('0xf4')],_0x3430bd['UserId']):_0xa75e('0xf5');break;case _0xa75e('0xfb'):_0x358b72=_0x3430bd['UserId']?_0x3430bd[_0xa75e('0x81')]['alias']||_0x3430bd[_0xa75e('0x81')]['fullname']:_0xa75e('0xf5');break;case _0xa75e('0xfc'):_0x358b72=_0x3430bd[_0xa75e('0x83')]?_0x3430bd[_0xa75e('0x81')][_0xa75e('0x43')]:_0xa75e('0xf5');break;default:_0x358b72=_0x3430bd[_0xa75e('0x83')]?util[_0xa75e('0xef')](_0xa75e('0xf7'),_0x1a587e['agentAlias'],_0x3430bd[_0xa75e('0x83')]):_0xa75e('0xf5');}var _0xfac42b=util[_0xa75e('0xef')](_0xa75e('0xfd'),moment(_0x3430bd['createdAt'])['format'](_0xa75e('0xfe')),_0x3430bd['direction']==='in'?_0x3745bc:_0x358b72,_0x3430bd[_0xa75e('0x3f')]);if(!_0x3430bd[_0xa75e('0xff')]){fs[_0xa75e('0x100')](_0x56de96,_0xfac42b);}}return db['MailAccount'][_0xa75e('0xc8')]({'where':{'service':!![]},'include':[{'model':db['MailServerOut'],'as':_0xa75e('0x101'),'raw':!![]}]});}}})[_0xa75e('0x26')](function(_0x35189c){if(_0x35189c&&_0x35189c[_0xa75e('0x101')]&&_0x50e518['body']){var _0x52a10c={'tls':{'rejectUnauthorized':![]}};if(_0x35189c[_0xa75e('0x101')]['service']){_0x52a10c[_0xa75e('0x102')]=_0x35189c['Smtp'][_0xa75e('0x102')];}else{_0x52a10c[_0xa75e('0x103')]=_0x35189c[_0xa75e('0x101')][_0xa75e('0x103')];_0x52a10c['port']=_0x35189c[_0xa75e('0x101')]['port'];_0x52a10c[_0xa75e('0x104')]=_0x35189c[_0xa75e('0x101')][_0xa75e('0x104')];}if(_0x35189c[_0xa75e('0x101')][_0xa75e('0x105')]){_0x52a10c[_0xa75e('0x106')]={'user':_0x35189c['Smtp'][_0xa75e('0xa5')],'pass':_0x35189c['Smtp'][_0xa75e('0x107')]};}return respondWithRpcPromise(_0xa75e('0x108'),_0xa75e('0x109'),{'account':_0x52a10c,'message':{'from':util['format']('\x22%s\x22\x20<%s>',_0x35189c['name'],_0x35189c[_0xa75e('0xcf')]||_0x35189c[_0xa75e('0x101')][_0xa75e('0xa5')]),'to':_0x50e518[_0xa75e('0x3f')][_0xa75e('0xed')],'subject':'Mail\x20Transcript','text':util['format'](_0xa75e('0x10a'),_0x50e518[_0xa75e('0x3f')][_0xa75e('0xed')]),'attachments':[{'path':_0x56de96}]}})[_0xa75e('0x26')](function(){return _0x4aeaab;})[_0xa75e('0x49')](function(_0x4c3373){console['error'](_0x4c3373);});}else{return _0x4aeaab;}})[_0xa75e('0x26')](respondWithStatusCode(_0x4746fb,0xc8))[_0xa75e('0x49')](handleError(_0x4746fb,null));};exports['addMessage']=function(_0x476ca8,_0xb85e9f,_0x344ed9){return db['ChatMessage'][_0xa75e('0x74')]({'where':{'id':_0x476ca8[_0xa75e('0xc4')]['id']}})[_0xa75e('0x26')](handleEntityNotFound(_0xb85e9f,null))[_0xa75e('0x26')](function(_0x5e5b72){if(_0x5e5b72){return _0x5e5b72[_0xa75e('0x10b')](_0x476ca8[_0xa75e('0x3f')][_0xa75e('0x10c')],_[_0xa75e('0x10d')](_0x476ca8[_0xa75e('0x3f')],['ids','id'])||{});}})[_0xa75e('0x26')](respondWithResult(_0xb85e9f,null))['catch'](handleError(_0xb85e9f,null));};exports['getMessages']=function(_0x2673fd,_0x529bb1,_0x4d1ab5){var _0x36734e={'raw':![],'where':{}};var _0x23d42d={};var _0x27cee2={'count':0x0,'rows':[]};return db[_0xa75e('0x4c')][_0xa75e('0xc8')]({'where':{'id':_0x2673fd[_0xa75e('0xc4')]['id']}})['then'](handleEntityNotFound(_0x529bb1,null))[_0xa75e('0x26')](function(_0x2e87f4){if(_0x2e87f4){_0x23d42d[_0xa75e('0x54')]=_['keys'](db[_0xa75e('0xd5')][_0xa75e('0x4d')]);_0x23d42d[_0xa75e('0x50')]=_['keys'](_0x2673fd[_0xa75e('0x50')]);_0x23d42d[_0xa75e('0x52')]=_[_0xa75e('0x53')](_0x23d42d[_0xa75e('0x54')],_0x23d42d[_0xa75e('0x50')]);_0x36734e[_0xa75e('0x55')]=_[_0xa75e('0x53')](_0x23d42d[_0xa75e('0x54')],qs[_0xa75e('0x56')](_0x2673fd['query'][_0xa75e('0x56')]));_0x36734e[_0xa75e('0x55')]=_0x36734e['attributes'][_0xa75e('0x57')]?_0x36734e[_0xa75e('0x55')]:_0x23d42d['model'];if(!_0x2673fd[_0xa75e('0x50')]['hasOwnProperty']('nolimit')){_0x36734e[_0xa75e('0x33')]=qs[_0xa75e('0x33')](_0x2673fd[_0xa75e('0x50')][_0xa75e('0x33')]);_0x36734e['offset']=qs[_0xa75e('0x31')](_0x2673fd[_0xa75e('0x50')]['offset']);}_0x36734e[_0xa75e('0x59')]=qs[_0xa75e('0x5a')](_0x2673fd['query'][_0xa75e('0x5a')]);_0x36734e[_0xa75e('0x5b')]=qs[_0xa75e('0x52')](_[_0xa75e('0x5c')](_0x2673fd[_0xa75e('0x50')],_0x23d42d[_0xa75e('0x52')]));_0x36734e[_0xa75e('0x5b')][_0xa75e('0xbb')]=_0x2e87f4['id'];if(_0x2673fd['query']['filter']){_0x36734e[_0xa75e('0x5b')]=_[_0xa75e('0x3e')](_0x36734e['where'],{'$or':_[_0xa75e('0x4b')](_0x36734e[_0xa75e('0x55')],function(_0x2e1dc){var _0x1f5ab5={};_0x1f5ab5[_0x2e1dc]={'$like':'%'+_0x2673fd['query'][_0xa75e('0x95')]+'%'};return _0x1f5ab5;})});}if(_0x2673fd[_0xa75e('0x50')][_0xa75e('0x8b')]){var _0x21f106=_0x2673fd[_0xa75e('0x50')]['$gte']['split'](',');var _0x37a968={};_0x37a968[_0x21f106[0x0]]={'$gte':moment(_0x21f106[0x1])[_0xa75e('0xef')]('YYYY-MM-DD\x20HH:mm:ss')};_0x36734e[_0xa75e('0x5b')]=_['merge'](_0x36734e['where'],_0x37a968);}_0x36734e=_[_0xa75e('0x3e')]({},_0x36734e,_0x2673fd['options']);return db[_0xa75e('0xd5')]['count']({'where':_0x36734e['where']})[_0xa75e('0x26')](function(_0x344da4){_0x27cee2[_0xa75e('0x34')]=_0x344da4;if(_0x2673fd[_0xa75e('0x50')][_0xa75e('0xbf')]){_0x36734e[_0xa75e('0xc0')]=[{'all':!![]}];}return db[_0xa75e('0xd5')]['findAll'](_0x36734e);})[_0xa75e('0x26')](function(_0x3b7809){_0x27cee2[_0xa75e('0xbd')]=_0x3b7809;return _0x27cee2;});}})[_0xa75e('0x26')](respondWithFilteredResult(_0x529bb1,_0x36734e))[_0xa75e('0x49')](handleError(_0x529bb1,null));};exports[_0xa75e('0x10e')]=function(_0x259cb7,_0x219aec,_0x81b42f){var _0x1fe74c={'where':{}},_0x408059={},_0x1fdb70={'count':0x0,'rows':[]};return db[_0xa75e('0x4c')][_0xa75e('0xc8')]({'where':{'id':_0x259cb7['params']['id']}})[_0xa75e('0x26')](handleEntityNotFound(_0x219aec,null))[_0xa75e('0x26')](function(_0x49473b){if(_0x49473b){_0x408059[_0xa75e('0x54')]=_['keys'](db[_0xa75e('0xd5')]['rawAttributes']);_0x408059[_0xa75e('0x50')]=_['keys'](_0x259cb7[_0xa75e('0x50')]);_0x408059[_0xa75e('0x52')]=_[_0xa75e('0x53')](_0x408059[_0xa75e('0x54')],_0x408059[_0xa75e('0x50')]);_0x1fe74c[_0xa75e('0x55')]=_[_0xa75e('0x53')](_0x408059[_0xa75e('0x54')],qs[_0xa75e('0x56')](_0x259cb7[_0xa75e('0x50')][_0xa75e('0x56')]));_0x1fe74c[_0xa75e('0x55')]=_0x1fe74c[_0xa75e('0x55')][_0xa75e('0x57')]?_0x1fe74c['attributes']:_0x408059[_0xa75e('0x54')];if(!_0x259cb7[_0xa75e('0x50')][_0xa75e('0x58')]('nolimit')){_0x1fe74c[_0xa75e('0x33')]=qs[_0xa75e('0x33')](_0x259cb7[_0xa75e('0x50')][_0xa75e('0x33')]);_0x1fe74c['offset']=qs[_0xa75e('0x31')](_0x259cb7[_0xa75e('0x50')][_0xa75e('0x31')]);}_0x1fe74c['order']=qs[_0xa75e('0x5a')](_0x259cb7[_0xa75e('0x50')][_0xa75e('0x5a')]);_0x1fe74c['where']=qs[_0xa75e('0x52')](_[_0xa75e('0x5c')](_0x259cb7['query'],_0x408059['filters']));_0x1fe74c[_0xa75e('0x5b')][_0xa75e('0xbb')]=_0x49473b['id'];if(_0x259cb7[_0xa75e('0x50')][_0xa75e('0x95')]){_0x1fe74c[_0xa75e('0x5b')]=_['merge'](_0x1fe74c['where'],{'$or':_[_0xa75e('0x4b')](_0x1fe74c[_0xa75e('0x55')],function(_0x4d680a){var _0x4b05e3={};_0x4b05e3[_0x4d680a]={'$like':'%'+_0x259cb7[_0xa75e('0x50')][_0xa75e('0x95')]+'%'};return _0x4b05e3;})});}_0x1fe74c[_0xa75e('0x5b')][_0xa75e('0xff')]=![];if(_0x259cb7[_0xa75e('0x50')]['id']){_0x1fe74c[_0xa75e('0x5b')]['id']={'$gt':_0x259cb7[_0xa75e('0x50')]['id']};}_0x1fe74c=_['merge']({},_0x1fe74c,_0x259cb7['options']);return db[_0xa75e('0xd5')][_0xa75e('0x34')]({'where':_0x1fe74c[_0xa75e('0x5b')]})[_0xa75e('0x26')](function(_0x3bf061){_0x1fdb70[_0xa75e('0x34')]=_0x3bf061;_0x1fe74c[_0xa75e('0xc0')]=[];if(_0x259cb7[_0xa75e('0x50')][_0xa75e('0x10f')]){_0x1fe74c[_0xa75e('0xc0')]['push']({'model':db[_0xa75e('0x81')],'as':_0xa75e('0x81'),'attributes':['id','fullname','alias']});}if(_0x259cb7[_0xa75e('0x50')][_0xa75e('0xbf')]){_0x1fe74c[_0xa75e('0xc0')]=[{'all':!![]}];}return db[_0xa75e('0xd5')]['findAll'](_0x1fe74c);})[_0xa75e('0x26')](function(_0x4b7869){_0x1fdb70[_0xa75e('0xbd')]=_0x4b7869;return _0x1fdb70;});}})[_0xa75e('0x26')](respondWithFilteredResult(_0x219aec,_0x1fe74c))[_0xa75e('0x49')](handleError(_0x219aec,null));};exports['addTags']=function(_0x833617,_0x71773e,_0x1fa5a7){return db[_0xa75e('0x4c')][_0xa75e('0x74')]({'where':{'id':_0x833617[_0xa75e('0xc4')]['id']}})['then'](handleEntityNotFound(_0x71773e,null))[_0xa75e('0x26')](function(_0x2df25e){if(_0x2df25e){return _0x2df25e[_0xa75e('0x110')](_0x833617['body'][_0xa75e('0x10c')],_[_0xa75e('0x10d')](_0x833617['body'],['ids','id'])||{})[_0xa75e('0x111')](function(){return db[_0xa75e('0x7e')][_0xa75e('0x112')]({'attributes':['id',_0xa75e('0x3b'),'color'],'where':{'id':_0x833617[_0xa75e('0x3f')][_0xa75e('0x10c')]}});})[_0xa75e('0x26')](function(_0x43904a){socket[_0xa75e('0x113')]('chatInteractionTags:save',{'id':Number(_0x833617[_0xa75e('0xc4')]['id']),'tags':_0x43904a||[]});return{'id':Number(_0x833617['params']['id']),'tags':_0x43904a||[]};});}})[_0xa75e('0x26')](respondWithResult(_0x71773e,null))[_0xa75e('0x49')](handleError(_0x71773e,null));};exports[_0xa75e('0x114')]=function(_0x458f90,_0xea76ef,_0x130dba){return db[_0xa75e('0x4c')]['find']({'where':{'id':_0x458f90['params']['id']}})[_0xa75e('0x26')](handleEntityNotFound(_0xea76ef,null))[_0xa75e('0x26')](function(_0x443763){if(_0x443763){return _0x443763[_0xa75e('0x114')](_0x458f90['query']['ids']);}})[_0xa75e('0x26')](respondWithStatusCode(_0xea76ef,null))[_0xa75e('0x49')](handleError(_0xea76ef,null));};exports[_0xa75e('0xeb')]=function(_0x4c1444,_0x5a4206){var _0x5051bf=moment()['unix']()[_0xa75e('0xa9')]();var _0x1652c7=path[_0xa75e('0xe7')](config['root'],_0xa75e('0x115'),'files',_0xa75e('0x116'));var _0x37489d=path['join'](config[_0xa75e('0xe8')],_0xa75e('0x115'),_0xa75e('0x117'),'attachments');var _0x48b4c2=path[_0xa75e('0xe7')](_0x1652c7,_0x5051bf);var _0x4dbd00=util['format'](_0xa75e('0x118'),_0x4c1444['params']['id'],_0x5051bf);var _0x4485bd=path[_0xa75e('0xe7')](_0x1652c7,_0x4dbd00);var _0x19d62e=[];_0x19d62e[_0xa75e('0x48')]({'model':db[_0xa75e('0x81')],'as':'User','attributes':['id',_0xa75e('0x43')],'raw':!![]});_0x19d62e[_0xa75e('0x48')]({'model':db[_0xa75e('0xd8')],'as':_0xa75e('0x79'),'attributes':['id',_0xa75e('0x119'),_0xa75e('0x11a')],'raw':!![]});if(_0x4c1444[_0xa75e('0x50')]['attachments']){_0x19d62e['push']({'model':db[_0xa75e('0xe3')],'as':_0xa75e('0xe3'),'raw':!![]});}var _0x2620db=[{'model':db[_0xa75e('0xd5')],'as':'Messages','attributes':['id','body',_0xa75e('0x11b'),'direction','secret',_0xa75e('0x90')],'include':_0x19d62e}];_0x2620db[_0xa75e('0x48')]({'model':db[_0xa75e('0xc7')],'as':_0xa75e('0x11c'),'attributes':['id',_0xa75e('0x3b')]});_0x2620db[_0xa75e('0x48')]({'model':db[_0xa75e('0x81')],'as':_0xa75e('0x11d'),'attributes':['id',_0xa75e('0x43')]});return db[_0xa75e('0x4c')][_0xa75e('0x74')]({'where':{'id':_0x4c1444[_0xa75e('0xc4')]['id']},'include':_0x2620db})['then'](handleEntityNotFound(_0x5a4206,null))[_0xa75e('0x26')](function(_0x4aad0e){if(_0x4aad0e){var _0x9d7984=_0x4aad0e[_0xa75e('0x11e')]({'plain':!![]});fs[_0xa75e('0x11f')](_0x48b4c2);var _0x48a793={'channel':_0xa75e('0x120'),'account':_0x9d7984[_0xa75e('0x11c')]['name'],'agent':_0x9d7984[_0xa75e('0x11d')]?_0x9d7984[_0xa75e('0x11d')]['fullname']:_0xa75e('0x121'),'createdAt':moment(_0x9d7984[_0xa75e('0x11b')])[_0xa75e('0xef')](_0xa75e('0x122'))[_0xa75e('0xa9')](),'closedAt':_0x9d7984['closed']?moment(_0x9d7984[_0xa75e('0x123')])[_0xa75e('0xef')](_0xa75e('0x122'))[_0xa75e('0xa9')]():'','disposition':_0x9d7984[_0xa75e('0x124')],'chatInfo':{'browser':_0x9d7984['browserName'],'os':_0x9d7984[_0xa75e('0x125')],'referer':_0x9d7984[_0xa75e('0x126')],'customerIp':_0x9d7984['customerIp'],'customerPort':_0x9d7984[_0xa75e('0x127')]?_0x9d7984[_0xa75e('0x127')]:_0xa75e('0x121')},'messages':_(_0x9d7984['Messages'])[_0xa75e('0x128')]()[_0xa75e('0x95')]({'secret':![]})[_0xa75e('0x4b')](function(_0x543a47){if(_0x543a47[_0xa75e('0xe3')]){var _0xc31372=path[_0xa75e('0xe7')](_0x37489d,_0x543a47[_0xa75e('0xe3')][_0xa75e('0xe0')]);if(fs[_0xa75e('0x129')](_0xc31372)){fs[_0xa75e('0x12a')](_0xc31372)[_0xa75e('0x12b')](fs['createWriteStream'](path[_0xa75e('0xe7')](_0x48b4c2,_0x543a47[_0xa75e('0xe3')][_0xa75e('0xe0')])));}}return{'date':moment(_0x543a47[_0xa75e('0x11b')])['format'](_0xa75e('0x122'))[_0xa75e('0xa9')](),'sender':_0x543a47[_0xa75e('0x12c')]===_0xa75e('0xd4')?_0x543a47[_0xa75e('0x81')]?_0x543a47[_0xa75e('0x81')]['fullname']:_0xa75e('0xf5'):_0x543a47['Contact'][_0xa75e('0x119')]+(_0x543a47[_0xa75e('0x79')][_0xa75e('0x11a')]?'\x20'+_0x543a47['Contact']['lastName']:''),'body':_0x543a47[_0xa75e('0xe3')]?_0x543a47[_0xa75e('0xe3')][_0xa75e('0xe0')]:_0x543a47[_0xa75e('0x3f')],'direction':_0x543a47[_0xa75e('0x12c')]==='out'?'A':'C','secret':_0x543a47['secret'],'read':_0x543a47[_0xa75e('0x90')],'attachment':_0x543a47[_0xa75e('0xe3')]};})['value']()};return ejs[_0xa75e('0x12d')](path[_0xa75e('0xe7')](config[_0xa75e('0xe8')],'server',_0xa75e('0x12e'),_0xa75e('0x12f')),{'interaction':_0x48a793})[_0xa75e('0x26')](function(_0x4ec840){var _0x2a8ab4=path[_0xa75e('0xe7')](_0x48b4c2,'transcript-'+_0x9d7984['id']+'-'+_0x5051bf+'.pdf');var _0x1687e1={'path':_0x2a8ab4,'channel':_0xa75e('0x120'),'interactionId':_0x9d7984['id']};return pdf[_0xa75e('0x130')](_0x4ec840,_0x1687e1);})[_0xa75e('0x26')](function(){return new BPromise(function(_0x3af0df,_0x5c2d9b){zipdir(_0x48b4c2,{'saveTo':_0x4485bd},function(_0x170948,_0x2f17f6){if(_0x170948)return _0x5c2d9b(_0x170948);return _0x3af0df(_0x2f17f6);});})[_0xa75e('0x26')](function(){return new BPromise(function(_0x4cdaf1,_0xc864a7){rimraf(_0x48b4c2,function(_0x5267a9){if(_0x5267a9)_0xc864a7(_0x5267a9);return _0x4cdaf1();});});})['then'](function(){return _0x5a4206[_0xa75e('0xeb')](_0x4485bd,_0x4dbd00,function(_0x5a118a){if(_0x5a118a){console[_0xa75e('0x131')]('err',_0x5a118a);}else{fs[_0xa75e('0x132')](_0x4485bd);}});});});}else{return _0x5a4206[_0xa75e('0x39')](0xc8);}})[_0xa75e('0x49')](handleError(_0x5a4206,null));};