Built motion from commit (unavailable).|2.5.2
[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 _0x27a0=['buildExpression','text','start','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','union','User','CONCAT_WS(\x27\x20\x27,\x20o.name,\x20o.fullname)\x20LIKE\x20?','UserId','ChatWebsiteId','i.ChatWebsiteId\x20IN\x20?','createdAt','parse','$gte','$lte','i.createdAt\x20BETWEEN\x20?\x20AND\x20?','null','\x20IS\x20NULL','read','`unreadMessages`\x20>\x200','tag','filter','replace','\x27\x27\x27\x27','isNumeric','CONCAT(c.firstName,\x20\x27\x20\x27,\x20c.lastName)\x20LIKE\x20?','group','i.id','Sequelize','SELECT','clone','SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','DESC','isEmpty','t.id\x20IN\x20?','resolve','journey','i.ChatWebsiteId\x20IS\x20NOT\x20NULL','i.ChatWebsiteId\x20IS\x20NULL','toString','keyBy','merge','Account.key','a.mandatoryDisposition','Account.mandatoryDisposition','i.*','Contact.firstName','c.lastName','Contact.lastName','c.email','c.phone','Contact.phone','Contact.mobile','c.fax','Contact.fax','o.fullname','Owner.fullname','o.internal','GROUP_CONCAT(DISTINCT\x20t.id)','ui.ChatInteractionId\x20IN\x20?','sequelize','groupBy','ChatInteractionId','all','rows','show','params','rawAttributes','includeAll','include','body','describe','findOne','ChatWebsite','vidaooApiKey','vidaooEscalation','POST','https://api-vidaoo.xcally.com/api/v1/sessions','MotionCWB:','follow','ValidationError','Error\x20in\x20Vidaoo\x20configuration','join_url','out','user','create','Unable\x20to\x20create\x20Vidaoo\x20session','abandon','abandonInteraction,\x20%s,\x20%s,\x20%s','AbandonInteraction','attachmentUpload','basename','filename','file','mimetype','closed','Unauthorized','Attachment','attachId','download','join','root','server/files/attachments/','close','mailTranscript','server/files/chat/upload/','transcript-%s.txt','now','pathTranscript','Messages','CmContact','format','System','customer','%s%d','Visitor','agentIdentifier','agentAlias','agent_alias','fullname','agent_fullname','[%s]\x20%s:\x20%s\x0a','MM/DD/YYYY\x20HH:mm:ss','appendFileSync','MailAccount','MailServerOut','Smtp','service','host','port','secure','authentication','auth','pass','SendMail','sendMail','\x22%s\x22\x20<%s>','email','Mail\x20Transcript','addMessage','ChatMessage','ids','omit','getMessages','pick','YYYY-MM-DD\x20HH:mm:ss','findAll','getMyMessages','secret','options','includeAgent','alias','addTags','setTags','spread','Tag','emit','chatInteractionTags:save','removeTags','unix','server','files','attachments','firstName','lastName','direction','Account','Owner','get','mkdirSync','10px','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>','30px','%s\x20#%d','Chat','YYYY-MM-DD','N.A.','closedAt','disposition','browserName','referer','customerIp','customerPort','tail','existsSync','createReadStream','createWriteStream','views','downloadInteraction.html','toFile','transcript-','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','path','sox','to-csv','ejs','lodash','squel','jsforce','desk.js','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','redis','defaults','localhost','./chatInteraction.socket','register','jayson/promise','client','http','The\x20password\x20must\x20be\x20at\x20least\x208\x20characters\x20long\x20and\x20have\x201\x20lowercase\x20character,\x201\x20uppercase\x20character,\x201\x20number\x20and\x201\x20special\x20character\x20~!@#$%^&-_=+[{]}.','then','info','request\x20sent','stringify','error','ChatInteraction,\x20%s,\x20%s','message','result','catch','sendStatus','status','count','offset','limit','set','json','reject','save','update','destroy','end','stack','name','send','Users','map','TagIds','Tags','split','forEach','push','index','ChatInteraction','fieldName','type','key','model','query','keys','attributes','intersection','fields','length','hasOwnProperty','nolimit','order','sort','where','filters','field','select','u.fullname','ui.ChatInteractionId','user_has_chat_interactions','users','u.id\x20=\x20ui.UserId','from','chat_interactions','left_join','cm_contacts','o.id\x20=\x20i.UserId','chat_websites','a.id\x20=\x20i.ChatWebsiteId','me.ChatInteractionId\x20=\x20i.id','chat_interaction_has_tags','it.ChatInteractionId\x20=\x20i.id','tools_tags','t.id\x20=\x20it.TagId','expr','search','sqlOperator','conditions','unreadMessages','value','having','Contact','operator','$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?','find','ContactId'];(function(_0xa2c0a3,_0x5bbac0){var _0x52c618=function(_0x20f7fd){while(--_0x20f7fd){_0xa2c0a3['push'](_0xa2c0a3['shift']());}};_0x52c618(++_0x5bbac0);}(_0x27a0,0xbf));var _0x027a=function(_0x7a439f,_0x586e9d){_0x7a439f=_0x7a439f-0x0;var _0x2756cf=_0x27a0[_0x7a439f];return _0x2756cf;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0x027a('0x0'));var rimraf=require(_0x027a('0x1'));var zipdir=require(_0x027a('0x2'));var jsonpatch=require(_0x027a('0x3'));var rp=require(_0x027a('0x4'));var moment=require('moment');var BPromise=require('bluebird');var Mustache=require('mustache');var util=require('util');var path=require(_0x027a('0x5'));var sox=require(_0x027a('0x6'));var csv=require(_0x027a('0x7'));var ejs=require(_0x027a('0x8'));var fs=require('fs');var _=require(_0x027a('0x9'));var squel=require(_0x027a('0xa'));var crypto=require('crypto');var jsforce=require(_0x027a('0xb'));var deskjs=require(_0x027a('0xc'));var toCsv=require(_0x027a('0x7'));var querystring=require('querystring');var Papa=require(_0x027a('0xd'));var Redis=require(_0x027a('0xe'));var authService=require(_0x027a('0xf'));var qs=require('../../components/parsers/qs');var as=require(_0x027a('0x10'));var hardwareService=require(_0x027a('0x11'));var logger=require(_0x027a('0x12'))(_0x027a('0x13'));var utils=require(_0x027a('0x14'));var config=require(_0x027a('0x15'));var db=require(_0x027a('0x16'))['db'];config[_0x027a('0x17')]=_[_0x027a('0x18')](config[_0x027a('0x17')],{'host':_0x027a('0x19'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x027a('0x17')]));require(_0x027a('0x1a'))[_0x027a('0x1b')](socket);var jayson=require(_0x027a('0x1c'));var client=jayson[_0x027a('0x1d')]['http']({'port':0x232b});var client9004=jayson['client'][_0x027a('0x1e')]({'port':0x232c});function checkPasswordPattern(_0x5cfc6d,_0x2b3870,_0x559d13){if(_0x559d13){var _0x432007=new RegExp(/(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[?!@#\$%\^&\*~\-_=+[{\]\}])(?=.{8,})/);if(_0x432007['test'](_0x2b3870)){return _0x5cfc6d;}else{throw new db['Sequelize']['ValidationError'](_0x027a('0x1f'));}}else{return _0x5cfc6d;}}function respondWithRpcPromise(_0x2f04e9,_0x826d19,_0x1fb40b,_0x52125e){return new BPromise(function(_0x282e70,_0x2fccf6){var _0x4ad813=_0x52125e||client;return _0x4ad813['request'](_0x2f04e9,_0x1fb40b)[_0x027a('0x20')](function(_0x57cf67){logger[_0x027a('0x21')]('ChatInteraction,\x20%s,\x20%s',_0x826d19,'request\x20sent');logger['debug']('ChatInteraction,\x20%s,\x20%s,\x20%s',_0x826d19,_0x027a('0x22'),JSON[_0x027a('0x23')](_0x57cf67));if(_0x57cf67[_0x027a('0x24')]){if(_0x57cf67[_0x027a('0x24')]['code']===0x1f4){logger[_0x027a('0x24')](_0x027a('0x25'),_0x826d19,_0x57cf67[_0x027a('0x24')][_0x027a('0x26')]);return _0x2fccf6(_0x57cf67[_0x027a('0x24')][_0x027a('0x26')]);}logger['error'](_0x027a('0x25'),_0x826d19,_0x57cf67['error'][_0x027a('0x26')]);return _0x282e70(_0x57cf67[_0x027a('0x24')][_0x027a('0x26')]);}else{logger[_0x027a('0x21')]('ChatInteraction,\x20%s,\x20%s',_0x826d19,'request\x20sent');_0x282e70(_0x57cf67[_0x027a('0x27')][_0x027a('0x26')]);}})[_0x027a('0x28')](function(_0x129d5f){logger['error'](_0x027a('0x25'),_0x826d19,_0x129d5f);_0x2fccf6(_0x129d5f);});});}function respondWithStatusCode(_0x55a8cd,_0x953887){_0x953887=_0x953887||0xcc;return function(_0x488920){if(_0x488920){return _0x55a8cd[_0x027a('0x29')](_0x953887);}return _0x55a8cd['status'](_0x953887)['end']();};}function respondWithResult(_0x31385d,_0x5782ac){_0x5782ac=_0x5782ac||0xc8;return function(_0x47a365){if(_0x47a365){return _0x31385d[_0x027a('0x2a')](_0x5782ac)['json'](_0x47a365);}};}function respondWithFilteredResult(_0xb4241d,_0x47c57a){return function(_0x2640d8){if(_0x2640d8){var _0xc99acc=_0x2640d8[_0x027a('0x2b')],_0x4d9a29=_0x47c57a[_0x027a('0x2c')],_0xe4ea7d=_0x47c57a[_0x027a('0x2c')]+_0x47c57a[_0x027a('0x2d')],_0x4b4ac4;if(_0xe4ea7d>=_0xc99acc){_0xe4ea7d=_0xc99acc;_0x4b4ac4=0xc8;}else{_0x4b4ac4=0xce;}_0xb4241d[_0x027a('0x2a')](_0x4b4ac4);return _0xb4241d[_0x027a('0x2e')]('Content-Range',_0x4d9a29+'-'+_0xe4ea7d+'/'+_0xc99acc)[_0x027a('0x2f')](_0x2640d8);}return null;};}function patchUpdates(_0x592350){return function(_0x2e0776){try{jsonpatch['apply'](_0x2e0776,_0x592350,!![]);}catch(_0x1c24a0){return BPromise[_0x027a('0x30')](_0x1c24a0);}return _0x2e0776[_0x027a('0x31')]();};}function saveUpdates(_0x307e3c,_0x17f376){return function(_0x572dd1){if(_0x572dd1){return _0x572dd1[_0x027a('0x32')](_0x307e3c)[_0x027a('0x20')](function(_0xf89ec4){return _0xf89ec4;});}return null;};}function removeEntity(_0x2aefb7,_0x14cb87){return function(_0x476ab8){if(_0x476ab8){return _0x476ab8[_0x027a('0x33')]()[_0x027a('0x20')](function(){_0x2aefb7[_0x027a('0x2a')](0xcc)[_0x027a('0x34')]();});}};}function handleEntityNotFound(_0xacabe,_0x5e2d2a){return function(_0x29dc8f){if(!_0x29dc8f){_0xacabe[_0x027a('0x29')](0x194);}return _0x29dc8f;};}function handleError(_0x11adb1,_0x32c36e){_0x32c36e=_0x32c36e||0x1f4;return function(_0x19b476){logger[_0x027a('0x24')](_0x19b476[_0x027a('0x35')]);if(_0x19b476['name']){delete _0x19b476[_0x027a('0x36')];}_0x11adb1[_0x027a('0x2a')](_0x32c36e)[_0x027a('0x37')](_0x19b476);};}function getInteractionUsers(_0x5e9130,_0x22f96b){return new BPromise(function(_0x5b7602,_0x38469a){try{if(_0x22f96b[_0x5e9130['id']]){_0x5e9130[_0x027a('0x38')]=_[_0x027a('0x39')](_0x22f96b[_0x5e9130['id']],function(_0x5a7650){return{'id':_0x5a7650['id'],'fullname':_0x5a7650['fullname']};});}}catch(_0x32a44e){_0x38469a(_0x32a44e);}_0x5b7602(_0x5e9130);});}function getInteractionTags(_0x2eea3b,_0x5830f6){return new BPromise(function(_0x3d36b8,_0x10ff49){try{if(_0x2eea3b[_0x027a('0x3a')]){_0x2eea3b[_0x027a('0x3b')]=[];_0x2eea3b[_0x027a('0x3a')][_0x027a('0x3c')](',')[_0x027a('0x3d')](function(_0x1866b9){_0x2eea3b[_0x027a('0x3b')][_0x027a('0x3e')](_0x5830f6[_0x1866b9]);});}delete _0x2eea3b[_0x027a('0x3a')];}catch(_0x12b20f){_0x10ff49(_0x12b20f);}_0x3d36b8(_0x2eea3b);});}function updateChatInteraction(_0x1e22d4,_0x163783,_0x466c80){return new BPromise(function(_0x2cc152,_0x46685e){return getInteractionUsers(_0x1e22d4,_0x466c80)['then'](function(_0x275692){return getInteractionTags(_0x275692,_0x163783);})[_0x027a('0x20')](function(_0x200474){_0x2cc152(_0x200474);})[_0x027a('0x28')](function(_0x17abbe){_0x46685e(_0x17abbe);});});}exports[_0x027a('0x3f')]=function(_0x4c8110,_0x96d3aa){var _0x3d0bb1={},_0x563676={},_0x45eedc={'count':0x0,'rows':[]};var _0x5a5d5a=_['map'](db[_0x027a('0x40')]['rawAttributes'],function(_0x3d8df2){return{'name':_0x3d8df2[_0x027a('0x41')],'type':_0x3d8df2[_0x027a('0x42')][_0x027a('0x43')]};});_0x563676[_0x027a('0x44')]=_['map'](_0x5a5d5a,_0x027a('0x36'));_0x563676[_0x027a('0x45')]=_[_0x027a('0x46')](_0x4c8110['query']);_0x563676['filters']=_['intersection'](_0x563676['model'],_0x563676[_0x027a('0x45')]);_0x3d0bb1[_0x027a('0x47')]=_[_0x027a('0x48')](_0x563676[_0x027a('0x44')],qs[_0x027a('0x49')](_0x4c8110[_0x027a('0x45')]['fields']));_0x3d0bb1['attributes']=_0x3d0bb1[_0x027a('0x47')][_0x027a('0x4a')]?_0x3d0bb1[_0x027a('0x47')]:_0x563676[_0x027a('0x44')];if(!_0x4c8110[_0x027a('0x45')][_0x027a('0x4b')](_0x027a('0x4c'))){_0x3d0bb1[_0x027a('0x2d')]=qs[_0x027a('0x2d')](_0x4c8110['query'][_0x027a('0x2d')]);_0x3d0bb1[_0x027a('0x2c')]=qs[_0x027a('0x2c')](_0x4c8110[_0x027a('0x45')][_0x027a('0x2c')]);}_0x3d0bb1[_0x027a('0x4d')]=qs[_0x027a('0x4e')](_0x4c8110[_0x027a('0x45')]['sort']);_0x3d0bb1[_0x027a('0x4f')]=qs[_0x027a('0x50')](_['pick'](_0x4c8110[_0x027a('0x45')],_0x563676[_0x027a('0x50')]),_0x5a5d5a);var _0x50c9ec=[];var _0x5c000c=squel['select']()[_0x027a('0x51')]('id')['field'](_0x027a('0x36'))['field']('color')['from']('tools_tags');var _0xa75e3a=squel[_0x027a('0x52')]()['field']('u.id')[_0x027a('0x51')](_0x027a('0x53'))[_0x027a('0x51')](_0x027a('0x54'))['from'](_0x027a('0x55'),'ui')['left_join'](_0x027a('0x56'),'u',_0x027a('0x57'));var _0x2da742=squel[_0x027a('0x52')]()[_0x027a('0x58')](_0x027a('0x59'),'i')[_0x027a('0x5a')](_0x027a('0x5b'),'c','c.id\x20=\x20i.ContactId\x20AND\x20c.deletedAt\x20IS\x20NULL')[_0x027a('0x5a')](_0x027a('0x56'),'o',_0x027a('0x5c'))[_0x027a('0x5a')](_0x027a('0x5d'),'a',_0x027a('0x5e'))[_0x027a('0x5a')]('chat_messages','me',_0x027a('0x5f'))[_0x027a('0x5a')](_0x027a('0x60'),'it',_0x027a('0x61'))[_0x027a('0x5a')](_0x027a('0x62'),'t',_0x027a('0x63'));var _0x9df721=squel[_0x027a('0x64')]();var _0x455077=[];var _0x3da285=squel[_0x027a('0x64')]();var _0x3653a1;if(_0x4c8110[_0x027a('0x45')][_0x027a('0x65')]){_0x3653a1=as['parseSearch'](_0x4c8110[_0x027a('0x45')][_0x027a('0x65')]);var _0x422e38=_0x3653a1[_0x027a('0x66')];for(var _0x3aaf0f=0x0;_0x3aaf0f<_0x3653a1[_0x027a('0x67')][_0x027a('0x4a')];_0x3aaf0f++){var _0x23e9cf=_0x3653a1[_0x027a('0x67')][_0x3aaf0f];var _0x514c34='i';var _0x553850=_['find'](_0x5a5d5a,['name',_0x23e9cf[_0x027a('0x51')]]);if(!_0x553850){switch(_0x23e9cf[_0x027a('0x51')]){case _0x027a('0x68'):if(_0x23e9cf[_0x027a('0x69')]==0x1){_0x2da742[_0x027a('0x6a')]('`'+_0x23e9cf['field']+'`\x20=\x200');}else{_0x2da742[_0x027a('0x6a')]('`'+_0x23e9cf['field']+'`\x20>\x200');}break;case _0x027a('0x6b'):if(_0x23e9cf[_0x027a('0x6c')]===_0x027a('0x6d')){if(_0x23e9cf[_0x027a('0x69')][_0x027a('0x3c')]('\x20')[_0x027a('0x4a')]>0x1){_0x9df721[_0x422e38](_0x027a('0x6e'),qs[_0x027a('0x6f')](_0x23e9cf[_0x027a('0x69')]),null);}else{var _0x5ea7b0='%'+_0x23e9cf[_0x027a('0x69')]+'%';_0x9df721[_0x422e38](_0x027a('0x70'),_0x5ea7b0,_0x5ea7b0,_0x5ea7b0);}}else{_0x553850=_[_0x027a('0x71')](_0x5a5d5a,[_0x027a('0x36'),_0x027a('0x72')]);_0x23e9cf[_0x027a('0x51')]=_0x027a('0x72');_0x36c707=as[_0x027a('0x73')](_0x514c34,_0x553850[_0x027a('0x42')],_0x23e9cf);_0x9df721[_0x422e38](_0x36c707[_0x027a('0x74')],_0x36c707[_0x027a('0x69')][_0x027a('0x75')],_0x36c707[_0x027a('0x69')][_0x027a('0x34')]);}break;case'Tag':var _0x1f4282=_0x23e9cf[_0x027a('0x69')][_0x027a('0x3c')](',')[_0x027a('0x39')](function(_0x51afb8){return Number(_0x51afb8);});_0x1f4282['forEach'](function(_0x2c404a){_0x3da285['or'](_0x027a('0x76'),'%,'+_0x2c404a+',%');});_0x455077=_[_0x027a('0x77')](_0x455077,_0x1f4282);break;case _0x027a('0x78'):if(_0x23e9cf[_0x027a('0x6c')]===_0x027a('0x6d')){_0x9df721[_0x422e38](_0x027a('0x79'),'%'+_0x23e9cf[_0x027a('0x69')]+'%',null);}else{_0x553850=_[_0x027a('0x71')](_0x5a5d5a,['name',_0x027a('0x7a')]);_0x23e9cf[_0x027a('0x51')]=_0x027a('0x7a');_0x36c707=as['buildExpression'](_0x514c34,_0x553850[_0x027a('0x42')],_0x23e9cf);_0x9df721[_0x422e38](_0x36c707[_0x027a('0x74')],_0x36c707['value'][_0x027a('0x75')],_0x36c707[_0x027a('0x69')]['end']);}break;case'body':_0x36c707=as[_0x027a('0x73')]('me',null,_0x23e9cf);_0x9df721[_0x422e38](_0x36c707[_0x027a('0x74')],_0x36c707[_0x027a('0x69')][_0x027a('0x75')],_0x36c707['value'][_0x027a('0x34')]);break;}}else{var _0x36c707=as[_0x027a('0x73')](_0x514c34,_0x553850['type'],_0x23e9cf);_0x9df721[_0x422e38](_0x36c707[_0x027a('0x74')],_0x36c707['value'][_0x027a('0x75')],_0x36c707['value'][_0x027a('0x34')]);}}}else{var _0x2c150b=_(_0x4c8110[_0x027a('0x45')])[_0x027a('0x46')]()['map'](function(_0x4f755b){return _['some'](_0x5a5d5a,['name',_0x4f755b])?_0x4f755b:undefined;})['compact']()['value']();if(!_['isEmpty'](_0x2c150b)){_0x2c150b[_0x027a('0x3d')](function(_0x57c613){if(_0x57c613===_0x027a('0x7b')){_0x2da742['where'](_0x027a('0x7c'),[]['concat'](_0x4c8110['query'][_0x57c613]));}else if(_0x57c613===_0x027a('0x7d')){var _0x36aeef=JSON[_0x027a('0x7e')](_0x4c8110['query'][_0x57c613])[_0x027a('0x7f')];var _0x5925f6=JSON[_0x027a('0x7e')](_0x4c8110[_0x027a('0x45')][_0x57c613])[_0x027a('0x80')];_0x2da742['where'](_0x027a('0x81'),_0x36aeef,_0x5925f6);}else{if(_0x4c8110[_0x027a('0x45')][_0x57c613]===_0x027a('0x82')){_0x2da742[_0x027a('0x4f')]('i.'+_0x57c613+_0x027a('0x83'));}else{_0x2da742[_0x027a('0x4f')]('i.'+_0x57c613+'\x20=\x20?',_0x4c8110[_0x027a('0x45')][_0x57c613]);}}});}if(_0x4c8110['query'][_0x027a('0x84')]){if(_0x4c8110[_0x027a('0x45')][_0x027a('0x84')]==0x1){_0x2da742[_0x027a('0x6a')]('`unreadMessages`\x20=\x200');}else{_0x2da742[_0x027a('0x6a')](_0x027a('0x85'));}}if(_0x4c8110[_0x027a('0x45')][_0x027a('0x86')]){_0x455077=_['isArray'](_0x4c8110[_0x027a('0x45')][_0x027a('0x86')])?_0x4c8110[_0x027a('0x45')][_0x027a('0x86')]:new Array(_0x4c8110['query'][_0x027a('0x86')]);_0x455077[_0x027a('0x3d')](function(_0x49ba36){_0x3da285['or'](_0x027a('0x76'),'%,'+_0x49ba36+',%');});}if(_0x4c8110[_0x027a('0x45')]['filter']){var _0x3452b1=_0x4c8110[_0x027a('0x45')][_0x027a('0x87')][_0x027a('0x88')]('\x5c','\x5c\x5c')[_0x027a('0x88')]('\x27\x27',_0x027a('0x89'));if(qs[_0x027a('0x8a')](_0x3452b1)){_0x9df721['or']('i.id\x20LIKE\x20?',_0x3452b1+'%');}else{_0x9df721['or']('MATCH\x20(me.body)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)',qs['getFullTextValue'](_0x3452b1))['or'](_0x027a('0x8b'),_0x3452b1+'%');}}}_0x2da742[_0x027a('0x4f')](_0x9df721);_0x2da742[_0x027a('0x8c')](_0x027a('0x8d'));var _0x2d65a9={'type':db[_0x027a('0x8e')]['QueryTypes'][_0x027a('0x8f')],'raw':!![]};var _0x390581=_0x2da742[_0x027a('0x90')]();_0x390581[_0x027a('0x51')]('i.id');_0x390581['field'](_0x027a('0x91'),'unreadMessages');if(_0x3d0bb1[_0x027a('0x4d')]){_0x3d0bb1[_0x027a('0x4d')]['forEach'](function(_0x233e00){_0x2da742[_0x027a('0x4d')]('i.'+_0x233e00[0x0],_0x233e00[0x1]===_0x027a('0x92')?![]:!![]);});}if(!_[_0x027a('0x93')](_0x455077)){_0x2da742[_0x027a('0x6a')](_0x3da285);_0x390581[_0x027a('0x4f')](_0x027a('0x94'),_0x455077);}BPromise[_0x027a('0x95')]()[_0x027a('0x20')](function(){if(!_0x3653a1){if(_0x4c8110[_0x027a('0x45')][_0x027a('0x7b')]||_0x4c8110[_0x027a('0x45')][_0x027a('0x96')])return;_0x390581[_0x027a('0x4f')](_0x027a('0x97'));_0x2da742[_0x027a('0x4f')](_0x027a('0x97'));return;}return _0x4c8110['user']['getChatWebsites']({'attributes':['id'],'raw':!![]})[_0x027a('0x20')](function(_0x2e1dbd){if(_['isEmpty'](_0x2e1dbd)){_0x390581[_0x027a('0x4f')](_0x027a('0x98'));_0x2da742[_0x027a('0x4f')](_0x027a('0x98'));}else{_0x390581[_0x027a('0x4f')]('i.ChatWebsiteId\x20IN\x20?',_[_0x027a('0x39')](_0x2e1dbd,'id'));_0x2da742[_0x027a('0x4f')]('i.ChatWebsiteId\x20IN\x20?',_[_0x027a('0x39')](_0x2e1dbd,'id'));}});})[_0x027a('0x20')](function(){db['sequelize']['query'](_0x390581[_0x027a('0x99')](),_0x2d65a9)[_0x027a('0x20')](function(_0x219055){_0x45eedc[_0x027a('0x2b')]=_0x219055[_0x027a('0x4a')];if(_0x45eedc[_0x027a('0x2b')]===0x0)return[];return db['sequelize'][_0x027a('0x45')](_0x5c000c['toString'](),_0x2d65a9)[_0x027a('0x20')](function(_0x7b651){_0x50c9ec=_[_0x027a('0x9a')](_0x7b651,'id');_0x2d65a9=_[_0x027a('0x9b')](_0x2d65a9,{'model':db[_0x027a('0x40')],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0x4c8110[_0x027a('0x45')]['fields']){_0x3d0bb1[_0x027a('0x47')][_0x027a('0x3d')](function(_0x2629b6){_0x2da742['field']('i.'+_0x2629b6);});}else{_0x2da742[_0x027a('0x51')](_0x027a('0x91'),_0x027a('0x68'));_0x2da742[_0x027a('0x51')]('a.key',_0x027a('0x9c'));_0x2da742[_0x027a('0x51')](_0x027a('0x9d'),_0x027a('0x9e'));_0x2da742[_0x027a('0x51')](_0x027a('0x9f'));_0x2da742[_0x027a('0x51')]('c.firstName',_0x027a('0xa0'));_0x2da742[_0x027a('0x51')](_0x027a('0xa1'),_0x027a('0xa2'));_0x2da742[_0x027a('0x51')](_0x027a('0xa3'),'Contact.email');_0x2da742['field'](_0x027a('0xa4'),_0x027a('0xa5'));_0x2da742[_0x027a('0x51')]('c.mobile',_0x027a('0xa6'));_0x2da742[_0x027a('0x51')](_0x027a('0xa7'),_0x027a('0xa8'));_0x2da742[_0x027a('0x51')](_0x027a('0xa9'),_0x027a('0xaa'));_0x2da742[_0x027a('0x51')](_0x027a('0xab'),'Owner.internal');_0x2da742['field'](_0x027a('0xac'),_0x027a('0x3a'));}if(_0x3d0bb1[_0x027a('0x2d')])_0x2da742[_0x027a('0x2d')](_0x3d0bb1[_0x027a('0x2d')]);if(_0x3d0bb1[_0x027a('0x2c')])_0x2da742[_0x027a('0x2c')](_0x3d0bb1[_0x027a('0x2c')]);return db['sequelize'][_0x027a('0x45')](_0x2da742[_0x027a('0x99')](),_0x2d65a9);})[_0x027a('0x20')](function(_0x34ce81){_0xa75e3a[_0x027a('0x4f')](_0x027a('0xad'),_[_0x027a('0x39')](_0x34ce81,'id'));return db[_0x027a('0xae')]['query'](_0xa75e3a[_0x027a('0x99')](),_0x2d65a9)[_0x027a('0x20')](function(_0x44097c){var _0x252123=_[_0x027a('0xaf')](_0x44097c,_0x027a('0xb0'));var _0x242a51=[];_0x34ce81[_0x027a('0x3d')](function(_0x8a3e4c){_0x242a51[_0x027a('0x3e')](updateChatInteraction(_0x8a3e4c,_0x50c9ec,_0x252123));});return BPromise[_0x027a('0xb1')](_0x242a51);});});})['then'](function(_0x8f852){_0x45eedc[_0x027a('0xb2')]=_0x8f852;return _0x45eedc;})[_0x027a('0x20')](respondWithFilteredResult(_0x96d3aa,_0x3d0bb1));})['catch'](handleError(_0x96d3aa,null));};exports[_0x027a('0xb3')]=function(_0x116478,_0x1b76b5){var _0x12ad83={'raw':![],'where':{'id':_0x116478[_0x027a('0xb4')]['id']}},_0x899c18={};_0x899c18[_0x027a('0x44')]=_['keys'](db['ChatInteraction'][_0x027a('0xb5')]);_0x899c18[_0x027a('0x45')]=_['keys'](_0x116478[_0x027a('0x45')]);_0x899c18[_0x027a('0x50')]=_[_0x027a('0x48')](_0x899c18['model'],_0x899c18[_0x027a('0x45')]);_0x12ad83['attributes']=_[_0x027a('0x48')](_0x899c18[_0x027a('0x44')],qs['fields'](_0x116478[_0x027a('0x45')]['fields']));_0x12ad83['attributes']=_0x12ad83['attributes'][_0x027a('0x4a')]?_0x12ad83[_0x027a('0x47')]:_0x899c18[_0x027a('0x44')];if(_0x116478[_0x027a('0x45')][_0x027a('0xb6')]){_0x12ad83[_0x027a('0xb7')]=[{'all':!![]}];}_0x12ad83=_[_0x027a('0x9b')]({},_0x12ad83,_0x116478['options']);return db['ChatInteraction'][_0x027a('0x71')](_0x12ad83)[_0x027a('0x20')](handleEntityNotFound(_0x1b76b5,null))[_0x027a('0x20')](respondWithResult(_0x1b76b5,null))[_0x027a('0x28')](handleError(_0x1b76b5,null));};exports['create']=function(_0x29e099,_0x5467ac){return db[_0x027a('0x40')]['create'](_0x29e099[_0x027a('0xb8')],{})[_0x027a('0x20')](respondWithResult(_0x5467ac,0xc9))[_0x027a('0x28')](handleError(_0x5467ac,null));};exports['update']=function(_0x20f9bb,_0x2d889e){if(_0x20f9bb[_0x027a('0xb8')]['id']){delete _0x20f9bb['body']['id'];}return db[_0x027a('0x40')]['find']({'where':{'id':_0x20f9bb['params']['id']}})['then'](handleEntityNotFound(_0x2d889e,null))['then'](saveUpdates(_0x20f9bb[_0x027a('0xb8')],null))[_0x027a('0x20')](respondWithResult(_0x2d889e,null))[_0x027a('0x28')](handleError(_0x2d889e,null));};exports['destroy']=function(_0x476f87,_0x62d830){return db[_0x027a('0x40')][_0x027a('0x71')]({'where':{'id':_0x476f87[_0x027a('0xb4')]['id']}})[_0x027a('0x20')](handleEntityNotFound(_0x62d830,null))['then'](removeEntity(_0x62d830,null))['catch'](handleError(_0x62d830,null));};exports[_0x027a('0xb9')]=function(_0x38bf62,_0x33cc6f){return db[_0x027a('0x40')][_0x027a('0xb9')]()[_0x027a('0x20')](respondWithResult(_0x33cc6f,null))[_0x027a('0x28')](handleError(_0x33cc6f,null));};exports['createVidaooSession']=function(_0x3f7f75,_0x44ea13){var _0x3ab77a=_0x3f7f75['params']['id'];var _0x22d189;var _0x1354cb;var _0x3da4d9;return db[_0x027a('0x40')][_0x027a('0xba')]({'where':{'id':_0x3ab77a}})[_0x027a('0x20')](function(_0x4557b9){_0x22d189=_0x4557b9;return db[_0x027a('0xbb')]['findOne']({'where':{'id':_0x4557b9[_0x027a('0x7b')]},'attributes':['id',_0x027a('0xbc'),'vidaooEscalation'],'raw':!![]});})['then'](function(_0x2ef264){if(_0x2ef264&&_0x2ef264[_0x027a('0xbc')]&&_0x2ef264[_0x027a('0xbd')]){_0x1354cb=_0x2ef264;var _0xd60f58={'rejectUnauthorized':![],'method':_0x027a('0xbe'),'uri':_0x027a('0xbf'),'headers':{'X-APIKEY':_0x2ef264[_0x027a('0xbc')]},'body':{'name':_0x027a('0xc0')+_0x3ab77a},'redirect':_0x027a('0xc1'),'json':!![]};return rp(_0xd60f58);}else{throw new db['Sequelize'][(_0x027a('0xc2'))](_0x027a('0xc3'));}})[_0x027a('0x20')](function(_0x2d38d9){_0x3da4d9=_0x2d38d9;if(_0x3da4d9['id']){var _0x5d493c={'body':_0x3da4d9[_0x027a('0xc4')],'ChatWebsiteId':_0x1354cb['id'],'ChatInteractionId':_0x22d189['id'],'direction':_0x027a('0xc5'),'UserId':_0x3f7f75[_0x027a('0xc6')]['id']};return db['ChatMessage'][_0x027a('0xc7')](_0x5d493c,{});}else{throw new db['Sequelize']['ValidationError'](_0x027a('0xc8'));}})[_0x027a('0x20')](function(){return _0x22d189['updateAttributes']({'vidaooSessionId':_0x3da4d9['id']});})['then'](respondWithResult(_0x44ea13,null))[_0x027a('0x28')](handleError(_0x44ea13,null));};exports['customUpdate']=function(_0x54a232,_0x2cd05e){if(_0x54a232[_0x027a('0xb8')]['id']){delete _0x54a232[_0x027a('0xb8')]['id'];}return db[_0x027a('0x40')][_0x027a('0x71')]({'where':{'id':_0x54a232[_0x027a('0xb4')]['id']}})['then'](handleEntityNotFound(_0x2cd05e,null))[_0x027a('0x20')](saveUpdates(_0x54a232['body'],null))[_0x027a('0x20')](respondWithResult(_0x2cd05e,null))[_0x027a('0x28')](handleError(_0x2cd05e,null));};exports[_0x027a('0xc9')]=function(_0x378460,_0x351803,_0x8d86f0){if(_0x378460[_0x027a('0xb8')]['id']){delete _0x378460[_0x027a('0xb8')]['id'];}return db[_0x027a('0x40')][_0x027a('0x71')]({'where':{'id':_0x378460[_0x027a('0xb4')]['id']}})['then'](function(_0xa468c3){if(!_0xa468c3){logger['error'](_0x027a('0xca'),_0x027a('0xc9'),0x194,'entity\x20not\x20found');_0x351803[_0x027a('0x29')](0x194);}else{if(_0xa468c3[_0x027a('0x7a')]){throw new db[(_0x027a('0x8e'))][(_0x027a('0xc2'))]('Interaction\x20already\x20assigned');}}return _0xa468c3;})['then'](function(_0x38e80a){if(_0x38e80a){return _0x38e80a['update']({'closed':_0x378460[_0x027a('0xb8')]['closed'],'disposition':_0x378460[_0x027a('0xb8')]['disposition']})[_0x027a('0x20')](function(_0x3faf92){return _0x3faf92;});}})[_0x027a('0x20')](function(_0x5b72d2){return respondWithRpcPromise(_0x027a('0xcb'),_0x027a('0xc9'),_0x378460['body'],client9004);})[_0x027a('0x20')](respondWithResult(_0x351803,null))[_0x027a('0x28')](handleError(_0x351803,null));};exports[_0x027a('0xcc')]=function(_0x148b4b,_0xe7c5ec,_0x1abc73){_0x148b4b[_0x027a('0xb8')][_0x027a('0x36')]=_0x148b4b['file']['originalname'];_0x148b4b['body'][_0x027a('0xcd')]=_0x148b4b['file'][_0x027a('0xce')];_0x148b4b[_0x027a('0xb8')][_0x027a('0x42')]=_0x148b4b[_0x027a('0xcf')][_0x027a('0xd0')];return db['Attachment']['create'](_0x148b4b[_0x027a('0xb8')])[_0x027a('0x20')](respondWithResult(_0xe7c5ec,0xc9))[_0x027a('0x28')](handleError(_0xe7c5ec,null));};exports['attachmentDownload']=function(_0xdf9b2f,_0x17a049,_0x5854af){return db['ChatInteraction'][_0x027a('0xba')]({'where':{'id':_0xdf9b2f[_0x027a('0xb4')]['id']},'raw':!![]})['then'](handleEntityNotFound(_0x17a049,null))[_0x027a('0x20')](function(_0xd0e311){if(_0xd0e311){if(_0xd0e311[_0x027a('0xd1')]){return _0x17a049['status'](0x193)[_0x027a('0x2f')]({'status':0x193,'message':_0x027a('0xd2')});}return db[_0x027a('0xd3')][_0x027a('0xba')]({'where':{'id':_0xdf9b2f[_0x027a('0x45')][_0x027a('0xd4')]},'raw':!![]})[_0x027a('0x20')](handleEntityNotFound(_0x17a049,null));}})[_0x027a('0x20')](function(_0x55fda1){if(_0x55fda1){return _0x17a049[_0x027a('0xd5')](path[_0x027a('0xd6')](config[_0x027a('0xd7')],_0x027a('0xd8'),_0x55fda1[_0x027a('0xcd')]));}})[_0x027a('0x28')](handleError(_0x17a049,null));};exports[_0x027a('0xd9')]=function(_0x1c8b68,_0x217f4d){var _0x3b3a53=null;var _0x114c45=null;var _0x54e589=null;var _0x401e11=null;if(_0x1c8b68[_0x027a('0xb8')]['id']){delete _0x1c8b68[_0x027a('0xb8')]['id'];}if(_0x1c8b68['body'][_0x027a('0xda')]){_0x401e11=path['join'](config[_0x027a('0xd7')],_0x027a('0xdb'),util['format'](_0x027a('0xdc'),Date[_0x027a('0xdd')]()));_0x1c8b68['body'][_0x027a('0xde')]=_0x401e11;}return db[_0x027a('0x40')][_0x027a('0x71')]({'where':{'id':_0x1c8b68[_0x027a('0xb4')]['id']},'include':[{'model':db['ChatMessage'],'as':_0x027a('0xdf'),'include':[{'model':db[_0x027a('0x78')],'as':_0x027a('0x78')}]}]})[_0x027a('0x20')](handleEntityNotFound(_0x217f4d,null))[_0x027a('0x20')](saveUpdates(_0x1c8b68['body'],null))[_0x027a('0x20')](function(_0x5dc900){if(_0x5dc900){_0x3b3a53=_0x5dc900;return db[_0x027a('0xbb')][_0x027a('0x71')]({'where':{'id':_0x3b3a53['ChatWebsiteId']}});}})['then'](function(_0xec711f){if(_0xec711f){_0x54e589=_0xec711f;return db[_0x027a('0xe0')][_0x027a('0x71')]({'where':{'id':_0x3b3a53[_0x027a('0x72')]}});}})[_0x027a('0x20')](function(_0x54ee0f){if(_0x54ee0f){_0x114c45=_0x54ee0f;if(_0x401e11){var _0x3c58a3=null;for(var _0x455471=0x1;_0x455471<_0x3b3a53[_0x027a('0xdf')][_0x027a('0x4a')];++_0x455471){_0x3c58a3=_0x3b3a53[_0x027a('0xdf')][_0x455471];var _0x35d389=_0x3c58a3[_0x027a('0x7a')]?util[_0x027a('0xe1')]('%s%d',_0x54e589['agentAlias'],_0x3c58a3[_0x027a('0x7a')]):_0x027a('0xe2');var _0x568a14=_0x1c8b68[_0x027a('0xb8')][_0x027a('0xe3')]||util[_0x027a('0xe1')](_0x027a('0xe4'),_0x027a('0xe5'),_0x3c58a3[_0x027a('0x72')]);switch(_0x54e589[_0x027a('0xe6')]){case'website_alias':_0x35d389=_0x3c58a3['UserId']?util[_0x027a('0xe1')](_0x027a('0xe4'),_0x54e589[_0x027a('0xe7')],_0x3c58a3[_0x027a('0x7a')]):'System';break;case _0x027a('0xe8'):_0x35d389=_0x3c58a3[_0x027a('0x7a')]?_0x3c58a3['User']['alias']||_0x3c58a3[_0x027a('0x78')][_0x027a('0xe9')]:_0x027a('0xe2');break;case _0x027a('0xea'):_0x35d389=_0x3c58a3[_0x027a('0x7a')]?_0x3c58a3[_0x027a('0x78')][_0x027a('0xe9')]:'System';break;default:_0x35d389=_0x3c58a3[_0x027a('0x7a')]?util[_0x027a('0xe1')](_0x027a('0xe4'),_0x54e589[_0x027a('0xe7')],_0x3c58a3[_0x027a('0x7a')]):_0x027a('0xe2');}var _0x1b8132=util[_0x027a('0xe1')](_0x027a('0xeb'),moment(_0x3c58a3[_0x027a('0x7d')])[_0x027a('0xe1')](_0x027a('0xec')),_0x3c58a3['direction']==='in'?_0x568a14:_0x35d389,_0x3c58a3[_0x027a('0xb8')]);if(!_0x3c58a3['secret']){fs[_0x027a('0xed')](_0x401e11,_0x1b8132);}}return db[_0x027a('0xee')][_0x027a('0xba')]({'where':{'service':!![]},'include':[{'model':db[_0x027a('0xef')],'as':_0x027a('0xf0'),'raw':!![]}]});}}})[_0x027a('0x20')](function(_0x153da4){if(_0x153da4&&_0x153da4['Smtp']&&_0x1c8b68[_0x027a('0xb8')]){var _0x12ebea={'tls':{'rejectUnauthorized':![]}};if(_0x153da4['Smtp'][_0x027a('0xf1')]){_0x12ebea[_0x027a('0xf1')]=_0x153da4['Smtp'][_0x027a('0xf1')];}else{_0x12ebea[_0x027a('0xf2')]=_0x153da4[_0x027a('0xf0')][_0x027a('0xf2')];_0x12ebea[_0x027a('0xf3')]=_0x153da4[_0x027a('0xf0')][_0x027a('0xf3')];_0x12ebea[_0x027a('0xf4')]=_0x153da4[_0x027a('0xf0')][_0x027a('0xf4')];}if(_0x153da4['Smtp'][_0x027a('0xf5')]){_0x12ebea[_0x027a('0xf6')]={'user':_0x153da4[_0x027a('0xf0')]['user'],'pass':_0x153da4[_0x027a('0xf0')][_0x027a('0xf7')]};}return respondWithRpcPromise(_0x027a('0xf8'),_0x027a('0xf9'),{'account':_0x12ebea,'message':{'from':util['format'](_0x027a('0xfa'),_0x153da4[_0x027a('0x36')],_0x153da4[_0x027a('0xfb')]||_0x153da4[_0x027a('0xf0')][_0x027a('0xc6')]),'to':_0x1c8b68['body'][_0x027a('0xda')],'subject':_0x027a('0xfc'),'text':util[_0x027a('0xe1')]('Hi\x20%s,\x20attached\x20you\x20can\x20find\x20your\x20transcript\x20file.\x20\x0a\x0aRegards.\x20\x0a\x0a',_0x1c8b68[_0x027a('0xb8')][_0x027a('0xda')]),'attachments':[{'path':_0x401e11}]}})[_0x027a('0x20')](function(){return _0x3b3a53;})[_0x027a('0x28')](function(_0x114481){console[_0x027a('0x24')](_0x114481);});}else{return _0x3b3a53;}})[_0x027a('0x20')](respondWithStatusCode(_0x217f4d,0xc8))['catch'](handleError(_0x217f4d,null));};exports[_0x027a('0xfd')]=function(_0x4b8f5d,_0x2e73d6,_0x35f234){return db[_0x027a('0xfe')]['find']({'where':{'id':_0x4b8f5d[_0x027a('0xb4')]['id']}})[_0x027a('0x20')](handleEntityNotFound(_0x2e73d6,null))[_0x027a('0x20')](function(_0x50e266){if(_0x50e266){return _0x50e266[_0x027a('0xfd')](_0x4b8f5d[_0x027a('0xb8')][_0x027a('0xff')],_[_0x027a('0x100')](_0x4b8f5d[_0x027a('0xb8')],[_0x027a('0xff'),'id'])||{});}})['then'](respondWithResult(_0x2e73d6,null))['catch'](handleError(_0x2e73d6,null));};exports[_0x027a('0x101')]=function(_0x314517,_0x226b07,_0x494fd0){var _0x5eb587={'raw':![],'where':{}};var _0x47aa31={};var _0x50bcf8={'count':0x0,'rows':[]};return db[_0x027a('0x40')][_0x027a('0xba')]({'where':{'id':_0x314517['params']['id']}})['then'](handleEntityNotFound(_0x226b07,null))[_0x027a('0x20')](function(_0xa008b3){if(_0xa008b3){_0x47aa31[_0x027a('0x44')]=_[_0x027a('0x46')](db[_0x027a('0xfe')][_0x027a('0xb5')]);_0x47aa31[_0x027a('0x45')]=_[_0x027a('0x46')](_0x314517[_0x027a('0x45')]);_0x47aa31[_0x027a('0x50')]=_[_0x027a('0x48')](_0x47aa31[_0x027a('0x44')],_0x47aa31['query']);_0x5eb587['attributes']=_[_0x027a('0x48')](_0x47aa31[_0x027a('0x44')],qs[_0x027a('0x49')](_0x314517[_0x027a('0x45')][_0x027a('0x49')]));_0x5eb587[_0x027a('0x47')]=_0x5eb587[_0x027a('0x47')][_0x027a('0x4a')]?_0x5eb587[_0x027a('0x47')]:_0x47aa31['model'];if(!_0x314517[_0x027a('0x45')][_0x027a('0x4b')](_0x027a('0x4c'))){_0x5eb587[_0x027a('0x2d')]=qs[_0x027a('0x2d')](_0x314517[_0x027a('0x45')][_0x027a('0x2d')]);_0x5eb587[_0x027a('0x2c')]=qs[_0x027a('0x2c')](_0x314517[_0x027a('0x45')][_0x027a('0x2c')]);}_0x5eb587[_0x027a('0x4d')]=qs[_0x027a('0x4e')](_0x314517['query'][_0x027a('0x4e')]);_0x5eb587['where']=qs['filters'](_[_0x027a('0x102')](_0x314517[_0x027a('0x45')],_0x47aa31[_0x027a('0x50')]));_0x5eb587['where'][_0x027a('0xb0')]=_0xa008b3['id'];if(_0x314517[_0x027a('0x45')]['filter']){_0x5eb587[_0x027a('0x4f')]=_['merge'](_0x5eb587['where'],{'$or':_[_0x027a('0x39')](_0x5eb587['attributes'],function(_0x48a641){var _0x20760f={};_0x20760f[_0x48a641]={'$like':'%'+_0x314517[_0x027a('0x45')][_0x027a('0x87')]+'%'};return _0x20760f;})});}if(_0x314517['query'][_0x027a('0x7f')]){var _0x105abf=_0x314517[_0x027a('0x45')][_0x027a('0x7f')][_0x027a('0x3c')](',');var _0x552329={};_0x552329[_0x105abf[0x0]]={'$gte':moment(_0x105abf[0x1])[_0x027a('0xe1')](_0x027a('0x103'))};_0x5eb587[_0x027a('0x4f')]=_[_0x027a('0x9b')](_0x5eb587[_0x027a('0x4f')],_0x552329);}_0x5eb587=_[_0x027a('0x9b')]({},_0x5eb587,_0x314517['options']);return db['ChatMessage'][_0x027a('0x2b')]({'where':_0x5eb587[_0x027a('0x4f')]})[_0x027a('0x20')](function(_0x54fec0){_0x50bcf8[_0x027a('0x2b')]=_0x54fec0;if(_0x314517[_0x027a('0x45')][_0x027a('0xb6')]){_0x5eb587['include']=[{'all':!![]}];}return db[_0x027a('0xfe')][_0x027a('0x104')](_0x5eb587);})[_0x027a('0x20')](function(_0x40b8e4){_0x50bcf8[_0x027a('0xb2')]=_0x40b8e4;return _0x50bcf8;});}})[_0x027a('0x20')](respondWithFilteredResult(_0x226b07,_0x5eb587))[_0x027a('0x28')](handleError(_0x226b07,null));};exports[_0x027a('0x105')]=function(_0x3af676,_0x59fc29,_0x1b1506){var _0x5db4a6={'where':{}},_0x2b4fb6={},_0x19b0f5={'count':0x0,'rows':[]};return db[_0x027a('0x40')]['findOne']({'where':{'id':_0x3af676['params']['id']}})[_0x027a('0x20')](handleEntityNotFound(_0x59fc29,null))[_0x027a('0x20')](function(_0x43a144){if(_0x43a144){_0x2b4fb6['model']=_[_0x027a('0x46')](db['ChatMessage'][_0x027a('0xb5')]);_0x2b4fb6[_0x027a('0x45')]=_['keys'](_0x3af676['query']);_0x2b4fb6['filters']=_[_0x027a('0x48')](_0x2b4fb6['model'],_0x2b4fb6['query']);_0x5db4a6[_0x027a('0x47')]=_['intersection'](_0x2b4fb6['model'],qs[_0x027a('0x49')](_0x3af676[_0x027a('0x45')][_0x027a('0x49')]));_0x5db4a6[_0x027a('0x47')]=_0x5db4a6[_0x027a('0x47')][_0x027a('0x4a')]?_0x5db4a6['attributes']:_0x2b4fb6[_0x027a('0x44')];if(!_0x3af676[_0x027a('0x45')][_0x027a('0x4b')](_0x027a('0x4c'))){_0x5db4a6[_0x027a('0x2d')]=qs['limit'](_0x3af676[_0x027a('0x45')][_0x027a('0x2d')]);_0x5db4a6[_0x027a('0x2c')]=qs['offset'](_0x3af676['query'][_0x027a('0x2c')]);}_0x5db4a6[_0x027a('0x4d')]=qs[_0x027a('0x4e')](_0x3af676[_0x027a('0x45')]['sort']);_0x5db4a6[_0x027a('0x4f')]=qs[_0x027a('0x50')](_['pick'](_0x3af676[_0x027a('0x45')],_0x2b4fb6[_0x027a('0x50')]));_0x5db4a6[_0x027a('0x4f')]['ChatInteractionId']=_0x43a144['id'];if(_0x3af676[_0x027a('0x45')][_0x027a('0x87')]){_0x5db4a6['where']=_['merge'](_0x5db4a6[_0x027a('0x4f')],{'$or':_['map'](_0x5db4a6[_0x027a('0x47')],function(_0x1f0406){var _0x380d34={};_0x380d34[_0x1f0406]={'$like':'%'+_0x3af676[_0x027a('0x45')][_0x027a('0x87')]+'%'};return _0x380d34;})});}_0x5db4a6['where'][_0x027a('0x106')]=![];if(_0x3af676[_0x027a('0x45')]['id']){_0x5db4a6['where']['id']={'$gt':_0x3af676[_0x027a('0x45')]['id']};}_0x5db4a6=_[_0x027a('0x9b')]({},_0x5db4a6,_0x3af676[_0x027a('0x107')]);return db['ChatMessage'][_0x027a('0x2b')]({'where':_0x5db4a6[_0x027a('0x4f')]})[_0x027a('0x20')](function(_0x327da8){_0x19b0f5[_0x027a('0x2b')]=_0x327da8;_0x5db4a6[_0x027a('0xb7')]=[];if(_0x3af676[_0x027a('0x45')][_0x027a('0x108')]){_0x5db4a6[_0x027a('0xb7')][_0x027a('0x3e')]({'model':db[_0x027a('0x78')],'as':'User','attributes':['id','fullname',_0x027a('0x109')]});}if(_0x3af676[_0x027a('0x45')][_0x027a('0xb6')]){_0x5db4a6[_0x027a('0xb7')]=[{'all':!![]}];}return db[_0x027a('0xfe')][_0x027a('0x104')](_0x5db4a6);})['then'](function(_0x49ec56){_0x19b0f5[_0x027a('0xb2')]=_0x49ec56;return _0x19b0f5;});}})['then'](respondWithFilteredResult(_0x59fc29,_0x5db4a6))[_0x027a('0x28')](handleError(_0x59fc29,null));};exports[_0x027a('0x10a')]=function(_0x26e0b4,_0x3dda8f,_0x24c405){return db['ChatInteraction'][_0x027a('0x71')]({'where':{'id':_0x26e0b4[_0x027a('0xb4')]['id']}})[_0x027a('0x20')](handleEntityNotFound(_0x3dda8f,null))[_0x027a('0x20')](function(_0x55c1f2){if(_0x55c1f2){return _0x55c1f2[_0x027a('0x10b')](_0x26e0b4['body'][_0x027a('0xff')],_['omit'](_0x26e0b4[_0x027a('0xb8')],[_0x027a('0xff'),'id'])||{})[_0x027a('0x10c')](function(){return db[_0x027a('0x10d')][_0x027a('0x104')]({'attributes':['id','name','color'],'where':{'id':_0x26e0b4['body'][_0x027a('0xff')]}});})[_0x027a('0x20')](function(_0x2cd650){socket[_0x027a('0x10e')](_0x027a('0x10f'),{'id':Number(_0x26e0b4[_0x027a('0xb4')]['id']),'tags':_0x2cd650||[]});return{'id':Number(_0x26e0b4['params']['id']),'tags':_0x2cd650||[]};});}})['then'](respondWithResult(_0x3dda8f,null))[_0x027a('0x28')](handleError(_0x3dda8f,null));};exports['removeTags']=function(_0x272fba,_0x513e6f,_0x106340){return db['ChatInteraction'][_0x027a('0x71')]({'where':{'id':_0x272fba[_0x027a('0xb4')]['id']}})['then'](handleEntityNotFound(_0x513e6f,null))[_0x027a('0x20')](function(_0x49048f){if(_0x49048f){return _0x49048f[_0x027a('0x110')](_0x272fba[_0x027a('0x45')][_0x027a('0xff')]);}})['then'](respondWithStatusCode(_0x513e6f,null))['catch'](handleError(_0x513e6f,null));};exports[_0x027a('0xd5')]=function(_0x539e1d,_0x41ba9d){var _0x2a689c=moment()[_0x027a('0x111')]()[_0x027a('0x99')]();var _0x369ffb=path[_0x027a('0xd6')](config[_0x027a('0xd7')],_0x027a('0x112'),_0x027a('0x113'),'tmp');var _0x159b62=path[_0x027a('0xd6')](config[_0x027a('0xd7')],_0x027a('0x112'),_0x027a('0x113'),_0x027a('0x114'));var _0x43b1c1=path[_0x027a('0xd6')](_0x369ffb,_0x2a689c);var _0x3a9fea=util[_0x027a('0xe1')]('transcript-%d-%s.zip',_0x539e1d[_0x027a('0xb4')]['id'],_0x2a689c);var _0x4621b5=path[_0x027a('0xd6')](_0x369ffb,_0x3a9fea);var _0x587692=[];_0x587692['push']({'model':db[_0x027a('0x78')],'as':_0x027a('0x78'),'attributes':['id',_0x027a('0xe9')],'raw':!![]});_0x587692['push']({'model':db[_0x027a('0xe0')],'as':_0x027a('0x6b'),'attributes':['id',_0x027a('0x115'),_0x027a('0x116')],'raw':!![]});if(_0x539e1d[_0x027a('0x45')][_0x027a('0x114')]){_0x587692[_0x027a('0x3e')]({'model':db[_0x027a('0xd3')],'as':_0x027a('0xd3'),'raw':!![]});}var _0x4f53cc=[{'model':db['ChatMessage'],'as':_0x027a('0xdf'),'attributes':['id',_0x027a('0xb8'),'createdAt',_0x027a('0x117'),_0x027a('0x106'),'read'],'include':_0x587692}];_0x4f53cc[_0x027a('0x3e')]({'model':db[_0x027a('0xbb')],'as':_0x027a('0x118'),'attributes':['id',_0x027a('0x36')]});_0x4f53cc[_0x027a('0x3e')]({'model':db[_0x027a('0x78')],'as':_0x027a('0x119'),'attributes':['id',_0x027a('0xe9')]});return db[_0x027a('0x40')][_0x027a('0x71')]({'where':{'id':_0x539e1d[_0x027a('0xb4')]['id']},'include':_0x4f53cc})[_0x027a('0x20')](handleEntityNotFound(_0x41ba9d,null))[_0x027a('0x20')](function(_0x277352){if(_0x277352){var _0x51484b=_0x277352[_0x027a('0x11a')]({'plain':!![]});fs[_0x027a('0x11b')](_0x43b1c1);var _0x3726ca={'format':'A4','border':_0x027a('0x11c'),'header':{'height':_0x027a('0x11d'),'contents':{'first':_0x027a('0x11e')}},'footer':{'height':_0x027a('0x11f'),'contents':{'default':util[_0x027a('0xe1')]('<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>',util[_0x027a('0xe1')](_0x027a('0x120'),_0x027a('0x121'),_0x51484b['id']),moment()[_0x027a('0xe1')](_0x027a('0x122'))[_0x027a('0x99')]())}}};var _0x449eee={'channel':'Chat','account':_0x51484b['Account']['name'],'agent':_0x51484b[_0x027a('0x119')]?_0x51484b['Owner'][_0x027a('0xe9')]:_0x027a('0x123'),'createdAt':moment(_0x51484b[_0x027a('0x7d')])[_0x027a('0xe1')](_0x027a('0x103'))[_0x027a('0x99')](),'closedAt':_0x51484b[_0x027a('0xd1')]?moment(_0x51484b[_0x027a('0x124')])['format'](_0x027a('0x103'))['toString']():'','disposition':_0x51484b[_0x027a('0x125')],'chatInfo':{'browser':_0x51484b[_0x027a('0x126')],'os':_0x51484b['osName'],'referer':_0x51484b[_0x027a('0x127')],'customerIp':_0x51484b[_0x027a('0x128')],'customerPort':_0x51484b[_0x027a('0x129')]?_0x51484b[_0x027a('0x129')]:'N.A.'},'messages':_(_0x51484b[_0x027a('0xdf')])[_0x027a('0x12a')]()[_0x027a('0x87')]({'secret':![]})[_0x027a('0x39')](function(_0x4ed781){if(_0x4ed781[_0x027a('0xd3')]){var _0x56c2ad=path['join'](_0x159b62,_0x4ed781['Attachment'][_0x027a('0xcd')]);if(fs[_0x027a('0x12b')](_0x56c2ad)){fs[_0x027a('0x12c')](_0x56c2ad)['pipe'](fs[_0x027a('0x12d')](path[_0x027a('0xd6')](_0x43b1c1,_0x4ed781['Attachment'][_0x027a('0xcd')])));}}return{'date':moment(_0x4ed781[_0x027a('0x7d')])[_0x027a('0xe1')](_0x027a('0x103'))[_0x027a('0x99')](),'sender':_0x4ed781[_0x027a('0x117')]==='out'?_0x4ed781[_0x027a('0x78')]?_0x4ed781[_0x027a('0x78')]['fullname']:_0x027a('0xe2'):_0x4ed781[_0x027a('0x6b')][_0x027a('0x115')]+(_0x4ed781[_0x027a('0x6b')]['lastName']?'\x20'+_0x4ed781[_0x027a('0x6b')][_0x027a('0x116')]:''),'body':_0x4ed781[_0x027a('0xd3')]?_0x4ed781['Attachment'][_0x027a('0xcd')]:_0x4ed781[_0x027a('0xb8')],'direction':_0x4ed781[_0x027a('0x117')]===_0x027a('0xc5')?'A':'C','secret':_0x4ed781[_0x027a('0x106')],'read':_0x4ed781[_0x027a('0x84')],'attachment':_0x4ed781[_0x027a('0xd3')]};})[_0x027a('0x69')]()};return ejs['renderFile'](path[_0x027a('0xd6')](config[_0x027a('0xd7')],_0x027a('0x112'),_0x027a('0x12e'),_0x027a('0x12f')),{'interaction':_0x449eee})[_0x027a('0x20')](function(_0x28abf0){return new BPromise(function(_0x30bf1b,_0x31fcdf){pdf[_0x027a('0xc7')](_0x28abf0,_0x3726ca)[_0x027a('0x130')](path['join'](_0x43b1c1,_0x027a('0x131')+_0x51484b['id']+'-'+_0x2a689c+'.pdf'),function(_0x14f498,_0x504a0d){if(_0x14f498)return _0x31fcdf(_0x14f498);_0x30bf1b(_0x504a0d);});});})[_0x027a('0x20')](function(){return new BPromise(function(_0x5cedcd,_0x3d214c){zipdir(_0x43b1c1,{'saveTo':_0x4621b5},function(_0x5420cf,_0x20365d){if(_0x5420cf)return _0x3d214c(_0x5420cf);return _0x5cedcd(_0x20365d);});})[_0x027a('0x20')](function(){return new BPromise(function(_0xa709fc,_0x403d9c){rimraf(_0x43b1c1,function(_0x2bdbe9){if(_0x2bdbe9)_0x403d9c(_0x2bdbe9);return _0xa709fc();});});})[_0x027a('0x20')](function(){return _0x41ba9d[_0x027a('0xd5')](_0x4621b5,_0x3a9fea,function(_0x3d2871){if(_0x3d2871){console['log']('err',_0x3d2871);}else{fs['unlinkSync'](_0x4621b5);}});});});}else{return _0x41ba9d[_0x027a('0x29')](0xc8);}})[_0x027a('0x28')](handleError(_0x41ba9d,null));};