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 _0x1ac8=['tail','existsSync','createReadStream','pipe','lastName','renderFile','views','downloadInteraction.html','transcript-','.pdf','createPdfFromHTML','log','err','unlinkSync','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','bluebird','mustache','util','path','sox','to-csv','ejs','fs-extra','lodash','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/logger','api','../../config/environment','../../config/license/util','../../mysqldb','redis','defaults','localhost','socket.io-emitter','./chatInteraction.socket','register','jayson/promise','client','http','request','ChatInteraction,\x20%s,\x20%s','request\x20sent','debug','stringify','error','code','message','info','result','sendStatus','end','status','offset','undefined','limit','count','set','Content-Range','json','apply','reject','save','update','then','destroy','stack','send','merge','body','contact','agent','interaction','account','map','fullname','TagIds','Tags','split','forEach','push','catch','index','rawAttributes','fieldName','type','model','name','query','filters','attributes','intersection','fields','nolimit','order','sort','where','pick','select','field','color','from','u.id','u.fullname','ui.ChatInteractionId','user_has_chat_interactions','left_join','users','u.id\x20=\x20ui.UserId','chat_interactions','cm_contacts','o.id\x20=\x20i.UserId','chat_websites','a.id\x20=\x20i.ChatWebsiteId','chat_messages','me.ChatInteractionId\x20=\x20i.id','tools_tags','t.id\x20=\x20it.TagId','expr','search','parseSearch','sqlOperator','conditions','length','find','value','having','`\x20=\x200','`\x20>\x200','Contact','operator','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','Tag','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','union','User','CONCAT_WS(\x27\x20\x27,\x20o.name,\x20o.fullname)\x20LIKE\x20?','UserId','some','compact','isEmpty','ChatWebsiteId','i.ChatWebsiteId\x20IN\x20?','concat','createdAt','parse','$gte','$lte','i.createdAt\x20BETWEEN\x20?\x20AND\x20?','\x20=\x20?','read','`unreadMessages`\x20=\x200','`unreadMessages`\x20>\x200','tag','isArray','filter','replace','isNumeric','i.id\x20LIKE\x20?','MATCH\x20(me.body)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','group','i.id','Sequelize','SELECT','unreadMessages','DESC','t.id\x20IN\x20?','i.ChatWebsiteId\x20IS\x20NOT\x20NULL','role','i.ChatWebsiteId\x20IS\x20NULL','user','sequelize','toString','ChatInteraction','a.key','Account.key','a.mandatoryDisposition','CASE\x20WHEN\x20(c.firstName\x20IS\x20NOT\x20NULL\x20AND\x20c.firstName\x20<>\x20\x27\x27)\x20OR\x20(c.lastName\x20IS\x20NOT\x20NULL\x20AND\x20c.lastName\x20<>\x20\x27\x27)\x20THEN\x20CONCAT(IFNULL(c.firstName,\x20\x27\x27),\x20\x27\x20\x27,\x20IFNULL(c.lastName,\x20\x27\x27))\x20ELSE\x20\x27Unknown\x27\x20END','i.*','c.firstName','Contact.lastName','c.email','Contact.email','c.phone','Contact.phone','c.mobile','Contact.mobile','Contact.fax','o.fullname','Owner.fullname','GROUP_CONCAT(DISTINCT\x20t.id)','ui.ChatInteractionId\x20IN\x20?','ChatInteractionId','all','rows','params','keys','include','options','create','describe','createVidaooSession','findOne','ChatWebsite','vidaooTopic','vidaooNote','vidaooMetadata','email','POST','isNull','follow','metadata','ValidationError','Error\x20in\x20Vidaoo\x20configuration','out','ChatMessage','Unable\x20to\x20create\x20Vidaoo\x20session','updateAttributes','customUpdate','CmContact','abandon','abandonInteraction,\x20%s,\x20%s,\x20%s','closed','disposition','AbandonInteraction','attachmentUpload','file','basename','filename','Attachment','attachmentDownload','Unauthorized','attachId','ChatOfflineMessageId','join','root','server/files/attachments/','offline-chat/','close','mailTranscript','transcript-%s.txt','now','Messages','%s%d','agentAlias','customer','format','Visitor','agentIdentifier','website_alias','System','agent_alias','alias','agent_fullname','[%s]\x20%s:\x20%s\x0a','MM/DD/YYYY\x20HH:mm:ss','direction','secret','MailServerOut','Smtp','service','host','port','secure','authentication','auth','pass','\x22%s\x22\x20<%s>','Hi\x20%s,\x20attached\x20you\x20can\x20find\x20your\x20transcript\x20file.\x20\x0a\x0aRegards.\x20\x0a\x0a','addMessage','omit','ids','getMessages','hasOwnProperty','YYYY-MM-DD\x20HH:mm:ss','includeAll','findAll','getMyMessages','includeAgent','addTags','setTags','emit','removeTags','download','unix','server','tmp','files','attachments','transcript-%d-%s.zip','firstName','Account','Owner','mkdirSync','Chat','N.A.','browserName','osName','customerPort'];(function(_0x1a5e85,_0xbe9827){var _0x5bf24f=function(_0xb141e0){while(--_0xb141e0){_0x1a5e85['push'](_0x1a5e85['shift']());}};_0x5bf24f(++_0xbe9827);}(_0x1ac8,0x149));var _0x81ac=function(_0x122ef9,_0x451d2a){_0x122ef9=_0x122ef9-0x0;var _0x42fba0=_0x1ac8[_0x122ef9];return _0x42fba0;};'use strict';var emlformat=require(_0x81ac('0x0'));var rimraf=require(_0x81ac('0x1'));var zipdir=require(_0x81ac('0x2'));var jsonpatch=require(_0x81ac('0x3'));var rp=require(_0x81ac('0x4'));var moment=require('moment');var BPromise=require(_0x81ac('0x5'));var Mustache=require(_0x81ac('0x6'));var util=require(_0x81ac('0x7'));var path=require(_0x81ac('0x8'));var sox=require(_0x81ac('0x9'));var csv=require(_0x81ac('0xa'));var ejs=require(_0x81ac('0xb'));var fs=require('fs');var fs_extra=require(_0x81ac('0xc'));var _=require(_0x81ac('0xd'));var squel=require('squel');var crypto=require(_0x81ac('0xe'));var jsforce=require(_0x81ac('0xf'));var deskjs=require(_0x81ac('0x10'));var toCsv=require(_0x81ac('0xa'));var querystring=require(_0x81ac('0x11'));var Papa=require(_0x81ac('0x12'));var Redis=require(_0x81ac('0x13'));var authService=require(_0x81ac('0x14'));var qs=require(_0x81ac('0x15'));var as=require('../../components/parsers/advancedSearch');var pdf=require('../../components/export/pdf');var hardwareService=require('../../config/license/hardware');var logger=require(_0x81ac('0x16'))(_0x81ac('0x17'));var utils=require('../../config/utils');var config=require(_0x81ac('0x18'));var licenseUtil=require(_0x81ac('0x19'));var db=require(_0x81ac('0x1a'))['db'];config[_0x81ac('0x1b')]=_[_0x81ac('0x1c')](config['redis'],{'host':_0x81ac('0x1d'),'port':0x18eb});var socket=require(_0x81ac('0x1e'))(new Redis(config[_0x81ac('0x1b')]));require(_0x81ac('0x1f'))[_0x81ac('0x20')](socket);var jayson=require(_0x81ac('0x21'));var client=jayson[_0x81ac('0x22')][_0x81ac('0x23')]({'port':0x232b});var client9004=jayson['client']['http']({'port':0x232c});function respondWithRpcPromise(_0x1d5841,_0x15db7d,_0x2c9a5e,_0x888dbd){return new BPromise(function(_0x53f110,_0x35209a){var _0x414ce4=_0x888dbd||client;return _0x414ce4[_0x81ac('0x24')](_0x1d5841,_0x2c9a5e)['then'](function(_0xac5a28){logger['info'](_0x81ac('0x25'),_0x15db7d,_0x81ac('0x26'));logger[_0x81ac('0x27')]('ChatInteraction,\x20%s,\x20%s,\x20%s',_0x15db7d,_0x81ac('0x26'),JSON[_0x81ac('0x28')](_0xac5a28));if(_0xac5a28[_0x81ac('0x29')]){if(_0xac5a28['error'][_0x81ac('0x2a')]===0x1f4){logger[_0x81ac('0x29')]('ChatInteraction,\x20%s,\x20%s',_0x15db7d,_0xac5a28[_0x81ac('0x29')][_0x81ac('0x2b')]);return _0x35209a(_0xac5a28[_0x81ac('0x29')][_0x81ac('0x2b')]);}logger[_0x81ac('0x29')](_0x81ac('0x25'),_0x15db7d,_0xac5a28[_0x81ac('0x29')][_0x81ac('0x2b')]);return _0x53f110(_0xac5a28[_0x81ac('0x29')]['message']);}else{logger[_0x81ac('0x2c')](_0x81ac('0x25'),_0x15db7d,_0x81ac('0x26'));_0x53f110(_0xac5a28[_0x81ac('0x2d')][_0x81ac('0x2b')]);}})['catch'](function(_0x5d81bc){logger[_0x81ac('0x29')](_0x81ac('0x25'),_0x15db7d,_0x5d81bc);_0x35209a(_0x5d81bc);});});}function respondWithStatusCode(_0x2becf9,_0x690320){_0x690320=_0x690320||0xcc;return function(_0x47732f){if(_0x47732f){return _0x2becf9[_0x81ac('0x2e')](_0x690320);}return _0x2becf9['status'](_0x690320)[_0x81ac('0x2f')]();};}function respondWithResult(_0x3f90af,_0xd5191a){_0xd5191a=_0xd5191a||0xc8;return function(_0x1698d7){if(_0x1698d7){return _0x3f90af[_0x81ac('0x30')](_0xd5191a)['json'](_0x1698d7);}};}function respondWithFilteredResult(_0x2d550b,_0x4ec46e){return function(_0x9acfb9){if(_0x9acfb9){var _0x375222=typeof _0x4ec46e[_0x81ac('0x31')]===_0x81ac('0x32')&&typeof _0x4ec46e[_0x81ac('0x33')]===_0x81ac('0x32');var _0x4ba318=_0x9acfb9[_0x81ac('0x34')];var _0x1be9b8=_0x375222?0x0:_0x4ec46e[_0x81ac('0x31')];var _0x1a4ee2=_0x375222?_0x9acfb9[_0x81ac('0x34')]:_0x4ec46e['offset']+_0x4ec46e[_0x81ac('0x33')];var _0x55870b;if(_0x1a4ee2>=_0x4ba318){_0x1a4ee2=_0x4ba318;_0x55870b=0xc8;}else{_0x55870b=0xce;}_0x2d550b[_0x81ac('0x30')](_0x55870b);return _0x2d550b[_0x81ac('0x35')](_0x81ac('0x36'),_0x1be9b8+'-'+_0x1a4ee2+'/'+_0x4ba318)[_0x81ac('0x37')](_0x9acfb9);}return null;};}function patchUpdates(_0x1b07b3){return function(_0x2e280c){try{jsonpatch[_0x81ac('0x38')](_0x2e280c,_0x1b07b3,!![]);}catch(_0x175a7b){return BPromise[_0x81ac('0x39')](_0x175a7b);}return _0x2e280c[_0x81ac('0x3a')]();};}function saveUpdates(_0xbcefea,_0x132ce9){return function(_0x43d25f){if(_0x43d25f){return _0x43d25f[_0x81ac('0x3b')](_0xbcefea)[_0x81ac('0x3c')](function(_0x10b246){return _0x10b246;});}return null;};}function removeEntity(_0x171d42,_0x19c926){return function(_0x14e864){if(_0x14e864){return _0x14e864[_0x81ac('0x3d')]()['then'](function(){_0x171d42[_0x81ac('0x30')](0xcc)[_0x81ac('0x2f')]();});}};}function handleEntityNotFound(_0x558da3,_0x181f6b){return function(_0x3ac5f7){if(!_0x3ac5f7){_0x558da3[_0x81ac('0x2e')](0x194);}return _0x3ac5f7;};}function handleError(_0x4f71d4,_0x55ecea){_0x55ecea=_0x55ecea||0x1f4;return function(_0x3fbfbc){logger[_0x81ac('0x29')](_0x3fbfbc[_0x81ac('0x3e')]);if(_0x3fbfbc['name']){delete _0x3fbfbc['name'];}_0x4f71d4[_0x81ac('0x30')](_0x55ecea)[_0x81ac('0x3f')](_0x3fbfbc);};}function getMustacheRender(_0x222209,_0x359c30){return Mustache['render'](_0x222209,_[_0x81ac('0x40')](_0x359c30[_0x81ac('0x41')],{'contact':_0x359c30[_0x81ac('0x42')],'message':_0x359c30[_0x81ac('0x2b')],'agent':_0x359c30[_0x81ac('0x43')],'interaction':_0x359c30[_0x81ac('0x44')],'account':_0x359c30[_0x81ac('0x45')]}))||'';}function getInteractionUsers(_0x543bac,_0x4991ed){return new BPromise(function(_0x114cf5,_0x2fe946){try{if(_0x4991ed[_0x543bac['id']]){_0x543bac['Users']=_[_0x81ac('0x46')](_0x4991ed[_0x543bac['id']],function(_0x29860b){return{'id':_0x29860b['id'],'fullname':_0x29860b[_0x81ac('0x47')]};});}}catch(_0x41be9d){_0x2fe946(_0x41be9d);}_0x114cf5(_0x543bac);});}function getInteractionTags(_0x10b06f,_0x3aafcd){return new BPromise(function(_0x41c638,_0x5e1d7e){try{if(_0x10b06f[_0x81ac('0x48')]){_0x10b06f[_0x81ac('0x49')]=[];_0x10b06f[_0x81ac('0x48')][_0x81ac('0x4a')](',')[_0x81ac('0x4b')](function(_0x46104c){_0x10b06f[_0x81ac('0x49')][_0x81ac('0x4c')](_0x3aafcd[_0x46104c]);});}delete _0x10b06f[_0x81ac('0x48')];}catch(_0x3f4ce2){_0x5e1d7e(_0x3f4ce2);}_0x41c638(_0x10b06f);});}function updateChatInteraction(_0x1d8aeb,_0x3dcef9,_0x80dbe0){return new BPromise(function(_0x58b898,_0x5eb03c){return getInteractionUsers(_0x1d8aeb,_0x80dbe0)[_0x81ac('0x3c')](function(_0xf509e6){return getInteractionTags(_0xf509e6,_0x3dcef9);})[_0x81ac('0x3c')](function(_0x23ebf9){_0x58b898(_0x23ebf9);})[_0x81ac('0x4d')](function(_0x24d98e){_0x5eb03c(_0x24d98e);});});}exports[_0x81ac('0x4e')]=function(_0x10da54,_0x641cfe){var _0x25566e={},_0x5aa742={},_0x56b346={'count':0x0,'rows':[]};var _0x3a7f04=_[_0x81ac('0x46')](db['ChatInteraction'][_0x81ac('0x4f')],function(_0x133d3b){return{'name':_0x133d3b[_0x81ac('0x50')],'type':_0x133d3b[_0x81ac('0x51')]['key']};});_0x5aa742[_0x81ac('0x52')]=_[_0x81ac('0x46')](_0x3a7f04,_0x81ac('0x53'));_0x5aa742[_0x81ac('0x54')]=_['keys'](_0x10da54[_0x81ac('0x54')]);_0x5aa742[_0x81ac('0x55')]=_['intersection'](_0x5aa742['model'],_0x5aa742[_0x81ac('0x54')]);_0x25566e[_0x81ac('0x56')]=_[_0x81ac('0x57')](_0x5aa742[_0x81ac('0x52')],qs[_0x81ac('0x58')](_0x10da54['query']['fields']));_0x25566e[_0x81ac('0x56')]=_0x25566e[_0x81ac('0x56')]['length']?_0x25566e[_0x81ac('0x56')]:_0x5aa742[_0x81ac('0x52')];if(!_0x10da54[_0x81ac('0x54')]['hasOwnProperty'](_0x81ac('0x59'))){_0x25566e['limit']=qs[_0x81ac('0x33')](_0x10da54['query'][_0x81ac('0x33')]);_0x25566e[_0x81ac('0x31')]=qs['offset'](_0x10da54[_0x81ac('0x54')]['offset']);}_0x25566e[_0x81ac('0x5a')]=qs[_0x81ac('0x5b')](_0x10da54[_0x81ac('0x54')]['sort']);_0x25566e[_0x81ac('0x5c')]=qs['filters'](_[_0x81ac('0x5d')](_0x10da54[_0x81ac('0x54')],_0x5aa742[_0x81ac('0x55')]),_0x3a7f04);var _0x49ace1=[];var _0x4d5b28=squel[_0x81ac('0x5e')]()[_0x81ac('0x5f')]('id')[_0x81ac('0x5f')](_0x81ac('0x53'))[_0x81ac('0x5f')](_0x81ac('0x60'))[_0x81ac('0x61')]('tools_tags');var _0x480413=squel[_0x81ac('0x5e')]()[_0x81ac('0x5f')](_0x81ac('0x62'))[_0x81ac('0x5f')](_0x81ac('0x63'))[_0x81ac('0x5f')](_0x81ac('0x64'))[_0x81ac('0x61')](_0x81ac('0x65'),'ui')[_0x81ac('0x66')](_0x81ac('0x67'),'u',_0x81ac('0x68'));var _0x4480eb=squel[_0x81ac('0x5e')]()['from'](_0x81ac('0x69'),'i')[_0x81ac('0x66')](_0x81ac('0x6a'),'c','c.id\x20=\x20i.ContactId\x20AND\x20c.deletedAt\x20IS\x20NULL')[_0x81ac('0x66')](_0x81ac('0x67'),'o',_0x81ac('0x6b'))[_0x81ac('0x66')](_0x81ac('0x6c'),'a',_0x81ac('0x6d'))[_0x81ac('0x66')](_0x81ac('0x6e'),'me',_0x81ac('0x6f'))[_0x81ac('0x66')]('chat_interaction_has_tags','it','it.ChatInteractionId\x20=\x20i.id')['left_join'](_0x81ac('0x70'),'t',_0x81ac('0x71'));var _0x1657d6=squel[_0x81ac('0x72')]();var _0x610ce7=[];var _0x193d55=squel[_0x81ac('0x72')]();var _0xb5adfc;if(_0x10da54['query'][_0x81ac('0x73')]){_0xb5adfc=as[_0x81ac('0x74')](_0x10da54[_0x81ac('0x54')][_0x81ac('0x73')]);var _0x28b2f1=_0xb5adfc[_0x81ac('0x75')];for(var _0x2e820e=0x0;_0x2e820e<_0xb5adfc[_0x81ac('0x76')][_0x81ac('0x77')];_0x2e820e++){var _0x413ec2=_0xb5adfc[_0x81ac('0x76')][_0x2e820e];var _0x178d77='i';var _0x5594ce=_[_0x81ac('0x78')](_0x3a7f04,[_0x81ac('0x53'),_0x413ec2[_0x81ac('0x5f')]]);if(!_0x5594ce){switch(_0x413ec2[_0x81ac('0x5f')]){case'unreadMessages':if(_0x413ec2[_0x81ac('0x79')]==0x1){_0x4480eb[_0x81ac('0x7a')]('`'+_0x413ec2[_0x81ac('0x5f')]+_0x81ac('0x7b'));}else{_0x4480eb[_0x81ac('0x7a')]('`'+_0x413ec2[_0x81ac('0x5f')]+_0x81ac('0x7c'));}break;case _0x81ac('0x7d'):if(_0x413ec2[_0x81ac('0x7e')]==='$substring'){if(_0x413ec2[_0x81ac('0x79')][_0x81ac('0x4a')]('\x20')['length']>0x1){_0x1657d6[_0x28b2f1](_0x81ac('0x7f'),qs[_0x81ac('0x80')](_0x413ec2[_0x81ac('0x79')]),null);}else{var _0x31172b='%'+_0x413ec2['value']+'%';_0x1657d6[_0x28b2f1](_0x81ac('0x81'),_0x31172b,_0x31172b,_0x31172b);}}else{_0x5594ce=_[_0x81ac('0x78')](_0x3a7f04,[_0x81ac('0x53'),'ContactId']);_0x413ec2['field']=_0x81ac('0x82');_0x463b45=as[_0x81ac('0x83')](_0x178d77,_0x5594ce[_0x81ac('0x51')],_0x413ec2);_0x1657d6[_0x28b2f1](_0x463b45[_0x81ac('0x84')],_0x463b45[_0x81ac('0x79')][_0x81ac('0x85')],_0x463b45[_0x81ac('0x79')][_0x81ac('0x2f')]);}break;case _0x81ac('0x86'):var _0x599870=_0x413ec2[_0x81ac('0x79')][_0x81ac('0x4a')](',')[_0x81ac('0x46')](function(_0x5291af){return Number(_0x5291af);});_0x599870['forEach'](function(_0x284c1d){_0x193d55['or'](_0x81ac('0x87'),'%,'+_0x284c1d+',%');});_0x610ce7=_[_0x81ac('0x88')](_0x610ce7,_0x599870);break;case _0x81ac('0x89'):if(_0x413ec2[_0x81ac('0x7e')]==='$substring'){_0x1657d6[_0x28b2f1](_0x81ac('0x8a'),'%'+_0x413ec2[_0x81ac('0x79')]+'%',null);}else{_0x5594ce=_[_0x81ac('0x78')](_0x3a7f04,[_0x81ac('0x53'),_0x81ac('0x8b')]);_0x413ec2[_0x81ac('0x5f')]='UserId';_0x463b45=as[_0x81ac('0x83')](_0x178d77,_0x5594ce[_0x81ac('0x51')],_0x413ec2);_0x1657d6[_0x28b2f1](_0x463b45[_0x81ac('0x84')],_0x463b45['value'][_0x81ac('0x85')],_0x463b45[_0x81ac('0x79')][_0x81ac('0x2f')]);}break;case _0x81ac('0x41'):_0x463b45=as[_0x81ac('0x83')]('me',null,_0x413ec2);_0x1657d6[_0x28b2f1](_0x463b45[_0x81ac('0x84')],_0x463b45[_0x81ac('0x79')][_0x81ac('0x85')],_0x463b45[_0x81ac('0x79')][_0x81ac('0x2f')]);break;}}else{var _0x463b45=as[_0x81ac('0x83')](_0x178d77,_0x5594ce['type'],_0x413ec2);_0x1657d6[_0x28b2f1](_0x463b45['text'],_0x463b45[_0x81ac('0x79')][_0x81ac('0x85')],_0x463b45[_0x81ac('0x79')][_0x81ac('0x2f')]);}}}else{var _0x37c151=_(_0x10da54['query'])['keys']()[_0x81ac('0x46')](function(_0x50ecd6){return _[_0x81ac('0x8c')](_0x3a7f04,[_0x81ac('0x53'),_0x50ecd6])?_0x50ecd6:undefined;})[_0x81ac('0x8d')]()[_0x81ac('0x79')]();if(!_[_0x81ac('0x8e')](_0x37c151)){_0x37c151[_0x81ac('0x4b')](function(_0x497fe0){if(_0x497fe0===_0x81ac('0x8f')){_0x4480eb[_0x81ac('0x5c')](_0x81ac('0x90'),[][_0x81ac('0x91')](_0x10da54[_0x81ac('0x54')][_0x497fe0]));}else if(_0x497fe0===_0x81ac('0x92')){var _0x90fb10=JSON[_0x81ac('0x93')](_0x10da54[_0x81ac('0x54')][_0x497fe0])[_0x81ac('0x94')];var _0xbee2a5=JSON[_0x81ac('0x93')](_0x10da54[_0x81ac('0x54')][_0x497fe0])[_0x81ac('0x95')];_0x4480eb[_0x81ac('0x5c')](_0x81ac('0x96'),_0x90fb10,_0xbee2a5);}else{if(_0x10da54[_0x81ac('0x54')][_0x497fe0]==='null'){_0x4480eb[_0x81ac('0x5c')]('i.'+_0x497fe0+'\x20IS\x20NULL');}else{_0x4480eb[_0x81ac('0x5c')]('i.'+_0x497fe0+_0x81ac('0x97'),_0x10da54[_0x81ac('0x54')][_0x497fe0]);}}});}if(_0x10da54['query'][_0x81ac('0x98')]){if(_0x10da54['query'][_0x81ac('0x98')]==0x1){_0x4480eb['having'](_0x81ac('0x99'));}else{_0x4480eb[_0x81ac('0x7a')](_0x81ac('0x9a'));}}if(_0x10da54[_0x81ac('0x54')][_0x81ac('0x9b')]){_0x610ce7=_[_0x81ac('0x9c')](_0x10da54[_0x81ac('0x54')]['tag'])?_0x10da54[_0x81ac('0x54')][_0x81ac('0x9b')]:new Array(_0x10da54[_0x81ac('0x54')][_0x81ac('0x9b')]);_0x610ce7['forEach'](function(_0x44e9b1){_0x193d55['or'](_0x81ac('0x87'),'%,'+_0x44e9b1+',%');});}if(_0x10da54['query']['filter']){var _0x58604e=_0x10da54[_0x81ac('0x54')][_0x81ac('0x9d')][_0x81ac('0x9e')]('\x5c','\x5c\x5c')[_0x81ac('0x9e')](/'/g,'\x27\x27');if(qs[_0x81ac('0x9f')](_0x58604e)){_0x1657d6['or'](_0x81ac('0xa0'),_0x58604e+'%');}else{_0x1657d6['or'](_0x81ac('0xa1'),qs[_0x81ac('0x80')](_0x58604e))['or']('CONCAT(c.firstName,\x20\x27\x20\x27,\x20c.lastName)\x20LIKE\x20?',_0x58604e+'%');}}}_0x4480eb[_0x81ac('0x5c')](_0x1657d6);_0x4480eb[_0x81ac('0xa2')](_0x81ac('0xa3'));var _0x256c69={'type':db[_0x81ac('0xa4')]['QueryTypes'][_0x81ac('0xa5')],'raw':!![]};var _0x44c663=_0x4480eb['clone']();_0x44c663['field']('i.id');_0x44c663[_0x81ac('0x5f')]('SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)',_0x81ac('0xa6'));if(_0x25566e['order']){_0x25566e[_0x81ac('0x5a')][_0x81ac('0x4b')](function(_0x48bd85){var _0xe26ef9=_0x48bd85[0x0]==='contactName'?_0x48bd85[0x0]:'i.'+_0x48bd85[0x0];_0x4480eb[_0x81ac('0x5a')](_0xe26ef9,_0x48bd85[0x1]===_0x81ac('0xa7')?![]:!![]);});}if(!_[_0x81ac('0x8e')](_0x610ce7)){_0x4480eb[_0x81ac('0x7a')](_0x193d55);_0x44c663[_0x81ac('0x5c')](_0x81ac('0xa8'),_0x610ce7);}BPromise['resolve']()[_0x81ac('0x3c')](function(){if(!_0xb5adfc){if(_0x10da54[_0x81ac('0x54')][_0x81ac('0x8f')])return;_0x44c663['where'](_0x81ac('0xa9'));_0x4480eb['where'](_0x81ac('0xa9'));return;}if(_0x10da54['user'][_0x81ac('0xaa')]!==_0x81ac('0x43'))return;return _0x10da54['user']['getChatWebsites']({'attributes':['id'],'raw':!![]})['then'](function(_0x48d959){if(_[_0x81ac('0x8e')](_0x48d959)){_0x44c663[_0x81ac('0x5c')](_0x81ac('0xab'));_0x4480eb[_0x81ac('0x5c')](_0x81ac('0xab'));}else{_0x44c663['where'](_0x81ac('0x90'),_[_0x81ac('0x46')](_0x48d959,'id'));_0x4480eb[_0x81ac('0x5c')]('i.ChatWebsiteId\x20IN\x20?',_[_0x81ac('0x46')](_0x48d959,'id'));}});})[_0x81ac('0x3c')](function(){if(_0x10da54[_0x81ac('0xac')][_0x81ac('0xaa')]==='agent'&&!_0xb5adfc&&!_0x10da54[_0x81ac('0x54')]['ChatWebsiteId'])return[];return db[_0x81ac('0xad')][_0x81ac('0x54')](_0x44c663[_0x81ac('0xae')](),_0x256c69);})[_0x81ac('0x3c')](function(_0x576ef3){_0x56b346[_0x81ac('0x34')]=_0x576ef3['length'];if(_0x56b346[_0x81ac('0x34')]===0x0)return[];return db[_0x81ac('0xad')]['query'](_0x4d5b28[_0x81ac('0xae')](),_0x256c69)[_0x81ac('0x3c')](function(_0x21409b){_0x49ace1=_['keyBy'](_0x21409b,'id');_0x256c69=_[_0x81ac('0x40')](_0x256c69,{'model':db[_0x81ac('0xaf')],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0x10da54[_0x81ac('0x54')]['fields']){_0x25566e[_0x81ac('0x56')][_0x81ac('0x4b')](function(_0x1f28c3){_0x4480eb['field']('i.'+_0x1f28c3);});}else{_0x4480eb['field']('SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','unreadMessages');_0x4480eb[_0x81ac('0x5f')](_0x81ac('0xb0'),_0x81ac('0xb1'));_0x4480eb['field'](_0x81ac('0xb2'),'Account.mandatoryDisposition');_0x4480eb[_0x81ac('0x5f')](_0x81ac('0xb3'),'contactName');_0x4480eb[_0x81ac('0x5f')](_0x81ac('0xb4'));_0x4480eb['field'](_0x81ac('0xb5'),'Contact.firstName');_0x4480eb[_0x81ac('0x5f')]('c.lastName',_0x81ac('0xb6'));_0x4480eb[_0x81ac('0x5f')](_0x81ac('0xb7'),_0x81ac('0xb8'));_0x4480eb[_0x81ac('0x5f')](_0x81ac('0xb9'),_0x81ac('0xba'));_0x4480eb[_0x81ac('0x5f')](_0x81ac('0xbb'),_0x81ac('0xbc'));_0x4480eb[_0x81ac('0x5f')]('c.fax',_0x81ac('0xbd'));_0x4480eb[_0x81ac('0x5f')](_0x81ac('0xbe'),_0x81ac('0xbf'));_0x4480eb[_0x81ac('0x5f')]('o.internal','Owner.internal');_0x4480eb['field'](_0x81ac('0xc0'),'TagIds');}if(_0x25566e[_0x81ac('0x33')])_0x4480eb[_0x81ac('0x33')](_0x25566e[_0x81ac('0x33')]);if(_0x25566e[_0x81ac('0x31')])_0x4480eb['offset'](_0x25566e[_0x81ac('0x31')]);return db[_0x81ac('0xad')][_0x81ac('0x54')](_0x4480eb[_0x81ac('0xae')](),_0x256c69);})[_0x81ac('0x3c')](function(_0x56fe2a){if(_0x56fe2a[_0x81ac('0x77')]>0x0)_0x480413['where'](_0x81ac('0xc1'),_[_0x81ac('0x46')](_0x56fe2a,'id'));return db[_0x81ac('0xad')][_0x81ac('0x54')](_0x480413['toString'](),_0x256c69)[_0x81ac('0x3c')](function(_0x40269c){var _0x49d378=_['groupBy'](_0x40269c,_0x81ac('0xc2'));var _0x4542c7=[];_0x56fe2a[_0x81ac('0x4b')](function(_0x2d19fd){_0x4542c7[_0x81ac('0x4c')](updateChatInteraction(_0x2d19fd,_0x49ace1,_0x49d378));});return BPromise[_0x81ac('0xc3')](_0x4542c7);});});})['then'](function(_0x2a81f9){_0x56b346[_0x81ac('0xc4')]=_0x2a81f9;return _0x56b346;})['then'](respondWithFilteredResult(_0x641cfe,_0x25566e))[_0x81ac('0x4d')](handleError(_0x641cfe,null));};exports['show']=function(_0x82a14f,_0x7cd47f){var _0x4aed0a={'raw':![],'where':{'id':_0x82a14f[_0x81ac('0xc5')]['id']}},_0x251c14={};_0x251c14[_0x81ac('0x52')]=_[_0x81ac('0xc6')](db[_0x81ac('0xaf')][_0x81ac('0x4f')]);_0x251c14['query']=_[_0x81ac('0xc6')](_0x82a14f[_0x81ac('0x54')]);_0x251c14[_0x81ac('0x55')]=_[_0x81ac('0x57')](_0x251c14[_0x81ac('0x52')],_0x251c14[_0x81ac('0x54')]);_0x4aed0a[_0x81ac('0x56')]=_[_0x81ac('0x57')](_0x251c14[_0x81ac('0x52')],qs[_0x81ac('0x58')](_0x82a14f[_0x81ac('0x54')][_0x81ac('0x58')]));_0x4aed0a[_0x81ac('0x56')]=_0x4aed0a['attributes'][_0x81ac('0x77')]?_0x4aed0a[_0x81ac('0x56')]:_0x251c14[_0x81ac('0x52')];if(_0x82a14f[_0x81ac('0x54')]['includeAll']){_0x4aed0a[_0x81ac('0xc7')]=[{'all':!![]}];}_0x4aed0a=_[_0x81ac('0x40')]({},_0x4aed0a,_0x82a14f[_0x81ac('0xc8')]);return db[_0x81ac('0xaf')]['find'](_0x4aed0a)[_0x81ac('0x3c')](handleEntityNotFound(_0x7cd47f,null))['then'](respondWithResult(_0x7cd47f,null))[_0x81ac('0x4d')](handleError(_0x7cd47f,null));};exports[_0x81ac('0xc9')]=function(_0x4139dd,_0x4db64e){return db['ChatInteraction']['create'](_0x4139dd[_0x81ac('0x41')],{})[_0x81ac('0x3c')](respondWithResult(_0x4db64e,0xc9))['catch'](handleError(_0x4db64e,null));};exports['update']=function(_0x4facd2,_0x2cee28){if(_0x4facd2[_0x81ac('0x41')]['id']){delete _0x4facd2[_0x81ac('0x41')]['id'];}return db[_0x81ac('0xaf')]['find']({'where':{'id':_0x4facd2[_0x81ac('0xc5')]['id']}})[_0x81ac('0x3c')](handleEntityNotFound(_0x2cee28,null))[_0x81ac('0x3c')](saveUpdates(_0x4facd2[_0x81ac('0x41')],null))[_0x81ac('0x3c')](respondWithResult(_0x2cee28,null))[_0x81ac('0x4d')](handleError(_0x2cee28,null));};exports[_0x81ac('0x3d')]=function(_0x313957,_0x2283df){return db['ChatInteraction'][_0x81ac('0x78')]({'where':{'id':_0x313957[_0x81ac('0xc5')]['id']}})[_0x81ac('0x3c')](handleEntityNotFound(_0x2283df,null))[_0x81ac('0x3c')](removeEntity(_0x2283df,null))[_0x81ac('0x4d')](handleError(_0x2283df,null));};exports['describe']=function(_0x208654,_0x890860){return db[_0x81ac('0xaf')][_0x81ac('0xca')]()['then'](respondWithResult(_0x890860,null))[_0x81ac('0x4d')](handleError(_0x890860,null));};exports[_0x81ac('0xcb')]=function(_0x2bbfe7,_0x427cf6){var _0x3dc368=_0x2bbfe7[_0x81ac('0xc5')]['id'];var _0x31f9de;var _0x3ebf12;var _0x3ee953;return db[_0x81ac('0xaf')][_0x81ac('0xcc')]({'where':{'id':_0x3dc368}})[_0x81ac('0x3c')](function(_0x5bf147){_0x31f9de=_0x5bf147;return db[_0x81ac('0xcd')][_0x81ac('0xcc')]({'where':{'id':_0x5bf147[_0x81ac('0x8f')]},'attributes':['id','vidaooApiKey','vidaooEscalation',_0x81ac('0xce'),_0x81ac('0xcf'),_0x81ac('0xd0')],'raw':!![]});})[_0x81ac('0x3c')](function(_0x35d76c){if(_0x35d76c&&_0x35d76c['vidaooApiKey']&&_0x35d76c['vidaooEscalation']){_0x3ebf12=_0x35d76c;var _0x47d11d={'interaction':{'id':_0x3dc368},'agent':{'id':_0x2bbfe7[_0x81ac('0xac')]['id'],'name':_0x2bbfe7[_0x81ac('0xac')][_0x81ac('0x53')],'fullname':_0x2bbfe7[_0x81ac('0xac')][_0x81ac('0x47')],'email':_0x2bbfe7['user'][_0x81ac('0xd1')]},'contact':_0x2bbfe7['body'][_0x81ac('0x42')],'account':_0x2bbfe7[_0x81ac('0x41')][_0x81ac('0x45')]};var _0x5402cb={'rejectUnauthorized':![],'method':_0x81ac('0xd2'),'url':'https://api-vidaoo.xcally.com/api/v1/meetings','headers':{'X-APIKEY':_0x35d76c['vidaooApiKey']},'body':{'duration':null,'scheduledAt':null,'participants':[_0x2bbfe7['user']['email']],'buttons':null,'topic':_0x3ebf12[_0x81ac('0xce')],'note':_[_0x81ac('0xd3')](_0x3ebf12[_0x81ac('0xcf')])?null:getMustacheRender(_0x3ebf12[_0x81ac('0xcf')],_0x47d11d),'metadata':null},'redirect':_0x81ac('0xd4'),'json':!![]};try{if(!_[_0x81ac('0xd3')](_0x3ebf12['vidaooMetadata'])){var _0x4b1560=getMustacheRender(_0x3ebf12[_0x81ac('0xd0')],_0x47d11d);var _0x229bbe=JSON[_0x81ac('0x93')](_0x4b1560);_0x5402cb[_0x81ac('0x41')][_0x81ac('0xd5')]=_0x229bbe;}}catch(_0x5c35f3){throw new db[(_0x81ac('0xa4'))][(_0x81ac('0xd6'))]('Error\x20in\x20conversion\x20vidaooMetadata');}return rp(_0x5402cb);}else{throw new db[(_0x81ac('0xa4'))]['ValidationError'](_0x81ac('0xd7'));}})[_0x81ac('0x3c')](function(_0x2d7699){_0x3ee953=_0x2d7699;if(_0x3ee953['id']){var _0xef39cd={'body':_0x3ee953['join_url'],'ChatWebsiteId':_0x3ebf12['id'],'ChatInteractionId':_0x31f9de['id'],'direction':_0x81ac('0xd8'),'UserId':_0x2bbfe7[_0x81ac('0xac')]['id']};return db[_0x81ac('0xd9')][_0x81ac('0xc9')](_0xef39cd,{});}else{throw new db['Sequelize'][(_0x81ac('0xd6'))](_0x81ac('0xda'));}})[_0x81ac('0x3c')](function(){return _0x31f9de[_0x81ac('0xdb')]({'vidaooSessionId':_0x3ee953['id']});})[_0x81ac('0x3c')](respondWithResult(_0x427cf6,null))[_0x81ac('0x4d')](handleError(_0x427cf6,null));};exports[_0x81ac('0xdc')]=function(_0xebe80a,_0x177b25){if(_0xebe80a[_0x81ac('0x41')]['id']){delete _0xebe80a[_0x81ac('0x41')]['id'];}return db[_0x81ac('0xaf')][_0x81ac('0x78')]({'where':{'id':_0xebe80a[_0x81ac('0xc5')]['id']},'include':[{'model':db[_0x81ac('0xdd')],'as':_0x81ac('0x7d')}]})[_0x81ac('0x3c')](handleEntityNotFound(_0x177b25,null))[_0x81ac('0x3c')](saveUpdates(_0xebe80a[_0x81ac('0x41')],null))[_0x81ac('0x3c')](respondWithResult(_0x177b25,null))[_0x81ac('0x4d')](handleError(_0x177b25,null));};exports[_0x81ac('0xde')]=function(_0x2b8625,_0x637bff,_0x3d1fe5){if(_0x2b8625['body']['id']){delete _0x2b8625[_0x81ac('0x41')]['id'];}return db[_0x81ac('0xaf')][_0x81ac('0x78')]({'where':{'id':_0x2b8625[_0x81ac('0xc5')]['id']}})[_0x81ac('0x3c')](function(_0x1a525f){if(!_0x1a525f){logger[_0x81ac('0x29')](_0x81ac('0xdf'),'abandon',0x194,'entity\x20not\x20found');_0x637bff[_0x81ac('0x2e')](0x194);}else{if(_0x1a525f[_0x81ac('0x8b')]){throw new db[(_0x81ac('0xa4'))][(_0x81ac('0xd6'))]('Interaction\x20already\x20assigned');}}return _0x1a525f;})[_0x81ac('0x3c')](function(_0x351b66){if(_0x351b66){return _0x351b66[_0x81ac('0x3b')]({'closed':_0x2b8625['body'][_0x81ac('0xe0')],'disposition':_0x2b8625[_0x81ac('0x41')][_0x81ac('0xe1')]})['then'](function(_0x446e59){return _0x446e59;});}})[_0x81ac('0x3c')](function(_0x576678){return respondWithRpcPromise(_0x81ac('0xe2'),_0x81ac('0xde'),_0x2b8625['body'],client9004);})[_0x81ac('0x3c')](respondWithResult(_0x637bff,null))[_0x81ac('0x4d')](handleError(_0x637bff,null));};exports[_0x81ac('0xe3')]=function(_0xc54932,_0x201ba1,_0x14facc){_0xc54932['body']['name']=_0xc54932[_0x81ac('0xe4')]['originalname'];_0xc54932['body'][_0x81ac('0xe5')]=_0xc54932[_0x81ac('0xe4')][_0x81ac('0xe6')];_0xc54932[_0x81ac('0x41')][_0x81ac('0x51')]=_0xc54932['file']['mimetype'];return db[_0x81ac('0xe7')][_0x81ac('0xc9')](_0xc54932[_0x81ac('0x41')])['then'](respondWithResult(_0x201ba1,0xc9))[_0x81ac('0x4d')](handleError(_0x201ba1,null));};exports[_0x81ac('0xe8')]=function(_0x4356c6,_0x1a5dc2,_0x2dc9ad){return db[_0x81ac('0xaf')][_0x81ac('0xcc')]({'where':{'id':_0x4356c6[_0x81ac('0xc5')]['id']},'raw':!![]})[_0x81ac('0x3c')](handleEntityNotFound(_0x1a5dc2,null))[_0x81ac('0x3c')](function(_0x10dd76){if(_0x10dd76){if(_0x10dd76[_0x81ac('0xe0')]){return _0x1a5dc2['status'](0x193)['json']({'status':0x193,'message':_0x81ac('0xe9')});}return db[_0x81ac('0xe7')][_0x81ac('0xcc')]({'where':{'id':_0x4356c6[_0x81ac('0x54')][_0x81ac('0xea')]},'raw':!![]})['then'](handleEntityNotFound(_0x1a5dc2,null));}})[_0x81ac('0x3c')](function(_0x33e4b1){if(_0x33e4b1){var _0x59a3c5=_0x33e4b1[_0x81ac('0xeb')]!==null;var _0x5d62c2=path[_0x81ac('0xec')](config[_0x81ac('0xed')],_0x81ac('0xee'));if(_0x59a3c5){_0x5d62c2=path[_0x81ac('0xec')](_0x5d62c2,_0x81ac('0xef'));}var _0x4c880a=path['join'](_0x5d62c2,_0x33e4b1[_0x81ac('0xe5')]);return _0x1a5dc2['download'](_0x4c880a);}})[_0x81ac('0x4d')](handleError(_0x1a5dc2,null));};exports[_0x81ac('0xf0')]=function(_0x3fdf4f,_0x295feb){var _0x2a4621=null;var _0x576c89=null;var _0x4466bf=null;var _0x3b1eba=null;if(_0x3fdf4f['body']['id']){delete _0x3fdf4f[_0x81ac('0x41')]['id'];}if(_0x3fdf4f['body'][_0x81ac('0xf1')]){_0x3b1eba=path[_0x81ac('0xec')](config['root'],'server/files/chat/upload/',util['format'](_0x81ac('0xf2'),Date[_0x81ac('0xf3')]()));_0x3fdf4f[_0x81ac('0x41')]['pathTranscript']=_0x3b1eba;}return db[_0x81ac('0xaf')][_0x81ac('0x78')]({'where':{'id':_0x3fdf4f[_0x81ac('0xc5')]['id']},'include':[{'model':db[_0x81ac('0xd9')],'as':_0x81ac('0xf4'),'include':[{'model':db['User'],'as':_0x81ac('0x89')}]}]})[_0x81ac('0x3c')](handleEntityNotFound(_0x295feb,null))[_0x81ac('0x3c')](saveUpdates(_0x3fdf4f[_0x81ac('0x41')],null))[_0x81ac('0x3c')](function(_0x2cf6b8){if(_0x2cf6b8){_0x2a4621=_0x2cf6b8;return db[_0x81ac('0xcd')][_0x81ac('0x78')]({'where':{'id':_0x2a4621['ChatWebsiteId']}});}})[_0x81ac('0x3c')](function(_0x2de677){if(_0x2de677){_0x4466bf=_0x2de677;return db['CmContact']['find']({'where':{'id':_0x2a4621[_0x81ac('0x82')]}});}})[_0x81ac('0x3c')](function(_0x512006){if(_0x512006){_0x576c89=_0x512006;if(_0x3b1eba){var _0x168c63=null;for(var _0x54eda2=0x1;_0x54eda2<_0x2a4621[_0x81ac('0xf4')][_0x81ac('0x77')];++_0x54eda2){_0x168c63=_0x2a4621[_0x81ac('0xf4')][_0x54eda2];var _0x33e75c=_0x168c63[_0x81ac('0x8b')]?util['format'](_0x81ac('0xf5'),_0x4466bf[_0x81ac('0xf6')],_0x168c63[_0x81ac('0x8b')]):'System';var _0x4fef75=_0x3fdf4f[_0x81ac('0x41')][_0x81ac('0xf7')]||util[_0x81ac('0xf8')](_0x81ac('0xf5'),_0x81ac('0xf9'),_0x168c63[_0x81ac('0x82')]);switch(_0x4466bf[_0x81ac('0xfa')]){case _0x81ac('0xfb'):_0x33e75c=_0x168c63[_0x81ac('0x8b')]?util[_0x81ac('0xf8')](_0x81ac('0xf5'),_0x4466bf[_0x81ac('0xf6')],_0x168c63[_0x81ac('0x8b')]):_0x81ac('0xfc');break;case _0x81ac('0xfd'):_0x33e75c=_0x168c63[_0x81ac('0x8b')]?_0x168c63[_0x81ac('0x89')][_0x81ac('0xfe')]||_0x168c63[_0x81ac('0x89')]['fullname']:'System';break;case _0x81ac('0xff'):_0x33e75c=_0x168c63[_0x81ac('0x8b')]?_0x168c63[_0x81ac('0x89')][_0x81ac('0x47')]:'System';break;default:_0x33e75c=_0x168c63[_0x81ac('0x8b')]?util['format'](_0x81ac('0xf5'),_0x4466bf[_0x81ac('0xf6')],_0x168c63[_0x81ac('0x8b')]):'System';}var _0x27052e=util[_0x81ac('0xf8')](_0x81ac('0x100'),moment(_0x168c63['createdAt'])[_0x81ac('0xf8')](_0x81ac('0x101')),_0x168c63[_0x81ac('0x102')]==='in'?_0x4fef75:_0x33e75c,_0x168c63[_0x81ac('0x41')]);if(!_0x168c63[_0x81ac('0x103')]){fs['appendFileSync'](_0x3b1eba,_0x27052e);}}return db['MailAccount'][_0x81ac('0xcc')]({'where':{'service':!![]},'include':[{'model':db[_0x81ac('0x104')],'as':_0x81ac('0x105'),'raw':!![]}]});}}})[_0x81ac('0x3c')](function(_0x5b7937){if(_0x5b7937&&_0x5b7937[_0x81ac('0x105')]&&_0x3fdf4f[_0x81ac('0x41')]){var _0x3c9a16={'tls':{'rejectUnauthorized':![]}};if(_0x5b7937['Smtp']['service']){_0x3c9a16['service']=_0x5b7937[_0x81ac('0x105')][_0x81ac('0x106')];}else{_0x3c9a16[_0x81ac('0x107')]=_0x5b7937[_0x81ac('0x105')][_0x81ac('0x107')];_0x3c9a16[_0x81ac('0x108')]=_0x5b7937['Smtp'][_0x81ac('0x108')];_0x3c9a16['secure']=_0x5b7937[_0x81ac('0x105')][_0x81ac('0x109')];}if(_0x5b7937[_0x81ac('0x105')][_0x81ac('0x10a')]){_0x3c9a16[_0x81ac('0x10b')]={'user':_0x5b7937[_0x81ac('0x105')][_0x81ac('0xac')],'pass':_0x5b7937['Smtp'][_0x81ac('0x10c')]};}return respondWithRpcPromise('SendMail','sendMail',{'account':_0x3c9a16,'message':{'from':util['format'](_0x81ac('0x10d'),_0x5b7937[_0x81ac('0x53')],_0x5b7937['email']||_0x5b7937['Smtp']['user']),'to':_0x3fdf4f[_0x81ac('0x41')][_0x81ac('0xf1')],'subject':'Mail\x20Transcript','text':util['format'](_0x81ac('0x10e'),_0x3fdf4f['body'][_0x81ac('0xf1')]),'attachments':[{'path':_0x3b1eba}]}})[_0x81ac('0x3c')](function(){return _0x2a4621;})[_0x81ac('0x4d')](function(_0x228f2f){console['error'](_0x228f2f);});}else{return _0x2a4621;}})[_0x81ac('0x3c')](respondWithStatusCode(_0x295feb,0xc8))['catch'](handleError(_0x295feb,null));};exports[_0x81ac('0x10f')]=function(_0x49ed13,_0x820a44,_0x34cca3){return db['ChatMessage']['find']({'where':{'id':_0x49ed13[_0x81ac('0xc5')]['id']}})[_0x81ac('0x3c')](handleEntityNotFound(_0x820a44,null))['then'](function(_0x45325f){if(_0x45325f){return _0x45325f[_0x81ac('0x10f')](_0x49ed13[_0x81ac('0x41')]['ids'],_[_0x81ac('0x110')](_0x49ed13['body'],[_0x81ac('0x111'),'id'])||{});}})[_0x81ac('0x3c')](respondWithResult(_0x820a44,null))[_0x81ac('0x4d')](handleError(_0x820a44,null));};exports[_0x81ac('0x112')]=function(_0x2eebfb,_0xe14def,_0x5e545f){var _0x380cea={'raw':![],'where':{}};var _0x28a52c={};var _0x4a5cdb={'count':0x0,'rows':[]};return db[_0x81ac('0xaf')]['findOne']({'where':{'id':_0x2eebfb[_0x81ac('0xc5')]['id']}})['then'](handleEntityNotFound(_0xe14def,null))[_0x81ac('0x3c')](function(_0x2627aa){if(_0x2627aa){_0x28a52c[_0x81ac('0x52')]=_[_0x81ac('0xc6')](db[_0x81ac('0xd9')]['rawAttributes']);_0x28a52c['query']=_[_0x81ac('0xc6')](_0x2eebfb[_0x81ac('0x54')]);_0x28a52c['filters']=_[_0x81ac('0x57')](_0x28a52c[_0x81ac('0x52')],_0x28a52c['query']);_0x380cea[_0x81ac('0x56')]=_[_0x81ac('0x57')](_0x28a52c[_0x81ac('0x52')],qs[_0x81ac('0x58')](_0x2eebfb[_0x81ac('0x54')]['fields']));_0x380cea[_0x81ac('0x56')]=_0x380cea[_0x81ac('0x56')]['length']?_0x380cea['attributes']:_0x28a52c[_0x81ac('0x52')];if(!_0x2eebfb[_0x81ac('0x54')][_0x81ac('0x113')](_0x81ac('0x59'))){_0x380cea['limit']=qs[_0x81ac('0x33')](_0x2eebfb[_0x81ac('0x54')]['limit']);_0x380cea[_0x81ac('0x31')]=qs[_0x81ac('0x31')](_0x2eebfb[_0x81ac('0x54')][_0x81ac('0x31')]);}_0x380cea['order']=qs[_0x81ac('0x5b')](_0x2eebfb[_0x81ac('0x54')][_0x81ac('0x5b')]);_0x380cea['where']=qs['filters'](_[_0x81ac('0x5d')](_0x2eebfb[_0x81ac('0x54')],_0x28a52c[_0x81ac('0x55')]));_0x380cea[_0x81ac('0x5c')][_0x81ac('0xc2')]=_0x2627aa['id'];if(_0x2eebfb[_0x81ac('0x54')][_0x81ac('0x9d')]){_0x380cea[_0x81ac('0x5c')]=_[_0x81ac('0x40')](_0x380cea[_0x81ac('0x5c')],{'$or':_[_0x81ac('0x46')](_0x380cea['attributes'],function(_0x100093){var _0x4945d2={};_0x4945d2[_0x100093]={'$like':'%'+_0x2eebfb[_0x81ac('0x54')]['filter']+'%'};return _0x4945d2;})});}if(_0x2eebfb[_0x81ac('0x54')]['$gte']){var _0x5a09f3=_0x2eebfb[_0x81ac('0x54')][_0x81ac('0x94')]['split'](',');var _0x285b41={};_0x285b41[_0x5a09f3[0x0]]={'$gte':moment(_0x5a09f3[0x1])['format'](_0x81ac('0x114'))};_0x380cea['where']=_[_0x81ac('0x40')](_0x380cea[_0x81ac('0x5c')],_0x285b41);}_0x380cea=_[_0x81ac('0x40')]({},_0x380cea,_0x2eebfb['options']);return db[_0x81ac('0xd9')]['count']({'where':_0x380cea[_0x81ac('0x5c')]})[_0x81ac('0x3c')](function(_0x1daa0a){_0x4a5cdb[_0x81ac('0x34')]=_0x1daa0a;if(_0x2eebfb[_0x81ac('0x54')][_0x81ac('0x115')]){_0x380cea[_0x81ac('0xc7')]=[{'all':!![]}];}return db[_0x81ac('0xd9')][_0x81ac('0x116')](_0x380cea);})[_0x81ac('0x3c')](function(_0x309b43){_0x4a5cdb['rows']=_0x309b43;return _0x4a5cdb;});}})[_0x81ac('0x3c')](respondWithFilteredResult(_0xe14def,_0x380cea))[_0x81ac('0x4d')](handleError(_0xe14def,null));};exports[_0x81ac('0x117')]=function(_0x9c5802,_0x349c1b,_0x335d13){var _0x109036={'where':{}},_0x480fc6={},_0x1d1d2a={'count':0x0,'rows':[]};return db[_0x81ac('0xaf')][_0x81ac('0xcc')]({'where':{'id':_0x9c5802[_0x81ac('0xc5')]['id']}})[_0x81ac('0x3c')](handleEntityNotFound(_0x349c1b,null))[_0x81ac('0x3c')](function(_0x16f419){if(_0x16f419){_0x480fc6[_0x81ac('0x52')]=_[_0x81ac('0xc6')](db[_0x81ac('0xd9')][_0x81ac('0x4f')]);_0x480fc6[_0x81ac('0x54')]=_[_0x81ac('0xc6')](_0x9c5802[_0x81ac('0x54')]);_0x480fc6['filters']=_[_0x81ac('0x57')](_0x480fc6[_0x81ac('0x52')],_0x480fc6[_0x81ac('0x54')]);_0x109036['attributes']=_[_0x81ac('0x57')](_0x480fc6['model'],qs['fields'](_0x9c5802[_0x81ac('0x54')]['fields']));_0x109036[_0x81ac('0x56')]=_0x109036[_0x81ac('0x56')][_0x81ac('0x77')]?_0x109036[_0x81ac('0x56')]:_0x480fc6[_0x81ac('0x52')];if(!_0x9c5802[_0x81ac('0x54')]['hasOwnProperty'](_0x81ac('0x59'))){_0x109036[_0x81ac('0x33')]=qs[_0x81ac('0x33')](_0x9c5802[_0x81ac('0x54')][_0x81ac('0x33')]);_0x109036[_0x81ac('0x31')]=qs['offset'](_0x9c5802[_0x81ac('0x54')][_0x81ac('0x31')]);}_0x109036['order']=qs[_0x81ac('0x5b')](_0x9c5802[_0x81ac('0x54')][_0x81ac('0x5b')]);_0x109036[_0x81ac('0x5c')]=qs[_0x81ac('0x55')](_[_0x81ac('0x5d')](_0x9c5802[_0x81ac('0x54')],_0x480fc6['filters']));_0x109036[_0x81ac('0x5c')][_0x81ac('0xc2')]=_0x16f419['id'];if(_0x9c5802[_0x81ac('0x54')][_0x81ac('0x9d')]){_0x109036[_0x81ac('0x5c')]=_[_0x81ac('0x40')](_0x109036[_0x81ac('0x5c')],{'$or':_[_0x81ac('0x46')](_0x109036[_0x81ac('0x56')],function(_0x4711bb){var _0x38dd71={};_0x38dd71[_0x4711bb]={'$like':'%'+_0x9c5802[_0x81ac('0x54')][_0x81ac('0x9d')]+'%'};return _0x38dd71;})});}_0x109036[_0x81ac('0x5c')][_0x81ac('0x103')]=![];if(_0x9c5802[_0x81ac('0x54')]['id']){_0x109036[_0x81ac('0x5c')]['id']={'$gt':_0x9c5802[_0x81ac('0x54')]['id']};}_0x109036=_[_0x81ac('0x40')]({},_0x109036,_0x9c5802[_0x81ac('0xc8')]);return db[_0x81ac('0xd9')][_0x81ac('0x34')]({'where':_0x109036['where']})[_0x81ac('0x3c')](function(_0x4d69cb){_0x1d1d2a['count']=_0x4d69cb;_0x109036[_0x81ac('0xc7')]=[];if(_0x9c5802[_0x81ac('0x54')][_0x81ac('0x118')]){_0x109036[_0x81ac('0xc7')][_0x81ac('0x4c')]({'model':db[_0x81ac('0x89')],'as':_0x81ac('0x89'),'attributes':['id','fullname',_0x81ac('0xfe')]});}if(_0x9c5802[_0x81ac('0x54')][_0x81ac('0x115')]){_0x109036[_0x81ac('0xc7')]=[{'all':!![]}];}return db[_0x81ac('0xd9')][_0x81ac('0x116')](_0x109036);})[_0x81ac('0x3c')](function(_0x5c9339){_0x1d1d2a[_0x81ac('0xc4')]=_0x5c9339;return _0x1d1d2a;});}})[_0x81ac('0x3c')](respondWithFilteredResult(_0x349c1b,_0x109036))[_0x81ac('0x4d')](handleError(_0x349c1b,null));};exports[_0x81ac('0x119')]=function(_0x525209,_0x1d5dad,_0x3adf4e){return db[_0x81ac('0xaf')][_0x81ac('0x78')]({'where':{'id':_0x525209[_0x81ac('0xc5')]['id']}})['then'](handleEntityNotFound(_0x1d5dad,null))[_0x81ac('0x3c')](function(_0x5d959c){if(_0x5d959c){return _0x5d959c[_0x81ac('0x11a')](_0x525209[_0x81ac('0x41')][_0x81ac('0x111')],_[_0x81ac('0x110')](_0x525209[_0x81ac('0x41')],[_0x81ac('0x111'),'id'])||{})['spread'](function(){return db[_0x81ac('0x86')][_0x81ac('0x116')]({'attributes':['id',_0x81ac('0x53'),_0x81ac('0x60')],'where':{'id':_0x525209[_0x81ac('0x41')][_0x81ac('0x111')]}});})[_0x81ac('0x3c')](function(_0x43a55e){socket[_0x81ac('0x11b')]('chatInteractionTags:save',{'id':Number(_0x525209[_0x81ac('0xc5')]['id']),'tags':_0x43a55e||[]});return{'id':Number(_0x525209['params']['id']),'tags':_0x43a55e||[]};});}})[_0x81ac('0x3c')](respondWithResult(_0x1d5dad,null))[_0x81ac('0x4d')](handleError(_0x1d5dad,null));};exports[_0x81ac('0x11c')]=function(_0x3c8f2a,_0x49c285,_0x44cc4e){return db['ChatInteraction']['find']({'where':{'id':_0x3c8f2a[_0x81ac('0xc5')]['id']}})[_0x81ac('0x3c')](handleEntityNotFound(_0x49c285,null))['then'](function(_0x178d0e){if(_0x178d0e){return _0x178d0e['removeTags'](_0x3c8f2a[_0x81ac('0x54')][_0x81ac('0x111')]);}})[_0x81ac('0x3c')](respondWithStatusCode(_0x49c285,null))[_0x81ac('0x4d')](handleError(_0x49c285,null));};exports[_0x81ac('0x11d')]=function(_0x1af2f2,_0x1c51e5){var _0x4bd307=moment()[_0x81ac('0x11e')]()[_0x81ac('0xae')]();var _0x7920e5=path[_0x81ac('0xec')](config[_0x81ac('0xed')],_0x81ac('0x11f'),'files',_0x81ac('0x120'));var _0x44d441=path[_0x81ac('0xec')](config[_0x81ac('0xed')],_0x81ac('0x11f'),_0x81ac('0x121'),_0x81ac('0x122'));var _0x401e23=path[_0x81ac('0xec')](_0x7920e5,_0x4bd307);var _0x418ace=util[_0x81ac('0xf8')](_0x81ac('0x123'),_0x1af2f2[_0x81ac('0xc5')]['id'],_0x4bd307);var _0x47eb1f=path[_0x81ac('0xec')](_0x7920e5,_0x418ace);var _0xecfd91=[];_0xecfd91[_0x81ac('0x4c')]({'model':db['User'],'as':_0x81ac('0x89'),'attributes':['id',_0x81ac('0x47')],'raw':!![]});_0xecfd91[_0x81ac('0x4c')]({'model':db[_0x81ac('0xdd')],'as':_0x81ac('0x7d'),'attributes':['id',_0x81ac('0x124'),'lastName'],'raw':!![]});if(_0x1af2f2[_0x81ac('0x54')][_0x81ac('0x122')]){_0xecfd91[_0x81ac('0x4c')]({'model':db['Attachment'],'as':'Attachment','raw':!![]});}var _0x377f09=[{'model':db[_0x81ac('0xd9')],'as':_0x81ac('0xf4'),'attributes':['id',_0x81ac('0x41'),_0x81ac('0x92'),_0x81ac('0x102'),_0x81ac('0x103'),_0x81ac('0x98')],'include':_0xecfd91}];_0x377f09[_0x81ac('0x4c')]({'model':db[_0x81ac('0xcd')],'as':_0x81ac('0x125'),'attributes':['id','name']});_0x377f09[_0x81ac('0x4c')]({'model':db[_0x81ac('0x89')],'as':_0x81ac('0x126'),'attributes':['id',_0x81ac('0x47')]});return db[_0x81ac('0xaf')]['find']({'where':{'id':_0x1af2f2[_0x81ac('0xc5')]['id']},'include':_0x377f09})[_0x81ac('0x3c')](handleEntityNotFound(_0x1c51e5,null))[_0x81ac('0x3c')](function(_0x3d0414){if(_0x3d0414){var _0x4dfd63=_0x3d0414['get']({'plain':!![]});fs[_0x81ac('0x127')](_0x401e23);var _0x59ff96={'channel':_0x81ac('0x128'),'account':_0x4dfd63[_0x81ac('0x125')][_0x81ac('0x53')],'agent':_0x4dfd63[_0x81ac('0x126')]?_0x4dfd63[_0x81ac('0x126')][_0x81ac('0x47')]:_0x81ac('0x129'),'createdAt':moment(_0x4dfd63[_0x81ac('0x92')])[_0x81ac('0xf8')](_0x81ac('0x114'))['toString'](),'closedAt':_0x4dfd63[_0x81ac('0xe0')]?moment(_0x4dfd63['closedAt'])[_0x81ac('0xf8')]('YYYY-MM-DD\x20HH:mm:ss')[_0x81ac('0xae')]():'','disposition':_0x4dfd63[_0x81ac('0xe1')],'chatInfo':{'browser':_0x4dfd63[_0x81ac('0x12a')],'os':_0x4dfd63[_0x81ac('0x12b')],'referer':_0x4dfd63['referer'],'customerIp':_0x4dfd63['customerIp'],'customerPort':_0x4dfd63[_0x81ac('0x12c')]?_0x4dfd63[_0x81ac('0x12c')]:_0x81ac('0x129')},'messages':_(_0x4dfd63[_0x81ac('0xf4')])[_0x81ac('0x12d')]()[_0x81ac('0x9d')]({'secret':![]})[_0x81ac('0x46')](function(_0x2ab241){if(_0x2ab241[_0x81ac('0xe7')]){var _0x5740fa=path[_0x81ac('0xec')](_0x44d441,_0x2ab241[_0x81ac('0xe7')][_0x81ac('0xe5')]);if(fs[_0x81ac('0x12e')](_0x5740fa)){fs[_0x81ac('0x12f')](_0x5740fa)[_0x81ac('0x130')](fs['createWriteStream'](path[_0x81ac('0xec')](_0x401e23,_0x2ab241[_0x81ac('0xe7')]['basename'])));}}return{'date':moment(_0x2ab241['createdAt'])[_0x81ac('0xf8')](_0x81ac('0x114'))['toString'](),'sender':_0x2ab241[_0x81ac('0x102')]===_0x81ac('0xd8')?_0x2ab241[_0x81ac('0x89')]?_0x2ab241['User']['fullname']:_0x81ac('0xfc'):_0x2ab241[_0x81ac('0x7d')][_0x81ac('0x124')]+(_0x2ab241[_0x81ac('0x7d')]['lastName']?'\x20'+_0x2ab241[_0x81ac('0x7d')][_0x81ac('0x131')]:''),'body':_0x2ab241[_0x81ac('0xe7')]?_0x2ab241[_0x81ac('0xe7')][_0x81ac('0xe5')]:_0x2ab241['body'],'direction':_0x2ab241[_0x81ac('0x102')]===_0x81ac('0xd8')?'A':'C','secret':_0x2ab241[_0x81ac('0x103')],'read':_0x2ab241[_0x81ac('0x98')],'attachment':_0x2ab241[_0x81ac('0xe7')]};})[_0x81ac('0x79')]()};return ejs[_0x81ac('0x132')](path[_0x81ac('0xec')](config[_0x81ac('0xed')],_0x81ac('0x11f'),_0x81ac('0x133'),_0x81ac('0x134')),{'interaction':_0x59ff96})[_0x81ac('0x3c')](function(_0x254ac1){var _0x2f6ff0=path[_0x81ac('0xec')](_0x401e23,_0x81ac('0x135')+_0x4dfd63['id']+'-'+_0x4bd307+_0x81ac('0x136'));var _0x11cd7a={'path':_0x2f6ff0,'channel':_0x81ac('0x128'),'interactionId':_0x4dfd63['id']};return pdf[_0x81ac('0x137')](_0x254ac1,_0x11cd7a);})['then'](function(){return new BPromise(function(_0x417081,_0x2d568b){zipdir(_0x401e23,{'saveTo':_0x47eb1f},function(_0x4ab2d1,_0xbf2dfb){if(_0x4ab2d1)return _0x2d568b(_0x4ab2d1);return _0x417081(_0xbf2dfb);});})['then'](function(){return new BPromise(function(_0x59a8f9,_0x205f04){rimraf(_0x401e23,function(_0x4b8fa3){if(_0x4b8fa3)_0x205f04(_0x4b8fa3);return _0x59a8f9();});});})[_0x81ac('0x3c')](function(){return _0x1c51e5[_0x81ac('0x11d')](_0x47eb1f,_0x418ace,function(_0x167530){if(_0x167530){console[_0x81ac('0x138')](_0x81ac('0x139'),_0x167530);}else{fs[_0x81ac('0x13a')](_0x47eb1f);}});});});}else{return _0x1c51e5['sendStatus'](0xc8);}})[_0x81ac('0x4d')](handleError(_0x1c51e5,null));};