112d7b27d036c1c4055ac9c5096ec4aec8b3d19c
[motion2.git] / server / api / chatWebsite / chatWebsite.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 _0x8c38=['verticalAlignment','textColor','color_button','backgroundColor','addApplications','ChatApplication','findAndCountAll','getApplications','addProactiveActions','chatProactiveAction','omit','ChatProactiveAction','getFields','false','offlineForm','onlineForm','items','fromKey','getOfflineMessages','Attachments','addAgents','userChatWebsite:save','removeAgents','emit','userChatWebsite:remove','getAgents','eml-format','zip-dir','request-promise','moment','util','path','sox','to-csv','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','redis','defaults','socket.io-emitter','./chatWebsite.socket','register','jayson/promise','client','http','then','info','ChatWebsite,\x20%s,\x20%s','request\x20sent','ChatWebsite,\x20%s,\x20%s,\x20%s','stringify','error','code','message','result','status','end','json','offset','limit','undefined','count','set','update','destroy','get','sendStatus','stack','name','Pause','map','rawAttributes','fieldName','type','key','model','query','keys','filters','intersection','attributes','fields','length','nolimit','order','sort','where','pick','filter','merge','VIRTUAL','options','ChatWebsite','includeAll','findAll','rows','params','mandatoryDispositionPause','include','find','catch','body','user','role','ChatWebsites','userProfileId','autoAssociation','UserProfileResource','create','addDisposition','ChatWebsiteId','Disposition','getDispositions','findOne','removeDispositions','ids','addAnswer','CannedAnswer','hasOwnProperty','removeAnswers','sitepic','file','filename','addAvatar','customerAvatar','addSystemAvatar','systemAvatar','join','root','server/files/images/logos/default_logo.svg','isNil','server/files/images/logos/','download','getAvatar','server/files/images/avatars/default_avatar.png','agentAvatar','server/files/images/avatars/','getCustomerAvatar','server/files/images/avatars/customer_avatar.png','showCustomerAvatar','existsSync','server/files/images/avatars/system_avatar.png','notify','user-agent-parser','setUA','headers','user-agent','getResult','chat','CmContact','describe','Sequelize','ValidationError','difference','createdAt','updatedAt','CompanyId','ListId','from','body\x20is\x20mandatory\x20and\x20not\x20empty','includes','mapKey\x20invalid,\x20please\x20use\x20one\x20of\x20these:\x20','mapKey','CmList','DESC','Applications','account','List','orderBy','applications','priority','asc','Contacts','contact','cf-connecting-ip','x-forwarded-for','first','firstName','lastName','x-real-port','referer','browser','version','unknown','format','device','vendor','threadId','ChatInteraction','externalUrl','ContactId','interaction','spread','messageId','created','autoclose','push','close','unmanaged','*,*,*,*','ChatMessage','AttachmentId','User','unshift','agent','waitForTheAssignedAgent','forcedOwnership','Start','EventManager','offline','files','send','mapKeyOffline\x20is\x20mandatory,\x20please\x20use\x20one\x20of\x20these:\x20','mapKeyOffline\x20invalid,\x20please\x20use\x20one\x20of\x20these:\x20','MailAccount','mapKeyOffline','findOrCreate','readFileSync','server/files/templates/chatOfflineMessage.ejs','utf8','toPairs','offlineMessageBody','ChatOfflineMessage','originalname','server','basename','openNewInteraction','sequelize','transaction','Attachment','bulkCreate','MailServerOut','Smtp','forwardOffline','forwardOfflineAddress','service','host','port','secure','authentication','pass','SendMail','sendMail','\x22%s\x22\x20<%s>','MailAccountId','toPairsIn','subjectOffline','email','offlineMessageSubject','Chat','NotifyMailAccount','notifyMail','offline-chat','remove','Could\x20not\x20remove\x20attachment\x20file','addInteraction','Contact','Owner','fullname','Tag','Tags','color','tag','Command','getSnippet','iftime\x20%s,%s','interval','timezone','iftime\x20%s','true','[%s][INTERVAL][%s]\x20%s\x20%s\x20(%s)','No\x20timezone','inspect','Interval','getProactiveActions','getLicense','virtual','custom','License','Intervals','some','server/files/chat/iframe.ejs','remote','x-real-ip','connection','remoteAddress','replace','render','alignment'];(function(_0x39b5bd,_0x398098){var _0x3791cb=function(_0x2e2feb){while(--_0x2e2feb){_0x39b5bd['push'](_0x39b5bd['shift']());}};_0x3791cb(++_0x398098);}(_0x8c38,0x148));var _0x88c3=function(_0x4d477c,_0x2050c6){_0x4d477c=_0x4d477c-0x0;var _0x3638e7=_0x8c38[_0x4d477c];return _0x3638e7;};'use strict';var emlformat=require(_0x88c3('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x88c3('0x1'));var jsonpatch=require('fast-json-patch');var rp=require(_0x88c3('0x2'));var moment=require(_0x88c3('0x3'));var BPromise=require('bluebird');var Mustache=require('mustache');var util=require(_0x88c3('0x4'));var path=require(_0x88c3('0x5'));var sox=require(_0x88c3('0x6'));var csv=require(_0x88c3('0x7'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require('fs-extra');var _=require('lodash');var squel=require(_0x88c3('0x8'));var crypto=require(_0x88c3('0x9'));var jsforce=require(_0x88c3('0xa'));var deskjs=require(_0x88c3('0xb'));var toCsv=require(_0x88c3('0x7'));var querystring=require(_0x88c3('0xc'));var Papa=require(_0x88c3('0xd'));var Redis=require(_0x88c3('0xe'));var authService=require(_0x88c3('0xf'));var qs=require('../../components/parsers/qs');var as=require(_0x88c3('0x10'));var hardwareService=require(_0x88c3('0x11'));var logger=require(_0x88c3('0x12'))(_0x88c3('0x13'));var utils=require(_0x88c3('0x14'));var config=require(_0x88c3('0x15'));var licenseUtil=require(_0x88c3('0x16'));var db=require(_0x88c3('0x17'))['db'];config[_0x88c3('0x18')]=_[_0x88c3('0x19')](config[_0x88c3('0x18')],{'host':'localhost','port':0x18eb});var socket=require(_0x88c3('0x1a'))(new Redis(config[_0x88c3('0x18')]));require(_0x88c3('0x1b'))[_0x88c3('0x1c')](socket);var jayson=require(_0x88c3('0x1d'));var client=jayson[_0x88c3('0x1e')][_0x88c3('0x1f')]({'port':0x232c});var client9002=jayson['client'][_0x88c3('0x1f')]({'port':0x232a});var client9003=jayson[_0x88c3('0x1e')]['http']({'port':0x232b});var client9001=jayson[_0x88c3('0x1e')][_0x88c3('0x1f')]({'port':0x2329});function respondWithRpcPromise(_0x33245b,_0x19237c,_0x34378c,_0x1c62d2){return new BPromise(function(_0x5f06c1,_0x1d3219){var _0x88da2a=_0x1c62d2||client;return _0x88da2a['request'](_0x33245b,_0x34378c)[_0x88c3('0x20')](function(_0x68522f){logger[_0x88c3('0x21')](_0x88c3('0x22'),_0x19237c,_0x88c3('0x23'));logger['debug'](_0x88c3('0x24'),_0x19237c,_0x88c3('0x23'),JSON[_0x88c3('0x25')](_0x68522f));if(_0x68522f[_0x88c3('0x26')]){if(_0x68522f[_0x88c3('0x26')][_0x88c3('0x27')]===0x1f4){logger[_0x88c3('0x26')](_0x88c3('0x22'),_0x19237c,_0x68522f[_0x88c3('0x26')][_0x88c3('0x28')]);return _0x1d3219(_0x68522f[_0x88c3('0x26')][_0x88c3('0x28')]);}logger['error'](_0x88c3('0x22'),_0x19237c,_0x68522f[_0x88c3('0x26')][_0x88c3('0x28')]);return _0x5f06c1(_0x68522f[_0x88c3('0x26')]['message']);}else{logger[_0x88c3('0x21')]('ChatWebsite,\x20%s,\x20%s',_0x19237c,_0x88c3('0x23'));_0x5f06c1(_0x68522f[_0x88c3('0x29')][_0x88c3('0x28')]);}})['catch'](function(_0x298f7f){logger[_0x88c3('0x26')](_0x88c3('0x22'),_0x19237c,_0x298f7f);_0x1d3219(_0x298f7f);});});}function respondWithStatusCode(_0x3d913f,_0x3a3ccf){_0x3a3ccf=_0x3a3ccf||0xcc;return function(_0x2d391b){if(_0x2d391b){return _0x3d913f['sendStatus'](_0x3a3ccf);}return _0x3d913f[_0x88c3('0x2a')](_0x3a3ccf)[_0x88c3('0x2b')]();};}function respondWithResult(_0x38bc9d,_0x3c0cac){_0x3c0cac=_0x3c0cac||0xc8;return function(_0xc2bebe){if(_0xc2bebe){return _0x38bc9d[_0x88c3('0x2a')](_0x3c0cac)[_0x88c3('0x2c')](_0xc2bebe);}};}function respondWithFilteredResult(_0x12bc97,_0x44fc4b){return function(_0x4092c2){if(_0x4092c2){var _0x49baa7=typeof _0x44fc4b[_0x88c3('0x2d')]==='undefined'&&typeof _0x44fc4b[_0x88c3('0x2e')]===_0x88c3('0x2f');var _0x1b55f9=_0x4092c2[_0x88c3('0x30')];var _0x31a715=_0x49baa7?0x0:_0x44fc4b[_0x88c3('0x2d')];var _0xfda3ed=_0x49baa7?_0x4092c2[_0x88c3('0x30')]:_0x44fc4b[_0x88c3('0x2d')]+_0x44fc4b[_0x88c3('0x2e')];var _0x5dedfd;if(_0xfda3ed>=_0x1b55f9){_0xfda3ed=_0x1b55f9;_0x5dedfd=0xc8;}else{_0x5dedfd=0xce;}_0x12bc97[_0x88c3('0x2a')](_0x5dedfd);return _0x12bc97[_0x88c3('0x31')]('Content-Range',_0x31a715+'-'+_0xfda3ed+'/'+_0x1b55f9)[_0x88c3('0x2c')](_0x4092c2);}return null;};}function patchUpdates(_0x5293a6){return function(_0x3c8a7d){try{jsonpatch['apply'](_0x3c8a7d,_0x5293a6,!![]);}catch(_0x5dad6f){return BPromise['reject'](_0x5dad6f);}return _0x3c8a7d['save']();};}function saveUpdates(_0x4016a6,_0x1abcd9){return function(_0x47aad6){if(_0x47aad6){return _0x47aad6[_0x88c3('0x32')](_0x4016a6)[_0x88c3('0x20')](function(_0x28fbc4){return _0x28fbc4;});}return null;};}function removeEntity(_0x312102,_0x442aff){return function(_0x51d5ed){if(_0x51d5ed){return _0x51d5ed[_0x88c3('0x33')]()[_0x88c3('0x20')](function(){var _0xf224a9=_0x51d5ed[_0x88c3('0x34')]({'plain':!![]});var _0x3d2649='ChatWebsites';return db['UserProfileResource'][_0x88c3('0x33')]({'where':{'type':_0x3d2649,'resourceId':_0xf224a9['id']}})[_0x88c3('0x20')](function(){return _0x51d5ed;});})[_0x88c3('0x20')](function(){_0x312102['status'](0xcc)[_0x88c3('0x2b')]();});}};}function handleEntityNotFound(_0x9ca70,_0x6e5df0){return function(_0x3a514e){if(!_0x3a514e){_0x9ca70[_0x88c3('0x35')](0x194);}return _0x3a514e;};}function handleError(_0x4895cc,_0x213ad8){_0x213ad8=_0x213ad8||0x1f4;return function(_0x34b889){logger['error'](_0x34b889[_0x88c3('0x36')]);if(_0x34b889[_0x88c3('0x37')]){delete _0x34b889[_0x88c3('0x37')];}_0x4895cc[_0x88c3('0x2a')](_0x213ad8)['send'](_0x34b889);};}exports['index']=function(_0x19a05c,_0x5a0c1d){var _0x52d647={'include':[{'model':db[_0x88c3('0x38')],'as':'mandatoryDispositionPause'}]},_0x30cc35={},_0x557fac={'count':0x0,'rows':[]};var _0x1476e8=_[_0x88c3('0x39')](db['ChatWebsite'][_0x88c3('0x3a')],function(_0x49176d){return{'name':_0x49176d[_0x88c3('0x3b')],'type':_0x49176d[_0x88c3('0x3c')][_0x88c3('0x3d')]};});_0x30cc35[_0x88c3('0x3e')]=_[_0x88c3('0x39')](_0x1476e8,'name');_0x30cc35[_0x88c3('0x3f')]=_[_0x88c3('0x40')](_0x19a05c[_0x88c3('0x3f')]);_0x30cc35[_0x88c3('0x41')]=_[_0x88c3('0x42')](_0x30cc35[_0x88c3('0x3e')],_0x30cc35[_0x88c3('0x3f')]);_0x52d647[_0x88c3('0x43')]=_['intersection'](_0x30cc35[_0x88c3('0x3e')],qs[_0x88c3('0x44')](_0x19a05c['query']['fields']));_0x52d647[_0x88c3('0x43')]=_0x52d647[_0x88c3('0x43')][_0x88c3('0x45')]?_0x52d647[_0x88c3('0x43')]:_0x30cc35['model'];if(!_0x19a05c[_0x88c3('0x3f')]['hasOwnProperty'](_0x88c3('0x46'))){_0x52d647[_0x88c3('0x2e')]=qs[_0x88c3('0x2e')](_0x19a05c[_0x88c3('0x3f')][_0x88c3('0x2e')]);_0x52d647[_0x88c3('0x2d')]=qs['offset'](_0x19a05c[_0x88c3('0x3f')][_0x88c3('0x2d')]);}_0x52d647[_0x88c3('0x47')]=qs['sort'](_0x19a05c['query'][_0x88c3('0x48')]);_0x52d647[_0x88c3('0x49')]=qs[_0x88c3('0x41')](_[_0x88c3('0x4a')](_0x19a05c['query'],_0x30cc35[_0x88c3('0x41')]),_0x1476e8);if(_0x19a05c[_0x88c3('0x3f')][_0x88c3('0x4b')]){_0x52d647[_0x88c3('0x49')]=_[_0x88c3('0x4c')](_0x52d647[_0x88c3('0x49')],{'$or':_['map'](_0x1476e8,function(_0x3c03ad){if(_0x3c03ad['type']!==_0x88c3('0x4d')){var _0x49a011={};_0x49a011[_0x3c03ad[_0x88c3('0x37')]]={'$like':'%'+_0x19a05c[_0x88c3('0x3f')][_0x88c3('0x4b')]+'%'};return _0x49a011;}})});}_0x52d647=_[_0x88c3('0x4c')]({},_0x52d647,_0x19a05c[_0x88c3('0x4e')]);var _0x30514b={'where':_0x52d647[_0x88c3('0x49')]};return db[_0x88c3('0x4f')][_0x88c3('0x30')](_0x30514b)['then'](function(_0x12febd){_0x557fac[_0x88c3('0x30')]=_0x12febd;if(_0x19a05c[_0x88c3('0x3f')][_0x88c3('0x50')]){_0x52d647['include']=[{'all':!![]}];}return db['ChatWebsite'][_0x88c3('0x51')](_0x52d647);})[_0x88c3('0x20')](function(_0x342108){_0x557fac[_0x88c3('0x52')]=_0x342108;return _0x557fac;})[_0x88c3('0x20')](respondWithFilteredResult(_0x5a0c1d,_0x52d647))['catch'](handleError(_0x5a0c1d,null));};exports['show']=function(_0xa3311,_0x5b460d){var _0x513d1d={'raw':![],'where':{'id':_0xa3311[_0x88c3('0x53')]['id']},'include':[{'model':db['Pause'],'as':_0x88c3('0x54')}]},_0x26b393={};_0x26b393[_0x88c3('0x3e')]=_[_0x88c3('0x40')](db[_0x88c3('0x4f')]['rawAttributes']);_0x26b393[_0x88c3('0x3f')]=_['keys'](_0xa3311[_0x88c3('0x3f')]);_0x26b393[_0x88c3('0x41')]=_['intersection'](_0x26b393['model'],_0x26b393[_0x88c3('0x3f')]);_0x513d1d[_0x88c3('0x43')]=_['intersection'](_0x26b393[_0x88c3('0x3e')],qs[_0x88c3('0x44')](_0xa3311['query'][_0x88c3('0x44')]));_0x513d1d[_0x88c3('0x43')]=_0x513d1d[_0x88c3('0x43')][_0x88c3('0x45')]?_0x513d1d[_0x88c3('0x43')]:_0x26b393[_0x88c3('0x3e')];if(_0xa3311['query']['includeAll']){_0x513d1d[_0x88c3('0x55')]=[{'all':!![]}];}_0x513d1d=_['merge']({},_0x513d1d,_0xa3311[_0x88c3('0x4e')]);return db[_0x88c3('0x4f')][_0x88c3('0x56')](_0x513d1d)[_0x88c3('0x20')](handleEntityNotFound(_0x5b460d,null))[_0x88c3('0x20')](respondWithResult(_0x5b460d,null))[_0x88c3('0x57')](handleError(_0x5b460d,null));};exports['create']=function(_0x777fd7,_0x2ed6fe){return db[_0x88c3('0x4f')]['create'](_0x777fd7[_0x88c3('0x58')],{})[_0x88c3('0x20')](function(_0x12522f){var _0x35cbdf=_0x777fd7[_0x88c3('0x59')]['get']({'plain':!![]});if(!_0x35cbdf)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x35cbdf[_0x88c3('0x5a')]===_0x88c3('0x59')){var _0x59028d=_0x12522f[_0x88c3('0x34')]({'plain':!![]});var _0x43871d=_0x88c3('0x5b');return db['UserProfileSection']['find']({'where':{'name':_0x43871d,'userProfileId':_0x35cbdf[_0x88c3('0x5c')]},'raw':!![]})[_0x88c3('0x20')](function(_0x501ec2){if(_0x501ec2&&_0x501ec2[_0x88c3('0x5d')]===0x0){return db[_0x88c3('0x5e')][_0x88c3('0x5f')]({'name':_0x59028d[_0x88c3('0x37')],'resourceId':_0x59028d['id'],'type':_0x501ec2[_0x88c3('0x37')],'sectionId':_0x501ec2['id']},{})['then'](function(){return _0x12522f;});}else{return _0x12522f;}})[_0x88c3('0x57')](function(_0x2c73c5){logger['error']('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x2c73c5);throw _0x2c73c5;});}return _0x12522f;})[_0x88c3('0x20')](respondWithResult(_0x2ed6fe,0xc9))[_0x88c3('0x57')](handleError(_0x2ed6fe,null));};exports[_0x88c3('0x32')]=function(_0x337883,_0x17863f){if(_0x337883[_0x88c3('0x58')]['id']){delete _0x337883[_0x88c3('0x58')]['id'];}return db[_0x88c3('0x4f')][_0x88c3('0x56')]({'where':{'id':_0x337883[_0x88c3('0x53')]['id']},'include':[{'model':db[_0x88c3('0x38')],'as':'mandatoryDispositionPause'}]})[_0x88c3('0x20')](handleEntityNotFound(_0x17863f,null))['then'](saveUpdates(_0x337883['body'],null))['then'](respondWithResult(_0x17863f,null))[_0x88c3('0x57')](handleError(_0x17863f,null));};exports[_0x88c3('0x33')]=function(_0x7b2b17,_0x5d79ec){return db[_0x88c3('0x4f')][_0x88c3('0x56')]({'where':{'id':_0x7b2b17[_0x88c3('0x53')]['id']}})[_0x88c3('0x20')](handleEntityNotFound(_0x5d79ec,null))[_0x88c3('0x20')](removeEntity(_0x5d79ec,null))[_0x88c3('0x57')](handleError(_0x5d79ec,null));};exports['describe']=function(_0x145b02,_0x2f2608){return db[_0x88c3('0x4f')]['describe']()[_0x88c3('0x20')](respondWithResult(_0x2f2608,null))[_0x88c3('0x57')](handleError(_0x2f2608,null));};exports[_0x88c3('0x60')]=function(_0x52d527,_0x6c1792,_0x3fccf5){if(_0x52d527['body']['id']){delete _0x52d527['body']['id'];}return db['ChatWebsite']['find']({'where':{'id':_0x52d527[_0x88c3('0x53')]['id']}})[_0x88c3('0x20')](handleEntityNotFound(_0x6c1792,null))['then'](function(_0x2ed3fa){if(_0x2ed3fa){_0x52d527[_0x88c3('0x58')][_0x88c3('0x61')]=_0x2ed3fa['id'];return db[_0x88c3('0x62')][_0x88c3('0x5f')](_0x52d527[_0x88c3('0x58')]);}})[_0x88c3('0x20')](respondWithResult(_0x6c1792,null))[_0x88c3('0x57')](handleError(_0x6c1792,null));};exports[_0x88c3('0x63')]=function(_0x5b36d7,_0xd8e2ec,_0x397843){var _0x2fc850={'raw':![],'where':{}};var _0x5a6355={};var _0x33e62b={'count':0x0,'rows':[]};return db['ChatWebsite'][_0x88c3('0x64')]({'where':{'id':_0x5b36d7[_0x88c3('0x53')]['id']}})[_0x88c3('0x20')](handleEntityNotFound(_0xd8e2ec,null))[_0x88c3('0x20')](function(_0x2f191b){if(_0x2f191b){_0x5a6355[_0x88c3('0x3e')]=_[_0x88c3('0x40')](db['Disposition'][_0x88c3('0x3a')]);_0x5a6355[_0x88c3('0x3f')]=_['keys'](_0x5b36d7[_0x88c3('0x3f')]);_0x5a6355['filters']=_['intersection'](_0x5a6355[_0x88c3('0x3e')],_0x5a6355[_0x88c3('0x3f')]);_0x2fc850[_0x88c3('0x43')]=_[_0x88c3('0x42')](_0x5a6355['model'],qs[_0x88c3('0x44')](_0x5b36d7['query'][_0x88c3('0x44')]));_0x2fc850['attributes']=_0x2fc850[_0x88c3('0x43')]['length']?_0x2fc850[_0x88c3('0x43')]:_0x5a6355[_0x88c3('0x3e')];if(!_0x5b36d7[_0x88c3('0x3f')]['hasOwnProperty']('nolimit')){_0x2fc850[_0x88c3('0x2e')]=qs[_0x88c3('0x2e')](_0x5b36d7['query'][_0x88c3('0x2e')]);_0x2fc850['offset']=qs[_0x88c3('0x2d')](_0x5b36d7[_0x88c3('0x3f')][_0x88c3('0x2d')]);}_0x2fc850[_0x88c3('0x47')]=qs['sort'](_0x5b36d7[_0x88c3('0x3f')][_0x88c3('0x48')]);_0x2fc850[_0x88c3('0x49')]=qs[_0x88c3('0x41')](_['pick'](_0x5b36d7[_0x88c3('0x3f')],_0x5a6355[_0x88c3('0x41')]));_0x2fc850[_0x88c3('0x49')]['ChatWebsiteId']=_0x2f191b['id'];if(_0x5b36d7['query'][_0x88c3('0x4b')]){_0x2fc850[_0x88c3('0x49')]=_[_0x88c3('0x4c')](_0x2fc850[_0x88c3('0x49')],{'$or':_[_0x88c3('0x39')](_0x2fc850[_0x88c3('0x43')],function(_0x46ad6f){var _0x4788fa={};_0x4788fa[_0x46ad6f]={'$like':'%'+_0x5b36d7[_0x88c3('0x3f')][_0x88c3('0x4b')]+'%'};return _0x4788fa;})});}_0x2fc850=_[_0x88c3('0x4c')]({},_0x2fc850,_0x5b36d7[_0x88c3('0x4e')]);return db[_0x88c3('0x62')][_0x88c3('0x30')]({'where':_0x2fc850[_0x88c3('0x49')]})['then'](function(_0x31ed15){_0x33e62b['count']=_0x31ed15;if(_0x5b36d7[_0x88c3('0x3f')][_0x88c3('0x50')]){_0x2fc850[_0x88c3('0x55')]=[{'all':!![]}];}return db['Disposition']['findAll'](_0x2fc850);})[_0x88c3('0x20')](function(_0x1433fe){_0x33e62b['rows']=_0x1433fe;return _0x33e62b;});}})[_0x88c3('0x20')](respondWithFilteredResult(_0xd8e2ec,_0x2fc850))[_0x88c3('0x57')](handleError(_0xd8e2ec,null));};exports[_0x88c3('0x65')]=function(_0x299d0e,_0x3a943f,_0x292079){return db['ChatWebsite'][_0x88c3('0x56')]({'where':{'id':_0x299d0e[_0x88c3('0x53')]['id']}})[_0x88c3('0x20')](handleEntityNotFound(_0x3a943f,null))[_0x88c3('0x20')](function(_0x1d4e14){if(_0x1d4e14){return _0x1d4e14[_0x88c3('0x65')](_0x299d0e['query'][_0x88c3('0x66')]);}})['then'](respondWithStatusCode(_0x3a943f,null))['catch'](handleError(_0x3a943f,null));};exports[_0x88c3('0x67')]=function(_0xeaa7bf,_0x3ca402,_0x1c8af3){if(_0xeaa7bf['body']['id']){delete _0xeaa7bf['body']['id'];}return db['ChatWebsite'][_0x88c3('0x56')]({'where':{'id':_0xeaa7bf['params']['id']}})[_0x88c3('0x20')](handleEntityNotFound(_0x3ca402,null))[_0x88c3('0x20')](function(_0x2930f9){if(_0x2930f9){_0xeaa7bf[_0x88c3('0x58')]['ChatWebsiteId']=_0x2930f9['id'];return db[_0x88c3('0x68')][_0x88c3('0x5f')](_0xeaa7bf[_0x88c3('0x58')]);}})[_0x88c3('0x20')](respondWithResult(_0x3ca402,null))[_0x88c3('0x57')](handleError(_0x3ca402,null));};exports['getAnswers']=function(_0x2bbd0f,_0x204d89,_0x352c06){var _0x271c38={'raw':![],'where':{}};var _0x449d17={};var _0x323137={'count':0x0,'rows':[]};return db[_0x88c3('0x4f')][_0x88c3('0x64')]({'where':{'id':_0x2bbd0f[_0x88c3('0x53')]['id']}})[_0x88c3('0x20')](handleEntityNotFound(_0x204d89,null))[_0x88c3('0x20')](function(_0x4eca0a){if(_0x4eca0a){_0x449d17['model']=_[_0x88c3('0x40')](db[_0x88c3('0x68')][_0x88c3('0x3a')]);_0x449d17['query']=_[_0x88c3('0x40')](_0x2bbd0f[_0x88c3('0x3f')]);_0x449d17['filters']=_['intersection'](_0x449d17[_0x88c3('0x3e')],_0x449d17[_0x88c3('0x3f')]);_0x271c38[_0x88c3('0x43')]=_[_0x88c3('0x42')](_0x449d17[_0x88c3('0x3e')],qs[_0x88c3('0x44')](_0x2bbd0f['query'][_0x88c3('0x44')]));_0x271c38[_0x88c3('0x43')]=_0x271c38[_0x88c3('0x43')][_0x88c3('0x45')]?_0x271c38['attributes']:_0x449d17[_0x88c3('0x3e')];if(!_0x2bbd0f[_0x88c3('0x3f')][_0x88c3('0x69')](_0x88c3('0x46'))){_0x271c38[_0x88c3('0x2e')]=qs['limit'](_0x2bbd0f[_0x88c3('0x3f')][_0x88c3('0x2e')]);_0x271c38[_0x88c3('0x2d')]=qs[_0x88c3('0x2d')](_0x2bbd0f[_0x88c3('0x3f')][_0x88c3('0x2d')]);}_0x271c38[_0x88c3('0x47')]=qs['sort'](_0x2bbd0f[_0x88c3('0x3f')]['sort']);_0x271c38[_0x88c3('0x49')]=qs[_0x88c3('0x41')](_[_0x88c3('0x4a')](_0x2bbd0f[_0x88c3('0x3f')],_0x449d17['filters']));_0x271c38[_0x88c3('0x49')][_0x88c3('0x61')]=_0x4eca0a['id'];if(_0x2bbd0f['query'][_0x88c3('0x4b')]){_0x271c38[_0x88c3('0x49')]=_[_0x88c3('0x4c')](_0x271c38[_0x88c3('0x49')],{'$or':_[_0x88c3('0x39')](_0x271c38[_0x88c3('0x43')],function(_0x2367d8){var _0x29a3f3={};_0x29a3f3[_0x2367d8]={'$like':'%'+_0x2bbd0f[_0x88c3('0x3f')][_0x88c3('0x4b')]+'%'};return _0x29a3f3;})});}_0x271c38=_['merge']({},_0x271c38,_0x2bbd0f[_0x88c3('0x4e')]);return db['CannedAnswer']['count']({'where':_0x271c38['where']})[_0x88c3('0x20')](function(_0x18ca79){_0x323137['count']=_0x18ca79;if(_0x2bbd0f['query'][_0x88c3('0x50')]){_0x271c38[_0x88c3('0x55')]=[{'all':!![]}];}return db['CannedAnswer'][_0x88c3('0x51')](_0x271c38);})['then'](function(_0x24b6e7){_0x323137[_0x88c3('0x52')]=_0x24b6e7;return _0x323137;});}})[_0x88c3('0x20')](respondWithFilteredResult(_0x204d89,_0x271c38))[_0x88c3('0x57')](handleError(_0x204d89,null));};exports[_0x88c3('0x6a')]=function(_0x48a598,_0x3cdfed,_0x2c3d9f){return db[_0x88c3('0x4f')][_0x88c3('0x56')]({'where':{'id':_0x48a598[_0x88c3('0x53')]['id']}})[_0x88c3('0x20')](handleEntityNotFound(_0x3cdfed,null))[_0x88c3('0x20')](function(_0x484bb4){if(_0x484bb4){return _0x484bb4[_0x88c3('0x6a')](_0x48a598[_0x88c3('0x3f')][_0x88c3('0x66')]);}})[_0x88c3('0x20')](respondWithStatusCode(_0x3cdfed,null))[_0x88c3('0x57')](handleError(_0x3cdfed,null));};exports['addLogo']=function(_0x3a33e7,_0x39f40c,_0x168cda){_0x3a33e7[_0x88c3('0x58')][_0x88c3('0x6b')]=_0x3a33e7[_0x88c3('0x6c')][_0x88c3('0x6d')];return db[_0x88c3('0x4f')][_0x88c3('0x56')]({'where':{'id':_0x3a33e7[_0x88c3('0x53')]['id']}})[_0x88c3('0x20')](handleEntityNotFound(_0x39f40c,null))[_0x88c3('0x20')](saveUpdates(_0x3a33e7[_0x88c3('0x58')],null))[_0x88c3('0x20')](respondWithResult(_0x39f40c,null))[_0x88c3('0x57')](handleError(_0x39f40c,null));};exports[_0x88c3('0x6e')]=function(_0x4a5456,_0x1647ac,_0x6865f4){_0x4a5456[_0x88c3('0x58')]['agentAvatar']=_0x4a5456[_0x88c3('0x6c')]['filename'];return db[_0x88c3('0x4f')][_0x88c3('0x56')]({'where':{'id':_0x4a5456[_0x88c3('0x53')]['id']}})['then'](handleEntityNotFound(_0x1647ac,null))[_0x88c3('0x20')](saveUpdates(_0x4a5456[_0x88c3('0x58')],null))['then'](respondWithResult(_0x1647ac,null))['catch'](handleError(_0x1647ac,null));};exports['addCustomerAvatar']=function(_0x9ec310,_0xeec237,_0x4cf261){_0x9ec310[_0x88c3('0x58')][_0x88c3('0x6f')]=_0x9ec310[_0x88c3('0x6c')][_0x88c3('0x6d')];return db[_0x88c3('0x4f')][_0x88c3('0x56')]({'where':{'id':_0x9ec310[_0x88c3('0x53')]['id']}})['then'](handleEntityNotFound(_0xeec237,null))['then'](saveUpdates(_0x9ec310[_0x88c3('0x58')],null))['then'](respondWithResult(_0xeec237,null))[_0x88c3('0x57')](handleError(_0xeec237,null));};exports[_0x88c3('0x70')]=function(_0x407997,_0x217dcf,_0x36a5b8){_0x407997[_0x88c3('0x58')][_0x88c3('0x71')]=_0x407997['file']['filename'];return db['ChatWebsite']['find']({'where':{'id':_0x407997[_0x88c3('0x53')]['id']}})['then'](handleEntityNotFound(_0x217dcf,null))[_0x88c3('0x20')](saveUpdates(_0x407997[_0x88c3('0x58')],null))[_0x88c3('0x20')](respondWithResult(_0x217dcf,null))[_0x88c3('0x57')](handleError(_0x217dcf,null));};exports['getLogo']=function(_0x56bec6,_0x372a73,_0x5a4b6a){var _0x85ef92=path[_0x88c3('0x72')](config[_0x88c3('0x73')],_0x88c3('0x74'));var _0x20072b={'where':{'id':_0x56bec6[_0x88c3('0x53')]['id']},'attributes':['id','sitepic'],'raw':!![]};var _0x5d6961=![];return require(_0x88c3('0x16'))['getLicense']()['then'](function(_0x1952fc){if(_0x1952fc){_0x5d6961=_0x1952fc['custom'];}})[_0x88c3('0x20')](function(){return db[_0x88c3('0x4f')]['find'](_0x20072b);})[_0x88c3('0x20')](handleEntityNotFound(_0x372a73,null))[_0x88c3('0x20')](function(_0x6e2302){if(_0x6e2302){if(!_[_0x88c3('0x75')](_0x6e2302[_0x88c3('0x6b')])){if(fs['existsSync'](path[_0x88c3('0x72')](config[_0x88c3('0x73')],_0x88c3('0x76'),_0x6e2302[_0x88c3('0x6b')]))&&_0x5d6961){_0x85ef92=path[_0x88c3('0x72')](config[_0x88c3('0x73')],_0x88c3('0x76'),_0x6e2302[_0x88c3('0x6b')]);}}return _0x372a73[_0x88c3('0x77')](_0x85ef92);}})['catch'](handleError(_0x372a73,null));};exports[_0x88c3('0x78')]=function(_0x22fe60,_0x4bf31c,_0x3f0467){var _0x5910b5=path['join'](config[_0x88c3('0x73')],_0x88c3('0x79'));var _0xe14be2={'where':{'id':_0x22fe60[_0x88c3('0x53')]['id']},'attributes':['id',_0x88c3('0x7a')],'raw':!![]};return db[_0x88c3('0x4f')][_0x88c3('0x56')](_0xe14be2)[_0x88c3('0x20')](handleEntityNotFound(_0x4bf31c,null))[_0x88c3('0x20')](function(_0x32085f){if(_0x32085f){if(!_[_0x88c3('0x75')](_0x32085f[_0x88c3('0x7a')])){if(fs['existsSync'](path[_0x88c3('0x72')](config[_0x88c3('0x73')],_0x88c3('0x7b'),_0x32085f['agentAvatar']))){_0x5910b5=path[_0x88c3('0x72')](config[_0x88c3('0x73')],_0x88c3('0x7b'),_0x32085f['agentAvatar']);}}return _0x4bf31c['download'](_0x5910b5);}})[_0x88c3('0x57')](handleError(_0x4bf31c,null));};exports[_0x88c3('0x7c')]=function(_0x4af1ca,_0x341bf5,_0x4351aa){var _0x4d1262=path[_0x88c3('0x72')](config['root'],_0x88c3('0x7d'));var _0x45a28e={'where':{'id':_0x4af1ca[_0x88c3('0x53')]['id']},'attributes':['id',_0x88c3('0x6f'),_0x88c3('0x7e')],'raw':!![]};return db[_0x88c3('0x4f')][_0x88c3('0x56')](_0x45a28e)[_0x88c3('0x20')](handleEntityNotFound(_0x341bf5,null))[_0x88c3('0x20')](function(_0x36c88c){if(_0x36c88c){if(!_[_0x88c3('0x75')](_0x36c88c[_0x88c3('0x6f')])){if(fs[_0x88c3('0x7f')](path[_0x88c3('0x72')](config[_0x88c3('0x73')],_0x88c3('0x7b'),_0x36c88c[_0x88c3('0x6f')]))&&_0x36c88c[_0x88c3('0x7e')]){_0x4d1262=path['join'](config['root'],_0x88c3('0x7b'),_0x36c88c['customerAvatar']);}}return _0x341bf5[_0x88c3('0x77')](_0x4d1262);}})[_0x88c3('0x57')](handleError(_0x341bf5,null));};exports['getSystemAvatar']=function(_0x7ef542,_0x203bae,_0x532f35){var _0x2fa231=path[_0x88c3('0x72')](config[_0x88c3('0x73')],_0x88c3('0x80'));var _0x461986={'where':{'id':_0x7ef542['params']['id']},'attributes':['id',_0x88c3('0x71')],'raw':!![]};return db[_0x88c3('0x4f')][_0x88c3('0x56')](_0x461986)[_0x88c3('0x20')](handleEntityNotFound(_0x203bae,null))[_0x88c3('0x20')](function(_0x4c4ea4){if(_0x4c4ea4){if(!_[_0x88c3('0x75')](_0x4c4ea4[_0x88c3('0x71')])){if(fs[_0x88c3('0x7f')](path['join'](config[_0x88c3('0x73')],_0x88c3('0x7b'),_0x4c4ea4[_0x88c3('0x71')]))){_0x2fa231=path[_0x88c3('0x72')](config[_0x88c3('0x73')],_0x88c3('0x7b'),_0x4c4ea4['systemAvatar']);}}return _0x203bae['download'](_0x2fa231);}})[_0x88c3('0x57')](handleError(_0x203bae,null));};exports[_0x88c3('0x81')]=function(_0xec444f,_0x260728,_0x365505){var _0x48491d=require(_0x88c3('0x82'));var _0x552689=new _0x48491d();var _0x226e61=_0x552689[_0x88c3('0x83')](_0xec444f[_0x88c3('0x84')][_0x88c3('0x85')])[_0x88c3('0x86')]();var _0x457a65={'body':_0xec444f[_0x88c3('0x58')],'channel':_0x88c3('0x87')};var _0x1a3787=[];var _0x3d54da=[];var _0xe6dbdb={};var _0x24a125=![];return db[_0x88c3('0x88')][_0x88c3('0x89')]()[_0x88c3('0x20')](function(_0x40b8b9){if(!_0x40b8b9){throw new db[(_0x88c3('0x8a'))][(_0x88c3('0x8b'))]('no\x20available\x20attributes');}_0x1a3787=_[_0x88c3('0x8c')](_[_0x88c3('0x40')](_0x40b8b9),[_0x88c3('0x8d'),'updatedAt']);_0x3d54da=_[_0x88c3('0x8c')](_[_0x88c3('0x40')](_0x40b8b9),[_0x88c3('0x8d'),_0x88c3('0x8e'),_0x88c3('0x8f'),_0x88c3('0x90')]);if(_0xec444f['body']['id']){delete _0xec444f[_0x88c3('0x58')]['id'];}if(_[_0x88c3('0x75')](_0xec444f[_0x88c3('0x58')][_0x88c3('0x91')])){throw new db['Sequelize'][(_0x88c3('0x8b'))]('from\x20is\x20mandatory');}if(_['isNil'](_0xec444f[_0x88c3('0x58')][_0x88c3('0x58')])||_0xec444f['body'][_0x88c3('0x58')]===''){throw new db[(_0x88c3('0x8a'))]['ValidationError'](_0x88c3('0x92'));}if(_[_0x88c3('0x75')](_0xec444f['body']['mapKey'])){throw new db[(_0x88c3('0x8a'))][(_0x88c3('0x8b'))]('mapKey\x20is\x20mandatory,\x20please\x20use\x20one\x20of\x20these:\x20'+_0x3d54da);}if(!_[_0x88c3('0x93')](_0x3d54da,_0xec444f[_0x88c3('0x58')]['mapKey'])){throw new db[(_0x88c3('0x8a'))][(_0x88c3('0x8b'))](_0x88c3('0x94')+_0x3d54da);}_0xe6dbdb[_0xec444f['body'][_0x88c3('0x95')]]=_0xec444f[_0x88c3('0x58')][_0x88c3('0x91')];})[_0x88c3('0x20')](function(){return db[_0x88c3('0x4f')][_0x88c3('0x56')]({'where':{'id':_0xec444f[_0x88c3('0x53')]['id']},'include':[{'model':db[_0x88c3('0x96')],'as':'List','include':[{'model':db[_0x88c3('0x88')],'as':'Contacts','where':_0xe6dbdb,'limit':0x1,'order':[['updatedAt',_0x88c3('0x97')]]}]},{'model':db['ChatApplication'],'as':_0x88c3('0x98')}]});})[_0x88c3('0x20')](handleEntityNotFound(_0x260728,null))['then'](function(_0x20ce7c){if(_0x20ce7c&&_0x20ce7c['List']){_0x457a65[_0x88c3('0x99')]=_0x20ce7c;_0x457a65['applications']=_0x20ce7c['Applications'];_0x457a65['list']=_0x20ce7c[_0x88c3('0x9a')];_0x457a65['applications']=_[_0x88c3('0x9b')](_0x457a65[_0x88c3('0x9c')],[_0x88c3('0x9d')],[_0x88c3('0x9e')]);if(_0x457a65[_0x88c3('0x99')][_0x88c3('0x98')]){delete _0x457a65[_0x88c3('0x99')][_0x88c3('0x98')];}if(_0x457a65[_0x88c3('0x99')][_0x88c3('0x9a')]&&_0x457a65['account']['List']['Contacts'][_0x88c3('0x45')]){return _0x457a65[_0x88c3('0x99')][_0x88c3('0x9a')][_0x88c3('0x9f')][0x0];}var _0x266b90=_[_0x88c3('0x19')](_0xec444f[_0x88c3('0x58')],{'firstName':_0xec444f[_0x88c3('0x58')][_0x88c3('0x91')],'ListId':_0x20ce7c['ListId']});_0x266b90[_0xec444f[_0x88c3('0x58')][_0x88c3('0x95')]]=_0xec444f[_0x88c3('0x58')][_0x88c3('0x91')];return db[_0x88c3('0x88')]['create'](_0x266b90,{'fields':_0x1a3787,'raw':!![]});}})[_0x88c3('0x20')](handleEntityNotFound(_0x260728,null))[_0x88c3('0x20')](function(_0xb13da9){_0x457a65[_0x88c3('0xa0')]=_0xb13da9;var _0x22af69=_0xec444f['body']['customerIp'];if(_0xec444f[_0x88c3('0x84')]['cf-connecting-ip']){_0x22af69=_0xec444f[_0x88c3('0x84')][_0x88c3('0xa1')];}else if(_0xec444f[_0x88c3('0x84')][_0x88c3('0xa2')]){_0x22af69=_[_0x88c3('0xa3')](_0xec444f[_0x88c3('0x84')][_0x88c3('0xa2')]['split'](','));}if(_0xb13da9){var _0x4f9c7b={'ContactId':_0xb13da9['id'],'ChatWebsiteId':_0xec444f[_0x88c3('0x53')]['id'],'from':(_0xb13da9[_0x88c3('0xa4')]||'')+'\x20'+(_0xb13da9[_0x88c3('0xa5')]||''),'customerIp':_0x22af69,'customerPort':_0xec444f[_0x88c3('0x84')]['x-real-port']?_0xec444f['headers'][_0x88c3('0xa6')]:null,'referer':_0xec444f['body'][_0x88c3('0xa7')],'browserName':_0x226e61[_0x88c3('0xa8')]['name']&&_0x226e61[_0x88c3('0xa8')][_0x88c3('0xa9')]?util['format']('%s\x20%s',_0x226e61[_0x88c3('0xa8')]['name'],_0x226e61[_0x88c3('0xa8')]['version']):'unknown','browserVersion':_0x226e61['browser'][_0x88c3('0xa9')]||_0x88c3('0xaa'),'osName':util[_0x88c3('0xab')]('%s\x20%s',_0x226e61['os'][_0x88c3('0x37')],_0x226e61['os'][_0x88c3('0xa9')]),'osVersion':_0x226e61['os']['version'],'deviceModel':_0x226e61[_0x88c3('0xac')]['model']&&_0x226e61[_0x88c3('0xac')][_0x88c3('0xad')]?util[_0x88c3('0xab')]('%s\x20%s\x20%s',_0x226e61[_0x88c3('0xac')][_0x88c3('0x3e')],_0x226e61[_0x88c3('0xac')][_0x88c3('0xad')],_0x226e61[_0x88c3('0xac')][_0x88c3('0x3c')]):null,'deviceVendor':_0x226e61[_0x88c3('0xac')][_0x88c3('0xad')],'deviceType':_0x226e61[_0x88c3('0xac')][_0x88c3('0x3c')],'formData':JSON[_0x88c3('0x25')](_0xec444f[_0x88c3('0x58')])};var _0x3d0ba3={'ChatWebsiteId':_0xec444f[_0x88c3('0x53')]['id'],'closed':![]};if(_0xec444f[_0x88c3('0x58')][_0x88c3('0xae')]){_0x3d0ba3[_0x88c3('0xae')]=_0xec444f['body']['threadId'];return db[_0x88c3('0xaf')][_0x88c3('0x56')]({'where':_0x3d0ba3})[_0x88c3('0x20')](function(_0x1956e9){if(_0x1956e9){return[_0x1956e9,![]];}_0x4f9c7b['threadId']=_0xec444f[_0x88c3('0x58')][_0x88c3('0xae')];_0x4f9c7b[_0x88c3('0xb0')]=_0xec444f[_0x88c3('0x58')]['externalUrl'];return db[_0x88c3('0xaf')][_0x88c3('0x5f')](_0x4f9c7b)[_0x88c3('0x20')](function(_0x19b972){return[_0x19b972,!![]];});});}_0x3d0ba3[_0x88c3('0xb1')]=_0xb13da9['id'];if(_0xec444f['body'][_0x88c3('0xb2')]&&_0xec444f['body'][_0x88c3('0xb2')]['id']){_0x3d0ba3['id']=_0xec444f['body'][_0x88c3('0xb2')]['id'];return db['ChatInteraction']['find']({'where':_0x3d0ba3})[_0x88c3('0x20')](function(_0x20035d){if(_0x20035d){return[_0x20035d,![]];}return db[_0x88c3('0xaf')][_0x88c3('0x5f')](_0x4f9c7b)[_0x88c3('0x20')](function(_0x29c895){return[_0x29c895,!![]];});});}return db[_0x88c3('0xaf')][_0x88c3('0x5f')](_0x4f9c7b)['then'](function(_0x34fd16){return[_0x34fd16,!![]];});}})[_0x88c3('0xb3')](function(_0x3d3397,_0x52ddd2){if(_0x3d3397){_0x24a125=_0x52ddd2;if(!_0x52ddd2){var _0x556f40={'from':(_0x457a65[_0x88c3('0xa0')][_0x88c3('0xa4')]||'')+'\x20'+(_0x457a65[_0x88c3('0xa0')]['lastName']||'')};if(_0xec444f[_0x88c3('0x58')][_0x88c3('0xae')]&&_0xec444f[_0x88c3('0x58')][_0x88c3('0xb4')]&&_0xec444f['body'][_0x88c3('0xae')]!=_0xec444f['body']['messageId']){_0x556f40[_0x88c3('0xae')]=_0xec444f[_0x88c3('0x58')][_0x88c3('0xb4')];}return _0x3d3397[_0x88c3('0x32')](_0x556f40);}else{return _0x3d3397;}}})[_0x88c3('0x20')](function(_0x424814){_0x457a65[_0x88c3('0xb2')]=_0x424814[_0x88c3('0x34')]({'plain':!![]});_0x457a65[_0x88c3('0xb2')][_0x88c3('0xb5')]=_0x24a125;if(_0x457a65['interaction'][_0x88c3('0xb5')]){if(_0x457a65[_0x88c3('0x99')][_0x88c3('0xb6')]){_0x457a65[_0x88c3('0x9c')][_0x88c3('0xb7')]({'id':0x0,'priority':_0x457a65['applications'][_0x88c3('0x45')]+0x1,'app':_0x88c3('0xb8'),'appdata':_0x88c3('0xb9'),'interval':_0x88c3('0xba')});}}return db[_0x88c3('0xbb')][_0x88c3('0x5f')]({'body':_0xec444f[_0x88c3('0x58')][_0x88c3('0x58')],'ChatWebsiteId':_0xec444f[_0x88c3('0x53')]['id'],'ChatInteractionId':_0x424814['id'],'direction':'in','ContactId':_0x457a65['contact']['id'],'AttachmentId':_0xec444f[_0x88c3('0x58')][_0x88c3('0xbc')]});})[_0x88c3('0x20')](function(_0xb47cde){_0x457a65[_0x88c3('0x28')]=_0xb47cde;if(_0x457a65[_0x88c3('0xb2')]['UserId']){return db[_0x88c3('0xbd')][_0x88c3('0x56')]({'attributes':['id',_0x88c3('0x37')],'where':{'id':_0x457a65[_0x88c3('0xb2')]['UserId']}})[_0x88c3('0x20')](function(_0x453204){if(_0x453204){_0x457a65[_0x88c3('0x9c')][_0x88c3('0xbe')]({'id':0x0,'priority':0x0,'app':_0x88c3('0xbf'),'appdata':_0x453204[_0x88c3('0x37')]+','+(_0x457a65['account'][_0x88c3('0xc0')]||0xa),'interval':_0x88c3('0xba')});_0x457a65[_0x88c3('0xc1')]=!![];}return respondWithRpcPromise(_0x88c3('0xc2'),'startRouting',_0x457a65);});}return respondWithRpcPromise(_0x88c3('0xc2'),'startRouting',_0x457a65);})[_0x88c3('0x20')](function(_0x26fff5){respondWithRpcPromise(_0x88c3('0xc3'),_0x88c3('0xc3'),{'event':_0x88c3('0x81'),'message':_0x26fff5},client9002);return _0x26fff5;})[_0x88c3('0x20')](respondWithResult(_0x260728,null))[_0x88c3('0x57')](handleError(_0x260728,null));};exports[_0x88c3('0xc4')]=function(_0x469a9f,_0x58f0b9,_0x53184f){var _0x3fade5,_0x54b284,_0x483f04;var _0x50c634=[];var _0x254619=[];var _0x3c87e8={};var _0x590fc8=_0x469a9f[_0x88c3('0xc5')]||[];var _0xef5726=[];var _0x1cf7c8;return db[_0x88c3('0x88')][_0x88c3('0x89')]()[_0x88c3('0x20')](function(_0xdc713){if(!_0xdc713){throw new db[(_0x88c3('0x8a'))]['ValidationError']('no\x20available\x20attributes');}_0x254619=_['difference'](_[_0x88c3('0x40')](_0xdc713),[_0x88c3('0x8d'),'updatedAt']);_0x50c634=_['difference'](_[_0x88c3('0x40')](_0xdc713),[_0x88c3('0x8d'),'updatedAt','CompanyId',_0x88c3('0x90')]);if(_0x469a9f[_0x88c3('0x58')]['id']){delete _0x469a9f[_0x88c3('0x58')]['id'];}if(_[_0x88c3('0x75')](_0x469a9f[_0x88c3('0x58')][_0x88c3('0x91')])){throw _0x58f0b9[_0x88c3('0x2a')](0x1f4)[_0x88c3('0xc6')](new db['Sequelize'][(_0x88c3('0x8b'))]('from\x20is\x20mandatory'));}if(_['isNil'](_0x469a9f[_0x88c3('0x58')][_0x88c3('0x58')])||_0x469a9f[_0x88c3('0x58')][_0x88c3('0x58')]===''){throw _0x58f0b9[_0x88c3('0x2a')](0x1f4)[_0x88c3('0xc6')](new db[(_0x88c3('0x8a'))][(_0x88c3('0x8b'))](_0x88c3('0x92')));}if(_[_0x88c3('0x75')](_0x469a9f['body']['mapKeyOffline'])){throw _0x58f0b9[_0x88c3('0x2a')](0x1f4)[_0x88c3('0xc6')](new db[(_0x88c3('0x8a'))][(_0x88c3('0x8b'))](_0x88c3('0xc7')+_0x50c634));}if(!_['includes'](_0x50c634,_0x469a9f[_0x88c3('0x58')]['mapKeyOffline'])){throw _0x58f0b9[_0x88c3('0x2a')](0x1f4)[_0x88c3('0xc6')](new db['Sequelize'][(_0x88c3('0x8b'))](_0x88c3('0xc8')+_0x50c634));}_0x3c87e8[_0x469a9f[_0x88c3('0x58')]['mapKeyOffline']]=_0x469a9f[_0x88c3('0x58')][_0x88c3('0x91')];})[_0x88c3('0x20')](function(){return db[_0x88c3('0x4f')]['find']({'where':{'id':_0x469a9f[_0x88c3('0x53')]['id']},'include':[{'model':db['CmList'],'as':'List'},{'model':db[_0x88c3('0xc9')],'as':_0x88c3('0xc9')}]});})[_0x88c3('0x20')](handleEntityNotFound(_0x58f0b9,null))[_0x88c3('0x20')](function(_0x5066dd){if(_0x5066dd&&_0x5066dd['List']){_0x54b284=_0x5066dd;var _0x445f9e=_[_0x88c3('0x19')](_0x469a9f['body'],{'firstName':_0x469a9f['body']['from'],'phone':_0x469a9f[_0x88c3('0x58')][_0x88c3('0x91')],'ListId':_0x5066dd[_0x88c3('0x90')]});_0x445f9e[_0x469a9f[_0x88c3('0x58')][_0x88c3('0xca')]]=_0x469a9f[_0x88c3('0x58')][_0x88c3('0x91')];return db[_0x88c3('0x88')][_0x88c3('0xcb')]({'where':_0x3c87e8,'defaults':_0x445f9e});}})[_0x88c3('0xb3')](function(_0x42a5b9){if(_0x42a5b9){_0x483f04=_0x42a5b9;var _0x1cffbd=fs[_0x88c3('0xcc')](path[_0x88c3('0x72')](config[_0x88c3('0x73')],_0x88c3('0xcd')),_0x88c3('0xce'));var _0x386e7f=ejs['render'](_0x1cffbd,{'body':_[_0x88c3('0xcf')](_0x469a9f['body']['body']),'bodyTitle':_0x54b284[_0x88c3('0xd0')]});return db[_0x88c3('0xd1')][_0x88c3('0x5f')]({'body':_0x386e7f,'ContactId':_0x42a5b9['id'],'ChatWebsiteId':_0x54b284['id']});}})['then'](function(_0x446fd5){_0x1cf7c8=_0x446fd5;if(_0x590fc8[_0x88c3('0x45')]){var _0x1f9db8=_0x590fc8['map'](function(_0x1b0b33){return{'name':_0x1b0b33[_0x88c3('0xd2')],'basename':_0x1b0b33[_0x88c3('0x6d')],'type':_0x1b0b33['mimetype'],'ChatOfflineMessageId':_0x446fd5['id']};});_0xef5726=_0x1f9db8[_0x88c3('0x39')](_0x3ce64c=>{var _0x490364={'filename':_0x3ce64c[_0x88c3('0x37')],'path':path['join'](config[_0x88c3('0x73')],_0x88c3('0xd3'),'files','attachments','offline-chat',_0x3ce64c[_0x88c3('0xd4')])};return _0x490364;});if(!_0x54b284[_0x88c3('0xd5')]){return db[_0x88c3('0xd6')][_0x88c3('0xd7')](function(_0x2a1723){return db[_0x88c3('0xd8')][_0x88c3('0xd9')](_0x1f9db8,{'transaction':_0x2a1723});});}}})['then'](function(){if(_0x1cf7c8){_0x3fade5=_0x1cf7c8;return db[_0x88c3('0xc9')][_0x88c3('0x64')]({'where':{'active':!![]},'include':[{'model':db[_0x88c3('0xda')],'as':_0x88c3('0xdb'),'raw':!![]}]});}})[_0x88c3('0x20')](function(_0x3519bf){if(_0x3519bf&&_0x3519bf['Smtp']&&_0x54b284[_0x88c3('0xdc')]&&_0x54b284[_0x88c3('0xdd')]){var _0x14fb32={'tls':{'rejectUnauthorized':![]}};if(_0x3519bf['Smtp']['service']){_0x14fb32[_0x88c3('0xde')]=_0x3519bf[_0x88c3('0xdb')][_0x88c3('0xde')];}else{_0x14fb32[_0x88c3('0xdf')]=_0x3519bf[_0x88c3('0xdb')][_0x88c3('0xdf')];_0x14fb32[_0x88c3('0xe0')]=_0x3519bf[_0x88c3('0xdb')]['port'];_0x14fb32[_0x88c3('0xe1')]=_0x3519bf[_0x88c3('0xdb')][_0x88c3('0xe1')];}if(_0x3519bf[_0x88c3('0xdb')][_0x88c3('0xe2')]){_0x14fb32['auth']={'user':_0x3519bf['Smtp'][_0x88c3('0x59')],'pass':_0x3519bf[_0x88c3('0xdb')][_0x88c3('0xe3')]};}return respondWithRpcPromise(_0x88c3('0xe4'),_0x88c3('0xe5'),{'account':_0x14fb32,'message':{'from':util[_0x88c3('0xab')](_0x88c3('0xe6'),_0x3519bf[_0x88c3('0x37')],_0x3519bf['email']||_0x3519bf[_0x88c3('0xdb')]['user']),'to':_0x54b284[_0x88c3('0xdd')],'subject':_0x54b284['offlineMessageSubject'],'html':_0x3fade5[_0x88c3('0x58')],'attachments':_0xef5726}},client9003)[_0x88c3('0x20')](function(){return _0x3fade5;})[_0x88c3('0x57')](function(_0x2ca354){console[_0x88c3('0x26')](_0x2ca354);});}})[_0x88c3('0x20')](function(){if(_0x54b284&&_0x54b284[_0x88c3('0xd5')]&&_0x54b284[_0x88c3('0xe7')]){var _0x5cc10e=[];if(_0x590fc8[_0x88c3('0x45')]){_0x5cc10e=_0x590fc8[_0x88c3('0x39')](function(_0x25c13d){return{'name':_0x25c13d['originalname'],'basename':_0x25c13d[_0x88c3('0x6d')],'type':_0x25c13d['mimetype'],'ChatOfflineMessageId':_0x1cf7c8['id']};});}var _0x39dc8d;if(!_[_0x88c3('0x75')](_0x54b284['subjectOffline'])){var _0x5c1cf8=_['map'](_0x469a9f['body'],function(_0x24e68b){return _0x24e68b;});var _0x4f8127=_[_0x88c3('0xe8')](_0x5c1cf8)[0x0];var _0x2d6e8e=_['mapValues'](_0x4f8127,function(_0x25c332){return _0x25c332;});_0x39dc8d=_0x2d6e8e[0x1][_0x54b284[_0x88c3('0xe9')]];}var _0xa82cf={'from':_0x483f04[_0x88c3('0xea')],'firstName':_0x483f04[_0x88c3('0xa4')],'lastName':_0x483f04[_0x88c3('0xa5')],'mapKey':_0x88c3('0xea'),'message':{'from':_0x483f04[_0x88c3('0xea')],'to':_0x54b284[_0x88c3('0xc9')][_0x88c3('0xea')],'cc':'','subject':_['isNil'](_0x39dc8d)?_0x54b284[_0x88c3('0xeb')]:_0x39dc8d,'messageId':'','sentAt':new Date(),'attach':_0x5cc10e[_0x88c3('0x45')],'attachments':_0x5cc10e,'originChannel':_0x88c3('0xec'),'ChatWebsiteId':_0x54b284['id'],'ChatOfflineMessageId':_0x3fade5['id'],'originTo':_0x54b284[_0x88c3('0xc9')]['email']},'body':_0x3fade5[_0x88c3('0x58')]};var _0x2318ad={'account':{'id':_0x54b284[_0x88c3('0xe7')]},'body':_0xa82cf,'log':_0x88c3('0xed')};return respondWithRpcPromise(_0x88c3('0xed'),_0x88c3('0xee'),_0x2318ad,client9001)[_0x88c3('0x20')](function(){return _0x3fade5;})[_0x88c3('0x57')](function(_0x251320){console['error'](_0x251320);});}return;})[_0x88c3('0x20')](function(){if(_0x3fade5){return _0x3fade5;}})['then'](respondWithResult(_0x58f0b9,null))[_0x88c3('0x57')](function(_0x25a42e){console[_0x88c3('0x26')](_0x88c3('0x57'),_0x25a42e);for(var _0x592cee of _0x590fc8){var _0x9f5606=path[_0x88c3('0x72')](config[_0x88c3('0x73')],_0x88c3('0xd3'),_0x88c3('0xc5'),'attachments',_0x88c3('0xef'),_0x592cee[_0x88c3('0x6d')]);fs_extra[_0x88c3('0xf0')](_0x9f5606)[_0x88c3('0x57')](function(_0x1e374d){console[_0x88c3('0x26')](_0x88c3('0xf1'),_0x9f5606,_0x1e374d);});}});};exports[_0x88c3('0xf2')]=function(_0x417fbf,_0x1a3678,_0x2b6893){return db[_0x88c3('0xaf')][_0x88c3('0x56')]({'where':{'id':_0x417fbf[_0x88c3('0x53')]['id']}})[_0x88c3('0x20')](handleEntityNotFound(_0x1a3678,null))[_0x88c3('0x20')](function(_0x2e39c9){if(_0x2e39c9){return _0x2e39c9[_0x88c3('0xf2')](_0x417fbf['body'][_0x88c3('0x66')],_['omit'](_0x417fbf[_0x88c3('0x58')],[_0x88c3('0x66'),'id'])||{});}})[_0x88c3('0x20')](respondWithResult(_0x1a3678,null))['catch'](handleError(_0x1a3678,null));};exports['getInteractions']=function(_0x4bea2d,_0x13eb9c,_0xe911b3){var _0x54cec8={'raw':![],'where':{}};var _0x255446={};var _0x213026={'count':0x0,'rows':[]};return db['ChatWebsite'][_0x88c3('0x64')]({'where':{'id':_0x4bea2d[_0x88c3('0x53')]['id']}})[_0x88c3('0x20')](handleEntityNotFound(_0x13eb9c,null))['then'](function(_0x35f7d0){if(_0x35f7d0){_0x255446[_0x88c3('0x3e')]=_[_0x88c3('0x40')](db[_0x88c3('0xaf')][_0x88c3('0x3a')]);_0x255446[_0x88c3('0x3f')]=_[_0x88c3('0x40')](_0x4bea2d[_0x88c3('0x3f')]);_0x255446[_0x88c3('0x41')]=_['intersection'](_0x255446[_0x88c3('0x3e')],_0x255446[_0x88c3('0x3f')]);_0x54cec8[_0x88c3('0x43')]=_[_0x88c3('0x42')](_0x255446[_0x88c3('0x3e')],qs[_0x88c3('0x44')](_0x4bea2d[_0x88c3('0x3f')]['fields']));_0x54cec8[_0x88c3('0x43')]=_0x54cec8[_0x88c3('0x43')][_0x88c3('0x45')]?_0x54cec8[_0x88c3('0x43')]:_0x255446[_0x88c3('0x3e')];if(!_0x4bea2d[_0x88c3('0x3f')][_0x88c3('0x69')](_0x88c3('0x46'))){_0x54cec8[_0x88c3('0x2e')]=qs[_0x88c3('0x2e')](_0x4bea2d['query'][_0x88c3('0x2e')]);_0x54cec8[_0x88c3('0x2d')]=qs[_0x88c3('0x2d')](_0x4bea2d[_0x88c3('0x3f')]['offset']);}_0x54cec8[_0x88c3('0x47')]=qs[_0x88c3('0x48')](_0x4bea2d[_0x88c3('0x3f')][_0x88c3('0x48')]);_0x54cec8[_0x88c3('0x49')]=qs['filters'](_['pick'](_0x4bea2d[_0x88c3('0x3f')],_0x255446[_0x88c3('0x41')]));_0x54cec8[_0x88c3('0x49')][_0x88c3('0x61')]=_0x35f7d0['id'];if(_0x4bea2d[_0x88c3('0x3f')][_0x88c3('0x4b')]){_0x54cec8[_0x88c3('0x49')]=_[_0x88c3('0x4c')](_0x54cec8['where'],{'$or':_[_0x88c3('0x39')](_0x54cec8[_0x88c3('0x43')],function(_0x1f9b87){var _0x3402a0={};_0x3402a0[_0x1f9b87]={'$like':'%'+_0x4bea2d[_0x88c3('0x3f')][_0x88c3('0x4b')]+'%'};return _0x3402a0;})});}_0x54cec8=_['merge']({},_0x54cec8,_0x4bea2d[_0x88c3('0x4e')]);return db['ChatInteraction'][_0x88c3('0x30')]({'where':_0x54cec8[_0x88c3('0x49')]})['then'](function(_0x31858b){_0x213026[_0x88c3('0x30')]=_0x31858b;if(_0x4bea2d[_0x88c3('0x3f')][_0x88c3('0x50')]){_0x54cec8[_0x88c3('0x55')]=[{'model':db[_0x88c3('0x88')],'as':_0x88c3('0xf3'),'required':![]},{'model':db[_0x88c3('0xbd')],'as':_0x88c3('0xf4'),'attributes':[_0x88c3('0x37'),_0x88c3('0xf5'),'internal'],'required':![]},{'model':db[_0x88c3('0xf6')],'as':_0x88c3('0xf7'),'attributes':['id',_0x88c3('0x37'),_0x88c3('0xf8')],'where':_0x4bea2d[_0x88c3('0x3f')]['tag']?{'id':_0x4bea2d[_0x88c3('0x3f')][_0x88c3('0xf9')]}:undefined,'required':_0x4bea2d[_0x88c3('0x3f')][_0x88c3('0xf9')]?!![]:![]}];}return db[_0x88c3('0xaf')][_0x88c3('0x51')](_0x54cec8);})['then'](function(_0x45364b){_0x213026[_0x88c3('0x52')]=_0x45364b;return _0x213026;});}})[_0x88c3('0x20')](respondWithFilteredResult(_0x13eb9c,_0x54cec8))['catch'](handleError(_0x13eb9c,null));};function iftimePromise(_0x5c2096,_0x1215b8){return respondWithRpcPromise(_0x88c3('0xfa'),_0x88c3('0xfb'),{'command':_0x1215b8['timezone']?util[_0x88c3('0xab')](_0x88c3('0xfc'),_0x5c2096[_0x88c3('0xfd')],_0x1215b8[_0x88c3('0xfe')]):util[_0x88c3('0xab')](_0x88c3('0xff'),_0x5c2096[_0x88c3('0xfd')])},client9002)[_0x88c3('0x20')](function(_0x151752){var _0x447a7f=_0x151752&&_0x151752['indexOf'](_0x88c3('0x100'))>=0x0?!![]:![];logger[_0x88c3('0x21')](_0x88c3('0x101'),_0x1215b8['id'],_0x5c2096['id'],_0x5c2096[_0x88c3('0xfd')],_0x447a7f?'ONLINE':'OFFLINE',_0x1215b8[_0x88c3('0xfe')]?_0x1215b8[_0x88c3('0xfe')]:_0x88c3('0x102'));return _0x447a7f;})[_0x88c3('0x57')](function(_0x38f4dd){logger[_0x88c3('0x26')](_0x88c3('0x101'),_0x1215b8['id'],_0x5c2096['id'],_0x5c2096[_0x88c3('0xfd')],util[_0x88c3('0x103')](_0x38f4dd,{'showHidden':![],'depth':null}),_0x1215b8['timezone']?_0x1215b8['timezone']:_0x88c3('0x102'));return![];});}exports[_0x88c3('0xfb')]=function(_0x49dda1,_0x4e6da2,_0x130f9d){var _0x1d2599=0x0;var _0x1b1d26=0x0;var _0x296960=![];var _0x6855e4;var _0x2d23a8;return db[_0x88c3('0x4f')][_0x88c3('0x56')]({'where':{'id':_0x49dda1[_0x88c3('0x53')]['id']},'include':[{'model':db[_0x88c3('0x104')],'as':'Interval','include':[{'model':db['Interval'],'as':'Intervals','attributes':['id',_0x88c3('0xfd')],'raw':!![]}]}]})[_0x88c3('0x20')](handleEntityNotFound(_0x4e6da2,null))['then'](function(_0x5acf41){if(_0x5acf41){_0x6855e4=_0x5acf41;return _0x5acf41[_0x88c3('0x105')]({'raw':!![]});}})[_0x88c3('0x20')](function(_0x2e4ae8){if(_0x6855e4){if(_0x2e4ae8){_0x2d23a8=_0x2e4ae8;}}return require(_0x88c3('0x16'))[_0x88c3('0x106')]();})[_0x88c3('0x20')](function(_0x4ab09f){if(_0x4ab09f){_0x1b1d26=_0x4ab09f[_0x88c3('0x107')];_0x296960=_0x4ab09f[_0x88c3('0x108')];}})[_0x88c3('0x20')](function(){return db['ChatInteraction'][_0x88c3('0x30')]({'where':{'closed':![]}});})['then'](function(_0xff5d09){_0x1d2599=_0xff5d09;if(_0x1b1d26&&_0xff5d09>_0x1b1d26){return db[_0x88c3('0x109')][_0x88c3('0x64')]({'where':{'id':0x1}})[_0x88c3('0x20')](function(_0xc0f494){if(_0xc0f494){_0xc0f494['increment']('chatLicenseExceeded');}});}})[_0x88c3('0x20')](function(){if(_0x6855e4['Interval']&&_0x6855e4[_0x88c3('0x104')][_0x88c3('0x10a')]){var _0x16582b=[];for(var _0x52e463=0x0;_0x52e463<_0x6855e4[_0x88c3('0x104')][_0x88c3('0x10a')][_0x88c3('0x45')];_0x52e463++){var _0x5c1150=_0x6855e4[_0x88c3('0x104')][_0x88c3('0x10a')][_0x52e463][_0x88c3('0x34')]({'plain':!![]});_0x16582b[_0x88c3('0xb7')](iftimePromise(_0x5c1150,_0x6855e4));}return BPromise['all'](_0x16582b)[_0x88c3('0x20')](function(_0x1653fa){return _[_0x88c3('0x10b')](_0x1653fa);});}else{return!![];}})['then'](function(_0x14616b){var _0x455120=fs[_0x88c3('0xcc')](path['join'](config['root'],_0x88c3('0x10c')),'utf8');var _0x56a83f={'remote':_0x6855e4[_0x88c3('0x10d')],'query':querystring[_0x88c3('0x25')](_['merge'](_0x6855e4[_0x88c3('0x34')]({'plain':!![]}),{'customerIp':_0x49dda1[_0x88c3('0x84')][_0x88c3('0xa2')]||_0x49dda1[_0x88c3('0x84')][_0x88c3('0x10e')]||_0x49dda1[_0x88c3('0x10f')][_0x88c3('0x110')]||_0x49dda1['ip'],'referer':_0x49dda1[_0x88c3('0x84')]['referer'],'openedInteractions':_0x1d2599,'maxInteractions':_0x1b1d26,'virtual':_0x296960['virtual'],'online':_0x14616b,'custom':_0x296960}))[_0x88c3('0x111')](/'/g,'\x5c\x27')};_0x4e6da2['send'](ejs[_0x88c3('0x112')](Mustache[_0x88c3('0x112')](_0x455120,_0x56a83f),{'proactiveActions':_0x2d23a8,'alignment':_0x6855e4[_0x88c3('0x113')],'verticalAlignment':_0x6855e4[_0x88c3('0x114')],'div_color':_0x6855e4[_0x88c3('0xf8')],'text_color':_0x6855e4[_0x88c3('0x115')],'button_color':_0x6855e4[_0x88c3('0x116')],'background_color':_0x6855e4[_0x88c3('0x117')]}));})[_0x88c3('0x57')](handleError(_0x4e6da2,null));};exports[_0x88c3('0x118')]=function(_0x427f6a,_0x4906fa,_0x59a41b){return db[_0x88c3('0x4f')][_0x88c3('0x64')]({'where':{'id':_0x427f6a['params']['id']}})[_0x88c3('0x20')](handleEntityNotFound(_0x4906fa,null))[_0x88c3('0x20')](function(_0x1c1ebc){if(_0x1c1ebc){return db['sequelize'][_0x88c3('0xd7')](function(_0x1070a3){return db[_0x88c3('0x119')][_0x88c3('0x33')]({'where':{'ChatWebsiteId':_0x427f6a['params']['id']},'transaction':_0x1070a3})[_0x88c3('0x20')](function(_0x5e446c){var _0x22a10a=_[_0x88c3('0x39')](_0x427f6a[_0x88c3('0x58')],function(_0x216239){_0x216239[_0x88c3('0x61')]=_0x427f6a[_0x88c3('0x53')]['id'];return _0x216239;});return db['ChatApplication'][_0x88c3('0xd9')](_0x22a10a,{'transaction':_0x1070a3});});})[_0x88c3('0x20')](function(){return db['ChatApplication'][_0x88c3('0x11a')]({'where':{'ChatWebsiteId':_0x427f6a[_0x88c3('0x53')]['id']},'order':'priority'});});}})[_0x88c3('0x20')](respondWithResult(_0x4906fa,null))['catch'](handleError(_0x4906fa,null));};exports[_0x88c3('0x11b')]=function(_0x4fbb2c,_0x191352,_0x447a5e){var _0x4d3bce={};var _0x3e5933={};var _0x22118a;var _0x1e450d;return db[_0x88c3('0x4f')]['findOne']({'where':{'id':_0x4fbb2c['params']['id']}})[_0x88c3('0x20')](handleEntityNotFound(_0x191352,null))[_0x88c3('0x20')](function(_0x189597){if(_0x189597){_0x22118a=_0x189597;_0x3e5933[_0x88c3('0x3e')]=_[_0x88c3('0x40')](db[_0x88c3('0x119')][_0x88c3('0x3a')]);_0x3e5933[_0x88c3('0x3f')]=_[_0x88c3('0x40')](_0x4fbb2c[_0x88c3('0x3f')]);_0x3e5933['filters']=_[_0x88c3('0x42')](_0x3e5933[_0x88c3('0x3e')],_0x3e5933[_0x88c3('0x3f')]);_0x4d3bce[_0x88c3('0x43')]=_[_0x88c3('0x42')](_0x3e5933[_0x88c3('0x3e')],qs[_0x88c3('0x44')](_0x4fbb2c['query']['fields']));_0x4d3bce['attributes']=_0x4d3bce[_0x88c3('0x43')][_0x88c3('0x45')]?_0x4d3bce[_0x88c3('0x43')]:_0x3e5933['model'];_0x4d3bce['order']=qs['sort'](_0x4fbb2c['query']['sort']);_0x4d3bce[_0x88c3('0x49')]=qs[_0x88c3('0x41')](_[_0x88c3('0x4a')](_0x4fbb2c[_0x88c3('0x3f')],_0x3e5933[_0x88c3('0x41')]));if(_0x4fbb2c[_0x88c3('0x3f')][_0x88c3('0x4b')]){_0x4d3bce[_0x88c3('0x49')]=_[_0x88c3('0x4c')](_0x4d3bce['where'],{'$or':_[_0x88c3('0x39')](_0x4d3bce['attributes'],function(_0x8d2287){var _0x38c748={};_0x38c748[_0x8d2287]={'$like':'%'+_0x4fbb2c[_0x88c3('0x3f')]['filter']+'%'};return _0x38c748;})});}_0x4d3bce=_[_0x88c3('0x4c')]({},_0x4d3bce,_0x4fbb2c[_0x88c3('0x4e')]);return _0x22118a['getApplications'](_0x4d3bce);}})[_0x88c3('0x20')](function(_0x577022){if(_0x577022){_0x1e450d=_0x577022['length'];if(!_0x4fbb2c[_0x88c3('0x3f')][_0x88c3('0x69')](_0x88c3('0x46'))){_0x4d3bce[_0x88c3('0x2e')]=qs[_0x88c3('0x2e')](_0x4fbb2c[_0x88c3('0x3f')][_0x88c3('0x2e')]);_0x4d3bce[_0x88c3('0x2d')]=qs[_0x88c3('0x2d')](_0x4fbb2c[_0x88c3('0x3f')]['offset']);}return _0x22118a[_0x88c3('0x11b')](_0x4d3bce);}})['then'](function(_0x542d2d){if(_0x542d2d){return _0x542d2d?{'count':_0x1e450d,'rows':_0x542d2d}:null;}})[_0x88c3('0x20')](respondWithResult(_0x191352,null))[_0x88c3('0x57')](handleError(_0x191352,null));};exports[_0x88c3('0x11c')]=function(_0x26f386,_0xed2186,_0x3037cb){return db[_0x88c3('0x11d')][_0x88c3('0x56')]({'where':{'id':_0x26f386[_0x88c3('0x53')]['id']}})[_0x88c3('0x20')](handleEntityNotFound(_0xed2186,null))[_0x88c3('0x20')](function(_0xab71eb){if(_0xab71eb){return _0xab71eb[_0x88c3('0x11c')](_0x26f386['body'][_0x88c3('0x66')],_[_0x88c3('0x11e')](_0x26f386[_0x88c3('0x58')],[_0x88c3('0x66'),'id'])||{});}})[_0x88c3('0x20')](respondWithResult(_0xed2186,null))[_0x88c3('0x57')](handleError(_0xed2186,null));};exports['getProactiveActions']=function(_0x503466,_0x195487,_0x7c0fe1){var _0x5ca89c={};var _0x406c1d={};var _0x5f2391;var _0x555666;return db[_0x88c3('0x4f')][_0x88c3('0x64')]({'where':{'id':_0x503466[_0x88c3('0x53')]['id']}})['then'](handleEntityNotFound(_0x195487,null))[_0x88c3('0x20')](function(_0x48eca3){if(_0x48eca3){_0x5f2391=_0x48eca3;_0x406c1d[_0x88c3('0x3e')]=_[_0x88c3('0x40')](db[_0x88c3('0x11f')]['rawAttributes']);_0x406c1d[_0x88c3('0x3f')]=_[_0x88c3('0x40')](_0x503466['query']);_0x406c1d[_0x88c3('0x41')]=_['intersection'](_0x406c1d[_0x88c3('0x3e')],_0x406c1d['query']);_0x5ca89c[_0x88c3('0x43')]=_['intersection'](_0x406c1d[_0x88c3('0x3e')],qs[_0x88c3('0x44')](_0x503466['query']['fields']));_0x5ca89c[_0x88c3('0x43')]=_0x5ca89c['attributes']['length']?_0x5ca89c[_0x88c3('0x43')]:_0x406c1d['model'];_0x5ca89c[_0x88c3('0x47')]=qs[_0x88c3('0x48')](_0x503466['query']['sort']);_0x5ca89c[_0x88c3('0x49')]=qs['filters'](_[_0x88c3('0x4a')](_0x503466[_0x88c3('0x3f')],_0x406c1d[_0x88c3('0x41')]));if(_0x503466[_0x88c3('0x3f')][_0x88c3('0x4b')]){_0x5ca89c[_0x88c3('0x49')]=_[_0x88c3('0x4c')](_0x5ca89c[_0x88c3('0x49')],{'$or':_['map'](_0x5ca89c[_0x88c3('0x43')],function(_0x384217){var _0x202be1={};_0x202be1[_0x384217]={'$like':'%'+_0x503466['query']['filter']+'%'};return _0x202be1;})});}_0x5ca89c=_[_0x88c3('0x4c')]({},_0x5ca89c,_0x503466[_0x88c3('0x4e')]);return _0x5f2391['getProactiveActions'](_0x5ca89c);}})[_0x88c3('0x20')](function(_0x7839fa){if(_0x7839fa){_0x555666=_0x7839fa[_0x88c3('0x45')];if(!_0x503466[_0x88c3('0x3f')][_0x88c3('0x69')](_0x88c3('0x46'))){_0x5ca89c[_0x88c3('0x2e')]=qs[_0x88c3('0x2e')](_0x503466[_0x88c3('0x3f')][_0x88c3('0x2e')]);_0x5ca89c[_0x88c3('0x2d')]=qs['offset'](_0x503466[_0x88c3('0x3f')][_0x88c3('0x2d')]);}return _0x5f2391[_0x88c3('0x105')](_0x5ca89c);}})['then'](function(_0x2ecf8a){if(_0x2ecf8a){return _0x2ecf8a?{'count':_0x555666,'rows':_0x2ecf8a}:null;}})[_0x88c3('0x20')](respondWithResult(_0x195487,null))['catch'](handleError(_0x195487,null));};exports[_0x88c3('0x120')]=function(_0x19a01f,_0x505046,_0x3d0e85){var _0x1d1cf5=_0x19a01f['query']['online']===_0x88c3('0x121')?_0x88c3('0x122'):_0x88c3('0x123');return db[_0x88c3('0x4f')][_0x88c3('0x56')]({'attributes':['id',_0x1d1cf5],'where':{'id':_0x19a01f[_0x88c3('0x53')]['id']}})[_0x88c3('0x20')](handleEntityNotFound(_0x505046,null))[_0x88c3('0x20')](function(_0x3e3aac){if(_0x3e3aac){var _0x37d534=_0x3e3aac[_0x1d1cf5];var _0x2e2b53=_0x37d534&&_0x37d534[_0x88c3('0x124')]?_0x37d534['items']:[];_0x505046[_0x88c3('0xc6')]({'fromKey':_[_0x88c3('0x75')](_0x37d534['fromKey'])?undefined:_0x37d534[_0x88c3('0x125')],'count':_0x2e2b53['length'],'rows':_0x2e2b53});}})[_0x88c3('0x57')](handleError(_0x505046,null));};exports[_0x88c3('0x126')]=function(_0xebb2c,_0xfacfc1,_0x3cf2d5){var _0x2b19b0={'raw':![],'where':{}};var _0x3d9d71={};var _0x244bf9={'count':0x0,'rows':[]};return db[_0x88c3('0x4f')][_0x88c3('0x64')]({'where':{'id':_0xebb2c[_0x88c3('0x53')]['id']}})[_0x88c3('0x20')](handleEntityNotFound(_0xfacfc1,null))[_0x88c3('0x20')](function(_0x55df86){if(_0x55df86){_0x3d9d71[_0x88c3('0x3e')]=_['keys'](db[_0x88c3('0xd1')]['rawAttributes']);_0x3d9d71[_0x88c3('0x3f')]=_[_0x88c3('0x40')](_0xebb2c[_0x88c3('0x3f')]);_0x3d9d71[_0x88c3('0x41')]=_['intersection'](_0x3d9d71[_0x88c3('0x3e')],_0x3d9d71[_0x88c3('0x3f')]);_0x2b19b0[_0x88c3('0x43')]=_[_0x88c3('0x42')](_0x3d9d71['model'],qs[_0x88c3('0x44')](_0xebb2c[_0x88c3('0x3f')][_0x88c3('0x44')]));_0x2b19b0[_0x88c3('0x43')]=_0x2b19b0[_0x88c3('0x43')]['length']?_0x2b19b0[_0x88c3('0x43')]:_0x3d9d71[_0x88c3('0x3e')];if(!_0xebb2c[_0x88c3('0x3f')]['hasOwnProperty'](_0x88c3('0x46'))){_0x2b19b0[_0x88c3('0x2e')]=qs[_0x88c3('0x2e')](_0xebb2c[_0x88c3('0x3f')][_0x88c3('0x2e')]);_0x2b19b0[_0x88c3('0x2d')]=qs[_0x88c3('0x2d')](_0xebb2c[_0x88c3('0x3f')]['offset']);}_0x2b19b0['order']=qs[_0x88c3('0x48')](_0xebb2c['query']['sort']);_0x2b19b0['where']=qs[_0x88c3('0x41')](_[_0x88c3('0x4a')](_0xebb2c[_0x88c3('0x3f')],_0x3d9d71[_0x88c3('0x41')]));_0x2b19b0[_0x88c3('0x49')][_0x88c3('0x61')]=_0x55df86['id'];if(_0xebb2c[_0x88c3('0x3f')][_0x88c3('0x4b')]){_0x2b19b0[_0x88c3('0x49')]=_[_0x88c3('0x4c')](_0x2b19b0[_0x88c3('0x49')],{'$or':_['map'](_0x2b19b0['attributes'],function(_0x5eeee0){var _0x1a12e9={};_0x1a12e9[_0x5eeee0]={'$like':'%'+_0xebb2c[_0x88c3('0x3f')][_0x88c3('0x4b')]+'%'};return _0x1a12e9;})});}_0x2b19b0=_['merge']({},_0x2b19b0,_0xebb2c[_0x88c3('0x4e')]);return db[_0x88c3('0xd1')][_0x88c3('0x30')]({'where':_0x2b19b0[_0x88c3('0x49')]})[_0x88c3('0x20')](function(_0x27101a){_0x244bf9['count']=_0x27101a;if(_0xebb2c[_0x88c3('0x3f')][_0x88c3('0x50')]){_0x2b19b0['include']=[{'all':!![]}];}else{_0x2b19b0[_0x88c3('0x55')]=[{'model':db[_0x88c3('0x88')],'as':_0x88c3('0xf3'),'required':![]},{'model':db[_0x88c3('0xd8')],'as':_0x88c3('0x127'),'required':![]}];}return db[_0x88c3('0xd1')][_0x88c3('0x51')](_0x2b19b0);})[_0x88c3('0x20')](function(_0x57645d){_0x244bf9[_0x88c3('0x52')]=_0x57645d;return _0x244bf9;});}})['then'](respondWithFilteredResult(_0xfacfc1,_0x2b19b0))[_0x88c3('0x57')](handleError(_0xfacfc1,null));};exports[_0x88c3('0x128')]=function(_0x46306a,_0xceae91,_0x12d518){return db[_0x88c3('0x4f')][_0x88c3('0x56')]({'where':{'id':_0x46306a[_0x88c3('0x53')]['id']}})[_0x88c3('0x20')](handleEntityNotFound(_0xceae91,null))[_0x88c3('0x20')](function(_0x54bbbc){if(_0x54bbbc){return _0x54bbbc[_0x88c3('0x128')](_0x46306a[_0x88c3('0x58')][_0x88c3('0x66')],_['omit'](_0x46306a[_0x88c3('0x58')],['ids','id'])||{})['spread'](function(_0x4230d3){for(var _0x223470=0x0;_0x223470<_0x46306a[_0x88c3('0x58')]['ids'][_0x88c3('0x45')];_0x223470+=0x1){socket['emit'](_0x88c3('0x129'),{'UserId':Number(_0x46306a[_0x88c3('0x58')][_0x88c3('0x66')][_0x223470]),'ChatWebsiteId':Number(_0x46306a['params']['id'])});}return _0x4230d3;});}})[_0x88c3('0x20')](respondWithResult(_0xceae91,null))[_0x88c3('0x57')](handleError(_0xceae91,null));};exports[_0x88c3('0x12a')]=function(_0x318993,_0x498d2f,_0x1865cb){return db[_0x88c3('0x4f')][_0x88c3('0x56')]({'where':{'id':_0x318993[_0x88c3('0x53')]['id']}})[_0x88c3('0x20')](handleEntityNotFound(_0x498d2f,null))['then'](function(_0x3791a8){if(_0x3791a8){return _0x3791a8[_0x88c3('0x12a')](_0x318993[_0x88c3('0x3f')]['ids'])[_0x88c3('0x20')](function(){if(_['isArray'](_0x318993[_0x88c3('0x3f')][_0x88c3('0x66')])){for(var _0x27be44=0x0;_0x27be44<_0x318993[_0x88c3('0x3f')][_0x88c3('0x66')]['length'];_0x27be44+=0x1){socket[_0x88c3('0x12b')](_0x88c3('0x12c'),{'UserId':Number(_0x318993[_0x88c3('0x3f')][_0x88c3('0x66')][_0x27be44]),'ChatWebsiteId':Number(_0x318993[_0x88c3('0x53')]['id'])});}}else{socket['emit'](_0x88c3('0x12c'),{'UserId':Number(_0x318993[_0x88c3('0x3f')]['ids']),'ChatWebsiteId':Number(_0x318993[_0x88c3('0x53')]['id'])});}});}})['then'](respondWithStatusCode(_0x498d2f,null))[_0x88c3('0x57')](handleError(_0x498d2f,null));};exports[_0x88c3('0x12d')]=function(_0x3be22f,_0x76a5df,_0x53c746){var _0x1b87b6={};var _0x4d83e5={};var _0x4b032e;var _0x3f268d;return db['ChatWebsite'][_0x88c3('0x64')]({'where':{'id':_0x3be22f[_0x88c3('0x53')]['id']}})['then'](handleEntityNotFound(_0x76a5df,null))[_0x88c3('0x20')](function(_0x49b9d3){if(_0x49b9d3){_0x4b032e=_0x49b9d3;_0x4d83e5[_0x88c3('0x3e')]=_[_0x88c3('0x40')](db[_0x88c3('0xbd')][_0x88c3('0x3a')]);_0x4d83e5[_0x88c3('0x3f')]=_[_0x88c3('0x40')](_0x3be22f[_0x88c3('0x3f')]);_0x4d83e5[_0x88c3('0x41')]=_[_0x88c3('0x42')](_0x4d83e5[_0x88c3('0x3e')],_0x4d83e5[_0x88c3('0x3f')]);_0x1b87b6[_0x88c3('0x43')]=_[_0x88c3('0x42')](_0x4d83e5[_0x88c3('0x3e')],qs['fields'](_0x3be22f['query'][_0x88c3('0x44')]));_0x1b87b6[_0x88c3('0x43')]=_0x1b87b6[_0x88c3('0x43')][_0x88c3('0x45')]?_0x1b87b6[_0x88c3('0x43')]:_0x4d83e5['model'];_0x1b87b6['order']=qs[_0x88c3('0x48')](_0x3be22f[_0x88c3('0x3f')][_0x88c3('0x48')]);_0x1b87b6[_0x88c3('0x49')]=qs[_0x88c3('0x41')](_[_0x88c3('0x4a')](_0x3be22f[_0x88c3('0x3f')],_0x4d83e5[_0x88c3('0x41')]));if(_0x3be22f[_0x88c3('0x3f')][_0x88c3('0x4b')]){_0x1b87b6[_0x88c3('0x49')]=_[_0x88c3('0x4c')](_0x1b87b6[_0x88c3('0x49')],{'$or':_[_0x88c3('0x39')](_0x1b87b6['attributes'],function(_0x5b5bd1){var _0x503b3d={};_0x503b3d[_0x5b5bd1]={'$like':'%'+_0x3be22f['query'][_0x88c3('0x4b')]+'%'};return _0x503b3d;})});}_0x1b87b6=_['merge']({},_0x1b87b6,_0x3be22f['options']);return _0x4b032e[_0x88c3('0x12d')](_0x1b87b6);}})[_0x88c3('0x20')](function(_0xc9986d){if(_0xc9986d){_0x3f268d=_0xc9986d[_0x88c3('0x45')];if(!_0x3be22f[_0x88c3('0x3f')][_0x88c3('0x69')](_0x88c3('0x46'))){_0x1b87b6['limit']=qs['limit'](_0x3be22f['query']['limit']);_0x1b87b6[_0x88c3('0x2d')]=qs[_0x88c3('0x2d')](_0x3be22f[_0x88c3('0x3f')]['offset']);}return _0x4b032e[_0x88c3('0x12d')](_0x1b87b6);}})['then'](function(_0x28d8c8){if(_0x28d8c8){return _0x28d8c8?{'count':_0x3f268d,'rows':_0x28d8c8}:null;}})['then'](respondWithResult(_0x76a5df,null))['catch'](handleError(_0x76a5df,null));};