Built motion from commit 00bf23f6.|2.6.16
[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 _0x34cb=['ContactId','interaction','contact','messageId','created','push','close','unmanaged','ChatMessage','AttachmentId','User','UserId','unshift','waitForTheAssignedAgent','*,*,*,*','forcedOwnership','startRouting','Start','EventManager','offline','files','mapKeyOffline','mapKeyOffline\x20invalid,\x20please\x20use\x20one\x20of\x20these:\x20','MailAccount','findOrCreate','spread','readFileSync','server/files/templates/chatOfflineMessage.ejs','utf8','render','toPairs','ChatOfflineMessage','fromString','mimetype','server','attachments','offline-chat','basename','openNewInteraction','transaction','Attachment','bulkCreate','Smtp','CloudProvider','getSmtpOptions','SendMail','sendMail','\x22%s\x22\x20<%s>','email','forwardOfflineAddress','originalname','subjectOffline','toPairsIn','offlineMessageSubject','Chat','MailAccountId','NotifyMailAccount','remove','Could\x20not\x20remove\x20attachment\x20file','addInteraction','omit','getInteractions','Contact','Tag','Tags','color','tag','getSnippet','timezone','iftime\x20%s,%s','interval','iftime\x20%s','true','[%s][INTERVAL][%s]\x20%s\x20%s\x20(%s)','ONLINE','No\x20timezone','inspect','Interval','Intervals','getProactiveActions','../../config/license/util','getLicense','virtual','custom','chatLicenseExceeded','some','server/files/chat/iframe.ejs','address','origin','3.1.0','x-real-ip','connection','remoteAddress','replace','alignment','verticalAlignment','labelText','textColor','color_button','backgroundColor','hideWhenOffline','IntervalId','addApplications','sequelize','Transaction','ISOLATION_LEVELS','READ_COMMITTED','findAndCountAll','finally','json','getApplications','addProactiveActions','ChatProactiveAction','getFields','online','false','onlineForm','items','fromKey','getOfflineMessages','Attachments','addAgents','emit','userChatWebsite:save','removeAgents','userChatWebsite:remove','getAgents','mustache','path','ejs','fs-extra','lodash','querystring','../../components/parsers/qs','../../config/logger','api','../../config/environment','url','redis','defaults','localhost','socket.io-emitter','./chatWebsite.socket','html-to-text','jayson/promise','client','http','request','then','ChatWebsite,\x20%s,\x20%s','ChatWebsite,\x20%s,\x20%s,\x20%s','stringify','error','message','info','request\x20sent','sendStatus','status','end','offset','undefined','limit','count','set','Content-Range','update','destroy','get','stack','name','send','Pause','mandatoryDispositionPause','ChatWebsite','fieldName','type','key','model','query','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','sort','where','pick','filter','merge','map','options','includeAll','include','findAll','rows','catch','params','keys','rawAttributes','find','create','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','userProfileId','autoAssociation','UserProfileResource','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','describe','addDisposition','ChatWebsiteId','Disposition','getDispositions','findOne','order','removeDispositions','ids','addAnswer','CannedAnswer','removeAnswers','addLogo','sitepic','file','filename','addAvatar','customerAvatar','addSystemAvatar','systemAvatar','getLogo','join','isNil','existsSync','root','server/files/images/logos/','download','getAvatar','server/files/images/avatars/default_avatar.png','agentAvatar','server/files/images/avatars/','server/files/images/avatars/customer_avatar.png','showCustomerAvatar','getSystemAvatar','notify','user-agent-parser','setUA','headers','user-agent','getResult','CmContact','ValidationError','no\x20available\x20attributes','difference','updatedAt','createdAt','CompanyId','ListId','from','Sequelize','from\x20is\x20mandatory','body\x20is\x20mandatory\x20and\x20not\x20empty','mapKey\x20is\x20mandatory,\x20please\x20use\x20one\x20of\x20these:\x20','includes','mapKey\x20invalid,\x20please\x20use\x20one\x20of\x20these:\x20','CmList','Contacts','DESC','ChatApplication','Applications','List','account','applications','list','orderBy','priority','asc','mapKey','customerIp','cf-connecting-ip','x-forwarded-for','first','split','firstName','lastName','x-real-port','referer','browser','version','format','unknown','%s\x20%s','device','vendor','%s\x20%s\x20%s','threadId','ChatInteraction','externalUrl'];(function(_0x53af79,_0x45274e){var _0x4d827b=function(_0x543d29){while(--_0x543d29){_0x53af79['push'](_0x53af79['shift']());}};_0x4d827b(++_0x45274e);}(_0x34cb,0x1aa));var _0xb34c=function(_0x3af2a5,_0x2ca3f9){_0x3af2a5=_0x3af2a5-0x0;var _0x43c05a=_0x34cb[_0x3af2a5];return _0x43c05a;};'use strict';var BPromise=require('bluebird');var Mustache=require(_0xb34c('0x0'));var util=require('util');var path=require(_0xb34c('0x1'));var ejs=require(_0xb34c('0x2'));var fs=require('fs');var fs_extra=require(_0xb34c('0x3'));var _=require(_0xb34c('0x4'));var querystring=require(_0xb34c('0x5'));var Redis=require('ioredis');var qs=require(_0xb34c('0x6'));var logger=require(_0xb34c('0x7'))(_0xb34c('0x8'));var config=require(_0xb34c('0x9'));var url=require(_0xb34c('0xa'));var db=require('../../mysqldb')['db'];config[_0xb34c('0xb')]=_[_0xb34c('0xc')](config[_0xb34c('0xb')],{'host':_0xb34c('0xd'),'port':0x18eb});var socket=require(_0xb34c('0xe'))(new Redis(config[_0xb34c('0xb')]));require(_0xb34c('0xf'))['register'](socket);var htmlToText=require(_0xb34c('0x10'));var jayson=require(_0xb34c('0x11'));var client=jayson[_0xb34c('0x12')][_0xb34c('0x13')]({'port':0x232c});var client9002=jayson['client'][_0xb34c('0x13')]({'port':0x232a});var client9003=jayson[_0xb34c('0x12')]['http']({'port':0x232b});var client9001=jayson[_0xb34c('0x12')]['http']({'port':0x2329});function respondWithRpcPromise(_0xabc229,_0x9cd9bf,_0x139bd3,_0x40b71c){return new BPromise(function(_0xc2d7c7,_0xe3c0e4){var _0x27dd76=_0x40b71c||client;return _0x27dd76[_0xb34c('0x14')](_0xabc229,_0x139bd3)[_0xb34c('0x15')](function(_0x3b3acd){logger['info'](_0xb34c('0x16'),_0x9cd9bf,'request\x20sent');logger['debug'](_0xb34c('0x17'),_0x9cd9bf,'request\x20sent',JSON[_0xb34c('0x18')](_0x3b3acd));if(_0x3b3acd[_0xb34c('0x19')]){if(_0x3b3acd['error']['code']===0x1f4){logger['error'](_0xb34c('0x16'),_0x9cd9bf,_0x3b3acd[_0xb34c('0x19')][_0xb34c('0x1a')]);return _0xe3c0e4(_0x3b3acd[_0xb34c('0x19')][_0xb34c('0x1a')]);}logger[_0xb34c('0x19')]('ChatWebsite,\x20%s,\x20%s',_0x9cd9bf,_0x3b3acd[_0xb34c('0x19')][_0xb34c('0x1a')]);return _0xc2d7c7(_0x3b3acd[_0xb34c('0x19')]['message']);}else{logger[_0xb34c('0x1b')](_0xb34c('0x16'),_0x9cd9bf,_0xb34c('0x1c'));_0xc2d7c7(_0x3b3acd['result']['message']);}})['catch'](function(_0x2631c0){logger[_0xb34c('0x19')]('ChatWebsite,\x20%s,\x20%s',_0x9cd9bf,_0x2631c0);_0xe3c0e4(_0x2631c0);});});}function respondWithStatusCode(_0x588010,_0x53c687){_0x53c687=_0x53c687||0xcc;return function(_0x262d88){if(_0x262d88){return _0x588010[_0xb34c('0x1d')](_0x53c687);}return _0x588010[_0xb34c('0x1e')](_0x53c687)[_0xb34c('0x1f')]();};}function respondWithResult(_0x488a54,_0x192bdd){_0x192bdd=_0x192bdd||0xc8;return function(_0x17d7b6){if(_0x17d7b6){return _0x488a54[_0xb34c('0x1e')](_0x192bdd)['json'](_0x17d7b6);}};}function respondWithFilteredResult(_0x152f74,_0x2f9db7){return function(_0x286cea){if(_0x286cea){var _0xa2e90d=typeof _0x2f9db7[_0xb34c('0x20')]===_0xb34c('0x21')&&typeof _0x2f9db7[_0xb34c('0x22')]===_0xb34c('0x21');var _0x59649f=_0x286cea[_0xb34c('0x23')];var _0x5c769f=_0xa2e90d?0x0:_0x2f9db7[_0xb34c('0x20')];var _0x28ddf6=_0xa2e90d?_0x286cea['count']:_0x2f9db7[_0xb34c('0x20')]+_0x2f9db7[_0xb34c('0x22')];var _0xb392f9;if(_0x28ddf6>=_0x59649f){_0x28ddf6=_0x59649f;_0xb392f9=0xc8;}else{_0xb392f9=0xce;}_0x152f74['status'](_0xb392f9);return _0x152f74[_0xb34c('0x24')](_0xb34c('0x25'),_0x5c769f+'-'+_0x28ddf6+'/'+_0x59649f)['json'](_0x286cea);}return null;};}function saveUpdates(_0xdbe791){return function(_0x2d0b58){if(_0x2d0b58){return _0x2d0b58[_0xb34c('0x26')](_0xdbe791)[_0xb34c('0x15')](function(_0x172364){return _0x172364;});}return null;};}function removeEntity(_0x351020){return function(_0x3c8f1d){if(_0x3c8f1d){return _0x3c8f1d[_0xb34c('0x27')]()[_0xb34c('0x15')](function(){var _0x435bc7=_0x3c8f1d[_0xb34c('0x28')]({'plain':!![]});var _0x51a0e2='ChatWebsites';return db['UserProfileResource'][_0xb34c('0x27')]({'where':{'type':_0x51a0e2,'resourceId':_0x435bc7['id']}})[_0xb34c('0x15')](function(){return _0x3c8f1d;});})[_0xb34c('0x15')](function(){_0x351020[_0xb34c('0x1e')](0xcc)[_0xb34c('0x1f')]();});}};}function handleEntityNotFound(_0x39d38e){return function(_0x2e9b2e){if(!_0x2e9b2e){_0x39d38e[_0xb34c('0x1d')](0x194);}return _0x2e9b2e;};}function handleError(_0x1dbd2e,_0x5b39c4){_0x5b39c4=_0x5b39c4||0x1f4;return function(_0x523c66){logger[_0xb34c('0x19')](_0x523c66[_0xb34c('0x29')]);if(_0x523c66[_0xb34c('0x2a')]){delete _0x523c66[_0xb34c('0x2a')];}_0x1dbd2e[_0xb34c('0x1e')](_0x5b39c4)[_0xb34c('0x2b')](_0x523c66);};}exports['index']=function(_0x1df379,_0x4270f7){var _0x166861={'include':[{'model':db[_0xb34c('0x2c')],'as':_0xb34c('0x2d')}]},_0x400198={},_0x266252={'count':0x0,'rows':[]};var _0x2c8327=_['map'](db[_0xb34c('0x2e')]['rawAttributes'],function(_0x304e04){return{'name':_0x304e04[_0xb34c('0x2f')],'type':_0x304e04[_0xb34c('0x30')][_0xb34c('0x31')]};});_0x400198[_0xb34c('0x32')]=_['map'](_0x2c8327,_0xb34c('0x2a'));_0x400198[_0xb34c('0x33')]=_['keys'](_0x1df379[_0xb34c('0x33')]);_0x400198[_0xb34c('0x34')]=_[_0xb34c('0x35')](_0x400198['model'],_0x400198[_0xb34c('0x33')]);_0x166861[_0xb34c('0x36')]=_[_0xb34c('0x35')](_0x400198[_0xb34c('0x32')],qs[_0xb34c('0x37')](_0x1df379['query'][_0xb34c('0x37')]));_0x166861[_0xb34c('0x36')]=_0x166861[_0xb34c('0x36')][_0xb34c('0x38')]?_0x166861[_0xb34c('0x36')]:_0x400198[_0xb34c('0x32')];if(!_0x1df379[_0xb34c('0x33')][_0xb34c('0x39')](_0xb34c('0x3a'))){_0x166861[_0xb34c('0x22')]=qs[_0xb34c('0x22')](_0x1df379[_0xb34c('0x33')][_0xb34c('0x22')]);_0x166861[_0xb34c('0x20')]=qs[_0xb34c('0x20')](_0x1df379[_0xb34c('0x33')][_0xb34c('0x20')]);}_0x166861['order']=qs[_0xb34c('0x3b')](_0x1df379[_0xb34c('0x33')][_0xb34c('0x3b')]);_0x166861[_0xb34c('0x3c')]=qs[_0xb34c('0x34')](_[_0xb34c('0x3d')](_0x1df379[_0xb34c('0x33')],_0x400198[_0xb34c('0x34')]),_0x2c8327);if(_0x1df379[_0xb34c('0x33')][_0xb34c('0x3e')]){_0x166861['where']=_[_0xb34c('0x3f')](_0x166861[_0xb34c('0x3c')],{'$or':_[_0xb34c('0x40')](_0x2c8327,function(_0x5c1895){if(_0x5c1895[_0xb34c('0x30')]!=='VIRTUAL'){var _0x400a09={};_0x400a09[_0x5c1895[_0xb34c('0x2a')]]={'$like':'%'+_0x1df379[_0xb34c('0x33')][_0xb34c('0x3e')]+'%'};return _0x400a09;}})});}_0x166861=_[_0xb34c('0x3f')]({},_0x166861,_0x1df379[_0xb34c('0x41')]);var _0x10796d={'where':_0x166861[_0xb34c('0x3c')]};return db['ChatWebsite'][_0xb34c('0x23')](_0x10796d)[_0xb34c('0x15')](function(_0x224e91){_0x266252[_0xb34c('0x23')]=_0x224e91;if(_0x1df379[_0xb34c('0x33')][_0xb34c('0x42')]){_0x166861[_0xb34c('0x43')]=[{'all':!![]}];}return db[_0xb34c('0x2e')][_0xb34c('0x44')](_0x166861);})[_0xb34c('0x15')](function(_0x3e1b68){_0x266252[_0xb34c('0x45')]=_0x3e1b68;return _0x266252;})[_0xb34c('0x15')](respondWithFilteredResult(_0x4270f7,_0x166861))[_0xb34c('0x46')](handleError(_0x4270f7,null));};exports['show']=function(_0x1827ac,_0x2c355a){var _0x165e92={'raw':![],'where':{'id':_0x1827ac[_0xb34c('0x47')]['id']},'include':[{'model':db[_0xb34c('0x2c')],'as':'mandatoryDispositionPause'}]},_0x32927b={};_0x32927b[_0xb34c('0x32')]=_[_0xb34c('0x48')](db['ChatWebsite'][_0xb34c('0x49')]);_0x32927b[_0xb34c('0x33')]=_[_0xb34c('0x48')](_0x1827ac[_0xb34c('0x33')]);_0x32927b[_0xb34c('0x34')]=_['intersection'](_0x32927b[_0xb34c('0x32')],_0x32927b[_0xb34c('0x33')]);_0x165e92['attributes']=_[_0xb34c('0x35')](_0x32927b[_0xb34c('0x32')],qs['fields'](_0x1827ac[_0xb34c('0x33')][_0xb34c('0x37')]));_0x165e92[_0xb34c('0x36')]=_0x165e92['attributes'][_0xb34c('0x38')]?_0x165e92[_0xb34c('0x36')]:_0x32927b[_0xb34c('0x32')];if(_0x1827ac[_0xb34c('0x33')][_0xb34c('0x42')]){_0x165e92['include']=[{'all':!![]}];}_0x165e92=_['merge']({},_0x165e92,_0x1827ac['options']);return db['ChatWebsite'][_0xb34c('0x4a')](_0x165e92)[_0xb34c('0x15')](handleEntityNotFound(_0x2c355a,null))[_0xb34c('0x15')](respondWithResult(_0x2c355a,null))['catch'](handleError(_0x2c355a,null));};exports[_0xb34c('0x4b')]=function(_0xc9992,_0x1e60ab){return db['ChatWebsite'][_0xb34c('0x4b')](_0xc9992[_0xb34c('0x4c')],{})['then'](function(_0x4aff8e){var _0x33f433=_0xc9992[_0xb34c('0x4d')][_0xb34c('0x28')]({'plain':!![]});if(!_0x33f433)throw new Error(_0xb34c('0x4e'));if(_0x33f433[_0xb34c('0x4f')]==='user'){var _0x2803a1=_0x4aff8e[_0xb34c('0x28')]({'plain':!![]});var _0x1a0b01='ChatWebsites';return db['UserProfileSection'][_0xb34c('0x4a')]({'where':{'name':_0x1a0b01,'userProfileId':_0x33f433[_0xb34c('0x50')]},'raw':!![]})[_0xb34c('0x15')](function(_0x5b66c1){if(_0x5b66c1&&_0x5b66c1[_0xb34c('0x51')]===0x0){return db[_0xb34c('0x52')][_0xb34c('0x4b')]({'name':_0x2803a1['name'],'resourceId':_0x2803a1['id'],'type':_0x5b66c1[_0xb34c('0x2a')],'sectionId':_0x5b66c1['id']},{})[_0xb34c('0x15')](function(){return _0x4aff8e;});}else{return _0x4aff8e;}})[_0xb34c('0x46')](function(_0x4aba45){logger[_0xb34c('0x19')](_0xb34c('0x53'),_0x4aba45);throw _0x4aba45;});}return _0x4aff8e;})[_0xb34c('0x15')](respondWithResult(_0x1e60ab,0xc9))['catch'](handleError(_0x1e60ab,null));};exports[_0xb34c('0x26')]=function(_0x346a77,_0x2fb7c1){if(_0x346a77[_0xb34c('0x4c')]['id']){delete _0x346a77[_0xb34c('0x4c')]['id'];}return db[_0xb34c('0x2e')][_0xb34c('0x4a')]({'where':{'id':_0x346a77[_0xb34c('0x47')]['id']},'include':[{'model':db[_0xb34c('0x2c')],'as':_0xb34c('0x2d')}]})[_0xb34c('0x15')](handleEntityNotFound(_0x2fb7c1,null))[_0xb34c('0x15')](saveUpdates(_0x346a77[_0xb34c('0x4c')],null))['then'](respondWithResult(_0x2fb7c1,null))[_0xb34c('0x46')](handleError(_0x2fb7c1,null));};exports['destroy']=function(_0x29677f,_0x12412d){return db[_0xb34c('0x2e')][_0xb34c('0x4a')]({'where':{'id':_0x29677f[_0xb34c('0x47')]['id']}})[_0xb34c('0x15')](handleEntityNotFound(_0x12412d,null))[_0xb34c('0x15')](removeEntity(_0x12412d,null))[_0xb34c('0x46')](handleError(_0x12412d,null));};exports[_0xb34c('0x54')]=function(_0x27df85,_0x3dea40){return db[_0xb34c('0x2e')][_0xb34c('0x54')]()[_0xb34c('0x15')](respondWithResult(_0x3dea40,null))['catch'](handleError(_0x3dea40,null));};exports[_0xb34c('0x55')]=function(_0x475b7a,_0x49b5bf){if(_0x475b7a[_0xb34c('0x4c')]['id']){delete _0x475b7a['body']['id'];}return db[_0xb34c('0x2e')][_0xb34c('0x4a')]({'where':{'id':_0x475b7a[_0xb34c('0x47')]['id']}})['then'](handleEntityNotFound(_0x49b5bf,null))['then'](function(_0xc1bab5){if(_0xc1bab5){_0x475b7a['body'][_0xb34c('0x56')]=_0xc1bab5['id'];return db[_0xb34c('0x57')][_0xb34c('0x4b')](_0x475b7a[_0xb34c('0x4c')]);}})['then'](respondWithResult(_0x49b5bf,null))[_0xb34c('0x46')](handleError(_0x49b5bf,null));};exports[_0xb34c('0x58')]=function(_0x20ae6b,_0x23d7fa){var _0x5ebacd={'raw':![],'where':{}};var _0x266ebf={};var _0x2f5ef0={'count':0x0,'rows':[]};return db[_0xb34c('0x2e')][_0xb34c('0x59')]({'where':{'id':_0x20ae6b['params']['id']}})[_0xb34c('0x15')](handleEntityNotFound(_0x23d7fa,null))['then'](function(_0x234e72){if(_0x234e72){_0x266ebf[_0xb34c('0x32')]=_[_0xb34c('0x48')](db[_0xb34c('0x57')]['rawAttributes']);_0x266ebf[_0xb34c('0x33')]=_['keys'](_0x20ae6b[_0xb34c('0x33')]);_0x266ebf[_0xb34c('0x34')]=_[_0xb34c('0x35')](_0x266ebf[_0xb34c('0x32')],_0x266ebf[_0xb34c('0x33')]);_0x5ebacd[_0xb34c('0x36')]=_[_0xb34c('0x35')](_0x266ebf['model'],qs[_0xb34c('0x37')](_0x20ae6b[_0xb34c('0x33')][_0xb34c('0x37')]));_0x5ebacd['attributes']=_0x5ebacd[_0xb34c('0x36')][_0xb34c('0x38')]?_0x5ebacd['attributes']:_0x266ebf[_0xb34c('0x32')];if(!_0x20ae6b[_0xb34c('0x33')]['hasOwnProperty'](_0xb34c('0x3a'))){_0x5ebacd['limit']=qs[_0xb34c('0x22')](_0x20ae6b[_0xb34c('0x33')][_0xb34c('0x22')]);_0x5ebacd[_0xb34c('0x20')]=qs['offset'](_0x20ae6b['query'][_0xb34c('0x20')]);}_0x5ebacd[_0xb34c('0x5a')]=qs[_0xb34c('0x3b')](_0x20ae6b[_0xb34c('0x33')][_0xb34c('0x3b')]);_0x5ebacd[_0xb34c('0x3c')]=qs[_0xb34c('0x34')](_['pick'](_0x20ae6b['query'],_0x266ebf[_0xb34c('0x34')]));_0x5ebacd[_0xb34c('0x3c')][_0xb34c('0x56')]=_0x234e72['id'];if(_0x20ae6b[_0xb34c('0x33')][_0xb34c('0x3e')]){_0x5ebacd[_0xb34c('0x3c')]=_[_0xb34c('0x3f')](_0x5ebacd['where'],{'$or':_[_0xb34c('0x40')](_0x5ebacd[_0xb34c('0x36')],function(_0x318a0b){var _0x4ec3b3={};_0x4ec3b3[_0x318a0b]={'$like':'%'+_0x20ae6b['query']['filter']+'%'};return _0x4ec3b3;})});}_0x5ebacd=_[_0xb34c('0x3f')]({},_0x5ebacd,_0x20ae6b[_0xb34c('0x41')]);return db[_0xb34c('0x57')][_0xb34c('0x23')]({'where':_0x5ebacd[_0xb34c('0x3c')]})[_0xb34c('0x15')](function(_0x32df89){_0x2f5ef0[_0xb34c('0x23')]=_0x32df89;if(_0x20ae6b[_0xb34c('0x33')][_0xb34c('0x42')]){_0x5ebacd[_0xb34c('0x43')]=[{'all':!![]}];}return db['Disposition'][_0xb34c('0x44')](_0x5ebacd);})[_0xb34c('0x15')](function(_0x576ff6){_0x2f5ef0[_0xb34c('0x45')]=_0x576ff6;return _0x2f5ef0;});}})[_0xb34c('0x15')](respondWithFilteredResult(_0x23d7fa,_0x5ebacd))[_0xb34c('0x46')](handleError(_0x23d7fa,null));};exports['removeDispositions']=function(_0x1f4039,_0x666022){return db[_0xb34c('0x2e')][_0xb34c('0x4a')]({'where':{'id':_0x1f4039['params']['id']}})['then'](handleEntityNotFound(_0x666022,null))[_0xb34c('0x15')](function(_0x2392de){if(_0x2392de){return _0x2392de[_0xb34c('0x5b')](_0x1f4039['query'][_0xb34c('0x5c')]);}})[_0xb34c('0x15')](respondWithStatusCode(_0x666022,null))[_0xb34c('0x46')](handleError(_0x666022,null));};exports[_0xb34c('0x5d')]=function(_0x56a374,_0x4ad259){if(_0x56a374[_0xb34c('0x4c')]['id']){delete _0x56a374[_0xb34c('0x4c')]['id'];}return db['ChatWebsite'][_0xb34c('0x4a')]({'where':{'id':_0x56a374[_0xb34c('0x47')]['id']}})[_0xb34c('0x15')](handleEntityNotFound(_0x4ad259,null))[_0xb34c('0x15')](function(_0x4e9119){if(_0x4e9119){_0x56a374[_0xb34c('0x4c')][_0xb34c('0x56')]=_0x4e9119['id'];return db[_0xb34c('0x5e')][_0xb34c('0x4b')](_0x56a374[_0xb34c('0x4c')]);}})['then'](respondWithResult(_0x4ad259,null))[_0xb34c('0x46')](handleError(_0x4ad259,null));};exports['getAnswers']=function(_0xebf721,_0x3fd097){var _0xea1dd4={'raw':![],'where':{}};var _0x3d12a8={};var _0x208afb={'count':0x0,'rows':[]};return db[_0xb34c('0x2e')]['findOne']({'where':{'id':_0xebf721[_0xb34c('0x47')]['id']}})[_0xb34c('0x15')](handleEntityNotFound(_0x3fd097,null))[_0xb34c('0x15')](function(_0x4d6129){if(_0x4d6129){_0x3d12a8[_0xb34c('0x32')]=_['keys'](db[_0xb34c('0x5e')][_0xb34c('0x49')]);_0x3d12a8[_0xb34c('0x33')]=_[_0xb34c('0x48')](_0xebf721[_0xb34c('0x33')]);_0x3d12a8[_0xb34c('0x34')]=_['intersection'](_0x3d12a8[_0xb34c('0x32')],_0x3d12a8[_0xb34c('0x33')]);_0xea1dd4[_0xb34c('0x36')]=_[_0xb34c('0x35')](_0x3d12a8[_0xb34c('0x32')],qs[_0xb34c('0x37')](_0xebf721[_0xb34c('0x33')]['fields']));_0xea1dd4['attributes']=_0xea1dd4[_0xb34c('0x36')]['length']?_0xea1dd4[_0xb34c('0x36')]:_0x3d12a8[_0xb34c('0x32')];if(!_0xebf721['query'][_0xb34c('0x39')](_0xb34c('0x3a'))){_0xea1dd4['limit']=qs[_0xb34c('0x22')](_0xebf721['query']['limit']);_0xea1dd4[_0xb34c('0x20')]=qs[_0xb34c('0x20')](_0xebf721[_0xb34c('0x33')][_0xb34c('0x20')]);}_0xea1dd4[_0xb34c('0x5a')]=qs[_0xb34c('0x3b')](_0xebf721[_0xb34c('0x33')]['sort']);_0xea1dd4[_0xb34c('0x3c')]=qs[_0xb34c('0x34')](_['pick'](_0xebf721[_0xb34c('0x33')],_0x3d12a8[_0xb34c('0x34')]));_0xea1dd4[_0xb34c('0x3c')]['ChatWebsiteId']=_0x4d6129['id'];if(_0xebf721[_0xb34c('0x33')][_0xb34c('0x3e')]){_0xea1dd4['where']=_[_0xb34c('0x3f')](_0xea1dd4[_0xb34c('0x3c')],{'$or':_[_0xb34c('0x40')](_0xea1dd4[_0xb34c('0x36')],function(_0x10603a){var _0x1f57fe={};_0x1f57fe[_0x10603a]={'$like':'%'+_0xebf721[_0xb34c('0x33')]['filter']+'%'};return _0x1f57fe;})});}_0xea1dd4=_[_0xb34c('0x3f')]({},_0xea1dd4,_0xebf721[_0xb34c('0x41')]);return db[_0xb34c('0x5e')][_0xb34c('0x23')]({'where':_0xea1dd4[_0xb34c('0x3c')]})['then'](function(_0x2368db){_0x208afb[_0xb34c('0x23')]=_0x2368db;if(_0xebf721[_0xb34c('0x33')]['includeAll']){_0xea1dd4[_0xb34c('0x43')]=[{'all':!![]}];}return db[_0xb34c('0x5e')][_0xb34c('0x44')](_0xea1dd4);})[_0xb34c('0x15')](function(_0x11d3df){_0x208afb['rows']=_0x11d3df;return _0x208afb;});}})['then'](respondWithFilteredResult(_0x3fd097,_0xea1dd4))['catch'](handleError(_0x3fd097,null));};exports[_0xb34c('0x5f')]=function(_0x596d1d,_0x40e42b){return db[_0xb34c('0x2e')][_0xb34c('0x4a')]({'where':{'id':_0x596d1d['params']['id']}})['then'](handleEntityNotFound(_0x40e42b,null))[_0xb34c('0x15')](function(_0x33840a){if(_0x33840a){return _0x33840a[_0xb34c('0x5f')](_0x596d1d['query'][_0xb34c('0x5c')]);}})['then'](respondWithStatusCode(_0x40e42b,null))[_0xb34c('0x46')](handleError(_0x40e42b,null));};exports[_0xb34c('0x60')]=function(_0x34f086,_0x3d78aa){_0x34f086[_0xb34c('0x4c')][_0xb34c('0x61')]=_0x34f086[_0xb34c('0x62')][_0xb34c('0x63')];return db['ChatWebsite'][_0xb34c('0x4a')]({'where':{'id':_0x34f086[_0xb34c('0x47')]['id']}})[_0xb34c('0x15')](handleEntityNotFound(_0x3d78aa,null))[_0xb34c('0x15')](saveUpdates(_0x34f086[_0xb34c('0x4c')],null))[_0xb34c('0x15')](respondWithResult(_0x3d78aa,null))[_0xb34c('0x46')](handleError(_0x3d78aa,null));};exports[_0xb34c('0x64')]=function(_0x13d3ee,_0x4d49fb){_0x13d3ee[_0xb34c('0x4c')]['agentAvatar']=_0x13d3ee[_0xb34c('0x62')]['filename'];return db[_0xb34c('0x2e')][_0xb34c('0x4a')]({'where':{'id':_0x13d3ee['params']['id']}})[_0xb34c('0x15')](handleEntityNotFound(_0x4d49fb,null))['then'](saveUpdates(_0x13d3ee[_0xb34c('0x4c')],null))[_0xb34c('0x15')](respondWithResult(_0x4d49fb,null))[_0xb34c('0x46')](handleError(_0x4d49fb,null));};exports['addCustomerAvatar']=function(_0x35b21c,_0x2ae871){_0x35b21c[_0xb34c('0x4c')][_0xb34c('0x65')]=_0x35b21c[_0xb34c('0x62')][_0xb34c('0x63')];return db[_0xb34c('0x2e')]['find']({'where':{'id':_0x35b21c[_0xb34c('0x47')]['id']}})['then'](handleEntityNotFound(_0x2ae871,null))[_0xb34c('0x15')](saveUpdates(_0x35b21c[_0xb34c('0x4c')],null))[_0xb34c('0x15')](respondWithResult(_0x2ae871,null))[_0xb34c('0x46')](handleError(_0x2ae871,null));};exports[_0xb34c('0x66')]=function(_0x201b4d,_0x2afa71){_0x201b4d[_0xb34c('0x4c')][_0xb34c('0x67')]=_0x201b4d[_0xb34c('0x62')][_0xb34c('0x63')];return db['ChatWebsite'][_0xb34c('0x4a')]({'where':{'id':_0x201b4d['params']['id']}})[_0xb34c('0x15')](handleEntityNotFound(_0x2afa71,null))['then'](saveUpdates(_0x201b4d[_0xb34c('0x4c')],null))[_0xb34c('0x15')](respondWithResult(_0x2afa71,null))[_0xb34c('0x46')](handleError(_0x2afa71,null));};exports[_0xb34c('0x68')]=function(_0x34a26d,_0x31afac){var _0x20632a=path[_0xb34c('0x69')](config['root'],'server/files/images/logos/default_logo.svg');var _0x426e9d={'where':{'id':_0x34a26d[_0xb34c('0x47')]['id']},'attributes':['id',_0xb34c('0x61')],'raw':!![]};var _0xd1cf8f=![];return require('../../config/license/util')['getLicense']()['then'](function(_0x360765){if(_0x360765){_0xd1cf8f=_0x360765['custom'];}})['then'](function(){return db['ChatWebsite']['find'](_0x426e9d);})[_0xb34c('0x15')](handleEntityNotFound(_0x31afac,null))[_0xb34c('0x15')](function(_0x244015){if(_0x244015){if(!_[_0xb34c('0x6a')](_0x244015[_0xb34c('0x61')])){if(fs[_0xb34c('0x6b')](path['join'](config[_0xb34c('0x6c')],_0xb34c('0x6d'),_0x244015['sitepic']))&&_0xd1cf8f){_0x20632a=path[_0xb34c('0x69')](config[_0xb34c('0x6c')],'server/files/images/logos/',_0x244015[_0xb34c('0x61')]);}}return _0x31afac[_0xb34c('0x6e')](_0x20632a);}})[_0xb34c('0x46')](handleError(_0x31afac,null));};exports[_0xb34c('0x6f')]=function(_0x34a36b,_0x2f7035){var _0x29e095=path['join'](config[_0xb34c('0x6c')],_0xb34c('0x70'));var _0x3dc1f7={'where':{'id':_0x34a36b[_0xb34c('0x47')]['id']},'attributes':['id',_0xb34c('0x71')],'raw':!![]};return db[_0xb34c('0x2e')][_0xb34c('0x4a')](_0x3dc1f7)[_0xb34c('0x15')](handleEntityNotFound(_0x2f7035,null))['then'](function(_0x2120f8){if(_0x2120f8){if(!_['isNil'](_0x2120f8[_0xb34c('0x71')])){if(fs[_0xb34c('0x6b')](path['join'](config[_0xb34c('0x6c')],_0xb34c('0x72'),_0x2120f8[_0xb34c('0x71')]))){_0x29e095=path['join'](config['root'],_0xb34c('0x72'),_0x2120f8[_0xb34c('0x71')]);}}return _0x2f7035[_0xb34c('0x6e')](_0x29e095);}})['catch'](handleError(_0x2f7035,null));};exports['getCustomerAvatar']=function(_0xd936e1,_0x38978a){var _0x11b09b=path['join'](config[_0xb34c('0x6c')],_0xb34c('0x73'));var _0x1b7c0d={'where':{'id':_0xd936e1['params']['id']},'attributes':['id','customerAvatar',_0xb34c('0x74')],'raw':!![]};return db[_0xb34c('0x2e')][_0xb34c('0x4a')](_0x1b7c0d)[_0xb34c('0x15')](handleEntityNotFound(_0x38978a,null))[_0xb34c('0x15')](function(_0x1acee9){if(_0x1acee9){if(!_[_0xb34c('0x6a')](_0x1acee9[_0xb34c('0x65')])){if(fs[_0xb34c('0x6b')](path[_0xb34c('0x69')](config['root'],_0xb34c('0x72'),_0x1acee9[_0xb34c('0x65')]))&&_0x1acee9[_0xb34c('0x74')]){_0x11b09b=path[_0xb34c('0x69')](config[_0xb34c('0x6c')],_0xb34c('0x72'),_0x1acee9[_0xb34c('0x65')]);}}return _0x38978a[_0xb34c('0x6e')](_0x11b09b);}})[_0xb34c('0x46')](handleError(_0x38978a,null));};exports[_0xb34c('0x75')]=function(_0x78691,_0x4509f1){var _0x126e60=path[_0xb34c('0x69')](config['root'],'server/files/images/avatars/system_avatar.png');var _0x47c3f2={'where':{'id':_0x78691[_0xb34c('0x47')]['id']},'attributes':['id',_0xb34c('0x67')],'raw':!![]};return db[_0xb34c('0x2e')][_0xb34c('0x4a')](_0x47c3f2)['then'](handleEntityNotFound(_0x4509f1,null))[_0xb34c('0x15')](function(_0x31b6aa){if(_0x31b6aa){if(!_[_0xb34c('0x6a')](_0x31b6aa[_0xb34c('0x67')])){if(fs[_0xb34c('0x6b')](path[_0xb34c('0x69')](config[_0xb34c('0x6c')],'server/files/images/avatars/',_0x31b6aa[_0xb34c('0x67')]))){_0x126e60=path[_0xb34c('0x69')](config[_0xb34c('0x6c')],'server/files/images/avatars/',_0x31b6aa[_0xb34c('0x67')]);}}return _0x4509f1[_0xb34c('0x6e')](_0x126e60);}})[_0xb34c('0x46')](handleError(_0x4509f1,null));};exports[_0xb34c('0x76')]=function(_0x57f4de,_0x5e2683){var _0x39ada3=require(_0xb34c('0x77'));var _0x3a6350=new _0x39ada3();var _0x110292=_0x3a6350[_0xb34c('0x78')](_0x57f4de[_0xb34c('0x79')][_0xb34c('0x7a')])[_0xb34c('0x7b')]();var _0x178aee={'body':_0x57f4de['body'],'channel':'chat'};var _0x4075d9=[];var _0x31e9a6=[];var _0xc29103={};var _0x1da3d0=![];return db[_0xb34c('0x7c')][_0xb34c('0x54')]()[_0xb34c('0x15')](function(_0x4cf713){if(!_0x4cf713){throw new db['Sequelize'][(_0xb34c('0x7d'))](_0xb34c('0x7e'));}_0x4075d9=_[_0xb34c('0x7f')](_[_0xb34c('0x48')](_0x4cf713),['createdAt',_0xb34c('0x80')]);_0x31e9a6=_[_0xb34c('0x7f')](_[_0xb34c('0x48')](_0x4cf713),[_0xb34c('0x81'),_0xb34c('0x80'),_0xb34c('0x82'),_0xb34c('0x83')]);if(_0x57f4de['body']['id']){delete _0x57f4de[_0xb34c('0x4c')]['id'];}if(_['isNil'](_0x57f4de['body'][_0xb34c('0x84')])){throw new db[(_0xb34c('0x85'))][(_0xb34c('0x7d'))](_0xb34c('0x86'));}if(_['isNil'](_0x57f4de[_0xb34c('0x4c')][_0xb34c('0x4c')])||_0x57f4de[_0xb34c('0x4c')][_0xb34c('0x4c')]===''){throw new db['Sequelize'][(_0xb34c('0x7d'))](_0xb34c('0x87'));}if(_[_0xb34c('0x6a')](_0x57f4de['body']['mapKey'])){throw new db['Sequelize'][(_0xb34c('0x7d'))](_0xb34c('0x88')+_0x31e9a6);}if(!_[_0xb34c('0x89')](_0x31e9a6,_0x57f4de[_0xb34c('0x4c')]['mapKey'])){throw new db['Sequelize'][(_0xb34c('0x7d'))](_0xb34c('0x8a')+_0x31e9a6);}_0xc29103[_0x57f4de[_0xb34c('0x4c')]['mapKey']]=_0x57f4de[_0xb34c('0x4c')]['from'];})[_0xb34c('0x15')](function(){return db[_0xb34c('0x2e')][_0xb34c('0x4a')]({'where':{'id':_0x57f4de[_0xb34c('0x47')]['id']},'include':[{'model':db[_0xb34c('0x8b')],'as':'List','include':[{'model':db[_0xb34c('0x7c')],'as':_0xb34c('0x8c'),'where':_0xc29103,'limit':0x1,'order':[['updatedAt',_0xb34c('0x8d')]]}]},{'model':db[_0xb34c('0x8e')],'as':_0xb34c('0x8f')}]});})['then'](handleEntityNotFound(_0x5e2683,null))[_0xb34c('0x15')](function(_0x30b045){if(_0x30b045&&_0x30b045[_0xb34c('0x90')]){_0x178aee[_0xb34c('0x91')]=_0x30b045;_0x178aee[_0xb34c('0x92')]=_0x30b045[_0xb34c('0x8f')];_0x178aee[_0xb34c('0x93')]=_0x30b045[_0xb34c('0x90')];_0x178aee[_0xb34c('0x92')]=_[_0xb34c('0x94')](_0x178aee[_0xb34c('0x92')],[_0xb34c('0x95')],[_0xb34c('0x96')]);if(_0x178aee[_0xb34c('0x91')][_0xb34c('0x8f')]){delete _0x178aee[_0xb34c('0x91')][_0xb34c('0x8f')];}if(_0x178aee['account'][_0xb34c('0x90')]&&_0x178aee[_0xb34c('0x91')]['List'][_0xb34c('0x8c')][_0xb34c('0x38')]){return _0x178aee[_0xb34c('0x91')]['List']['Contacts'][0x0];}var _0x816cea=_['defaults'](_0x57f4de['body'],{'firstName':_0x57f4de[_0xb34c('0x4c')][_0xb34c('0x84')],'ListId':_0x30b045[_0xb34c('0x83')]});_0x816cea[_0x57f4de[_0xb34c('0x4c')][_0xb34c('0x97')]]=_0x57f4de[_0xb34c('0x4c')][_0xb34c('0x84')];return db['CmContact'][_0xb34c('0x4b')](_0x816cea,{'fields':_0x4075d9,'raw':!![]});}})[_0xb34c('0x15')](handleEntityNotFound(_0x5e2683,null))['then'](function(_0x153b2a){_0x178aee['contact']=_0x153b2a;var _0x39a680=_0x57f4de['body'][_0xb34c('0x98')];if(_0x57f4de[_0xb34c('0x79')][_0xb34c('0x99')]){_0x39a680=_0x57f4de[_0xb34c('0x79')][_0xb34c('0x99')];}else if(_0x57f4de['headers'][_0xb34c('0x9a')]){_0x39a680=_[_0xb34c('0x9b')](_0x57f4de[_0xb34c('0x79')][_0xb34c('0x9a')][_0xb34c('0x9c')](','));}if(_0x153b2a){var _0x3a69e4={'ContactId':_0x153b2a['id'],'ChatWebsiteId':_0x57f4de[_0xb34c('0x47')]['id'],'from':(_0x153b2a[_0xb34c('0x9d')]||'')+'\x20'+(_0x153b2a[_0xb34c('0x9e')]||''),'customerIp':_0x39a680,'customerPort':_0x57f4de[_0xb34c('0x79')][_0xb34c('0x9f')]?_0x57f4de['headers']['x-real-port']:null,'referer':_0x57f4de[_0xb34c('0x4c')][_0xb34c('0xa0')],'browserName':_0x110292[_0xb34c('0xa1')]['name']&&_0x110292[_0xb34c('0xa1')][_0xb34c('0xa2')]?util[_0xb34c('0xa3')]('%s\x20%s',_0x110292['browser'][_0xb34c('0x2a')],_0x110292[_0xb34c('0xa1')]['version']):_0xb34c('0xa4'),'browserVersion':_0x110292['browser'][_0xb34c('0xa2')]||_0xb34c('0xa4'),'osName':util[_0xb34c('0xa3')](_0xb34c('0xa5'),_0x110292['os'][_0xb34c('0x2a')],_0x110292['os']['version']),'osVersion':_0x110292['os'][_0xb34c('0xa2')],'deviceModel':_0x110292[_0xb34c('0xa6')][_0xb34c('0x32')]&&_0x110292[_0xb34c('0xa6')][_0xb34c('0xa7')]?util[_0xb34c('0xa3')](_0xb34c('0xa8'),_0x110292[_0xb34c('0xa6')][_0xb34c('0x32')],_0x110292[_0xb34c('0xa6')]['vendor'],_0x110292[_0xb34c('0xa6')][_0xb34c('0x30')]):null,'deviceVendor':_0x110292['device']['vendor'],'deviceType':_0x110292[_0xb34c('0xa6')]['type'],'formData':JSON[_0xb34c('0x18')](_0x57f4de[_0xb34c('0x4c')])};var _0x264cfa={'ChatWebsiteId':_0x57f4de[_0xb34c('0x47')]['id'],'closed':![]};if(_0x57f4de['body'][_0xb34c('0xa9')]){_0x264cfa[_0xb34c('0xa9')]=_0x57f4de[_0xb34c('0x4c')]['threadId'];return db[_0xb34c('0xaa')][_0xb34c('0x4a')]({'where':_0x264cfa})[_0xb34c('0x15')](function(_0x4bfd57){if(_0x4bfd57){return[_0x4bfd57,![]];}_0x3a69e4[_0xb34c('0xa9')]=_0x57f4de[_0xb34c('0x4c')][_0xb34c('0xa9')];_0x3a69e4[_0xb34c('0xab')]=_0x57f4de[_0xb34c('0x4c')]['externalUrl'];return db[_0xb34c('0xaa')][_0xb34c('0x4b')](_0x3a69e4)[_0xb34c('0x15')](function(_0x41d5dc){return[_0x41d5dc,!![]];});});}_0x264cfa[_0xb34c('0xac')]=_0x153b2a['id'];if(_0x57f4de[_0xb34c('0x4c')][_0xb34c('0xad')]&&_0x57f4de[_0xb34c('0x4c')]['interaction']['id']){_0x264cfa['id']=_0x57f4de[_0xb34c('0x4c')][_0xb34c('0xad')]['id'];return db[_0xb34c('0xaa')][_0xb34c('0x4a')]({'where':_0x264cfa})[_0xb34c('0x15')](function(_0x1035da){if(_0x1035da){return[_0x1035da,![]];}return db['ChatInteraction'][_0xb34c('0x4b')](_0x3a69e4)[_0xb34c('0x15')](function(_0x281132){return[_0x281132,!![]];});});}return db[_0xb34c('0xaa')][_0xb34c('0x4b')](_0x3a69e4)[_0xb34c('0x15')](function(_0x5b1304){return[_0x5b1304,!![]];});}})['spread'](function(_0x22e261,_0x3d82f2){if(_0x22e261){_0x1da3d0=_0x3d82f2;if(!_0x3d82f2){var _0x2bae9a={'from':(_0x178aee[_0xb34c('0xae')][_0xb34c('0x9d')]||'')+'\x20'+(_0x178aee[_0xb34c('0xae')][_0xb34c('0x9e')]||'')};if(_0x57f4de[_0xb34c('0x4c')][_0xb34c('0xa9')]&&_0x57f4de['body'][_0xb34c('0xaf')]&&_0x57f4de['body']['threadId']!=_0x57f4de[_0xb34c('0x4c')][_0xb34c('0xaf')]){_0x2bae9a['threadId']=_0x57f4de[_0xb34c('0x4c')][_0xb34c('0xaf')];}return _0x22e261[_0xb34c('0x26')](_0x2bae9a);}else{return _0x22e261;}}})[_0xb34c('0x15')](function(_0x355cda){_0x178aee[_0xb34c('0xad')]=_0x355cda['get']({'plain':!![]});_0x178aee[_0xb34c('0xad')][_0xb34c('0xb0')]=_0x1da3d0;if(_0x178aee['interaction'][_0xb34c('0xb0')]){if(_0x178aee[_0xb34c('0x91')]['autoclose']){_0x178aee[_0xb34c('0x92')][_0xb34c('0xb1')]({'id':0x0,'priority':_0x178aee[_0xb34c('0x92')][_0xb34c('0x38')]+0x1,'app':_0xb34c('0xb2'),'appdata':_0xb34c('0xb3'),'interval':'*,*,*,*'});}}return db[_0xb34c('0xb4')]['create']({'body':_0x57f4de[_0xb34c('0x4c')][_0xb34c('0x4c')],'ChatWebsiteId':_0x57f4de['params']['id'],'ChatInteractionId':_0x355cda['id'],'direction':'in','ContactId':_0x178aee[_0xb34c('0xae')]['id'],'AttachmentId':_0x57f4de[_0xb34c('0x4c')][_0xb34c('0xb5')]});})[_0xb34c('0x15')](function(_0x187ace){_0x178aee[_0xb34c('0x1a')]=_0x187ace;if(_0x178aee[_0xb34c('0xad')]['UserId']){return db[_0xb34c('0xb6')][_0xb34c('0x4a')]({'attributes':['id',_0xb34c('0x2a')],'where':{'id':_0x178aee['interaction'][_0xb34c('0xb7')]}})[_0xb34c('0x15')](function(_0x1897b9){if(_0x1897b9){_0x178aee['applications'][_0xb34c('0xb8')]({'id':0x0,'priority':0x0,'app':'agent','appdata':_0x1897b9[_0xb34c('0x2a')]+','+(_0x178aee['account'][_0xb34c('0xb9')]||0xa),'interval':_0xb34c('0xba')});_0x178aee[_0xb34c('0xbb')]=!![];}return respondWithRpcPromise('Start',_0xb34c('0xbc'),_0x178aee);});}return respondWithRpcPromise(_0xb34c('0xbd'),_0xb34c('0xbc'),_0x178aee);})['then'](function(_0x190213){respondWithRpcPromise(_0xb34c('0xbe'),_0xb34c('0xbe'),{'event':'notify','message':_0x190213},client9002);return _0x190213;})[_0xb34c('0x15')](respondWithResult(_0x5e2683,null))[_0xb34c('0x46')](handleError(_0x5e2683,null));};exports[_0xb34c('0xbf')]=function(_0x578261,_0x322903){var _0x5a1aa7,_0x40a17b,_0x8f6790;var _0x2c764a=[];var _0x3e13c8={};var _0x48eb8f=_0x578261[_0xb34c('0xc0')]||[];var _0x567ee2=[];var _0x20d719;return db[_0xb34c('0x7c')][_0xb34c('0x54')]()[_0xb34c('0x15')](function(_0x2f7219){if(!_0x2f7219){throw new db[(_0xb34c('0x85'))][(_0xb34c('0x7d'))](_0xb34c('0x7e'));}_0x2c764a=_['difference'](_[_0xb34c('0x48')](_0x2f7219),[_0xb34c('0x81'),_0xb34c('0x80'),_0xb34c('0x82'),_0xb34c('0x83')]);if(_0x578261[_0xb34c('0x4c')]['id']){delete _0x578261[_0xb34c('0x4c')]['id'];}if(_[_0xb34c('0x6a')](_0x578261[_0xb34c('0x4c')][_0xb34c('0x84')])){throw _0x322903[_0xb34c('0x1e')](0x1f4)[_0xb34c('0x2b')](new db[(_0xb34c('0x85'))]['ValidationError'](_0xb34c('0x86')));}if(_[_0xb34c('0x6a')](_0x578261['body'][_0xb34c('0x4c')])||_0x578261[_0xb34c('0x4c')][_0xb34c('0x4c')]===''){throw _0x322903[_0xb34c('0x1e')](0x1f4)[_0xb34c('0x2b')](new db['Sequelize'][(_0xb34c('0x7d'))](_0xb34c('0x87')));}if(_[_0xb34c('0x6a')](_0x578261[_0xb34c('0x4c')]['mapKeyOffline'])){throw _0x322903[_0xb34c('0x1e')](0x1f4)[_0xb34c('0x2b')](new db[(_0xb34c('0x85'))][(_0xb34c('0x7d'))]('mapKeyOffline\x20is\x20mandatory,\x20please\x20use\x20one\x20of\x20these:\x20'+_0x2c764a));}if(!_[_0xb34c('0x89')](_0x2c764a,_0x578261[_0xb34c('0x4c')][_0xb34c('0xc1')])){throw _0x322903[_0xb34c('0x1e')](0x1f4)[_0xb34c('0x2b')](new db[(_0xb34c('0x85'))][(_0xb34c('0x7d'))](_0xb34c('0xc2')+_0x2c764a));}_0x3e13c8[_0x578261[_0xb34c('0x4c')][_0xb34c('0xc1')]]=_0x578261[_0xb34c('0x4c')][_0xb34c('0x84')];})[_0xb34c('0x15')](function(){return db[_0xb34c('0x2e')][_0xb34c('0x4a')]({'where':{'id':_0x578261['params']['id']},'include':[{'model':db[_0xb34c('0x8b')],'as':_0xb34c('0x90')},{'model':db['MailAccount'],'as':_0xb34c('0xc3')}]});})[_0xb34c('0x15')](handleEntityNotFound(_0x322903,null))[_0xb34c('0x15')](function(_0x406777){if(_0x406777&&_0x406777[_0xb34c('0x90')]){_0x40a17b=_0x406777;var _0x294340=_[_0xb34c('0xc')](_0x578261[_0xb34c('0x4c')],{'firstName':_0x578261[_0xb34c('0x4c')][_0xb34c('0x84')],'phone':_0x578261[_0xb34c('0x4c')]['from'],'ListId':_0x406777[_0xb34c('0x83')]});_0x294340[_0x578261['body'][_0xb34c('0xc1')]]=_0x578261['body'][_0xb34c('0x84')];return db[_0xb34c('0x7c')][_0xb34c('0xc4')]({'where':_0x3e13c8,'defaults':_0x294340});}})[_0xb34c('0xc5')](function(_0x4c42c9){if(_0x4c42c9){_0x8f6790=_0x4c42c9;var _0x48ea4b=fs[_0xb34c('0xc6')](path[_0xb34c('0x69')](config[_0xb34c('0x6c')],_0xb34c('0xc7')),_0xb34c('0xc8'));var _0x992bc=ejs[_0xb34c('0xc9')](_0x48ea4b,{'body':_[_0xb34c('0xca')](_0x578261[_0xb34c('0x4c')][_0xb34c('0x4c')]),'bodyTitle':_0x40a17b['offlineMessageBody']});return db[_0xb34c('0xcb')][_0xb34c('0x4b')]({'body':_0x992bc,'plainBody':htmlToText[_0xb34c('0xcc')](_0x992bc),'ContactId':_0x4c42c9['id'],'ChatWebsiteId':_0x40a17b['id']});}})[_0xb34c('0x15')](function(_0x587e95){_0x20d719=_0x587e95;if(_0x48eb8f[_0xb34c('0x38')]){var _0x2874ae=_0x48eb8f[_0xb34c('0x40')](function(_0x222b8b){return{'name':_0x222b8b['originalname'],'basename':_0x222b8b[_0xb34c('0x63')],'type':_0x222b8b[_0xb34c('0xcd')],'ChatOfflineMessageId':_0x587e95['id']};});_0x567ee2=_0x2874ae[_0xb34c('0x40')](_0x24e328=>{var _0x172c38={'filename':_0x24e328[_0xb34c('0x2a')],'path':path[_0xb34c('0x69')](config[_0xb34c('0x6c')],_0xb34c('0xce'),'files',_0xb34c('0xcf'),_0xb34c('0xd0'),_0x24e328[_0xb34c('0xd1')])};return _0x172c38;});if(!_0x40a17b[_0xb34c('0xd2')]){return db['sequelize'][_0xb34c('0xd3')](function(_0x409ba4){return db[_0xb34c('0xd4')][_0xb34c('0xd5')](_0x2874ae,{'transaction':_0x409ba4});});}}})['then'](function(){if(_0x20d719){_0x5a1aa7=_0x20d719;return db[_0xb34c('0xc3')]['findOne']({'where':{'service':!![]},'include':[{'model':db['MailServerOut'],'as':_0xb34c('0xd6'),'raw':!![],'include':[{'model':db[_0xb34c('0xd7')],'as':_0xb34c('0xd7'),'raw':!![]}]}]});}})['then'](function(_0x33c6ba){if(_0x33c6ba&&_0x33c6ba['Smtp']&&_0x40a17b['forwardOffline']&&_0x40a17b['forwardOfflineAddress']){var _0x169a79=_0x33c6ba[_0xb34c('0xd8')]();return respondWithRpcPromise(_0xb34c('0xd9'),_0xb34c('0xda'),{'account':_0x169a79,'message':{'from':util[_0xb34c('0xa3')](_0xb34c('0xdb'),_0x33c6ba['name'],_0x33c6ba[_0xb34c('0xdc')]||_0x33c6ba[_0xb34c('0xd6')]['user']),'to':_0x40a17b[_0xb34c('0xdd')],'subject':_0x40a17b['offlineMessageSubject'],'html':_0x5a1aa7['body'],'attachments':_0x567ee2}},client9003)[_0xb34c('0x15')](function(){return _0x5a1aa7;})[_0xb34c('0x46')](function(_0x1abac1){logger[_0xb34c('0x19')](_0x1abac1);});}})[_0xb34c('0x15')](function(){if(_0x40a17b&&_0x40a17b['openNewInteraction']&&_0x40a17b['MailAccountId']){var _0xb1fab1=[];if(_0x48eb8f[_0xb34c('0x38')]){_0xb1fab1=_0x48eb8f[_0xb34c('0x40')](function(_0x4f9225){return{'name':_0x4f9225[_0xb34c('0xde')],'basename':_0x4f9225[_0xb34c('0x63')],'type':_0x4f9225['mimetype'],'ChatOfflineMessageId':_0x20d719['id']};});}var _0x75d987;if(!_[_0xb34c('0x6a')](_0x40a17b[_0xb34c('0xdf')])){var _0x265397=_['map'](_0x578261[_0xb34c('0x4c')],function(_0x3f191b){return _0x3f191b;});var _0x500084=_[_0xb34c('0xe0')](_0x265397)[0x0];var _0x463d00=_['mapValues'](_0x500084,function(_0xc1f34a){return _0xc1f34a;});_0x75d987=_0x463d00[0x1][_0x40a17b[_0xb34c('0xdf')]];}var _0x1c6ab5={'from':_0x8f6790[_0xb34c('0xdc')],'firstName':_0x8f6790[_0xb34c('0x9d')],'lastName':_0x8f6790[_0xb34c('0x9e')],'mapKey':'email','message':{'from':_0x8f6790[_0xb34c('0xdc')],'to':_0x40a17b[_0xb34c('0xc3')][_0xb34c('0xdc')],'cc':'','subject':_[_0xb34c('0x6a')](_0x75d987)?_0x40a17b[_0xb34c('0xe1')]:_0x75d987,'messageId':'','sentAt':new Date(),'attach':_0xb1fab1[_0xb34c('0x38')],'attachments':_0xb1fab1,'originChannel':_0xb34c('0xe2'),'ChatWebsiteId':_0x40a17b['id'],'ChatOfflineMessageId':_0x5a1aa7['id'],'originTo':_0x40a17b[_0xb34c('0xc3')][_0xb34c('0xdc')]},'body':_0x5a1aa7['body']};var _0x17c9e0={'account':{'id':_0x40a17b[_0xb34c('0xe3')]},'body':_0x1c6ab5,'log':'NotifyMailAccount'};return respondWithRpcPromise(_0xb34c('0xe4'),'notifyMail',_0x17c9e0,client9001)[_0xb34c('0x15')](function(){return _0x5a1aa7;})[_0xb34c('0x46')](function(_0xd56af1){logger[_0xb34c('0x19')](_0xd56af1);});}return;})[_0xb34c('0x15')](function(){if(_0x5a1aa7){return _0x5a1aa7;}})[_0xb34c('0x15')](respondWithResult(_0x322903,null))[_0xb34c('0x46')](function(_0x1e2709){logger[_0xb34c('0x19')]('catch',_0x1e2709);for(var _0x1d72c7 of _0x48eb8f){var _0x22c59c=path[_0xb34c('0x69')](config[_0xb34c('0x6c')],'server',_0xb34c('0xc0'),_0xb34c('0xcf'),'offline-chat',_0x1d72c7[_0xb34c('0x63')]);fs_extra[_0xb34c('0xe5')](_0x22c59c)[_0xb34c('0x46')](function(_0x468d30){logger[_0xb34c('0x19')](_0xb34c('0xe6'),_0x22c59c,_0x468d30);});}});};exports['addInteraction']=function(_0x78cfb4,_0x12772e){return db['ChatInteraction'][_0xb34c('0x4a')]({'where':{'id':_0x78cfb4['params']['id']}})['then'](handleEntityNotFound(_0x12772e,null))[_0xb34c('0x15')](function(_0x1ffbd5){if(_0x1ffbd5){return _0x1ffbd5[_0xb34c('0xe7')](_0x78cfb4['body'][_0xb34c('0x5c')],_[_0xb34c('0xe8')](_0x78cfb4[_0xb34c('0x4c')],[_0xb34c('0x5c'),'id'])||{});}})[_0xb34c('0x15')](respondWithResult(_0x12772e,null))[_0xb34c('0x46')](handleError(_0x12772e,null));};exports[_0xb34c('0xe9')]=function(_0xed5cd,_0x585010){var _0x84bf34={'raw':![],'where':{}};var _0x434aef={};var _0x32deb9={'count':0x0,'rows':[]};return db[_0xb34c('0x2e')]['findOne']({'where':{'id':_0xed5cd[_0xb34c('0x47')]['id']}})[_0xb34c('0x15')](handleEntityNotFound(_0x585010,null))[_0xb34c('0x15')](function(_0x38955d){if(_0x38955d){_0x434aef[_0xb34c('0x32')]=_['keys'](db['ChatInteraction'][_0xb34c('0x49')]);_0x434aef['query']=_[_0xb34c('0x48')](_0xed5cd[_0xb34c('0x33')]);_0x434aef[_0xb34c('0x34')]=_['intersection'](_0x434aef['model'],_0x434aef['query']);_0x84bf34[_0xb34c('0x36')]=_[_0xb34c('0x35')](_0x434aef[_0xb34c('0x32')],qs[_0xb34c('0x37')](_0xed5cd[_0xb34c('0x33')][_0xb34c('0x37')]));_0x84bf34[_0xb34c('0x36')]=_0x84bf34[_0xb34c('0x36')][_0xb34c('0x38')]?_0x84bf34[_0xb34c('0x36')]:_0x434aef['model'];if(!_0xed5cd['query'][_0xb34c('0x39')](_0xb34c('0x3a'))){_0x84bf34['limit']=qs[_0xb34c('0x22')](_0xed5cd[_0xb34c('0x33')][_0xb34c('0x22')]);_0x84bf34[_0xb34c('0x20')]=qs['offset'](_0xed5cd[_0xb34c('0x33')][_0xb34c('0x20')]);}_0x84bf34['order']=qs[_0xb34c('0x3b')](_0xed5cd[_0xb34c('0x33')][_0xb34c('0x3b')]);_0x84bf34[_0xb34c('0x3c')]=qs[_0xb34c('0x34')](_['pick'](_0xed5cd[_0xb34c('0x33')],_0x434aef[_0xb34c('0x34')]));_0x84bf34[_0xb34c('0x3c')]['ChatWebsiteId']=_0x38955d['id'];if(_0xed5cd['query']['filter']){_0x84bf34[_0xb34c('0x3c')]=_[_0xb34c('0x3f')](_0x84bf34[_0xb34c('0x3c')],{'$or':_[_0xb34c('0x40')](_0x84bf34[_0xb34c('0x36')],function(_0x54dab2){var _0x46c6b5={};_0x46c6b5[_0x54dab2]={'$like':'%'+_0xed5cd[_0xb34c('0x33')][_0xb34c('0x3e')]+'%'};return _0x46c6b5;})});}_0x84bf34=_[_0xb34c('0x3f')]({},_0x84bf34,_0xed5cd[_0xb34c('0x41')]);return db['ChatInteraction'][_0xb34c('0x23')]({'where':_0x84bf34['where']})['then'](function(_0x59b761){_0x32deb9[_0xb34c('0x23')]=_0x59b761;if(_0xed5cd[_0xb34c('0x33')][_0xb34c('0x42')]){_0x84bf34[_0xb34c('0x43')]=[{'model':db[_0xb34c('0x7c')],'as':_0xb34c('0xea'),'required':![]},{'model':db[_0xb34c('0xb6')],'as':'Owner','attributes':[_0xb34c('0x2a'),'fullname','internal'],'required':![]},{'model':db[_0xb34c('0xeb')],'as':_0xb34c('0xec'),'attributes':['id',_0xb34c('0x2a'),_0xb34c('0xed')],'where':_0xed5cd[_0xb34c('0x33')]['tag']?{'id':_0xed5cd['query'][_0xb34c('0xee')]}:undefined,'required':_0xed5cd['query'][_0xb34c('0xee')]?!![]:![]}];}return db[_0xb34c('0xaa')]['findAll'](_0x84bf34);})[_0xb34c('0x15')](function(_0x506fef){_0x32deb9[_0xb34c('0x45')]=_0x506fef;return _0x32deb9;});}})[_0xb34c('0x15')](respondWithFilteredResult(_0x585010,_0x84bf34))[_0xb34c('0x46')](handleError(_0x585010,null));};function iftimePromise(_0x403365,_0x304188){return respondWithRpcPromise('Command',_0xb34c('0xef'),{'command':_0x304188[_0xb34c('0xf0')]?util[_0xb34c('0xa3')](_0xb34c('0xf1'),_0x403365[_0xb34c('0xf2')],_0x304188[_0xb34c('0xf0')]):util[_0xb34c('0xa3')](_0xb34c('0xf3'),_0x403365[_0xb34c('0xf2')])},client9002)[_0xb34c('0x15')](function(_0x2e06e8){var _0x19ae27=_0x2e06e8&&_0x2e06e8['indexOf'](_0xb34c('0xf4'))>=0x0?!![]:![];logger[_0xb34c('0x1b')](_0xb34c('0xf5'),_0x304188['id'],_0x403365['id'],_0x403365['interval'],_0x19ae27?_0xb34c('0xf6'):'OFFLINE',_0x304188[_0xb34c('0xf0')]?_0x304188[_0xb34c('0xf0')]:_0xb34c('0xf7'));return _0x19ae27;})[_0xb34c('0x46')](function(_0x454f05){logger['error'](_0xb34c('0xf5'),_0x304188['id'],_0x403365['id'],_0x403365[_0xb34c('0xf2')],util[_0xb34c('0xf8')](_0x454f05,{'showHidden':![],'depth':null}),_0x304188[_0xb34c('0xf0')]?_0x304188[_0xb34c('0xf0')]:'No\x20timezone');return![];});}exports[_0xb34c('0xef')]=function(_0x524cf7,_0x5a6a9a){var _0x7e566=0x0;var _0x4d5c92=0x0;var _0x3e7d6f=![];var _0x1a8cae;var _0x1fff20;return db['ChatWebsite'][_0xb34c('0x4a')]({'where':{'id':_0x524cf7[_0xb34c('0x47')]['id']},'include':[{'model':db[_0xb34c('0xf9')],'as':_0xb34c('0xf9'),'include':[{'model':db[_0xb34c('0xf9')],'as':_0xb34c('0xfa'),'attributes':['id',_0xb34c('0xf2')],'raw':!![]}]}]})[_0xb34c('0x15')](handleEntityNotFound(_0x5a6a9a,null))[_0xb34c('0x15')](function(_0x5522b1){if(_0x5522b1){_0x1a8cae=_0x5522b1;return _0x5522b1[_0xb34c('0xfb')]({'raw':!![]});}})[_0xb34c('0x15')](function(_0x64ac6c){if(_0x1a8cae){if(_0x64ac6c){_0x1fff20=_0x64ac6c;}}return require(_0xb34c('0xfc'))[_0xb34c('0xfd')]();})[_0xb34c('0x15')](function(_0x4e0e47){if(_0x4e0e47){_0x4d5c92=_0x4e0e47[_0xb34c('0xfe')];_0x3e7d6f=_0x4e0e47[_0xb34c('0xff')];}})[_0xb34c('0x15')](function(){return db[_0xb34c('0xaa')][_0xb34c('0x23')]({'where':{'closed':![]}});})[_0xb34c('0x15')](function(_0x3e0ebd){_0x7e566=_0x3e0ebd;if(_0x4d5c92&&_0x3e0ebd>_0x4d5c92){return db['License'][_0xb34c('0x59')]({'where':{'id':0x1}})[_0xb34c('0x15')](function(_0x2bc916){if(_0x2bc916){_0x2bc916['increment'](_0xb34c('0x100'));}});}})[_0xb34c('0x15')](function(){if(_0x1a8cae[_0xb34c('0xf9')]&&_0x1a8cae[_0xb34c('0xf9')][_0xb34c('0xfa')]){var _0x3223a3=[];for(var _0x12930e=0x0;_0x12930e<_0x1a8cae[_0xb34c('0xf9')]['Intervals'][_0xb34c('0x38')];_0x12930e++){var _0xabb328=_0x1a8cae[_0xb34c('0xf9')]['Intervals'][_0x12930e]['get']({'plain':!![]});_0x3223a3[_0xb34c('0xb1')](iftimePromise(_0xabb328,_0x1a8cae));}return BPromise['all'](_0x3223a3)['then'](function(_0x266459){return _[_0xb34c('0x101')](_0x266459);});}else{return!![];}})[_0xb34c('0x15')](function(_0x6c9a6e){var _0x2c842c=fs[_0xb34c('0xc6')](path[_0xb34c('0x69')](config['root'],_0xb34c('0x102')),'utf8');var _0x4b5cca=new url['URL'](_0x1a8cae[_0xb34c('0x103')])[_0xb34c('0x104')];var _0x5bbe39=_0xb34c('0x105');var _0x48530f=![];var _0x5d16cf={'chatVersion':_0x5bbe39,'chatWebsiteAddressOrigin':_0x4b5cca,'remote':_0x1a8cae['remote'],'query':querystring[_0xb34c('0x18')](_['merge'](_0x1a8cae[_0xb34c('0x28')]({'plain':!![]}),{'customerIp':_0x524cf7['headers'][_0xb34c('0x9a')]||_0x524cf7[_0xb34c('0x79')][_0xb34c('0x106')]||_0x524cf7[_0xb34c('0x107')][_0xb34c('0x108')]||_0x524cf7['ip'],'referer':_0x524cf7[_0xb34c('0x79')]['referer'],'openedInteractions':_0x7e566,'maxInteractions':_0x4d5c92,'virtual':_0x3e7d6f[_0xb34c('0xfe')],'online':_0x6c9a6e,'custom':_0x3e7d6f}))[_0xb34c('0x109')](/'/g,'\x5c\x27')};_0x5a6a9a[_0xb34c('0x2b')](ejs[_0xb34c('0xc9')](Mustache[_0xb34c('0xc9')](_0x2c842c,_0x5d16cf),{'proactiveActions':_0x1fff20,'alignment':_0x1a8cae[_0xb34c('0x10a')],'verticalAlignment':_0x1a8cae[_0xb34c('0x10b')],'div_color':_0x1a8cae[_0xb34c('0xed')],'labelText':_0x1a8cae[_0xb34c('0x10c')],'text_color':_0x1a8cae[_0xb34c('0x10d')],'text_button_color':_0x1a8cae['textButtonColor'],'button_color':_0x1a8cae[_0xb34c('0x10e')],'background_color':_0x1a8cae[_0xb34c('0x10f')],'hideWhenOffline':_0x1a8cae[_0xb34c('0x110')],'intervalId':_0x1a8cae[_0xb34c('0x111')],'isDevelopment':_0x48530f,'chatVersion':_0x5bbe39}));})[_0xb34c('0x46')](handleError(_0x5a6a9a,null));};exports[_0xb34c('0x112')]=function(_0x5dc89b,_0x4c722b){var _0x578077=_0x5dc89b[_0xb34c('0x47')]['id'];var _0x57ab2a=_0x5dc89b['body'];var _0x21fa45=0xc8;var _0x9abc5a=null;return db[_0xb34c('0x113')][_0xb34c('0xd3')]({'isolationLevel':db[_0xb34c('0x113')][_0xb34c('0x114')][_0xb34c('0x115')][_0xb34c('0x116')]},function(_0x52bf86){return db[_0xb34c('0x2e')][_0xb34c('0x59')]({'where':{'id':_0x578077},'transaction':_0x52bf86})[_0xb34c('0x15')](function(_0x27e411){if(_0x27e411){return db[_0xb34c('0x8e')][_0xb34c('0x27')]({'where':{'ChatWebsiteId':_0x578077},'transaction':_0x52bf86})[_0xb34c('0x15')](function(){var _0x4ceca2=_['map'](_0x57ab2a,function(_0x156513){_0x156513[_0xb34c('0x56')]=_0x578077;return _0x156513;});return db[_0xb34c('0x8e')][_0xb34c('0xd5')](_0x4ceca2,{'transaction':_0x52bf86});});}else{_0x21fa45=0x194;_0x9abc5a=[];}});})[_0xb34c('0x15')](function(){if(_0x21fa45!==0x194){return db[_0xb34c('0x8e')][_0xb34c('0x117')]({'where':{'ChatWebsiteId':_0x578077},'order':_0xb34c('0x95')})[_0xb34c('0x15')](function(_0x16eba6){_0x9abc5a=_0x16eba6;});}})[_0xb34c('0x46')](function(_0x92a937){_0x21fa45=0x1f4;logger[_0xb34c('0x19')](_0x92a937[_0xb34c('0x29')]);if(_0x92a937[_0xb34c('0x2a')]){delete _0x92a937[_0xb34c('0x2a')];}_0x9abc5a=_0x92a937;})[_0xb34c('0x118')](function(){if(_0x9abc5a===null){_0x4c722b[_0xb34c('0x1d')](_0x21fa45);}else{if(_0x21fa45===0x1f4){_0x4c722b['status'](_0x21fa45)[_0xb34c('0x2b')](_0x9abc5a);}else{_0x4c722b[_0xb34c('0x1e')](_0x21fa45)[_0xb34c('0x119')](_0x9abc5a);}}});};exports[_0xb34c('0x11a')]=function(_0x246cc6,_0x2fbeda){var _0x53eaa4={};var _0x1e1a05={};var _0x4d66be;var _0x495bb8;return db[_0xb34c('0x2e')][_0xb34c('0x59')]({'where':{'id':_0x246cc6['params']['id']}})[_0xb34c('0x15')](handleEntityNotFound(_0x2fbeda,null))[_0xb34c('0x15')](function(_0x16d1cc){if(_0x16d1cc){_0x4d66be=_0x16d1cc;_0x1e1a05[_0xb34c('0x32')]=_[_0xb34c('0x48')](db[_0xb34c('0x8e')][_0xb34c('0x49')]);_0x1e1a05[_0xb34c('0x33')]=_['keys'](_0x246cc6[_0xb34c('0x33')]);_0x1e1a05[_0xb34c('0x34')]=_[_0xb34c('0x35')](_0x1e1a05[_0xb34c('0x32')],_0x1e1a05[_0xb34c('0x33')]);_0x53eaa4[_0xb34c('0x36')]=_[_0xb34c('0x35')](_0x1e1a05['model'],qs['fields'](_0x246cc6[_0xb34c('0x33')]['fields']));_0x53eaa4[_0xb34c('0x36')]=_0x53eaa4[_0xb34c('0x36')][_0xb34c('0x38')]?_0x53eaa4['attributes']:_0x1e1a05['model'];_0x53eaa4[_0xb34c('0x5a')]=qs[_0xb34c('0x3b')](_0x246cc6[_0xb34c('0x33')][_0xb34c('0x3b')]);_0x53eaa4[_0xb34c('0x3c')]=qs['filters'](_[_0xb34c('0x3d')](_0x246cc6[_0xb34c('0x33')],_0x1e1a05[_0xb34c('0x34')]));if(_0x246cc6['query'][_0xb34c('0x3e')]){_0x53eaa4[_0xb34c('0x3c')]=_[_0xb34c('0x3f')](_0x53eaa4[_0xb34c('0x3c')],{'$or':_[_0xb34c('0x40')](_0x53eaa4['attributes'],function(_0x20310c){var _0x23bf29={};_0x23bf29[_0x20310c]={'$like':'%'+_0x246cc6['query'][_0xb34c('0x3e')]+'%'};return _0x23bf29;})});}_0x53eaa4=_[_0xb34c('0x3f')]({},_0x53eaa4,_0x246cc6[_0xb34c('0x41')]);return _0x4d66be[_0xb34c('0x11a')](_0x53eaa4);}})['then'](function(_0xebfddb){if(_0xebfddb){_0x495bb8=_0xebfddb[_0xb34c('0x38')];if(!_0x246cc6[_0xb34c('0x33')]['hasOwnProperty']('nolimit')){_0x53eaa4[_0xb34c('0x22')]=qs['limit'](_0x246cc6[_0xb34c('0x33')][_0xb34c('0x22')]);_0x53eaa4[_0xb34c('0x20')]=qs[_0xb34c('0x20')](_0x246cc6[_0xb34c('0x33')][_0xb34c('0x20')]);}return _0x4d66be[_0xb34c('0x11a')](_0x53eaa4);}})['then'](function(_0x346c30){if(_0x346c30){return _0x346c30?{'count':_0x495bb8,'rows':_0x346c30}:null;}})[_0xb34c('0x15')](respondWithResult(_0x2fbeda,null))[_0xb34c('0x46')](handleError(_0x2fbeda,null));};exports['addProactiveActions']=function(_0x202d63,_0x28b1f1){return db['chatProactiveAction']['find']({'where':{'id':_0x202d63[_0xb34c('0x47')]['id']}})[_0xb34c('0x15')](handleEntityNotFound(_0x28b1f1,null))[_0xb34c('0x15')](function(_0x488cf7){if(_0x488cf7){return _0x488cf7[_0xb34c('0x11b')](_0x202d63[_0xb34c('0x4c')][_0xb34c('0x5c')],_[_0xb34c('0xe8')](_0x202d63[_0xb34c('0x4c')],[_0xb34c('0x5c'),'id'])||{});}})[_0xb34c('0x15')](respondWithResult(_0x28b1f1,null))[_0xb34c('0x46')](handleError(_0x28b1f1,null));};exports[_0xb34c('0xfb')]=function(_0x11ca54,_0x3d034e){var _0x4ab98e={};var _0x26cbe8={};var _0xdd3751;var _0x4a5a58;return db['ChatWebsite'][_0xb34c('0x59')]({'where':{'id':_0x11ca54[_0xb34c('0x47')]['id']}})[_0xb34c('0x15')](handleEntityNotFound(_0x3d034e,null))['then'](function(_0xb9debc){if(_0xb9debc){_0xdd3751=_0xb9debc;_0x26cbe8[_0xb34c('0x32')]=_[_0xb34c('0x48')](db[_0xb34c('0x11c')]['rawAttributes']);_0x26cbe8[_0xb34c('0x33')]=_[_0xb34c('0x48')](_0x11ca54[_0xb34c('0x33')]);_0x26cbe8[_0xb34c('0x34')]=_[_0xb34c('0x35')](_0x26cbe8[_0xb34c('0x32')],_0x26cbe8[_0xb34c('0x33')]);_0x4ab98e[_0xb34c('0x36')]=_[_0xb34c('0x35')](_0x26cbe8[_0xb34c('0x32')],qs[_0xb34c('0x37')](_0x11ca54[_0xb34c('0x33')]['fields']));_0x4ab98e['attributes']=_0x4ab98e[_0xb34c('0x36')]['length']?_0x4ab98e[_0xb34c('0x36')]:_0x26cbe8['model'];_0x4ab98e[_0xb34c('0x5a')]=qs[_0xb34c('0x3b')](_0x11ca54['query'][_0xb34c('0x3b')]);_0x4ab98e['where']=qs['filters'](_[_0xb34c('0x3d')](_0x11ca54['query'],_0x26cbe8['filters']));if(_0x11ca54[_0xb34c('0x33')][_0xb34c('0x3e')]){_0x4ab98e['where']=_[_0xb34c('0x3f')](_0x4ab98e['where'],{'$or':_[_0xb34c('0x40')](_0x4ab98e[_0xb34c('0x36')],function(_0x3e7649){var _0x2c677e={};_0x2c677e[_0x3e7649]={'$like':'%'+_0x11ca54[_0xb34c('0x33')][_0xb34c('0x3e')]+'%'};return _0x2c677e;})});}_0x4ab98e=_[_0xb34c('0x3f')]({},_0x4ab98e,_0x11ca54[_0xb34c('0x41')]);return _0xdd3751[_0xb34c('0xfb')](_0x4ab98e);}})[_0xb34c('0x15')](function(_0x39e92f){if(_0x39e92f){_0x4a5a58=_0x39e92f[_0xb34c('0x38')];if(!_0x11ca54[_0xb34c('0x33')][_0xb34c('0x39')]('nolimit')){_0x4ab98e['limit']=qs[_0xb34c('0x22')](_0x11ca54[_0xb34c('0x33')]['limit']);_0x4ab98e[_0xb34c('0x20')]=qs[_0xb34c('0x20')](_0x11ca54['query'][_0xb34c('0x20')]);}return _0xdd3751[_0xb34c('0xfb')](_0x4ab98e);}})['then'](function(_0x3aebd8){if(_0x3aebd8){return _0x3aebd8?{'count':_0x4a5a58,'rows':_0x3aebd8}:null;}})['then'](respondWithResult(_0x3d034e,null))[_0xb34c('0x46')](handleError(_0x3d034e,null));};exports[_0xb34c('0x11d')]=function(_0x3a4a32,_0x1ea941){var _0x3298c3=_0x3a4a32[_0xb34c('0x33')][_0xb34c('0x11e')]===_0xb34c('0x11f')?'offlineForm':_0xb34c('0x120');return db[_0xb34c('0x2e')][_0xb34c('0x4a')]({'attributes':['id',_0x3298c3],'where':{'id':_0x3a4a32[_0xb34c('0x47')]['id']}})[_0xb34c('0x15')](handleEntityNotFound(_0x1ea941,null))[_0xb34c('0x15')](function(_0x1ca769){if(_0x1ca769){var _0x4ed082=_0x1ca769[_0x3298c3];var _0x18a1a4=_0x4ed082&&_0x4ed082[_0xb34c('0x121')]?_0x4ed082[_0xb34c('0x121')]:[];_0x1ea941['send']({'fromKey':_[_0xb34c('0x6a')](_0x4ed082[_0xb34c('0x122')])?undefined:_0x4ed082[_0xb34c('0x122')],'count':_0x18a1a4[_0xb34c('0x38')],'rows':_0x18a1a4});}})[_0xb34c('0x46')](handleError(_0x1ea941,null));};exports[_0xb34c('0x123')]=function(_0xaf80d0,_0x50f2eb){var _0x517f02={'raw':![],'where':{}};var _0x36969d={};var _0x5d8e54={'count':0x0,'rows':[]};return db[_0xb34c('0x2e')][_0xb34c('0x59')]({'where':{'id':_0xaf80d0[_0xb34c('0x47')]['id']}})[_0xb34c('0x15')](handleEntityNotFound(_0x50f2eb,null))['then'](function(_0x41322d){if(_0x41322d){_0x36969d['model']=_[_0xb34c('0x48')](db[_0xb34c('0xcb')][_0xb34c('0x49')]);_0x36969d[_0xb34c('0x33')]=_[_0xb34c('0x48')](_0xaf80d0[_0xb34c('0x33')]);_0x36969d['filters']=_[_0xb34c('0x35')](_0x36969d[_0xb34c('0x32')],_0x36969d[_0xb34c('0x33')]);_0x517f02['attributes']=_[_0xb34c('0x35')](_0x36969d[_0xb34c('0x32')],qs['fields'](_0xaf80d0[_0xb34c('0x33')][_0xb34c('0x37')]));_0x517f02[_0xb34c('0x36')]=_0x517f02[_0xb34c('0x36')][_0xb34c('0x38')]?_0x517f02[_0xb34c('0x36')]:_0x36969d[_0xb34c('0x32')];if(!_0xaf80d0[_0xb34c('0x33')][_0xb34c('0x39')]('nolimit')){_0x517f02[_0xb34c('0x22')]=qs[_0xb34c('0x22')](_0xaf80d0[_0xb34c('0x33')][_0xb34c('0x22')]);_0x517f02[_0xb34c('0x20')]=qs['offset'](_0xaf80d0[_0xb34c('0x33')][_0xb34c('0x20')]);}_0x517f02['order']=qs['sort'](_0xaf80d0['query'][_0xb34c('0x3b')]);_0x517f02[_0xb34c('0x3c')]=qs['filters'](_[_0xb34c('0x3d')](_0xaf80d0[_0xb34c('0x33')],_0x36969d['filters']));_0x517f02[_0xb34c('0x3c')]['ChatWebsiteId']=_0x41322d['id'];if(_0xaf80d0[_0xb34c('0x33')][_0xb34c('0x3e')]){_0x517f02[_0xb34c('0x3c')]=_[_0xb34c('0x3f')](_0x517f02[_0xb34c('0x3c')],{'$or':_['map'](_0x517f02['attributes'],function(_0x2da3a8){var _0x51b371={};_0x51b371[_0x2da3a8]={'$like':'%'+_0xaf80d0[_0xb34c('0x33')][_0xb34c('0x3e')]+'%'};return _0x51b371;})});}_0x517f02=_[_0xb34c('0x3f')]({},_0x517f02,_0xaf80d0[_0xb34c('0x41')]);return db['ChatOfflineMessage'][_0xb34c('0x23')]({'where':_0x517f02[_0xb34c('0x3c')]})[_0xb34c('0x15')](function(_0xf6a351){_0x5d8e54[_0xb34c('0x23')]=_0xf6a351;if(_0xaf80d0[_0xb34c('0x33')][_0xb34c('0x42')]){_0x517f02[_0xb34c('0x43')]=[{'all':!![]}];}else{_0x517f02[_0xb34c('0x43')]=[{'model':db['CmContact'],'as':_0xb34c('0xea'),'required':![]},{'model':db['Attachment'],'as':_0xb34c('0x124'),'required':![]}];}return db[_0xb34c('0xcb')][_0xb34c('0x44')](_0x517f02);})[_0xb34c('0x15')](function(_0x472cd2){_0x5d8e54['rows']=_0x472cd2;return _0x5d8e54;});}})[_0xb34c('0x15')](respondWithFilteredResult(_0x50f2eb,_0x517f02))[_0xb34c('0x46')](handleError(_0x50f2eb,null));};exports[_0xb34c('0x125')]=function(_0x5b80b1,_0x4e1005){return db[_0xb34c('0x2e')][_0xb34c('0x4a')]({'where':{'id':_0x5b80b1[_0xb34c('0x47')]['id']}})[_0xb34c('0x15')](handleEntityNotFound(_0x4e1005,null))[_0xb34c('0x15')](function(_0xf15ff){if(_0xf15ff){return _0xf15ff[_0xb34c('0x125')](_0x5b80b1[_0xb34c('0x4c')][_0xb34c('0x5c')],_[_0xb34c('0xe8')](_0x5b80b1[_0xb34c('0x4c')],[_0xb34c('0x5c'),'id'])||{})[_0xb34c('0xc5')](function(_0x97237c){for(var _0x1e8b65=0x0;_0x1e8b65<_0x5b80b1[_0xb34c('0x4c')]['ids'][_0xb34c('0x38')];_0x1e8b65+=0x1){socket[_0xb34c('0x126')](_0xb34c('0x127'),{'UserId':Number(_0x5b80b1[_0xb34c('0x4c')][_0xb34c('0x5c')][_0x1e8b65]),'ChatWebsiteId':Number(_0x5b80b1[_0xb34c('0x47')]['id'])});}return _0x97237c;});}})['then'](respondWithResult(_0x4e1005,null))['catch'](handleError(_0x4e1005,null));};exports['removeAgents']=function(_0x5e865c,_0x10ae2b){return db[_0xb34c('0x2e')][_0xb34c('0x4a')]({'where':{'id':_0x5e865c[_0xb34c('0x47')]['id']}})['then'](handleEntityNotFound(_0x10ae2b,null))[_0xb34c('0x15')](function(_0x420970){if(_0x420970){return _0x420970[_0xb34c('0x128')](_0x5e865c[_0xb34c('0x33')][_0xb34c('0x5c')])[_0xb34c('0x15')](function(){if(_['isArray'](_0x5e865c[_0xb34c('0x33')]['ids'])){for(var _0x4c90ed=0x0;_0x4c90ed<_0x5e865c['query'][_0xb34c('0x5c')][_0xb34c('0x38')];_0x4c90ed+=0x1){socket['emit'](_0xb34c('0x129'),{'UserId':Number(_0x5e865c['query'][_0xb34c('0x5c')][_0x4c90ed]),'ChatWebsiteId':Number(_0x5e865c[_0xb34c('0x47')]['id'])});}}else{socket[_0xb34c('0x126')](_0xb34c('0x129'),{'UserId':Number(_0x5e865c[_0xb34c('0x33')][_0xb34c('0x5c')]),'ChatWebsiteId':Number(_0x5e865c[_0xb34c('0x47')]['id'])});}});}})['then'](respondWithStatusCode(_0x10ae2b,null))[_0xb34c('0x46')](handleError(_0x10ae2b,null));};exports[_0xb34c('0x12a')]=function(_0x49f6dd,_0x4b12a4){var _0x2da10e={};var _0x204759={};var _0x2e0206;var _0x577d15;return db['ChatWebsite'][_0xb34c('0x59')]({'where':{'id':_0x49f6dd[_0xb34c('0x47')]['id']}})[_0xb34c('0x15')](handleEntityNotFound(_0x4b12a4,null))[_0xb34c('0x15')](function(_0x17dc43){if(_0x17dc43){_0x2e0206=_0x17dc43;_0x204759[_0xb34c('0x32')]=_[_0xb34c('0x48')](db[_0xb34c('0xb6')]['rawAttributes']);_0x204759[_0xb34c('0x33')]=_[_0xb34c('0x48')](_0x49f6dd['query']);_0x204759['filters']=_[_0xb34c('0x35')](_0x204759[_0xb34c('0x32')],_0x204759[_0xb34c('0x33')]);_0x2da10e[_0xb34c('0x36')]=_['intersection'](_0x204759[_0xb34c('0x32')],qs[_0xb34c('0x37')](_0x49f6dd['query'][_0xb34c('0x37')]));_0x2da10e[_0xb34c('0x36')]=_0x2da10e[_0xb34c('0x36')][_0xb34c('0x38')]?_0x2da10e['attributes']:_0x204759['model'];_0x2da10e[_0xb34c('0x5a')]=qs[_0xb34c('0x3b')](_0x49f6dd[_0xb34c('0x33')][_0xb34c('0x3b')]);_0x2da10e[_0xb34c('0x3c')]=qs[_0xb34c('0x34')](_[_0xb34c('0x3d')](_0x49f6dd[_0xb34c('0x33')],_0x204759[_0xb34c('0x34')]));if(_0x49f6dd['query']['filter']){_0x2da10e['where']=_[_0xb34c('0x3f')](_0x2da10e[_0xb34c('0x3c')],{'$or':_['map'](_0x2da10e[_0xb34c('0x36')],function(_0x5cd1f7){var _0x2a1b48={};_0x2a1b48[_0x5cd1f7]={'$like':'%'+_0x49f6dd[_0xb34c('0x33')][_0xb34c('0x3e')]+'%'};return _0x2a1b48;})});}_0x2da10e=_[_0xb34c('0x3f')]({},_0x2da10e,_0x49f6dd[_0xb34c('0x41')]);return _0x2e0206[_0xb34c('0x12a')](_0x2da10e);}})[_0xb34c('0x15')](function(_0x2439a6){if(_0x2439a6){_0x577d15=_0x2439a6['length'];if(!_0x49f6dd[_0xb34c('0x33')]['hasOwnProperty']('nolimit')){_0x2da10e[_0xb34c('0x22')]=qs['limit'](_0x49f6dd[_0xb34c('0x33')]['limit']);_0x2da10e[_0xb34c('0x20')]=qs[_0xb34c('0x20')](_0x49f6dd[_0xb34c('0x33')]['offset']);}return _0x2e0206[_0xb34c('0x12a')](_0x2da10e);}})[_0xb34c('0x15')](function(_0x3d326d){if(_0x3d326d){return _0x3d326d?{'count':_0x577d15,'rows':_0x3d326d}:null;}})[_0xb34c('0x15')](respondWithResult(_0x4b12a4,null))[_0xb34c('0x46')](handleError(_0x4b12a4,null));};