Built motion from commit (unavailable).|2.5.3
[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 _0x9536=['MailAccount','MailServerOut','Smtp','service','host','port','secure','auth','pass','SendMail','sendMail','\x22%s\x22\x20<%s>','email','Hi\x20%s,\x20attached\x20you\x20can\x20find\x20your\x20transcript\x20file.\x20\x0a\x0aRegards.\x20\x0a\x0a','addMessage','ids','omit','getMessages','hasOwnProperty','YYYY-MM-DD\x20HH:mm:ss','findAll','rows','getMyMessages','includeAgent','addTags','spread','emit','removeTags','unix','server','files','tmp','transcript-%d-%s.zip','firstName','lastName','attachments','Account','Owner','get','mkdirSync','40px','<div\x20class=\x22header\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<h5>Interaction\x20Transcript</h5>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>','<hr\x20class=\x22separator\x22/>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22footer\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22left\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span>%s</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22center\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span>{{page}}/{{pages}}</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22right\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span>%s</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>','%s\x20#%d','YYYY-MM-DD','N.A.','closedAt','browserName','referer','customerIp','customerPort','tail','existsSync','createReadStream','createWriteStream','out','renderFile','views','toFile','transcript-','.pdf','log','err','unlinkSync','html-pdf','eml-format','rimraf','zip-dir','request-promise','bluebird','mustache','util','path','sox','ejs','lodash','squel','crypto','jsforce','to-csv','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','defaults','localhost','socket.io-emitter','redis','./chatInteraction.socket','register','jayson/promise','client','http','test','Sequelize','ValidationError','request','info','ChatInteraction,\x20%s,\x20%s','request\x20sent','debug','stringify','error','code','message','result','catch','sendStatus','end','status','json','count','offset','limit','set','reject','save','destroy','then','name','send','Users','map','TagIds','split','forEach','Tags','push','index','fieldName','key','query','keys','filters','intersection','attributes','model','fields','length','nolimit','order','sort','where','pick','field','color','from','tools_tags','select','ui.ChatInteractionId','users','u.id\x20=\x20ui.UserId','chat_interactions','left_join','o.id\x20=\x20i.UserId','chat_websites','chat_messages','it.ChatInteractionId\x20=\x20i.id','t.id\x20=\x20it.TagId','expr','search','parseSearch','sqlOperator','conditions','find','unreadMessages','value','`\x20=\x200','having','`\x20>\x200','Contact','$substring','MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','getFullTextValue','c.firstName\x20LIKE\x20?\x20OR\x20c.lastName\x20LIKE\x20?\x20OR\x20c.email\x20LIKE\x20?','ContactId','buildExpression','type','text','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','union','User','operator','CONCAT_WS(\x27\x20\x27,\x20o.name,\x20o.fullname)\x20LIKE\x20?','UserId','start','body','compact','isEmpty','ChatWebsiteId','concat','createdAt','$gte','parse','i.createdAt\x20BETWEEN\x20?\x20AND\x20?','\x20IS\x20NULL','\x20=\x20?','read','tag','isArray','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','i.id','SELECT','clone','SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','DESC','t.id\x20IN\x20?','resolve','i.ChatWebsiteId\x20IS\x20NOT\x20NULL','user','i.ChatWebsiteId\x20IS\x20NULL','i.ChatWebsiteId\x20IN\x20?','sequelize','toString','keyBy','ChatInteraction','a.key','a.mandatoryDisposition','Account.mandatoryDisposition','i.*','c.firstName','c.lastName','Contact.lastName','c.email','Contact.email','c.phone','Contact.phone','c.mobile','Contact.fax','o.fullname','Owner.fullname','Owner.internal','GROUP_CONCAT(DISTINCT\x20t.id)','ui.ChatInteractionId\x20IN\x20?','groupBy','ChatInteractionId','all','params','includeAll','include','merge','options','create','update','describe','ChatWebsite','findOne','vidaooApiKey','vidaooEscalation','https://api-vidaoo.xcally.com/api/v1/sessions','MotionCWB:','follow','Error\x20in\x20Vidaoo\x20configuration','join_url','ChatMessage','Unable\x20to\x20create\x20Vidaoo\x20session','updateAttributes','abandon','abandonInteraction,\x20%s,\x20%s,\x20%s','entity\x20not\x20found','closed','disposition','AbandonInteraction','file','originalname','basename','filename','mimetype','Attachment','attachmentDownload','Unauthorized','attachId','download','join','root','server/files/attachments/','close','mailTranscript','server/files/chat/upload/','format','transcript-%s.txt','now','pathTranscript','Messages','CmContact','%s%d','agentAlias','customer','Visitor','agentIdentifier','website_alias','System','agent_alias','alias','fullname','agent_fullname','[%s]\x20%s:\x20%s\x0a','direction','secret','appendFileSync'];(function(_0x4d6544,_0x140fed){var _0x41cb66=function(_0x4c5eca){while(--_0x4c5eca){_0x4d6544['push'](_0x4d6544['shift']());}};_0x41cb66(++_0x140fed);}(_0x9536,0x179));var _0x6953=function(_0x529f1c,_0x437ed1){_0x529f1c=_0x529f1c-0x0;var _0x4d57ab=_0x9536[_0x529f1c];return _0x4d57ab;};'use strict';var pdf=require(_0x6953('0x0'));var emlformat=require(_0x6953('0x1'));var rimraf=require(_0x6953('0x2'));var zipdir=require(_0x6953('0x3'));var jsonpatch=require('fast-json-patch');var rp=require(_0x6953('0x4'));var moment=require('moment');var BPromise=require(_0x6953('0x5'));var Mustache=require(_0x6953('0x6'));var util=require(_0x6953('0x7'));var path=require(_0x6953('0x8'));var sox=require(_0x6953('0x9'));var csv=require('to-csv');var ejs=require(_0x6953('0xa'));var fs=require('fs');var _=require(_0x6953('0xb'));var squel=require(_0x6953('0xc'));var crypto=require(_0x6953('0xd'));var jsforce=require(_0x6953('0xe'));var deskjs=require('desk.js');var toCsv=require(_0x6953('0xf'));var querystring=require(_0x6953('0x10'));var Papa=require(_0x6953('0x11'));var Redis=require('ioredis');var authService=require(_0x6953('0x12'));var qs=require(_0x6953('0x13'));var as=require(_0x6953('0x14'));var hardwareService=require(_0x6953('0x15'));var logger=require(_0x6953('0x16'))(_0x6953('0x17'));var utils=require(_0x6953('0x18'));var config=require(_0x6953('0x19'));var db=require(_0x6953('0x1a'))['db'];config['redis']=_[_0x6953('0x1b')](config['redis'],{'host':_0x6953('0x1c'),'port':0x18eb});var socket=require(_0x6953('0x1d'))(new Redis(config[_0x6953('0x1e')]));require(_0x6953('0x1f'))[_0x6953('0x20')](socket);var jayson=require(_0x6953('0x21'));var client=jayson[_0x6953('0x22')][_0x6953('0x23')]({'port':0x232b});var client9004=jayson[_0x6953('0x22')][_0x6953('0x23')]({'port':0x232c});function checkPasswordPattern(_0xae5515,_0x548473,_0x5f49db){if(_0x5f49db){var _0x399b9b=new RegExp(/(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[?!@#\$%\^&\*~\-_=+[{\]\}])(?=.{8,})/);if(_0x399b9b[_0x6953('0x24')](_0x548473)){return _0xae5515;}else{throw new db[(_0x6953('0x25'))][(_0x6953('0x26'))]('The\x20password\x20must\x20be\x20at\x20least\x208\x20characters\x20long\x20and\x20have\x201\x20lowercase\x20character,\x201\x20uppercase\x20character,\x201\x20number\x20and\x201\x20special\x20character\x20~!@#$%^&-_=+[{]}.');}}else{return _0xae5515;}}function respondWithRpcPromise(_0x1b6dcb,_0x2da771,_0x4b43ae,_0x10858a){return new BPromise(function(_0x3207dd,_0x283cf4){var _0x174c59=_0x10858a||client;return _0x174c59[_0x6953('0x27')](_0x1b6dcb,_0x4b43ae)['then'](function(_0x3a93e1){logger[_0x6953('0x28')](_0x6953('0x29'),_0x2da771,_0x6953('0x2a'));logger[_0x6953('0x2b')]('ChatInteraction,\x20%s,\x20%s,\x20%s',_0x2da771,_0x6953('0x2a'),JSON[_0x6953('0x2c')](_0x3a93e1));if(_0x3a93e1['error']){if(_0x3a93e1[_0x6953('0x2d')][_0x6953('0x2e')]===0x1f4){logger[_0x6953('0x2d')](_0x6953('0x29'),_0x2da771,_0x3a93e1['error'][_0x6953('0x2f')]);return _0x283cf4(_0x3a93e1[_0x6953('0x2d')][_0x6953('0x2f')]);}logger['error']('ChatInteraction,\x20%s,\x20%s',_0x2da771,_0x3a93e1['error'][_0x6953('0x2f')]);return _0x3207dd(_0x3a93e1[_0x6953('0x2d')]['message']);}else{logger[_0x6953('0x28')]('ChatInteraction,\x20%s,\x20%s',_0x2da771,_0x6953('0x2a'));_0x3207dd(_0x3a93e1[_0x6953('0x30')][_0x6953('0x2f')]);}})[_0x6953('0x31')](function(_0x191d80){logger[_0x6953('0x2d')]('ChatInteraction,\x20%s,\x20%s',_0x2da771,_0x191d80);_0x283cf4(_0x191d80);});});}function respondWithStatusCode(_0x3dd890,_0x3c1075){_0x3c1075=_0x3c1075||0xcc;return function(_0x527b9a){if(_0x527b9a){return _0x3dd890[_0x6953('0x32')](_0x3c1075);}return _0x3dd890['status'](_0x3c1075)[_0x6953('0x33')]();};}function respondWithResult(_0x3b1175,_0x426c7c){_0x426c7c=_0x426c7c||0xc8;return function(_0x4b0325){if(_0x4b0325){return _0x3b1175[_0x6953('0x34')](_0x426c7c)[_0x6953('0x35')](_0x4b0325);}};}function respondWithFilteredResult(_0xf78141,_0x47ed2f){return function(_0x4c49fc){if(_0x4c49fc){var _0x132a71=_0x4c49fc[_0x6953('0x36')],_0x481c6a=_0x47ed2f[_0x6953('0x37')],_0x4d856d=_0x47ed2f[_0x6953('0x37')]+_0x47ed2f[_0x6953('0x38')],_0xd80e42;if(_0x4d856d>=_0x132a71){_0x4d856d=_0x132a71;_0xd80e42=0xc8;}else{_0xd80e42=0xce;}_0xf78141['status'](_0xd80e42);return _0xf78141[_0x6953('0x39')]('Content-Range',_0x481c6a+'-'+_0x4d856d+'/'+_0x132a71)[_0x6953('0x35')](_0x4c49fc);}return null;};}function patchUpdates(_0x2e85c7){return function(_0x4ba704){try{jsonpatch['apply'](_0x4ba704,_0x2e85c7,!![]);}catch(_0x1f77a6){return BPromise[_0x6953('0x3a')](_0x1f77a6);}return _0x4ba704[_0x6953('0x3b')]();};}function saveUpdates(_0x4ffa69,_0x28cb92){return function(_0x5e01d2){if(_0x5e01d2){return _0x5e01d2['update'](_0x4ffa69)['then'](function(_0x5c4a8a){return _0x5c4a8a;});}return null;};}function removeEntity(_0x1ef067,_0x6c7862){return function(_0x2c7160){if(_0x2c7160){return _0x2c7160[_0x6953('0x3c')]()[_0x6953('0x3d')](function(){_0x1ef067[_0x6953('0x34')](0xcc)['end']();});}};}function handleEntityNotFound(_0x2b76a5,_0x5a8197){return function(_0x199c67){if(!_0x199c67){_0x2b76a5['sendStatus'](0x194);}return _0x199c67;};}function handleError(_0xc63da7,_0x383e31){_0x383e31=_0x383e31||0x1f4;return function(_0xd81149){logger[_0x6953('0x2d')](_0xd81149['stack']);if(_0xd81149[_0x6953('0x3e')]){delete _0xd81149[_0x6953('0x3e')];}_0xc63da7[_0x6953('0x34')](_0x383e31)[_0x6953('0x3f')](_0xd81149);};}function getInteractionUsers(_0x40b6ea,_0x475ea8){return new BPromise(function(_0x37b2b3,_0x81428b){try{if(_0x475ea8[_0x40b6ea['id']]){_0x40b6ea[_0x6953('0x40')]=_[_0x6953('0x41')](_0x475ea8[_0x40b6ea['id']],function(_0x2d9d81){return{'id':_0x2d9d81['id'],'fullname':_0x2d9d81['fullname']};});}}catch(_0x9d8ee1){_0x81428b(_0x9d8ee1);}_0x37b2b3(_0x40b6ea);});}function getInteractionTags(_0x3c03ab,_0x1f6571){return new BPromise(function(_0x5dff18,_0x47e7e7){try{if(_0x3c03ab[_0x6953('0x42')]){_0x3c03ab['Tags']=[];_0x3c03ab['TagIds'][_0x6953('0x43')](',')[_0x6953('0x44')](function(_0x4b5e1c){_0x3c03ab[_0x6953('0x45')][_0x6953('0x46')](_0x1f6571[_0x4b5e1c]);});}delete _0x3c03ab[_0x6953('0x42')];}catch(_0x419648){_0x47e7e7(_0x419648);}_0x5dff18(_0x3c03ab);});}function updateChatInteraction(_0x8df9fc,_0x4d7f59,_0x51137b){return new BPromise(function(_0x3a72e5,_0x2733e6){return getInteractionUsers(_0x8df9fc,_0x51137b)[_0x6953('0x3d')](function(_0x3a0104){return getInteractionTags(_0x3a0104,_0x4d7f59);})[_0x6953('0x3d')](function(_0x2a20bf){_0x3a72e5(_0x2a20bf);})['catch'](function(_0x5a40de){_0x2733e6(_0x5a40de);});});}exports[_0x6953('0x47')]=function(_0x54d7c2,_0x588ff8){var _0x2d5403={},_0x2e1197={},_0x2bdbb6={'count':0x0,'rows':[]};var _0x1da621=_[_0x6953('0x41')](db['ChatInteraction']['rawAttributes'],function(_0x1de4e4){return{'name':_0x1de4e4[_0x6953('0x48')],'type':_0x1de4e4['type'][_0x6953('0x49')]};});_0x2e1197['model']=_[_0x6953('0x41')](_0x1da621,_0x6953('0x3e'));_0x2e1197[_0x6953('0x4a')]=_[_0x6953('0x4b')](_0x54d7c2['query']);_0x2e1197[_0x6953('0x4c')]=_[_0x6953('0x4d')](_0x2e1197['model'],_0x2e1197[_0x6953('0x4a')]);_0x2d5403[_0x6953('0x4e')]=_[_0x6953('0x4d')](_0x2e1197[_0x6953('0x4f')],qs[_0x6953('0x50')](_0x54d7c2[_0x6953('0x4a')][_0x6953('0x50')]));_0x2d5403[_0x6953('0x4e')]=_0x2d5403[_0x6953('0x4e')][_0x6953('0x51')]?_0x2d5403[_0x6953('0x4e')]:_0x2e1197['model'];if(!_0x54d7c2[_0x6953('0x4a')]['hasOwnProperty'](_0x6953('0x52'))){_0x2d5403[_0x6953('0x38')]=qs[_0x6953('0x38')](_0x54d7c2['query'][_0x6953('0x38')]);_0x2d5403[_0x6953('0x37')]=qs['offset'](_0x54d7c2['query'][_0x6953('0x37')]);}_0x2d5403[_0x6953('0x53')]=qs[_0x6953('0x54')](_0x54d7c2[_0x6953('0x4a')][_0x6953('0x54')]);_0x2d5403[_0x6953('0x55')]=qs[_0x6953('0x4c')](_[_0x6953('0x56')](_0x54d7c2[_0x6953('0x4a')],_0x2e1197[_0x6953('0x4c')]),_0x1da621);var _0x1de9f8=[];var _0x493a91=squel['select']()[_0x6953('0x57')]('id')[_0x6953('0x57')](_0x6953('0x3e'))[_0x6953('0x57')](_0x6953('0x58'))[_0x6953('0x59')](_0x6953('0x5a'));var _0x238ab2=squel[_0x6953('0x5b')]()['field']('u.id')['field']('u.fullname')[_0x6953('0x57')](_0x6953('0x5c'))[_0x6953('0x59')]('user_has_chat_interactions','ui')['left_join'](_0x6953('0x5d'),'u',_0x6953('0x5e'));var _0x11a551=squel['select']()['from'](_0x6953('0x5f'),'i')[_0x6953('0x60')]('cm_contacts','c','c.id\x20=\x20i.ContactId\x20AND\x20c.deletedAt\x20IS\x20NULL')[_0x6953('0x60')](_0x6953('0x5d'),'o',_0x6953('0x61'))[_0x6953('0x60')](_0x6953('0x62'),'a','a.id\x20=\x20i.ChatWebsiteId')[_0x6953('0x60')](_0x6953('0x63'),'me','me.ChatInteractionId\x20=\x20i.id')[_0x6953('0x60')]('chat_interaction_has_tags','it',_0x6953('0x64'))[_0x6953('0x60')](_0x6953('0x5a'),'t',_0x6953('0x65'));var _0x4f24bf=squel[_0x6953('0x66')]();var _0x366390=[];var _0x38b3b1=squel['expr']();var _0x47ef82;if(_0x54d7c2[_0x6953('0x4a')][_0x6953('0x67')]){_0x47ef82=as[_0x6953('0x68')](_0x54d7c2['query']['search']);var _0x44a01=_0x47ef82[_0x6953('0x69')];for(var _0x4c0f1c=0x0;_0x4c0f1c<_0x47ef82[_0x6953('0x6a')][_0x6953('0x51')];_0x4c0f1c++){var _0x4f4683=_0x47ef82[_0x6953('0x6a')][_0x4c0f1c];var _0x1e824a='i';var _0x109b5e=_[_0x6953('0x6b')](_0x1da621,[_0x6953('0x3e'),_0x4f4683['field']]);if(!_0x109b5e){switch(_0x4f4683[_0x6953('0x57')]){case _0x6953('0x6c'):if(_0x4f4683[_0x6953('0x6d')]==0x1){_0x11a551['having']('`'+_0x4f4683['field']+_0x6953('0x6e'));}else{_0x11a551[_0x6953('0x6f')]('`'+_0x4f4683[_0x6953('0x57')]+_0x6953('0x70'));}break;case _0x6953('0x71'):if(_0x4f4683['operator']===_0x6953('0x72')){if(_0x4f4683[_0x6953('0x6d')][_0x6953('0x43')]('\x20')[_0x6953('0x51')]>0x1){_0x4f24bf[_0x44a01](_0x6953('0x73'),qs[_0x6953('0x74')](_0x4f4683[_0x6953('0x6d')]),null);}else{var _0x435e74='%'+_0x4f4683[_0x6953('0x6d')]+'%';_0x4f24bf[_0x44a01](_0x6953('0x75'),_0x435e74,_0x435e74,_0x435e74);}}else{_0x109b5e=_[_0x6953('0x6b')](_0x1da621,[_0x6953('0x3e'),_0x6953('0x76')]);_0x4f4683['field']=_0x6953('0x76');_0x2d0c09=as[_0x6953('0x77')](_0x1e824a,_0x109b5e[_0x6953('0x78')],_0x4f4683);_0x4f24bf[_0x44a01](_0x2d0c09[_0x6953('0x79')],_0x2d0c09[_0x6953('0x6d')]['start'],_0x2d0c09['value'][_0x6953('0x33')]);}break;case'Tag':var _0x471872=_0x4f4683[_0x6953('0x6d')][_0x6953('0x43')](',')[_0x6953('0x41')](function(_0x4c8e6c){return Number(_0x4c8e6c);});_0x471872[_0x6953('0x44')](function(_0x3091fc){_0x38b3b1['or'](_0x6953('0x7a'),'%,'+_0x3091fc+',%');});_0x366390=_[_0x6953('0x7b')](_0x366390,_0x471872);break;case _0x6953('0x7c'):if(_0x4f4683[_0x6953('0x7d')]===_0x6953('0x72')){_0x4f24bf[_0x44a01](_0x6953('0x7e'),'%'+_0x4f4683[_0x6953('0x6d')]+'%',null);}else{_0x109b5e=_[_0x6953('0x6b')](_0x1da621,[_0x6953('0x3e'),_0x6953('0x7f')]);_0x4f4683[_0x6953('0x57')]=_0x6953('0x7f');_0x2d0c09=as[_0x6953('0x77')](_0x1e824a,_0x109b5e['type'],_0x4f4683);_0x4f24bf[_0x44a01](_0x2d0c09[_0x6953('0x79')],_0x2d0c09[_0x6953('0x6d')][_0x6953('0x80')],_0x2d0c09[_0x6953('0x6d')][_0x6953('0x33')]);}break;case _0x6953('0x81'):_0x2d0c09=as[_0x6953('0x77')]('me',null,_0x4f4683);_0x4f24bf[_0x44a01](_0x2d0c09['text'],_0x2d0c09[_0x6953('0x6d')][_0x6953('0x80')],_0x2d0c09['value'][_0x6953('0x33')]);break;}}else{var _0x2d0c09=as[_0x6953('0x77')](_0x1e824a,_0x109b5e['type'],_0x4f4683);_0x4f24bf[_0x44a01](_0x2d0c09['text'],_0x2d0c09[_0x6953('0x6d')][_0x6953('0x80')],_0x2d0c09[_0x6953('0x6d')][_0x6953('0x33')]);}}}else{var _0x1ad883=_(_0x54d7c2[_0x6953('0x4a')])[_0x6953('0x4b')]()[_0x6953('0x41')](function(_0x2d1bba){return _['some'](_0x1da621,[_0x6953('0x3e'),_0x2d1bba])?_0x2d1bba:undefined;})[_0x6953('0x82')]()[_0x6953('0x6d')]();if(!_[_0x6953('0x83')](_0x1ad883)){_0x1ad883['forEach'](function(_0x199ae6){if(_0x199ae6===_0x6953('0x84')){_0x11a551[_0x6953('0x55')]('i.ChatWebsiteId\x20IN\x20?',[][_0x6953('0x85')](_0x54d7c2[_0x6953('0x4a')][_0x199ae6]));}else if(_0x199ae6===_0x6953('0x86')){var _0x1b9588=JSON['parse'](_0x54d7c2[_0x6953('0x4a')][_0x199ae6])[_0x6953('0x87')];var _0x328191=JSON[_0x6953('0x88')](_0x54d7c2['query'][_0x199ae6])['$lte'];_0x11a551[_0x6953('0x55')](_0x6953('0x89'),_0x1b9588,_0x328191);}else{if(_0x54d7c2['query'][_0x199ae6]==='null'){_0x11a551[_0x6953('0x55')]('i.'+_0x199ae6+_0x6953('0x8a'));}else{_0x11a551[_0x6953('0x55')]('i.'+_0x199ae6+_0x6953('0x8b'),_0x54d7c2['query'][_0x199ae6]);}}});}if(_0x54d7c2[_0x6953('0x4a')][_0x6953('0x8c')]){if(_0x54d7c2['query'][_0x6953('0x8c')]==0x1){_0x11a551[_0x6953('0x6f')]('`unreadMessages`\x20=\x200');}else{_0x11a551['having']('`unreadMessages`\x20>\x200');}}if(_0x54d7c2[_0x6953('0x4a')][_0x6953('0x8d')]){_0x366390=_[_0x6953('0x8e')](_0x54d7c2[_0x6953('0x4a')][_0x6953('0x8d')])?_0x54d7c2[_0x6953('0x4a')][_0x6953('0x8d')]:new Array(_0x54d7c2[_0x6953('0x4a')]['tag']);_0x366390[_0x6953('0x44')](function(_0x14eab9){_0x38b3b1['or'](_0x6953('0x7a'),'%,'+_0x14eab9+',%');});}if(_0x54d7c2[_0x6953('0x4a')][_0x6953('0x8f')]){var _0x43ad3d=_0x54d7c2['query'][_0x6953('0x8f')]['replace']('\x5c','\x5c\x5c')[_0x6953('0x90')]('\x27\x27','\x27\x27\x27\x27');if(qs[_0x6953('0x91')](_0x43ad3d)){_0x4f24bf['or'](_0x6953('0x92'),_0x43ad3d+'%');}else{_0x4f24bf['or'](_0x6953('0x93'),qs['getFullTextValue'](_0x43ad3d))['or'](_0x6953('0x94'),_0x43ad3d+'%');}}}_0x11a551[_0x6953('0x55')](_0x4f24bf);_0x11a551[_0x6953('0x95')](_0x6953('0x96'));var _0x8832c7={'type':db[_0x6953('0x25')]['QueryTypes'][_0x6953('0x97')],'raw':!![]};var _0x15794b=_0x11a551[_0x6953('0x98')]();_0x15794b[_0x6953('0x57')](_0x6953('0x96'));_0x15794b[_0x6953('0x57')](_0x6953('0x99'),_0x6953('0x6c'));if(_0x2d5403[_0x6953('0x53')]){_0x2d5403[_0x6953('0x53')][_0x6953('0x44')](function(_0x47c935){_0x11a551[_0x6953('0x53')]('i.'+_0x47c935[0x0],_0x47c935[0x1]===_0x6953('0x9a')?![]:!![]);});}if(!_[_0x6953('0x83')](_0x366390)){_0x11a551[_0x6953('0x6f')](_0x38b3b1);_0x15794b[_0x6953('0x55')](_0x6953('0x9b'),_0x366390);}BPromise[_0x6953('0x9c')]()[_0x6953('0x3d')](function(){if(!_0x47ef82){if(_0x54d7c2[_0x6953('0x4a')][_0x6953('0x84')]||_0x54d7c2[_0x6953('0x4a')]['journey'])return;_0x15794b[_0x6953('0x55')](_0x6953('0x9d'));_0x11a551[_0x6953('0x55')]('i.ChatWebsiteId\x20IS\x20NOT\x20NULL');return;}return _0x54d7c2[_0x6953('0x9e')]['getChatWebsites']({'attributes':['id'],'raw':!![]})['then'](function(_0x18f6cb){if(_[_0x6953('0x83')](_0x18f6cb)){_0x15794b[_0x6953('0x55')](_0x6953('0x9f'));_0x11a551[_0x6953('0x55')](_0x6953('0x9f'));}else{_0x15794b[_0x6953('0x55')]('i.ChatWebsiteId\x20IN\x20?',_[_0x6953('0x41')](_0x18f6cb,'id'));_0x11a551[_0x6953('0x55')](_0x6953('0xa0'),_['map'](_0x18f6cb,'id'));}});})[_0x6953('0x3d')](function(){db[_0x6953('0xa1')]['query'](_0x15794b[_0x6953('0xa2')](),_0x8832c7)['then'](function(_0x531b79){_0x2bdbb6[_0x6953('0x36')]=_0x531b79['length'];if(_0x2bdbb6['count']===0x0)return[];return db[_0x6953('0xa1')][_0x6953('0x4a')](_0x493a91[_0x6953('0xa2')](),_0x8832c7)['then'](function(_0x24a69e){_0x1de9f8=_[_0x6953('0xa3')](_0x24a69e,'id');_0x8832c7=_['merge'](_0x8832c7,{'model':db[_0x6953('0xa4')],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0x54d7c2[_0x6953('0x4a')][_0x6953('0x50')]){_0x2d5403[_0x6953('0x4e')][_0x6953('0x44')](function(_0x31d847){_0x11a551[_0x6953('0x57')]('i.'+_0x31d847);});}else{_0x11a551[_0x6953('0x57')](_0x6953('0x99'),'unreadMessages');_0x11a551[_0x6953('0x57')](_0x6953('0xa5'),'Account.key');_0x11a551[_0x6953('0x57')](_0x6953('0xa6'),_0x6953('0xa7'));_0x11a551[_0x6953('0x57')](_0x6953('0xa8'));_0x11a551[_0x6953('0x57')](_0x6953('0xa9'),'Contact.firstName');_0x11a551[_0x6953('0x57')](_0x6953('0xaa'),_0x6953('0xab'));_0x11a551[_0x6953('0x57')](_0x6953('0xac'),_0x6953('0xad'));_0x11a551[_0x6953('0x57')](_0x6953('0xae'),_0x6953('0xaf'));_0x11a551['field'](_0x6953('0xb0'),'Contact.mobile');_0x11a551[_0x6953('0x57')]('c.fax',_0x6953('0xb1'));_0x11a551[_0x6953('0x57')](_0x6953('0xb2'),_0x6953('0xb3'));_0x11a551[_0x6953('0x57')]('o.internal',_0x6953('0xb4'));_0x11a551['field'](_0x6953('0xb5'),_0x6953('0x42'));}if(_0x2d5403[_0x6953('0x38')])_0x11a551[_0x6953('0x38')](_0x2d5403['limit']);if(_0x2d5403[_0x6953('0x37')])_0x11a551[_0x6953('0x37')](_0x2d5403[_0x6953('0x37')]);return db[_0x6953('0xa1')][_0x6953('0x4a')](_0x11a551[_0x6953('0xa2')](),_0x8832c7);})[_0x6953('0x3d')](function(_0x582bfa){_0x238ab2[_0x6953('0x55')](_0x6953('0xb6'),_[_0x6953('0x41')](_0x582bfa,'id'));return db[_0x6953('0xa1')][_0x6953('0x4a')](_0x238ab2['toString'](),_0x8832c7)['then'](function(_0x4e3420){var _0x20e315=_[_0x6953('0xb7')](_0x4e3420,_0x6953('0xb8'));var _0x518b5e=[];_0x582bfa[_0x6953('0x44')](function(_0x5268ba){_0x518b5e[_0x6953('0x46')](updateChatInteraction(_0x5268ba,_0x1de9f8,_0x20e315));});return BPromise[_0x6953('0xb9')](_0x518b5e);});});})['then'](function(_0x25851f){_0x2bdbb6['rows']=_0x25851f;return _0x2bdbb6;})[_0x6953('0x3d')](respondWithFilteredResult(_0x588ff8,_0x2d5403));})['catch'](handleError(_0x588ff8,null));};exports['show']=function(_0x1d765a,_0x45c9fc){var _0xbf0da2={'raw':![],'where':{'id':_0x1d765a[_0x6953('0xba')]['id']}},_0x14ad16={};_0x14ad16[_0x6953('0x4f')]=_[_0x6953('0x4b')](db[_0x6953('0xa4')]['rawAttributes']);_0x14ad16['query']=_['keys'](_0x1d765a[_0x6953('0x4a')]);_0x14ad16[_0x6953('0x4c')]=_[_0x6953('0x4d')](_0x14ad16[_0x6953('0x4f')],_0x14ad16[_0x6953('0x4a')]);_0xbf0da2['attributes']=_[_0x6953('0x4d')](_0x14ad16[_0x6953('0x4f')],qs[_0x6953('0x50')](_0x1d765a[_0x6953('0x4a')][_0x6953('0x50')]));_0xbf0da2[_0x6953('0x4e')]=_0xbf0da2[_0x6953('0x4e')][_0x6953('0x51')]?_0xbf0da2['attributes']:_0x14ad16[_0x6953('0x4f')];if(_0x1d765a['query'][_0x6953('0xbb')]){_0xbf0da2[_0x6953('0xbc')]=[{'all':!![]}];}_0xbf0da2=_[_0x6953('0xbd')]({},_0xbf0da2,_0x1d765a[_0x6953('0xbe')]);return db[_0x6953('0xa4')][_0x6953('0x6b')](_0xbf0da2)['then'](handleEntityNotFound(_0x45c9fc,null))[_0x6953('0x3d')](respondWithResult(_0x45c9fc,null))['catch'](handleError(_0x45c9fc,null));};exports[_0x6953('0xbf')]=function(_0x19a383,_0x3f4e63){return db[_0x6953('0xa4')][_0x6953('0xbf')](_0x19a383[_0x6953('0x81')],{})[_0x6953('0x3d')](respondWithResult(_0x3f4e63,0xc9))[_0x6953('0x31')](handleError(_0x3f4e63,null));};exports[_0x6953('0xc0')]=function(_0x4729b5,_0x151e3b){if(_0x4729b5[_0x6953('0x81')]['id']){delete _0x4729b5[_0x6953('0x81')]['id'];}return db[_0x6953('0xa4')]['find']({'where':{'id':_0x4729b5[_0x6953('0xba')]['id']}})['then'](handleEntityNotFound(_0x151e3b,null))['then'](saveUpdates(_0x4729b5['body'],null))[_0x6953('0x3d')](respondWithResult(_0x151e3b,null))[_0x6953('0x31')](handleError(_0x151e3b,null));};exports[_0x6953('0x3c')]=function(_0x271dd8,_0x3e2de8){return db[_0x6953('0xa4')][_0x6953('0x6b')]({'where':{'id':_0x271dd8[_0x6953('0xba')]['id']}})[_0x6953('0x3d')](handleEntityNotFound(_0x3e2de8,null))[_0x6953('0x3d')](removeEntity(_0x3e2de8,null))[_0x6953('0x31')](handleError(_0x3e2de8,null));};exports[_0x6953('0xc1')]=function(_0x105671,_0x597b7a){return db[_0x6953('0xa4')][_0x6953('0xc1')]()[_0x6953('0x3d')](respondWithResult(_0x597b7a,null))[_0x6953('0x31')](handleError(_0x597b7a,null));};exports['createVidaooSession']=function(_0x139e43,_0x162f01){var _0x5eaf51=_0x139e43[_0x6953('0xba')]['id'];var _0x2358e8;var _0x18dab4;var _0x2245a0;return db[_0x6953('0xa4')]['findOne']({'where':{'id':_0x5eaf51}})[_0x6953('0x3d')](function(_0x395cca){_0x2358e8=_0x395cca;return db[_0x6953('0xc2')][_0x6953('0xc3')]({'where':{'id':_0x395cca[_0x6953('0x84')]},'attributes':['id',_0x6953('0xc4'),_0x6953('0xc5')],'raw':!![]});})[_0x6953('0x3d')](function(_0x2ae12c){if(_0x2ae12c&&_0x2ae12c[_0x6953('0xc4')]&&_0x2ae12c[_0x6953('0xc5')]){_0x18dab4=_0x2ae12c;var _0x4b778e={'rejectUnauthorized':![],'method':'POST','uri':_0x6953('0xc6'),'headers':{'X-APIKEY':_0x2ae12c[_0x6953('0xc4')]},'body':{'name':_0x6953('0xc7')+_0x5eaf51},'redirect':_0x6953('0xc8'),'json':!![]};return rp(_0x4b778e);}else{throw new db[(_0x6953('0x25'))][(_0x6953('0x26'))](_0x6953('0xc9'));}})[_0x6953('0x3d')](function(_0x56cf6f){_0x2245a0=_0x56cf6f;if(_0x2245a0['id']){var _0x5e6892={'body':_0x2245a0[_0x6953('0xca')],'ChatWebsiteId':_0x18dab4['id'],'ChatInteractionId':_0x2358e8['id'],'direction':'out','UserId':_0x139e43[_0x6953('0x9e')]['id']};return db[_0x6953('0xcb')]['create'](_0x5e6892,{});}else{throw new db[(_0x6953('0x25'))][(_0x6953('0x26'))](_0x6953('0xcc'));}})[_0x6953('0x3d')](function(){return _0x2358e8[_0x6953('0xcd')]({'vidaooSessionId':_0x2245a0['id']});})['then'](respondWithResult(_0x162f01,null))[_0x6953('0x31')](handleError(_0x162f01,null));};exports['customUpdate']=function(_0x4eeecf,_0x247b13){if(_0x4eeecf['body']['id']){delete _0x4eeecf[_0x6953('0x81')]['id'];}return db[_0x6953('0xa4')]['find']({'where':{'id':_0x4eeecf[_0x6953('0xba')]['id']}})[_0x6953('0x3d')](handleEntityNotFound(_0x247b13,null))[_0x6953('0x3d')](saveUpdates(_0x4eeecf[_0x6953('0x81')],null))[_0x6953('0x3d')](respondWithResult(_0x247b13,null))[_0x6953('0x31')](handleError(_0x247b13,null));};exports[_0x6953('0xce')]=function(_0x2941a9,_0x524e20,_0x3dbe0b){if(_0x2941a9[_0x6953('0x81')]['id']){delete _0x2941a9[_0x6953('0x81')]['id'];}return db[_0x6953('0xa4')][_0x6953('0x6b')]({'where':{'id':_0x2941a9[_0x6953('0xba')]['id']}})[_0x6953('0x3d')](function(_0x2f3ed9){if(!_0x2f3ed9){logger['error'](_0x6953('0xcf'),_0x6953('0xce'),0x194,_0x6953('0xd0'));_0x524e20[_0x6953('0x32')](0x194);}else{if(_0x2f3ed9[_0x6953('0x7f')]){throw new db[(_0x6953('0x25'))][(_0x6953('0x26'))]('Interaction\x20already\x20assigned');}}return _0x2f3ed9;})['then'](function(_0x43c988){if(_0x43c988){return _0x43c988[_0x6953('0xc0')]({'closed':_0x2941a9[_0x6953('0x81')][_0x6953('0xd1')],'disposition':_0x2941a9[_0x6953('0x81')][_0x6953('0xd2')]})[_0x6953('0x3d')](function(_0x3c9bfb){return _0x3c9bfb;});}})[_0x6953('0x3d')](function(_0x255009){return respondWithRpcPromise(_0x6953('0xd3'),_0x6953('0xce'),_0x2941a9[_0x6953('0x81')],client9004);})[_0x6953('0x3d')](respondWithResult(_0x524e20,null))[_0x6953('0x31')](handleError(_0x524e20,null));};exports['attachmentUpload']=function(_0x1035b5,_0x480984,_0x4dd6f5){_0x1035b5[_0x6953('0x81')]['name']=_0x1035b5[_0x6953('0xd4')][_0x6953('0xd5')];_0x1035b5[_0x6953('0x81')][_0x6953('0xd6')]=_0x1035b5[_0x6953('0xd4')][_0x6953('0xd7')];_0x1035b5['body'][_0x6953('0x78')]=_0x1035b5[_0x6953('0xd4')][_0x6953('0xd8')];return db[_0x6953('0xd9')][_0x6953('0xbf')](_0x1035b5[_0x6953('0x81')])['then'](respondWithResult(_0x480984,0xc9))[_0x6953('0x31')](handleError(_0x480984,null));};exports[_0x6953('0xda')]=function(_0x28b61c,_0x3399a3,_0x3c58c4){return db['ChatInteraction'][_0x6953('0xc3')]({'where':{'id':_0x28b61c[_0x6953('0xba')]['id']},'raw':!![]})[_0x6953('0x3d')](handleEntityNotFound(_0x3399a3,null))[_0x6953('0x3d')](function(_0x132c54){if(_0x132c54){if(_0x132c54[_0x6953('0xd1')]){return _0x3399a3[_0x6953('0x34')](0x193)[_0x6953('0x35')]({'status':0x193,'message':_0x6953('0xdb')});}return db[_0x6953('0xd9')][_0x6953('0xc3')]({'where':{'id':_0x28b61c[_0x6953('0x4a')][_0x6953('0xdc')]},'raw':!![]})['then'](handleEntityNotFound(_0x3399a3,null));}})[_0x6953('0x3d')](function(_0x3f2cf1){if(_0x3f2cf1){return _0x3399a3[_0x6953('0xdd')](path[_0x6953('0xde')](config[_0x6953('0xdf')],_0x6953('0xe0'),_0x3f2cf1['basename']));}})['catch'](handleError(_0x3399a3,null));};exports[_0x6953('0xe1')]=function(_0x548f3e,_0x8f15bc){var _0x3a17bb=null;var _0x2e4737=null;var _0x331563=null;var _0x2ff051=null;if(_0x548f3e[_0x6953('0x81')]['id']){delete _0x548f3e['body']['id'];}if(_0x548f3e[_0x6953('0x81')][_0x6953('0xe2')]){_0x2ff051=path[_0x6953('0xde')](config[_0x6953('0xdf')],_0x6953('0xe3'),util[_0x6953('0xe4')](_0x6953('0xe5'),Date[_0x6953('0xe6')]()));_0x548f3e['body'][_0x6953('0xe7')]=_0x2ff051;}return db[_0x6953('0xa4')]['find']({'where':{'id':_0x548f3e[_0x6953('0xba')]['id']},'include':[{'model':db[_0x6953('0xcb')],'as':_0x6953('0xe8'),'include':[{'model':db[_0x6953('0x7c')],'as':_0x6953('0x7c')}]}]})[_0x6953('0x3d')](handleEntityNotFound(_0x8f15bc,null))[_0x6953('0x3d')](saveUpdates(_0x548f3e[_0x6953('0x81')],null))[_0x6953('0x3d')](function(_0x17563f){if(_0x17563f){_0x3a17bb=_0x17563f;return db['ChatWebsite'][_0x6953('0x6b')]({'where':{'id':_0x3a17bb['ChatWebsiteId']}});}})['then'](function(_0xd28ac9){if(_0xd28ac9){_0x331563=_0xd28ac9;return db[_0x6953('0xe9')][_0x6953('0x6b')]({'where':{'id':_0x3a17bb['ContactId']}});}})['then'](function(_0x2bfb1b){if(_0x2bfb1b){_0x2e4737=_0x2bfb1b;if(_0x2ff051){var _0x47aef1=null;for(var _0x304553=0x1;_0x304553<_0x3a17bb['Messages'][_0x6953('0x51')];++_0x304553){_0x47aef1=_0x3a17bb[_0x6953('0xe8')][_0x304553];var _0x5c63c7=_0x47aef1['UserId']?util[_0x6953('0xe4')](_0x6953('0xea'),_0x331563[_0x6953('0xeb')],_0x47aef1[_0x6953('0x7f')]):'System';var _0x5ef901=_0x548f3e[_0x6953('0x81')][_0x6953('0xec')]||util[_0x6953('0xe4')](_0x6953('0xea'),_0x6953('0xed'),_0x47aef1[_0x6953('0x76')]);switch(_0x331563[_0x6953('0xee')]){case _0x6953('0xef'):_0x5c63c7=_0x47aef1[_0x6953('0x7f')]?util['format'](_0x6953('0xea'),_0x331563[_0x6953('0xeb')],_0x47aef1[_0x6953('0x7f')]):_0x6953('0xf0');break;case _0x6953('0xf1'):_0x5c63c7=_0x47aef1[_0x6953('0x7f')]?_0x47aef1[_0x6953('0x7c')][_0x6953('0xf2')]||_0x47aef1[_0x6953('0x7c')][_0x6953('0xf3')]:_0x6953('0xf0');break;case _0x6953('0xf4'):_0x5c63c7=_0x47aef1[_0x6953('0x7f')]?_0x47aef1[_0x6953('0x7c')][_0x6953('0xf3')]:_0x6953('0xf0');break;default:_0x5c63c7=_0x47aef1[_0x6953('0x7f')]?util[_0x6953('0xe4')](_0x6953('0xea'),_0x331563[_0x6953('0xeb')],_0x47aef1[_0x6953('0x7f')]):_0x6953('0xf0');}var _0x40d8b4=util[_0x6953('0xe4')](_0x6953('0xf5'),moment(_0x47aef1['createdAt'])[_0x6953('0xe4')]('MM/DD/YYYY\x20HH:mm:ss'),_0x47aef1[_0x6953('0xf6')]==='in'?_0x5ef901:_0x5c63c7,_0x47aef1[_0x6953('0x81')]);if(!_0x47aef1[_0x6953('0xf7')]){fs[_0x6953('0xf8')](_0x2ff051,_0x40d8b4);}}return db[_0x6953('0xf9')][_0x6953('0xc3')]({'where':{'service':!![]},'include':[{'model':db[_0x6953('0xfa')],'as':'Smtp','raw':!![]}]});}}})[_0x6953('0x3d')](function(_0x43a23e){if(_0x43a23e&&_0x43a23e[_0x6953('0xfb')]&&_0x548f3e[_0x6953('0x81')]){var _0x1a2525={'tls':{'rejectUnauthorized':![]}};if(_0x43a23e[_0x6953('0xfb')][_0x6953('0xfc')]){_0x1a2525[_0x6953('0xfc')]=_0x43a23e[_0x6953('0xfb')][_0x6953('0xfc')];}else{_0x1a2525[_0x6953('0xfd')]=_0x43a23e[_0x6953('0xfb')]['host'];_0x1a2525[_0x6953('0xfe')]=_0x43a23e[_0x6953('0xfb')][_0x6953('0xfe')];_0x1a2525[_0x6953('0xff')]=_0x43a23e[_0x6953('0xfb')][_0x6953('0xff')];}if(_0x43a23e[_0x6953('0xfb')]['authentication']){_0x1a2525[_0x6953('0x100')]={'user':_0x43a23e[_0x6953('0xfb')][_0x6953('0x9e')],'pass':_0x43a23e[_0x6953('0xfb')][_0x6953('0x101')]};}return respondWithRpcPromise(_0x6953('0x102'),_0x6953('0x103'),{'account':_0x1a2525,'message':{'from':util[_0x6953('0xe4')](_0x6953('0x104'),_0x43a23e[_0x6953('0x3e')],_0x43a23e[_0x6953('0x105')]||_0x43a23e[_0x6953('0xfb')][_0x6953('0x9e')]),'to':_0x548f3e[_0x6953('0x81')][_0x6953('0xe2')],'subject':'Mail\x20Transcript','text':util[_0x6953('0xe4')](_0x6953('0x106'),_0x548f3e[_0x6953('0x81')]['mailTranscript']),'attachments':[{'path':_0x2ff051}]}})[_0x6953('0x3d')](function(){return _0x3a17bb;})[_0x6953('0x31')](function(_0x47c7ce){console['error'](_0x47c7ce);});}else{return _0x3a17bb;}})[_0x6953('0x3d')](respondWithStatusCode(_0x8f15bc,0xc8))['catch'](handleError(_0x8f15bc,null));};exports[_0x6953('0x107')]=function(_0x1bfc79,_0x466b60,_0x3cc2b7){return db['ChatMessage']['find']({'where':{'id':_0x1bfc79[_0x6953('0xba')]['id']}})[_0x6953('0x3d')](handleEntityNotFound(_0x466b60,null))[_0x6953('0x3d')](function(_0x3fe54f){if(_0x3fe54f){return _0x3fe54f[_0x6953('0x107')](_0x1bfc79[_0x6953('0x81')][_0x6953('0x108')],_[_0x6953('0x109')](_0x1bfc79[_0x6953('0x81')],[_0x6953('0x108'),'id'])||{});}})['then'](respondWithResult(_0x466b60,null))[_0x6953('0x31')](handleError(_0x466b60,null));};exports[_0x6953('0x10a')]=function(_0x580ba6,_0x4bdc48,_0x492b50){var _0x1bc457={'raw':![],'where':{}};var _0x81cd9={};var _0x2664c3={'count':0x0,'rows':[]};return db[_0x6953('0xa4')][_0x6953('0xc3')]({'where':{'id':_0x580ba6[_0x6953('0xba')]['id']}})[_0x6953('0x3d')](handleEntityNotFound(_0x4bdc48,null))[_0x6953('0x3d')](function(_0x5914f0){if(_0x5914f0){_0x81cd9[_0x6953('0x4f')]=_[_0x6953('0x4b')](db[_0x6953('0xcb')]['rawAttributes']);_0x81cd9[_0x6953('0x4a')]=_['keys'](_0x580ba6[_0x6953('0x4a')]);_0x81cd9[_0x6953('0x4c')]=_['intersection'](_0x81cd9[_0x6953('0x4f')],_0x81cd9[_0x6953('0x4a')]);_0x1bc457[_0x6953('0x4e')]=_[_0x6953('0x4d')](_0x81cd9[_0x6953('0x4f')],qs[_0x6953('0x50')](_0x580ba6[_0x6953('0x4a')][_0x6953('0x50')]));_0x1bc457[_0x6953('0x4e')]=_0x1bc457[_0x6953('0x4e')][_0x6953('0x51')]?_0x1bc457[_0x6953('0x4e')]:_0x81cd9[_0x6953('0x4f')];if(!_0x580ba6['query'][_0x6953('0x10b')](_0x6953('0x52'))){_0x1bc457[_0x6953('0x38')]=qs[_0x6953('0x38')](_0x580ba6['query'][_0x6953('0x38')]);_0x1bc457[_0x6953('0x37')]=qs[_0x6953('0x37')](_0x580ba6[_0x6953('0x4a')]['offset']);}_0x1bc457['order']=qs[_0x6953('0x54')](_0x580ba6[_0x6953('0x4a')][_0x6953('0x54')]);_0x1bc457['where']=qs[_0x6953('0x4c')](_[_0x6953('0x56')](_0x580ba6['query'],_0x81cd9['filters']));_0x1bc457[_0x6953('0x55')][_0x6953('0xb8')]=_0x5914f0['id'];if(_0x580ba6[_0x6953('0x4a')]['filter']){_0x1bc457['where']=_[_0x6953('0xbd')](_0x1bc457[_0x6953('0x55')],{'$or':_['map'](_0x1bc457['attributes'],function(_0x3851db){var _0x57cabc={};_0x57cabc[_0x3851db]={'$like':'%'+_0x580ba6[_0x6953('0x4a')][_0x6953('0x8f')]+'%'};return _0x57cabc;})});}if(_0x580ba6['query']['$gte']){var _0x2073b3=_0x580ba6['query'][_0x6953('0x87')][_0x6953('0x43')](',');var _0x46da4f={};_0x46da4f[_0x2073b3[0x0]]={'$gte':moment(_0x2073b3[0x1])[_0x6953('0xe4')](_0x6953('0x10c'))};_0x1bc457[_0x6953('0x55')]=_[_0x6953('0xbd')](_0x1bc457[_0x6953('0x55')],_0x46da4f);}_0x1bc457=_[_0x6953('0xbd')]({},_0x1bc457,_0x580ba6[_0x6953('0xbe')]);return db['ChatMessage'][_0x6953('0x36')]({'where':_0x1bc457['where']})[_0x6953('0x3d')](function(_0x715dbb){_0x2664c3[_0x6953('0x36')]=_0x715dbb;if(_0x580ba6[_0x6953('0x4a')][_0x6953('0xbb')]){_0x1bc457[_0x6953('0xbc')]=[{'all':!![]}];}return db['ChatMessage'][_0x6953('0x10d')](_0x1bc457);})[_0x6953('0x3d')](function(_0x94d96d){_0x2664c3[_0x6953('0x10e')]=_0x94d96d;return _0x2664c3;});}})[_0x6953('0x3d')](respondWithFilteredResult(_0x4bdc48,_0x1bc457))['catch'](handleError(_0x4bdc48,null));};exports[_0x6953('0x10f')]=function(_0x50e929,_0x105d95,_0xc39b7){var _0x48206b={'where':{}},_0x35a52d={},_0x3b6450={'count':0x0,'rows':[]};return db[_0x6953('0xa4')]['findOne']({'where':{'id':_0x50e929[_0x6953('0xba')]['id']}})['then'](handleEntityNotFound(_0x105d95,null))['then'](function(_0x1bc639){if(_0x1bc639){_0x35a52d[_0x6953('0x4f')]=_['keys'](db[_0x6953('0xcb')]['rawAttributes']);_0x35a52d[_0x6953('0x4a')]=_['keys'](_0x50e929['query']);_0x35a52d['filters']=_[_0x6953('0x4d')](_0x35a52d[_0x6953('0x4f')],_0x35a52d[_0x6953('0x4a')]);_0x48206b[_0x6953('0x4e')]=_[_0x6953('0x4d')](_0x35a52d[_0x6953('0x4f')],qs[_0x6953('0x50')](_0x50e929[_0x6953('0x4a')][_0x6953('0x50')]));_0x48206b[_0x6953('0x4e')]=_0x48206b[_0x6953('0x4e')][_0x6953('0x51')]?_0x48206b[_0x6953('0x4e')]:_0x35a52d['model'];if(!_0x50e929['query']['hasOwnProperty']('nolimit')){_0x48206b[_0x6953('0x38')]=qs[_0x6953('0x38')](_0x50e929[_0x6953('0x4a')]['limit']);_0x48206b[_0x6953('0x37')]=qs[_0x6953('0x37')](_0x50e929[_0x6953('0x4a')][_0x6953('0x37')]);}_0x48206b[_0x6953('0x53')]=qs[_0x6953('0x54')](_0x50e929[_0x6953('0x4a')][_0x6953('0x54')]);_0x48206b[_0x6953('0x55')]=qs[_0x6953('0x4c')](_['pick'](_0x50e929[_0x6953('0x4a')],_0x35a52d[_0x6953('0x4c')]));_0x48206b[_0x6953('0x55')][_0x6953('0xb8')]=_0x1bc639['id'];if(_0x50e929['query']['filter']){_0x48206b['where']=_[_0x6953('0xbd')](_0x48206b[_0x6953('0x55')],{'$or':_[_0x6953('0x41')](_0x48206b['attributes'],function(_0x39eebb){var _0xdc3da5={};_0xdc3da5[_0x39eebb]={'$like':'%'+_0x50e929['query'][_0x6953('0x8f')]+'%'};return _0xdc3da5;})});}_0x48206b[_0x6953('0x55')][_0x6953('0xf7')]=![];if(_0x50e929[_0x6953('0x4a')]['id']){_0x48206b[_0x6953('0x55')]['id']={'$gt':_0x50e929[_0x6953('0x4a')]['id']};}_0x48206b=_[_0x6953('0xbd')]({},_0x48206b,_0x50e929[_0x6953('0xbe')]);return db['ChatMessage'][_0x6953('0x36')]({'where':_0x48206b[_0x6953('0x55')]})['then'](function(_0x1df8fe){_0x3b6450['count']=_0x1df8fe;_0x48206b['include']=[];if(_0x50e929[_0x6953('0x4a')][_0x6953('0x110')]){_0x48206b[_0x6953('0xbc')][_0x6953('0x46')]({'model':db[_0x6953('0x7c')],'as':'User','attributes':['id',_0x6953('0xf3'),'alias']});}if(_0x50e929['query']['includeAll']){_0x48206b[_0x6953('0xbc')]=[{'all':!![]}];}return db[_0x6953('0xcb')][_0x6953('0x10d')](_0x48206b);})['then'](function(_0x5689de){_0x3b6450['rows']=_0x5689de;return _0x3b6450;});}})[_0x6953('0x3d')](respondWithFilteredResult(_0x105d95,_0x48206b))[_0x6953('0x31')](handleError(_0x105d95,null));};exports[_0x6953('0x111')]=function(_0x521cc2,_0x30d89c,_0x3e244b){return db[_0x6953('0xa4')]['find']({'where':{'id':_0x521cc2[_0x6953('0xba')]['id']}})['then'](handleEntityNotFound(_0x30d89c,null))[_0x6953('0x3d')](function(_0x8a809f){if(_0x8a809f){return _0x8a809f['setTags'](_0x521cc2[_0x6953('0x81')][_0x6953('0x108')],_[_0x6953('0x109')](_0x521cc2[_0x6953('0x81')],[_0x6953('0x108'),'id'])||{})[_0x6953('0x112')](function(){return db['Tag'][_0x6953('0x10d')]({'attributes':['id','name','color'],'where':{'id':_0x521cc2[_0x6953('0x81')]['ids']}});})[_0x6953('0x3d')](function(_0x542902){socket[_0x6953('0x113')]('chatInteractionTags:save',{'id':Number(_0x521cc2['params']['id']),'tags':_0x542902||[]});return{'id':Number(_0x521cc2[_0x6953('0xba')]['id']),'tags':_0x542902||[]};});}})['then'](respondWithResult(_0x30d89c,null))['catch'](handleError(_0x30d89c,null));};exports[_0x6953('0x114')]=function(_0x134ad4,_0x56178a,_0xe8b28e){return db[_0x6953('0xa4')][_0x6953('0x6b')]({'where':{'id':_0x134ad4[_0x6953('0xba')]['id']}})['then'](handleEntityNotFound(_0x56178a,null))[_0x6953('0x3d')](function(_0x5cddcf){if(_0x5cddcf){return _0x5cddcf[_0x6953('0x114')](_0x134ad4[_0x6953('0x4a')][_0x6953('0x108')]);}})['then'](respondWithStatusCode(_0x56178a,null))[_0x6953('0x31')](handleError(_0x56178a,null));};exports['download']=function(_0x47be80,_0x4efb0f){var _0x25f02a=moment()[_0x6953('0x115')]()[_0x6953('0xa2')]();var _0x45ef51=path[_0x6953('0xde')](config['root'],_0x6953('0x116'),_0x6953('0x117'),_0x6953('0x118'));var _0x4d497c=path[_0x6953('0xde')](config[_0x6953('0xdf')],'server',_0x6953('0x117'),'attachments');var _0x4ed530=path[_0x6953('0xde')](_0x45ef51,_0x25f02a);var _0x2fb5eb=util[_0x6953('0xe4')](_0x6953('0x119'),_0x47be80[_0x6953('0xba')]['id'],_0x25f02a);var _0x3a085e=path[_0x6953('0xde')](_0x45ef51,_0x2fb5eb);var _0x126396=[];_0x126396['push']({'model':db['User'],'as':'User','attributes':['id','fullname'],'raw':!![]});_0x126396[_0x6953('0x46')]({'model':db[_0x6953('0xe9')],'as':'Contact','attributes':['id',_0x6953('0x11a'),_0x6953('0x11b')],'raw':!![]});if(_0x47be80['query'][_0x6953('0x11c')]){_0x126396['push']({'model':db[_0x6953('0xd9')],'as':_0x6953('0xd9'),'raw':!![]});}var _0x3a42d4=[{'model':db[_0x6953('0xcb')],'as':_0x6953('0xe8'),'attributes':['id',_0x6953('0x81'),_0x6953('0x86'),_0x6953('0xf6'),'secret',_0x6953('0x8c')],'include':_0x126396}];_0x3a42d4[_0x6953('0x46')]({'model':db[_0x6953('0xc2')],'as':_0x6953('0x11d'),'attributes':['id',_0x6953('0x3e')]});_0x3a42d4[_0x6953('0x46')]({'model':db[_0x6953('0x7c')],'as':_0x6953('0x11e'),'attributes':['id',_0x6953('0xf3')]});return db[_0x6953('0xa4')]['find']({'where':{'id':_0x47be80[_0x6953('0xba')]['id']},'include':_0x3a42d4})[_0x6953('0x3d')](handleEntityNotFound(_0x4efb0f,null))[_0x6953('0x3d')](function(_0x1b2472){if(_0x1b2472){var _0x3c3472=_0x1b2472[_0x6953('0x11f')]({'plain':!![]});fs[_0x6953('0x120')](_0x4ed530);var _0x385d81={'format':'A4','border':'10px','header':{'height':_0x6953('0x121'),'contents':{'first':_0x6953('0x122')}},'footer':{'height':'30px','contents':{'default':util[_0x6953('0xe4')](_0x6953('0x123'),util[_0x6953('0xe4')](_0x6953('0x124'),'Chat',_0x3c3472['id']),moment()['format'](_0x6953('0x125'))[_0x6953('0xa2')]())}}};var _0x3a74ab={'channel':'Chat','account':_0x3c3472[_0x6953('0x11d')][_0x6953('0x3e')],'agent':_0x3c3472['Owner']?_0x3c3472[_0x6953('0x11e')]['fullname']:_0x6953('0x126'),'createdAt':moment(_0x3c3472['createdAt'])['format'](_0x6953('0x10c'))[_0x6953('0xa2')](),'closedAt':_0x3c3472[_0x6953('0xd1')]?moment(_0x3c3472[_0x6953('0x127')])['format'](_0x6953('0x10c'))[_0x6953('0xa2')]():'','disposition':_0x3c3472['disposition'],'chatInfo':{'browser':_0x3c3472[_0x6953('0x128')],'os':_0x3c3472['osName'],'referer':_0x3c3472[_0x6953('0x129')],'customerIp':_0x3c3472[_0x6953('0x12a')],'customerPort':_0x3c3472['customerPort']?_0x3c3472[_0x6953('0x12b')]:_0x6953('0x126')},'messages':_(_0x3c3472['Messages'])[_0x6953('0x12c')]()[_0x6953('0x8f')]({'secret':![]})[_0x6953('0x41')](function(_0x32a725){if(_0x32a725[_0x6953('0xd9')]){var _0x73af51=path[_0x6953('0xde')](_0x4d497c,_0x32a725[_0x6953('0xd9')][_0x6953('0xd6')]);if(fs[_0x6953('0x12d')](_0x73af51)){fs[_0x6953('0x12e')](_0x73af51)['pipe'](fs[_0x6953('0x12f')](path[_0x6953('0xde')](_0x4ed530,_0x32a725[_0x6953('0xd9')][_0x6953('0xd6')])));}}return{'date':moment(_0x32a725[_0x6953('0x86')])[_0x6953('0xe4')](_0x6953('0x10c'))['toString'](),'sender':_0x32a725[_0x6953('0xf6')]===_0x6953('0x130')?_0x32a725[_0x6953('0x7c')]?_0x32a725[_0x6953('0x7c')][_0x6953('0xf3')]:_0x6953('0xf0'):_0x32a725[_0x6953('0x71')][_0x6953('0x11a')]+(_0x32a725[_0x6953('0x71')][_0x6953('0x11b')]?'\x20'+_0x32a725[_0x6953('0x71')][_0x6953('0x11b')]:''),'body':_0x32a725['Attachment']?_0x32a725['Attachment'][_0x6953('0xd6')]:_0x32a725[_0x6953('0x81')],'direction':_0x32a725[_0x6953('0xf6')]===_0x6953('0x130')?'A':'C','secret':_0x32a725[_0x6953('0xf7')],'read':_0x32a725[_0x6953('0x8c')],'attachment':_0x32a725[_0x6953('0xd9')]};})[_0x6953('0x6d')]()};return ejs[_0x6953('0x131')](path[_0x6953('0xde')](config[_0x6953('0xdf')],'server',_0x6953('0x132'),'downloadInteraction.html'),{'interaction':_0x3a74ab})[_0x6953('0x3d')](function(_0x14a50c){return new BPromise(function(_0x5e9669,_0x47694e){pdf[_0x6953('0xbf')](_0x14a50c,_0x385d81)[_0x6953('0x133')](path[_0x6953('0xde')](_0x4ed530,_0x6953('0x134')+_0x3c3472['id']+'-'+_0x25f02a+_0x6953('0x135')),function(_0x56adaf,_0x3ee455){if(_0x56adaf)return _0x47694e(_0x56adaf);_0x5e9669(_0x3ee455);});});})[_0x6953('0x3d')](function(){return new BPromise(function(_0x3b5832,_0x14bbae){zipdir(_0x4ed530,{'saveTo':_0x3a085e},function(_0x50b625,_0x11a94a){if(_0x50b625)return _0x14bbae(_0x50b625);return _0x3b5832(_0x11a94a);});})[_0x6953('0x3d')](function(){return new BPromise(function(_0x4460ed,_0x2b0bb4){rimraf(_0x4ed530,function(_0x5517a0){if(_0x5517a0)_0x2b0bb4(_0x5517a0);return _0x4460ed();});});})[_0x6953('0x3d')](function(){return _0x4efb0f['download'](_0x3a085e,_0x2fb5eb,function(_0x10d883){if(_0x10d883){console[_0x6953('0x136')](_0x6953('0x137'),_0x10d883);}else{fs[_0x6953('0x138')](_0x3a085e);}});});});}else{return _0x4efb0f[_0x6953('0x32')](0xc8);}})['catch'](handleError(_0x4efb0f,null));};