Built motion from commit 87cd5f02.|2.5.48
[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 _0xf14b=['user','get','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','body','params','describe','addDisposition','ChatWebsiteId','Disposition','getDispositions','findOne','hasOwnProperty','order','filter','include','findAll','rows','removeDispositions','ids','addAnswer','CannedAnswer','pick','removeAnswers','addLogo','sitepic','file','filename','addAvatar','addCustomerAvatar','addSystemAvatar','getLogo','join','root','../../config/license/util','custom','isNil','existsSync','server/files/images/logos/','download','server/files/images/avatars/default_avatar.png','agentAvatar','server/files/images/avatars/','getCustomerAvatar','server/files/images/avatars/customer_avatar.png','customerAvatar','showCustomerAvatar','getSystemAvatar','server/files/images/avatars/system_avatar.png','systemAvatar','user-agent-parser','setUA','headers','user-agent','getResult','chat','CmContact','Sequelize','ValidationError','difference','createdAt','ListId','from\x20is\x20mandatory','body\x20is\x20mandatory\x20and\x20not\x20empty','mapKey','mapKey\x20is\x20mandatory,\x20please\x20use\x20one\x20of\x20these:\x20','includes','mapKey\x20invalid,\x20please\x20use\x20one\x20of\x20these:\x20','CmList','List','Contacts','updatedAt','DESC','ChatApplication','Applications','applications','orderBy','priority','account','from','customerIp','cf-connecting-ip','first','split','firstName','x-real-port','browser','version','format','%s\x20%s','unknown','device','vendor','%s\x20%s\x20%s','threadId','ChatInteraction','externalUrl','interaction','spread','contact','lastName','messageId','created','push','close','unmanaged','*,*,*,*','AttachmentId','UserId','waitForTheAssignedAgent','forcedOwnership','Start','startRouting','EventManager','notify','offline','files','CompanyId','send','mapKeyOffline','mapKeyOffline\x20invalid,\x20please\x20use\x20one\x20of\x20these:\x20','MailAccount','findOrCreate','readFileSync','server/files/templates/chatOfflineMessage.ejs','utf8','render','toPairs','ChatOfflineMessage','mimetype','attachments','offline-chat','basename','openNewInteraction','sequelize','Attachment','bulkCreate','Smtp','CloudProvider','forwardOffline','forwardOfflineAddress','getSmtpOptions','SendMail','sendMail','email','offlineMessageSubject','originalname','subjectOffline','toPairsIn','Chat','MailAccountId','NotifyMailAccount','notifyMail','server','remove','Could\x20not\x20remove\x20attachment\x20file','addInteraction','omit','Contact','User','Owner','fullname','Tag','Tags','color','tag','getSnippet','timezone','interval','iftime\x20%s','indexOf','[%s][INTERVAL][%s]\x20%s\x20%s\x20(%s)','ONLINE','OFFLINE','No\x20timezone','inspect','Interval','Intervals','getProactiveActions','getLicense','virtual','License','increment','chatLicenseExceeded','all','some','remote','x-forwarded-for','x-real-ip','remoteAddress','referer','replace','alignment','labelText','textColor','backgroundColor','hideWhenOffline','IntervalId','addApplications','transaction','findAndCountAll','finally','getApplications','addProactiveActions','chatProactiveAction','ChatProactiveAction','getFields','false','offlineForm','onlineForm','items','Attachments','addAgents','emit','removeAgents','isArray','userChatWebsite:remove','getAgents','bluebird','mustache','util','path','ejs','fs-extra','lodash','querystring','ioredis','../../components/parsers/qs','api','../../config/environment','../../mysqldb','redis','defaults','localhost','./chatWebsite.socket','register','client','http','request','then','info','request\x20sent','debug','ChatWebsite,\x20%s,\x20%s,\x20%s','stringify','error','code','ChatWebsite,\x20%s,\x20%s','message','result','catch','sendStatus','status','json','offset','undefined','count','limit','set','Content-Range','update','destroy','ChatWebsites','UserProfileResource','end','stack','name','index','Pause','mandatoryDispositionPause','map','fieldName','type','model','keys','query','filters','intersection','attributes','fields','length','nolimit','sort','where','VIRTUAL','merge','options','ChatWebsite','includeAll','rawAttributes','find','create'];(function(_0x304fe0,_0x430c48){var _0x1649f8=function(_0x33a894){while(--_0x33a894){_0x304fe0['push'](_0x304fe0['shift']());}};_0x1649f8(++_0x430c48);}(_0xf14b,0xdd));var _0xbf14=function(_0x574d49,_0x180f7a){_0x574d49=_0x574d49-0x0;var _0x4be431=_0xf14b[_0x574d49];return _0x4be431;};'use strict';var BPromise=require(_0xbf14('0x0'));var Mustache=require(_0xbf14('0x1'));var util=require(_0xbf14('0x2'));var path=require(_0xbf14('0x3'));var ejs=require(_0xbf14('0x4'));var fs=require('fs');var fs_extra=require(_0xbf14('0x5'));var _=require(_0xbf14('0x6'));var querystring=require(_0xbf14('0x7'));var Redis=require(_0xbf14('0x8'));var qs=require(_0xbf14('0x9'));var logger=require('../../config/logger')(_0xbf14('0xa'));var config=require(_0xbf14('0xb'));var db=require(_0xbf14('0xc'))['db'];config[_0xbf14('0xd')]=_[_0xbf14('0xe')](config[_0xbf14('0xd')],{'host':_0xbf14('0xf'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0xbf14('0xd')]));require(_0xbf14('0x10'))[_0xbf14('0x11')](socket);var htmlToText=require('html-to-text');var jayson=require('jayson/promise');var client=jayson[_0xbf14('0x12')][_0xbf14('0x13')]({'port':0x232c});var client9002=jayson[_0xbf14('0x12')][_0xbf14('0x13')]({'port':0x232a});var client9003=jayson[_0xbf14('0x12')][_0xbf14('0x13')]({'port':0x232b});var client9001=jayson['client']['http']({'port':0x2329});function respondWithRpcPromise(_0x489c04,_0xc11e9f,_0x29a064,_0x27d669){return new BPromise(function(_0x3ee705,_0x10b52e){var _0x3abb3f=_0x27d669||client;return _0x3abb3f[_0xbf14('0x14')](_0x489c04,_0x29a064)[_0xbf14('0x15')](function(_0x290957){logger[_0xbf14('0x16')]('ChatWebsite,\x20%s,\x20%s',_0xc11e9f,_0xbf14('0x17'));logger[_0xbf14('0x18')](_0xbf14('0x19'),_0xc11e9f,'request\x20sent',JSON[_0xbf14('0x1a')](_0x290957));if(_0x290957[_0xbf14('0x1b')]){if(_0x290957['error'][_0xbf14('0x1c')]===0x1f4){logger[_0xbf14('0x1b')](_0xbf14('0x1d'),_0xc11e9f,_0x290957[_0xbf14('0x1b')]['message']);return _0x10b52e(_0x290957[_0xbf14('0x1b')][_0xbf14('0x1e')]);}logger[_0xbf14('0x1b')]('ChatWebsite,\x20%s,\x20%s',_0xc11e9f,_0x290957[_0xbf14('0x1b')][_0xbf14('0x1e')]);return _0x3ee705(_0x290957[_0xbf14('0x1b')][_0xbf14('0x1e')]);}else{logger[_0xbf14('0x16')](_0xbf14('0x1d'),_0xc11e9f,'request\x20sent');_0x3ee705(_0x290957[_0xbf14('0x1f')]['message']);}})[_0xbf14('0x20')](function(_0x419696){logger[_0xbf14('0x1b')](_0xbf14('0x1d'),_0xc11e9f,_0x419696);_0x10b52e(_0x419696);});});}function respondWithStatusCode(_0x2b20b4,_0x16bf7a){_0x16bf7a=_0x16bf7a||0xcc;return function(_0x8c3ccc){if(_0x8c3ccc){return _0x2b20b4[_0xbf14('0x21')](_0x16bf7a);}return _0x2b20b4[_0xbf14('0x22')](_0x16bf7a)['end']();};}function respondWithResult(_0x288cb1,_0x5743f4){_0x5743f4=_0x5743f4||0xc8;return function(_0xdee1df){if(_0xdee1df){return _0x288cb1[_0xbf14('0x22')](_0x5743f4)[_0xbf14('0x23')](_0xdee1df);}};}function respondWithFilteredResult(_0x5c812b,_0x5bb89d){return function(_0x7bde1d){if(_0x7bde1d){var _0x265ae0=typeof _0x5bb89d[_0xbf14('0x24')]==='undefined'&&typeof _0x5bb89d['limit']===_0xbf14('0x25');var _0x3d631c=_0x7bde1d[_0xbf14('0x26')];var _0x37adae=_0x265ae0?0x0:_0x5bb89d[_0xbf14('0x24')];var _0x1c228b=_0x265ae0?_0x7bde1d[_0xbf14('0x26')]:_0x5bb89d['offset']+_0x5bb89d[_0xbf14('0x27')];var _0x766cb1;if(_0x1c228b>=_0x3d631c){_0x1c228b=_0x3d631c;_0x766cb1=0xc8;}else{_0x766cb1=0xce;}_0x5c812b['status'](_0x766cb1);return _0x5c812b[_0xbf14('0x28')](_0xbf14('0x29'),_0x37adae+'-'+_0x1c228b+'/'+_0x3d631c)[_0xbf14('0x23')](_0x7bde1d);}return null;};}function saveUpdates(_0x579930){return function(_0x2b8c7c){if(_0x2b8c7c){return _0x2b8c7c[_0xbf14('0x2a')](_0x579930)[_0xbf14('0x15')](function(_0x196ed1){return _0x196ed1;});}return null;};}function removeEntity(_0xf3d111){return function(_0x4f6ac4){if(_0x4f6ac4){return _0x4f6ac4[_0xbf14('0x2b')]()[_0xbf14('0x15')](function(){var _0x4bce0d=_0x4f6ac4['get']({'plain':!![]});var _0xa9bdd7=_0xbf14('0x2c');return db[_0xbf14('0x2d')][_0xbf14('0x2b')]({'where':{'type':_0xa9bdd7,'resourceId':_0x4bce0d['id']}})[_0xbf14('0x15')](function(){return _0x4f6ac4;});})[_0xbf14('0x15')](function(){_0xf3d111[_0xbf14('0x22')](0xcc)[_0xbf14('0x2e')]();});}};}function handleEntityNotFound(_0x1cb2a4){return function(_0x4b1c56){if(!_0x4b1c56){_0x1cb2a4[_0xbf14('0x21')](0x194);}return _0x4b1c56;};}function handleError(_0x5023f3,_0x37a77b){_0x37a77b=_0x37a77b||0x1f4;return function(_0x4bb4a4){logger[_0xbf14('0x1b')](_0x4bb4a4[_0xbf14('0x2f')]);if(_0x4bb4a4[_0xbf14('0x30')]){delete _0x4bb4a4[_0xbf14('0x30')];}_0x5023f3[_0xbf14('0x22')](_0x37a77b)['send'](_0x4bb4a4);};}exports[_0xbf14('0x31')]=function(_0x8e3c88,_0x5613f0){var _0x18ae0d={'include':[{'model':db[_0xbf14('0x32')],'as':_0xbf14('0x33')}]},_0x2e7f64={},_0x234494={'count':0x0,'rows':[]};var _0x8562b6=_[_0xbf14('0x34')](db['ChatWebsite']['rawAttributes'],function(_0x5eaded){return{'name':_0x5eaded[_0xbf14('0x35')],'type':_0x5eaded[_0xbf14('0x36')]['key']};});_0x2e7f64[_0xbf14('0x37')]=_['map'](_0x8562b6,_0xbf14('0x30'));_0x2e7f64['query']=_[_0xbf14('0x38')](_0x8e3c88[_0xbf14('0x39')]);_0x2e7f64[_0xbf14('0x3a')]=_[_0xbf14('0x3b')](_0x2e7f64['model'],_0x2e7f64[_0xbf14('0x39')]);_0x18ae0d[_0xbf14('0x3c')]=_[_0xbf14('0x3b')](_0x2e7f64['model'],qs[_0xbf14('0x3d')](_0x8e3c88[_0xbf14('0x39')][_0xbf14('0x3d')]));_0x18ae0d[_0xbf14('0x3c')]=_0x18ae0d[_0xbf14('0x3c')][_0xbf14('0x3e')]?_0x18ae0d[_0xbf14('0x3c')]:_0x2e7f64[_0xbf14('0x37')];if(!_0x8e3c88['query']['hasOwnProperty'](_0xbf14('0x3f'))){_0x18ae0d[_0xbf14('0x27')]=qs['limit'](_0x8e3c88[_0xbf14('0x39')][_0xbf14('0x27')]);_0x18ae0d['offset']=qs[_0xbf14('0x24')](_0x8e3c88[_0xbf14('0x39')]['offset']);}_0x18ae0d['order']=qs[_0xbf14('0x40')](_0x8e3c88['query'][_0xbf14('0x40')]);_0x18ae0d[_0xbf14('0x41')]=qs['filters'](_['pick'](_0x8e3c88[_0xbf14('0x39')],_0x2e7f64['filters']),_0x8562b6);if(_0x8e3c88['query']['filter']){_0x18ae0d['where']=_['merge'](_0x18ae0d[_0xbf14('0x41')],{'$or':_[_0xbf14('0x34')](_0x8562b6,function(_0x56c527){if(_0x56c527[_0xbf14('0x36')]!==_0xbf14('0x42')){var _0x2dc039={};_0x2dc039[_0x56c527['name']]={'$like':'%'+_0x8e3c88[_0xbf14('0x39')]['filter']+'%'};return _0x2dc039;}})});}_0x18ae0d=_[_0xbf14('0x43')]({},_0x18ae0d,_0x8e3c88[_0xbf14('0x44')]);var _0x32f87a={'where':_0x18ae0d['where']};return db[_0xbf14('0x45')][_0xbf14('0x26')](_0x32f87a)['then'](function(_0x353fc1){_0x234494[_0xbf14('0x26')]=_0x353fc1;if(_0x8e3c88[_0xbf14('0x39')][_0xbf14('0x46')]){_0x18ae0d['include']=[{'all':!![]}];}return db[_0xbf14('0x45')]['findAll'](_0x18ae0d);})['then'](function(_0x446416){_0x234494['rows']=_0x446416;return _0x234494;})[_0xbf14('0x15')](respondWithFilteredResult(_0x5613f0,_0x18ae0d))[_0xbf14('0x20')](handleError(_0x5613f0,null));};exports['show']=function(_0x2b7e1c,_0x3987ff){var _0xb24136={'raw':![],'where':{'id':_0x2b7e1c['params']['id']},'include':[{'model':db[_0xbf14('0x32')],'as':'mandatoryDispositionPause'}]},_0x47602c={};_0x47602c['model']=_[_0xbf14('0x38')](db['ChatWebsite'][_0xbf14('0x47')]);_0x47602c[_0xbf14('0x39')]=_[_0xbf14('0x38')](_0x2b7e1c[_0xbf14('0x39')]);_0x47602c[_0xbf14('0x3a')]=_[_0xbf14('0x3b')](_0x47602c[_0xbf14('0x37')],_0x47602c[_0xbf14('0x39')]);_0xb24136['attributes']=_[_0xbf14('0x3b')](_0x47602c['model'],qs['fields'](_0x2b7e1c[_0xbf14('0x39')][_0xbf14('0x3d')]));_0xb24136[_0xbf14('0x3c')]=_0xb24136['attributes']['length']?_0xb24136[_0xbf14('0x3c')]:_0x47602c['model'];if(_0x2b7e1c[_0xbf14('0x39')][_0xbf14('0x46')]){_0xb24136['include']=[{'all':!![]}];}_0xb24136=_['merge']({},_0xb24136,_0x2b7e1c['options']);return db[_0xbf14('0x45')][_0xbf14('0x48')](_0xb24136)[_0xbf14('0x15')](handleEntityNotFound(_0x3987ff,null))[_0xbf14('0x15')](respondWithResult(_0x3987ff,null))['catch'](handleError(_0x3987ff,null));};exports[_0xbf14('0x49')]=function(_0x121cf1,_0x41307a){return db['ChatWebsite'][_0xbf14('0x49')](_0x121cf1['body'],{})[_0xbf14('0x15')](function(_0x1240e3){var _0x48c93e=_0x121cf1[_0xbf14('0x4a')][_0xbf14('0x4b')]({'plain':!![]});if(!_0x48c93e)throw new Error(_0xbf14('0x4c'));if(_0x48c93e[_0xbf14('0x4d')]==='user'){var _0x194c8e=_0x1240e3[_0xbf14('0x4b')]({'plain':!![]});var _0x51fe2c='ChatWebsites';return db[_0xbf14('0x4e')][_0xbf14('0x48')]({'where':{'name':_0x51fe2c,'userProfileId':_0x48c93e['userProfileId']},'raw':!![]})[_0xbf14('0x15')](function(_0x171ca7){if(_0x171ca7&&_0x171ca7[_0xbf14('0x4f')]===0x0){return db[_0xbf14('0x2d')]['create']({'name':_0x194c8e[_0xbf14('0x30')],'resourceId':_0x194c8e['id'],'type':_0x171ca7['name'],'sectionId':_0x171ca7['id']},{})[_0xbf14('0x15')](function(){return _0x1240e3;});}else{return _0x1240e3;}})['catch'](function(_0x599d91){logger[_0xbf14('0x1b')](_0xbf14('0x50'),_0x599d91);throw _0x599d91;});}return _0x1240e3;})[_0xbf14('0x15')](respondWithResult(_0x41307a,0xc9))[_0xbf14('0x20')](handleError(_0x41307a,null));};exports['update']=function(_0x1ec366,_0x59b449){if(_0x1ec366[_0xbf14('0x51')]['id']){delete _0x1ec366['body']['id'];}return db[_0xbf14('0x45')][_0xbf14('0x48')]({'where':{'id':_0x1ec366[_0xbf14('0x52')]['id']},'include':[{'model':db[_0xbf14('0x32')],'as':_0xbf14('0x33')}]})[_0xbf14('0x15')](handleEntityNotFound(_0x59b449,null))[_0xbf14('0x15')](saveUpdates(_0x1ec366['body'],null))['then'](respondWithResult(_0x59b449,null))['catch'](handleError(_0x59b449,null));};exports[_0xbf14('0x2b')]=function(_0x1a1593,_0x145315){return db['ChatWebsite']['find']({'where':{'id':_0x1a1593[_0xbf14('0x52')]['id']}})[_0xbf14('0x15')](handleEntityNotFound(_0x145315,null))[_0xbf14('0x15')](removeEntity(_0x145315,null))[_0xbf14('0x20')](handleError(_0x145315,null));};exports[_0xbf14('0x53')]=function(_0x22e17b,_0x34edef){return db[_0xbf14('0x45')][_0xbf14('0x53')]()[_0xbf14('0x15')](respondWithResult(_0x34edef,null))[_0xbf14('0x20')](handleError(_0x34edef,null));};exports[_0xbf14('0x54')]=function(_0x230d0c,_0xae633b){if(_0x230d0c[_0xbf14('0x51')]['id']){delete _0x230d0c[_0xbf14('0x51')]['id'];}return db['ChatWebsite']['find']({'where':{'id':_0x230d0c[_0xbf14('0x52')]['id']}})['then'](handleEntityNotFound(_0xae633b,null))[_0xbf14('0x15')](function(_0x3eb6eb){if(_0x3eb6eb){_0x230d0c['body'][_0xbf14('0x55')]=_0x3eb6eb['id'];return db[_0xbf14('0x56')][_0xbf14('0x49')](_0x230d0c[_0xbf14('0x51')]);}})[_0xbf14('0x15')](respondWithResult(_0xae633b,null))['catch'](handleError(_0xae633b,null));};exports[_0xbf14('0x57')]=function(_0x217c93,_0x4b9c4f){var _0x22ed50={'raw':![],'where':{}};var _0x4992df={};var _0x1db0fc={'count':0x0,'rows':[]};return db[_0xbf14('0x45')][_0xbf14('0x58')]({'where':{'id':_0x217c93['params']['id']}})[_0xbf14('0x15')](handleEntityNotFound(_0x4b9c4f,null))[_0xbf14('0x15')](function(_0x92cfdb){if(_0x92cfdb){_0x4992df[_0xbf14('0x37')]=_[_0xbf14('0x38')](db['Disposition'][_0xbf14('0x47')]);_0x4992df[_0xbf14('0x39')]=_[_0xbf14('0x38')](_0x217c93[_0xbf14('0x39')]);_0x4992df[_0xbf14('0x3a')]=_[_0xbf14('0x3b')](_0x4992df[_0xbf14('0x37')],_0x4992df[_0xbf14('0x39')]);_0x22ed50[_0xbf14('0x3c')]=_[_0xbf14('0x3b')](_0x4992df['model'],qs['fields'](_0x217c93[_0xbf14('0x39')][_0xbf14('0x3d')]));_0x22ed50['attributes']=_0x22ed50['attributes']['length']?_0x22ed50[_0xbf14('0x3c')]:_0x4992df[_0xbf14('0x37')];if(!_0x217c93[_0xbf14('0x39')][_0xbf14('0x59')](_0xbf14('0x3f'))){_0x22ed50[_0xbf14('0x27')]=qs[_0xbf14('0x27')](_0x217c93[_0xbf14('0x39')][_0xbf14('0x27')]);_0x22ed50['offset']=qs[_0xbf14('0x24')](_0x217c93[_0xbf14('0x39')][_0xbf14('0x24')]);}_0x22ed50[_0xbf14('0x5a')]=qs['sort'](_0x217c93[_0xbf14('0x39')][_0xbf14('0x40')]);_0x22ed50[_0xbf14('0x41')]=qs[_0xbf14('0x3a')](_['pick'](_0x217c93[_0xbf14('0x39')],_0x4992df['filters']));_0x22ed50[_0xbf14('0x41')]['ChatWebsiteId']=_0x92cfdb['id'];if(_0x217c93['query'][_0xbf14('0x5b')]){_0x22ed50[_0xbf14('0x41')]=_[_0xbf14('0x43')](_0x22ed50['where'],{'$or':_[_0xbf14('0x34')](_0x22ed50[_0xbf14('0x3c')],function(_0x27c98f){var _0xf024e7={};_0xf024e7[_0x27c98f]={'$like':'%'+_0x217c93[_0xbf14('0x39')][_0xbf14('0x5b')]+'%'};return _0xf024e7;})});}_0x22ed50=_[_0xbf14('0x43')]({},_0x22ed50,_0x217c93[_0xbf14('0x44')]);return db[_0xbf14('0x56')]['count']({'where':_0x22ed50[_0xbf14('0x41')]})['then'](function(_0x3f094c){_0x1db0fc[_0xbf14('0x26')]=_0x3f094c;if(_0x217c93[_0xbf14('0x39')][_0xbf14('0x46')]){_0x22ed50[_0xbf14('0x5c')]=[{'all':!![]}];}return db[_0xbf14('0x56')][_0xbf14('0x5d')](_0x22ed50);})['then'](function(_0xa85170){_0x1db0fc[_0xbf14('0x5e')]=_0xa85170;return _0x1db0fc;});}})[_0xbf14('0x15')](respondWithFilteredResult(_0x4b9c4f,_0x22ed50))['catch'](handleError(_0x4b9c4f,null));};exports['removeDispositions']=function(_0x311e0d,_0x69245a){return db[_0xbf14('0x45')][_0xbf14('0x48')]({'where':{'id':_0x311e0d[_0xbf14('0x52')]['id']}})[_0xbf14('0x15')](handleEntityNotFound(_0x69245a,null))[_0xbf14('0x15')](function(_0x206788){if(_0x206788){return _0x206788[_0xbf14('0x5f')](_0x311e0d[_0xbf14('0x39')][_0xbf14('0x60')]);}})[_0xbf14('0x15')](respondWithStatusCode(_0x69245a,null))[_0xbf14('0x20')](handleError(_0x69245a,null));};exports[_0xbf14('0x61')]=function(_0x185d0a,_0x42566a){if(_0x185d0a[_0xbf14('0x51')]['id']){delete _0x185d0a[_0xbf14('0x51')]['id'];}return db[_0xbf14('0x45')][_0xbf14('0x48')]({'where':{'id':_0x185d0a['params']['id']}})[_0xbf14('0x15')](handleEntityNotFound(_0x42566a,null))[_0xbf14('0x15')](function(_0x4befe9){if(_0x4befe9){_0x185d0a[_0xbf14('0x51')][_0xbf14('0x55')]=_0x4befe9['id'];return db[_0xbf14('0x62')]['create'](_0x185d0a['body']);}})[_0xbf14('0x15')](respondWithResult(_0x42566a,null))['catch'](handleError(_0x42566a,null));};exports['getAnswers']=function(_0x1d47a8,_0x26e620){var _0x222580={'raw':![],'where':{}};var _0x2b5e4a={};var _0x1c6f1a={'count':0x0,'rows':[]};return db[_0xbf14('0x45')][_0xbf14('0x58')]({'where':{'id':_0x1d47a8['params']['id']}})[_0xbf14('0x15')](handleEntityNotFound(_0x26e620,null))['then'](function(_0x193ac3){if(_0x193ac3){_0x2b5e4a['model']=_[_0xbf14('0x38')](db[_0xbf14('0x62')]['rawAttributes']);_0x2b5e4a[_0xbf14('0x39')]=_[_0xbf14('0x38')](_0x1d47a8[_0xbf14('0x39')]);_0x2b5e4a[_0xbf14('0x3a')]=_[_0xbf14('0x3b')](_0x2b5e4a[_0xbf14('0x37')],_0x2b5e4a[_0xbf14('0x39')]);_0x222580[_0xbf14('0x3c')]=_[_0xbf14('0x3b')](_0x2b5e4a[_0xbf14('0x37')],qs['fields'](_0x1d47a8[_0xbf14('0x39')][_0xbf14('0x3d')]));_0x222580[_0xbf14('0x3c')]=_0x222580[_0xbf14('0x3c')]['length']?_0x222580[_0xbf14('0x3c')]:_0x2b5e4a[_0xbf14('0x37')];if(!_0x1d47a8[_0xbf14('0x39')][_0xbf14('0x59')]('nolimit')){_0x222580[_0xbf14('0x27')]=qs[_0xbf14('0x27')](_0x1d47a8[_0xbf14('0x39')]['limit']);_0x222580[_0xbf14('0x24')]=qs[_0xbf14('0x24')](_0x1d47a8[_0xbf14('0x39')][_0xbf14('0x24')]);}_0x222580['order']=qs[_0xbf14('0x40')](_0x1d47a8['query']['sort']);_0x222580[_0xbf14('0x41')]=qs[_0xbf14('0x3a')](_[_0xbf14('0x63')](_0x1d47a8[_0xbf14('0x39')],_0x2b5e4a[_0xbf14('0x3a')]));_0x222580['where'][_0xbf14('0x55')]=_0x193ac3['id'];if(_0x1d47a8[_0xbf14('0x39')][_0xbf14('0x5b')]){_0x222580[_0xbf14('0x41')]=_[_0xbf14('0x43')](_0x222580[_0xbf14('0x41')],{'$or':_[_0xbf14('0x34')](_0x222580[_0xbf14('0x3c')],function(_0x5c78e5){var _0x299bf3={};_0x299bf3[_0x5c78e5]={'$like':'%'+_0x1d47a8['query'][_0xbf14('0x5b')]+'%'};return _0x299bf3;})});}_0x222580=_['merge']({},_0x222580,_0x1d47a8['options']);return db['CannedAnswer'][_0xbf14('0x26')]({'where':_0x222580['where']})['then'](function(_0x5a3a75){_0x1c6f1a[_0xbf14('0x26')]=_0x5a3a75;if(_0x1d47a8[_0xbf14('0x39')][_0xbf14('0x46')]){_0x222580[_0xbf14('0x5c')]=[{'all':!![]}];}return db[_0xbf14('0x62')][_0xbf14('0x5d')](_0x222580);})['then'](function(_0x196a48){_0x1c6f1a[_0xbf14('0x5e')]=_0x196a48;return _0x1c6f1a;});}})[_0xbf14('0x15')](respondWithFilteredResult(_0x26e620,_0x222580))[_0xbf14('0x20')](handleError(_0x26e620,null));};exports[_0xbf14('0x64')]=function(_0x50d179,_0x4535f1){return db['ChatWebsite'][_0xbf14('0x48')]({'where':{'id':_0x50d179['params']['id']}})[_0xbf14('0x15')](handleEntityNotFound(_0x4535f1,null))[_0xbf14('0x15')](function(_0x6f4d41){if(_0x6f4d41){return _0x6f4d41['removeAnswers'](_0x50d179[_0xbf14('0x39')][_0xbf14('0x60')]);}})['then'](respondWithStatusCode(_0x4535f1,null))[_0xbf14('0x20')](handleError(_0x4535f1,null));};exports[_0xbf14('0x65')]=function(_0x170e0f,_0x7eef3b){_0x170e0f[_0xbf14('0x51')][_0xbf14('0x66')]=_0x170e0f[_0xbf14('0x67')][_0xbf14('0x68')];return db['ChatWebsite']['find']({'where':{'id':_0x170e0f['params']['id']}})[_0xbf14('0x15')](handleEntityNotFound(_0x7eef3b,null))['then'](saveUpdates(_0x170e0f[_0xbf14('0x51')],null))[_0xbf14('0x15')](respondWithResult(_0x7eef3b,null))[_0xbf14('0x20')](handleError(_0x7eef3b,null));};exports[_0xbf14('0x69')]=function(_0x1ac72e,_0x22debc){_0x1ac72e['body']['agentAvatar']=_0x1ac72e['file'][_0xbf14('0x68')];return db[_0xbf14('0x45')][_0xbf14('0x48')]({'where':{'id':_0x1ac72e[_0xbf14('0x52')]['id']}})[_0xbf14('0x15')](handleEntityNotFound(_0x22debc,null))[_0xbf14('0x15')](saveUpdates(_0x1ac72e['body'],null))[_0xbf14('0x15')](respondWithResult(_0x22debc,null))[_0xbf14('0x20')](handleError(_0x22debc,null));};exports[_0xbf14('0x6a')]=function(_0x117f89,_0x3b7f71){_0x117f89[_0xbf14('0x51')]['customerAvatar']=_0x117f89['file']['filename'];return db[_0xbf14('0x45')][_0xbf14('0x48')]({'where':{'id':_0x117f89[_0xbf14('0x52')]['id']}})[_0xbf14('0x15')](handleEntityNotFound(_0x3b7f71,null))[_0xbf14('0x15')](saveUpdates(_0x117f89[_0xbf14('0x51')],null))['then'](respondWithResult(_0x3b7f71,null))[_0xbf14('0x20')](handleError(_0x3b7f71,null));};exports[_0xbf14('0x6b')]=function(_0x5a3a16,_0x1154bb){_0x5a3a16[_0xbf14('0x51')]['systemAvatar']=_0x5a3a16[_0xbf14('0x67')][_0xbf14('0x68')];return db[_0xbf14('0x45')][_0xbf14('0x48')]({'where':{'id':_0x5a3a16[_0xbf14('0x52')]['id']}})['then'](handleEntityNotFound(_0x1154bb,null))['then'](saveUpdates(_0x5a3a16[_0xbf14('0x51')],null))[_0xbf14('0x15')](respondWithResult(_0x1154bb,null))[_0xbf14('0x20')](handleError(_0x1154bb,null));};exports[_0xbf14('0x6c')]=function(_0x3c10d2,_0x2fde47){var _0x10a89f=path[_0xbf14('0x6d')](config[_0xbf14('0x6e')],'server/files/images/logos/default_logo.svg');var _0x559070={'where':{'id':_0x3c10d2['params']['id']},'attributes':['id',_0xbf14('0x66')],'raw':!![]};var _0x5a38c4=![];return require(_0xbf14('0x6f'))['getLicense']()['then'](function(_0x1e3a49){if(_0x1e3a49){_0x5a38c4=_0x1e3a49[_0xbf14('0x70')];}})[_0xbf14('0x15')](function(){return db[_0xbf14('0x45')]['find'](_0x559070);})[_0xbf14('0x15')](handleEntityNotFound(_0x2fde47,null))[_0xbf14('0x15')](function(_0xd79a54){if(_0xd79a54){if(!_[_0xbf14('0x71')](_0xd79a54[_0xbf14('0x66')])){if(fs[_0xbf14('0x72')](path[_0xbf14('0x6d')](config[_0xbf14('0x6e')],'server/files/images/logos/',_0xd79a54[_0xbf14('0x66')]))&&_0x5a38c4){_0x10a89f=path[_0xbf14('0x6d')](config[_0xbf14('0x6e')],_0xbf14('0x73'),_0xd79a54[_0xbf14('0x66')]);}}return _0x2fde47[_0xbf14('0x74')](_0x10a89f);}})['catch'](handleError(_0x2fde47,null));};exports['getAvatar']=function(_0x3b40d7,_0x38a688){var _0x9ebb66=path[_0xbf14('0x6d')](config['root'],_0xbf14('0x75'));var _0xc97fa0={'where':{'id':_0x3b40d7['params']['id']},'attributes':['id',_0xbf14('0x76')],'raw':!![]};return db[_0xbf14('0x45')][_0xbf14('0x48')](_0xc97fa0)[_0xbf14('0x15')](handleEntityNotFound(_0x38a688,null))[_0xbf14('0x15')](function(_0x5d463c){if(_0x5d463c){if(!_['isNil'](_0x5d463c[_0xbf14('0x76')])){if(fs['existsSync'](path[_0xbf14('0x6d')](config[_0xbf14('0x6e')],'server/files/images/avatars/',_0x5d463c[_0xbf14('0x76')]))){_0x9ebb66=path[_0xbf14('0x6d')](config[_0xbf14('0x6e')],_0xbf14('0x77'),_0x5d463c[_0xbf14('0x76')]);}}return _0x38a688['download'](_0x9ebb66);}})[_0xbf14('0x20')](handleError(_0x38a688,null));};exports[_0xbf14('0x78')]=function(_0x48f493,_0x6ea118){var _0xd5dc2e=path['join'](config[_0xbf14('0x6e')],_0xbf14('0x79'));var _0x2ad606={'where':{'id':_0x48f493[_0xbf14('0x52')]['id']},'attributes':['id',_0xbf14('0x7a'),_0xbf14('0x7b')],'raw':!![]};return db['ChatWebsite'][_0xbf14('0x48')](_0x2ad606)[_0xbf14('0x15')](handleEntityNotFound(_0x6ea118,null))['then'](function(_0x4eaa6d){if(_0x4eaa6d){if(!_[_0xbf14('0x71')](_0x4eaa6d['customerAvatar'])){if(fs[_0xbf14('0x72')](path[_0xbf14('0x6d')](config['root'],_0xbf14('0x77'),_0x4eaa6d[_0xbf14('0x7a')]))&&_0x4eaa6d[_0xbf14('0x7b')]){_0xd5dc2e=path[_0xbf14('0x6d')](config[_0xbf14('0x6e')],_0xbf14('0x77'),_0x4eaa6d['customerAvatar']);}}return _0x6ea118[_0xbf14('0x74')](_0xd5dc2e);}})[_0xbf14('0x20')](handleError(_0x6ea118,null));};exports[_0xbf14('0x7c')]=function(_0x483532,_0x2307e3){var _0x5a05ec=path['join'](config[_0xbf14('0x6e')],_0xbf14('0x7d'));var _0x330b97={'where':{'id':_0x483532[_0xbf14('0x52')]['id']},'attributes':['id',_0xbf14('0x7e')],'raw':!![]};return db[_0xbf14('0x45')][_0xbf14('0x48')](_0x330b97)[_0xbf14('0x15')](handleEntityNotFound(_0x2307e3,null))[_0xbf14('0x15')](function(_0x569821){if(_0x569821){if(!_[_0xbf14('0x71')](_0x569821[_0xbf14('0x7e')])){if(fs['existsSync'](path[_0xbf14('0x6d')](config[_0xbf14('0x6e')],'server/files/images/avatars/',_0x569821[_0xbf14('0x7e')]))){_0x5a05ec=path[_0xbf14('0x6d')](config[_0xbf14('0x6e')],'server/files/images/avatars/',_0x569821['systemAvatar']);}}return _0x2307e3[_0xbf14('0x74')](_0x5a05ec);}})[_0xbf14('0x20')](handleError(_0x2307e3,null));};exports['notify']=function(_0x2c5e8b,_0x195be0){var _0x537ab9=require(_0xbf14('0x7f'));var _0x13ab91=new _0x537ab9();var _0x15d2f6=_0x13ab91[_0xbf14('0x80')](_0x2c5e8b[_0xbf14('0x81')][_0xbf14('0x82')])[_0xbf14('0x83')]();var _0x1b0b95={'body':_0x2c5e8b[_0xbf14('0x51')],'channel':_0xbf14('0x84')};var _0x1c7583=[];var _0x3335fe=[];var _0x2175c7={};var _0x44f76f=![];return db[_0xbf14('0x85')][_0xbf14('0x53')]()[_0xbf14('0x15')](function(_0x1d3fd3){if(!_0x1d3fd3){throw new db[(_0xbf14('0x86'))][(_0xbf14('0x87'))]('no\x20available\x20attributes');}_0x1c7583=_[_0xbf14('0x88')](_[_0xbf14('0x38')](_0x1d3fd3),[_0xbf14('0x89'),'updatedAt']);_0x3335fe=_[_0xbf14('0x88')](_[_0xbf14('0x38')](_0x1d3fd3),['createdAt','updatedAt','CompanyId',_0xbf14('0x8a')]);if(_0x2c5e8b[_0xbf14('0x51')]['id']){delete _0x2c5e8b[_0xbf14('0x51')]['id'];}if(_['isNil'](_0x2c5e8b[_0xbf14('0x51')]['from'])){throw new db[(_0xbf14('0x86'))]['ValidationError'](_0xbf14('0x8b'));}if(_['isNil'](_0x2c5e8b[_0xbf14('0x51')][_0xbf14('0x51')])||_0x2c5e8b['body']['body']===''){throw new db[(_0xbf14('0x86'))][(_0xbf14('0x87'))](_0xbf14('0x8c'));}if(_[_0xbf14('0x71')](_0x2c5e8b[_0xbf14('0x51')][_0xbf14('0x8d')])){throw new db[(_0xbf14('0x86'))][(_0xbf14('0x87'))](_0xbf14('0x8e')+_0x3335fe);}if(!_[_0xbf14('0x8f')](_0x3335fe,_0x2c5e8b[_0xbf14('0x51')][_0xbf14('0x8d')])){throw new db['Sequelize'][(_0xbf14('0x87'))](_0xbf14('0x90')+_0x3335fe);}_0x2175c7[_0x2c5e8b[_0xbf14('0x51')][_0xbf14('0x8d')]]=_0x2c5e8b[_0xbf14('0x51')]['from'];})[_0xbf14('0x15')](function(){return db[_0xbf14('0x45')][_0xbf14('0x48')]({'where':{'id':_0x2c5e8b['params']['id']},'include':[{'model':db[_0xbf14('0x91')],'as':_0xbf14('0x92'),'include':[{'model':db[_0xbf14('0x85')],'as':_0xbf14('0x93'),'where':_0x2175c7,'limit':0x1,'order':[[_0xbf14('0x94'),_0xbf14('0x95')]]}]},{'model':db[_0xbf14('0x96')],'as':_0xbf14('0x97')}]});})[_0xbf14('0x15')](handleEntityNotFound(_0x195be0,null))[_0xbf14('0x15')](function(_0x576632){if(_0x576632&&_0x576632['List']){_0x1b0b95['account']=_0x576632;_0x1b0b95[_0xbf14('0x98')]=_0x576632[_0xbf14('0x97')];_0x1b0b95['list']=_0x576632[_0xbf14('0x92')];_0x1b0b95[_0xbf14('0x98')]=_[_0xbf14('0x99')](_0x1b0b95[_0xbf14('0x98')],[_0xbf14('0x9a')],['asc']);if(_0x1b0b95['account']['Applications']){delete _0x1b0b95['account'][_0xbf14('0x97')];}if(_0x1b0b95[_0xbf14('0x9b')][_0xbf14('0x92')]&&_0x1b0b95[_0xbf14('0x9b')][_0xbf14('0x92')][_0xbf14('0x93')][_0xbf14('0x3e')]){return _0x1b0b95['account'][_0xbf14('0x92')][_0xbf14('0x93')][0x0];}var _0x169632=_['defaults'](_0x2c5e8b['body'],{'firstName':_0x2c5e8b['body'][_0xbf14('0x9c')],'ListId':_0x576632[_0xbf14('0x8a')]});_0x169632[_0x2c5e8b[_0xbf14('0x51')]['mapKey']]=_0x2c5e8b[_0xbf14('0x51')][_0xbf14('0x9c')];return db['CmContact'][_0xbf14('0x49')](_0x169632,{'fields':_0x1c7583,'raw':!![]});}})[_0xbf14('0x15')](handleEntityNotFound(_0x195be0,null))[_0xbf14('0x15')](function(_0x54976f){_0x1b0b95['contact']=_0x54976f;var _0x1395a7=_0x2c5e8b[_0xbf14('0x51')][_0xbf14('0x9d')];if(_0x2c5e8b[_0xbf14('0x81')][_0xbf14('0x9e')]){_0x1395a7=_0x2c5e8b[_0xbf14('0x81')]['cf-connecting-ip'];}else if(_0x2c5e8b['headers']['x-forwarded-for']){_0x1395a7=_[_0xbf14('0x9f')](_0x2c5e8b[_0xbf14('0x81')]['x-forwarded-for'][_0xbf14('0xa0')](','));}if(_0x54976f){var _0x5029d5={'ContactId':_0x54976f['id'],'ChatWebsiteId':_0x2c5e8b[_0xbf14('0x52')]['id'],'from':(_0x54976f[_0xbf14('0xa1')]||'')+'\x20'+(_0x54976f['lastName']||''),'customerIp':_0x1395a7,'customerPort':_0x2c5e8b[_0xbf14('0x81')][_0xbf14('0xa2')]?_0x2c5e8b['headers'][_0xbf14('0xa2')]:null,'referer':_0x2c5e8b['body']['referer'],'browserName':_0x15d2f6[_0xbf14('0xa3')]['name']&&_0x15d2f6[_0xbf14('0xa3')][_0xbf14('0xa4')]?util[_0xbf14('0xa5')](_0xbf14('0xa6'),_0x15d2f6['browser']['name'],_0x15d2f6[_0xbf14('0xa3')][_0xbf14('0xa4')]):_0xbf14('0xa7'),'browserVersion':_0x15d2f6[_0xbf14('0xa3')][_0xbf14('0xa4')]||'unknown','osName':util[_0xbf14('0xa5')](_0xbf14('0xa6'),_0x15d2f6['os']['name'],_0x15d2f6['os'][_0xbf14('0xa4')]),'osVersion':_0x15d2f6['os'][_0xbf14('0xa4')],'deviceModel':_0x15d2f6[_0xbf14('0xa8')][_0xbf14('0x37')]&&_0x15d2f6['device'][_0xbf14('0xa9')]?util[_0xbf14('0xa5')](_0xbf14('0xaa'),_0x15d2f6[_0xbf14('0xa8')][_0xbf14('0x37')],_0x15d2f6[_0xbf14('0xa8')]['vendor'],_0x15d2f6['device'][_0xbf14('0x36')]):null,'deviceVendor':_0x15d2f6[_0xbf14('0xa8')][_0xbf14('0xa9')],'deviceType':_0x15d2f6['device'][_0xbf14('0x36')],'formData':JSON[_0xbf14('0x1a')](_0x2c5e8b['body'])};var _0xafb850={'ChatWebsiteId':_0x2c5e8b['params']['id'],'closed':![]};if(_0x2c5e8b[_0xbf14('0x51')]['threadId']){_0xafb850[_0xbf14('0xab')]=_0x2c5e8b[_0xbf14('0x51')]['threadId'];return db[_0xbf14('0xac')][_0xbf14('0x48')]({'where':_0xafb850})[_0xbf14('0x15')](function(_0x20e70e){if(_0x20e70e){return[_0x20e70e,![]];}_0x5029d5[_0xbf14('0xab')]=_0x2c5e8b[_0xbf14('0x51')][_0xbf14('0xab')];_0x5029d5[_0xbf14('0xad')]=_0x2c5e8b[_0xbf14('0x51')][_0xbf14('0xad')];return db[_0xbf14('0xac')][_0xbf14('0x49')](_0x5029d5)[_0xbf14('0x15')](function(_0x1537f7){return[_0x1537f7,!![]];});});}_0xafb850['ContactId']=_0x54976f['id'];if(_0x2c5e8b[_0xbf14('0x51')][_0xbf14('0xae')]&&_0x2c5e8b[_0xbf14('0x51')][_0xbf14('0xae')]['id']){_0xafb850['id']=_0x2c5e8b['body'][_0xbf14('0xae')]['id'];return db['ChatInteraction'][_0xbf14('0x48')]({'where':_0xafb850})['then'](function(_0x217846){if(_0x217846){return[_0x217846,![]];}return db[_0xbf14('0xac')][_0xbf14('0x49')](_0x5029d5)[_0xbf14('0x15')](function(_0x266079){return[_0x266079,!![]];});});}return db[_0xbf14('0xac')][_0xbf14('0x49')](_0x5029d5)['then'](function(_0x5d92d9){return[_0x5d92d9,!![]];});}})[_0xbf14('0xaf')](function(_0x4f8614,_0x5e524f){if(_0x4f8614){_0x44f76f=_0x5e524f;if(!_0x5e524f){var _0x1fa3f4={'from':(_0x1b0b95[_0xbf14('0xb0')][_0xbf14('0xa1')]||'')+'\x20'+(_0x1b0b95[_0xbf14('0xb0')][_0xbf14('0xb1')]||'')};if(_0x2c5e8b[_0xbf14('0x51')]['threadId']&&_0x2c5e8b[_0xbf14('0x51')][_0xbf14('0xb2')]&&_0x2c5e8b['body'][_0xbf14('0xab')]!=_0x2c5e8b[_0xbf14('0x51')][_0xbf14('0xb2')]){_0x1fa3f4[_0xbf14('0xab')]=_0x2c5e8b[_0xbf14('0x51')][_0xbf14('0xb2')];}return _0x4f8614[_0xbf14('0x2a')](_0x1fa3f4);}else{return _0x4f8614;}}})[_0xbf14('0x15')](function(_0x3f3e81){_0x1b0b95[_0xbf14('0xae')]=_0x3f3e81['get']({'plain':!![]});_0x1b0b95[_0xbf14('0xae')][_0xbf14('0xb3')]=_0x44f76f;if(_0x1b0b95[_0xbf14('0xae')][_0xbf14('0xb3')]){if(_0x1b0b95['account']['autoclose']){_0x1b0b95['applications'][_0xbf14('0xb4')]({'id':0x0,'priority':_0x1b0b95[_0xbf14('0x98')]['length']+0x1,'app':_0xbf14('0xb5'),'appdata':_0xbf14('0xb6'),'interval':_0xbf14('0xb7')});}}return db['ChatMessage'][_0xbf14('0x49')]({'body':_0x2c5e8b[_0xbf14('0x51')][_0xbf14('0x51')],'ChatWebsiteId':_0x2c5e8b[_0xbf14('0x52')]['id'],'ChatInteractionId':_0x3f3e81['id'],'direction':'in','ContactId':_0x1b0b95['contact']['id'],'AttachmentId':_0x2c5e8b[_0xbf14('0x51')][_0xbf14('0xb8')]});})[_0xbf14('0x15')](function(_0x291fc3){_0x1b0b95[_0xbf14('0x1e')]=_0x291fc3;if(_0x1b0b95['interaction'][_0xbf14('0xb9')]){return db['User']['find']({'attributes':['id','name'],'where':{'id':_0x1b0b95[_0xbf14('0xae')][_0xbf14('0xb9')]}})['then'](function(_0x423e06){if(_0x423e06){_0x1b0b95['applications']['unshift']({'id':0x0,'priority':0x0,'app':'agent','appdata':_0x423e06[_0xbf14('0x30')]+','+(_0x1b0b95[_0xbf14('0x9b')][_0xbf14('0xba')]||0xa),'interval':_0xbf14('0xb7')});_0x1b0b95[_0xbf14('0xbb')]=!![];}return respondWithRpcPromise(_0xbf14('0xbc'),_0xbf14('0xbd'),_0x1b0b95);});}return respondWithRpcPromise(_0xbf14('0xbc'),_0xbf14('0xbd'),_0x1b0b95);})[_0xbf14('0x15')](function(_0x445589){respondWithRpcPromise(_0xbf14('0xbe'),_0xbf14('0xbe'),{'event':_0xbf14('0xbf'),'message':_0x445589},client9002);return _0x445589;})[_0xbf14('0x15')](respondWithResult(_0x195be0,null))[_0xbf14('0x20')](handleError(_0x195be0,null));};exports[_0xbf14('0xc0')]=function(_0x2d1bb6,_0xbc2f42){var _0x2d8ccd,_0x28b715,_0x281bfe;var _0xace33e=[];var _0xdd48a={};var _0xa4c8d5=_0x2d1bb6[_0xbf14('0xc1')]||[];var _0x3de613=[];var _0xebc595;return db['CmContact']['describe']()[_0xbf14('0x15')](function(_0x2ea302){if(!_0x2ea302){throw new db[(_0xbf14('0x86'))][(_0xbf14('0x87'))]('no\x20available\x20attributes');}_0xace33e=_['difference'](_[_0xbf14('0x38')](_0x2ea302),['createdAt','updatedAt',_0xbf14('0xc2'),'ListId']);if(_0x2d1bb6[_0xbf14('0x51')]['id']){delete _0x2d1bb6[_0xbf14('0x51')]['id'];}if(_[_0xbf14('0x71')](_0x2d1bb6[_0xbf14('0x51')][_0xbf14('0x9c')])){throw _0xbc2f42[_0xbf14('0x22')](0x1f4)[_0xbf14('0xc3')](new db[(_0xbf14('0x86'))][(_0xbf14('0x87'))](_0xbf14('0x8b')));}if(_[_0xbf14('0x71')](_0x2d1bb6[_0xbf14('0x51')][_0xbf14('0x51')])||_0x2d1bb6[_0xbf14('0x51')]['body']===''){throw _0xbc2f42[_0xbf14('0x22')](0x1f4)[_0xbf14('0xc3')](new db[(_0xbf14('0x86'))][(_0xbf14('0x87'))]('body\x20is\x20mandatory\x20and\x20not\x20empty'));}if(_[_0xbf14('0x71')](_0x2d1bb6[_0xbf14('0x51')][_0xbf14('0xc4')])){throw _0xbc2f42[_0xbf14('0x22')](0x1f4)[_0xbf14('0xc3')](new db[(_0xbf14('0x86'))][(_0xbf14('0x87'))]('mapKeyOffline\x20is\x20mandatory,\x20please\x20use\x20one\x20of\x20these:\x20'+_0xace33e));}if(!_[_0xbf14('0x8f')](_0xace33e,_0x2d1bb6['body'][_0xbf14('0xc4')])){throw _0xbc2f42[_0xbf14('0x22')](0x1f4)[_0xbf14('0xc3')](new db[(_0xbf14('0x86'))][(_0xbf14('0x87'))](_0xbf14('0xc5')+_0xace33e));}_0xdd48a[_0x2d1bb6['body'][_0xbf14('0xc4')]]=_0x2d1bb6['body'][_0xbf14('0x9c')];})['then'](function(){return db['ChatWebsite']['find']({'where':{'id':_0x2d1bb6[_0xbf14('0x52')]['id']},'include':[{'model':db[_0xbf14('0x91')],'as':_0xbf14('0x92')},{'model':db[_0xbf14('0xc6')],'as':_0xbf14('0xc6')}]});})['then'](handleEntityNotFound(_0xbc2f42,null))[_0xbf14('0x15')](function(_0x4b85b9){if(_0x4b85b9&&_0x4b85b9[_0xbf14('0x92')]){_0x28b715=_0x4b85b9;var _0x197425=_[_0xbf14('0xe')](_0x2d1bb6['body'],{'firstName':_0x2d1bb6[_0xbf14('0x51')][_0xbf14('0x9c')],'phone':_0x2d1bb6[_0xbf14('0x51')][_0xbf14('0x9c')],'ListId':_0x4b85b9[_0xbf14('0x8a')]});_0x197425[_0x2d1bb6[_0xbf14('0x51')]['mapKeyOffline']]=_0x2d1bb6[_0xbf14('0x51')][_0xbf14('0x9c')];return db[_0xbf14('0x85')][_0xbf14('0xc7')]({'where':_0xdd48a,'defaults':_0x197425});}})[_0xbf14('0xaf')](function(_0x43be92){if(_0x43be92){_0x281bfe=_0x43be92;var _0x2e176a=fs[_0xbf14('0xc8')](path[_0xbf14('0x6d')](config[_0xbf14('0x6e')],_0xbf14('0xc9')),_0xbf14('0xca'));var _0x52ac98=ejs[_0xbf14('0xcb')](_0x2e176a,{'body':_[_0xbf14('0xcc')](_0x2d1bb6['body']['body']),'bodyTitle':_0x28b715['offlineMessageBody']});return db[_0xbf14('0xcd')][_0xbf14('0x49')]({'body':_0x52ac98,'plainBody':htmlToText['fromString'](_0x52ac98),'ContactId':_0x43be92['id'],'ChatWebsiteId':_0x28b715['id']});}})[_0xbf14('0x15')](function(_0x104eb0){_0xebc595=_0x104eb0;if(_0xa4c8d5[_0xbf14('0x3e')]){var _0x3a834=_0xa4c8d5[_0xbf14('0x34')](function(_0x39e98b){return{'name':_0x39e98b['originalname'],'basename':_0x39e98b[_0xbf14('0x68')],'type':_0x39e98b[_0xbf14('0xce')],'ChatOfflineMessageId':_0x104eb0['id']};});_0x3de613=_0x3a834[_0xbf14('0x34')](_0x393739=>{var _0x2a3387={'filename':_0x393739[_0xbf14('0x30')],'path':path[_0xbf14('0x6d')](config[_0xbf14('0x6e')],'server','files',_0xbf14('0xcf'),_0xbf14('0xd0'),_0x393739[_0xbf14('0xd1')])};return _0x2a3387;});if(!_0x28b715[_0xbf14('0xd2')]){return db[_0xbf14('0xd3')]['transaction'](function(_0x581309){return db[_0xbf14('0xd4')][_0xbf14('0xd5')](_0x3a834,{'transaction':_0x581309});});}}})['then'](function(){if(_0xebc595){_0x2d8ccd=_0xebc595;return db[_0xbf14('0xc6')][_0xbf14('0x58')]({'where':{'service':!![]},'include':[{'model':db['MailServerOut'],'as':_0xbf14('0xd6'),'raw':!![],'include':[{'model':db[_0xbf14('0xd7')],'as':_0xbf14('0xd7'),'raw':!![]}]}]});}})[_0xbf14('0x15')](function(_0x63871){if(_0x63871&&_0x63871[_0xbf14('0xd6')]&&_0x28b715[_0xbf14('0xd8')]&&_0x28b715[_0xbf14('0xd9')]){var _0x2992e2=_0x63871[_0xbf14('0xda')]();return respondWithRpcPromise(_0xbf14('0xdb'),_0xbf14('0xdc'),{'account':_0x2992e2,'message':{'from':util[_0xbf14('0xa5')]('\x22%s\x22\x20<%s>',_0x63871[_0xbf14('0x30')],_0x63871[_0xbf14('0xdd')]||_0x63871[_0xbf14('0xd6')][_0xbf14('0x4a')]),'to':_0x28b715[_0xbf14('0xd9')],'subject':_0x28b715[_0xbf14('0xde')],'html':_0x2d8ccd[_0xbf14('0x51')],'attachments':_0x3de613}},client9003)['then'](function(){return _0x2d8ccd;})[_0xbf14('0x20')](function(_0x3ffa4f){logger['error'](_0x3ffa4f);});}})[_0xbf14('0x15')](function(){if(_0x28b715&&_0x28b715['openNewInteraction']&&_0x28b715['MailAccountId']){var _0x590834=[];if(_0xa4c8d5['length']){_0x590834=_0xa4c8d5[_0xbf14('0x34')](function(_0x380bd2){return{'name':_0x380bd2[_0xbf14('0xdf')],'basename':_0x380bd2[_0xbf14('0x68')],'type':_0x380bd2[_0xbf14('0xce')],'ChatOfflineMessageId':_0xebc595['id']};});}var _0x3e385b;if(!_['isNil'](_0x28b715[_0xbf14('0xe0')])){var _0x1cc634=_[_0xbf14('0x34')](_0x2d1bb6['body'],function(_0x3d6b6c){return _0x3d6b6c;});var _0xa3adfa=_[_0xbf14('0xe1')](_0x1cc634)[0x0];var _0x40ff22=_['mapValues'](_0xa3adfa,function(_0x3bb687){return _0x3bb687;});_0x3e385b=_0x40ff22[0x1][_0x28b715[_0xbf14('0xe0')]];}var _0x2521c7={'from':_0x281bfe['email'],'firstName':_0x281bfe[_0xbf14('0xa1')],'lastName':_0x281bfe[_0xbf14('0xb1')],'mapKey':_0xbf14('0xdd'),'message':{'from':_0x281bfe[_0xbf14('0xdd')],'to':_0x28b715['MailAccount'][_0xbf14('0xdd')],'cc':'','subject':_[_0xbf14('0x71')](_0x3e385b)?_0x28b715[_0xbf14('0xde')]:_0x3e385b,'messageId':'','sentAt':new Date(),'attach':_0x590834[_0xbf14('0x3e')],'attachments':_0x590834,'originChannel':_0xbf14('0xe2'),'ChatWebsiteId':_0x28b715['id'],'ChatOfflineMessageId':_0x2d8ccd['id'],'originTo':_0x28b715[_0xbf14('0xc6')][_0xbf14('0xdd')]},'body':_0x2d8ccd[_0xbf14('0x51')]};var _0x11d8fb={'account':{'id':_0x28b715[_0xbf14('0xe3')]},'body':_0x2521c7,'log':_0xbf14('0xe4')};return respondWithRpcPromise(_0xbf14('0xe4'),_0xbf14('0xe5'),_0x11d8fb,client9001)['then'](function(){return _0x2d8ccd;})['catch'](function(_0x305406){logger['error'](_0x305406);});}return;})[_0xbf14('0x15')](function(){if(_0x2d8ccd){return _0x2d8ccd;}})['then'](respondWithResult(_0xbc2f42,null))[_0xbf14('0x20')](function(_0x244b15){logger['error'](_0xbf14('0x20'),_0x244b15);for(var _0x4be402 of _0xa4c8d5){var _0x3f5328=path[_0xbf14('0x6d')](config[_0xbf14('0x6e')],_0xbf14('0xe6'),_0xbf14('0xc1'),'attachments',_0xbf14('0xd0'),_0x4be402[_0xbf14('0x68')]);fs_extra[_0xbf14('0xe7')](_0x3f5328)['catch'](function(_0x118bee){logger[_0xbf14('0x1b')](_0xbf14('0xe8'),_0x3f5328,_0x118bee);});}});};exports['addInteraction']=function(_0x561711,_0x178a39){return db[_0xbf14('0xac')][_0xbf14('0x48')]({'where':{'id':_0x561711['params']['id']}})[_0xbf14('0x15')](handleEntityNotFound(_0x178a39,null))[_0xbf14('0x15')](function(_0x21c8bf){if(_0x21c8bf){return _0x21c8bf[_0xbf14('0xe9')](_0x561711[_0xbf14('0x51')][_0xbf14('0x60')],_[_0xbf14('0xea')](_0x561711[_0xbf14('0x51')],['ids','id'])||{});}})[_0xbf14('0x15')](respondWithResult(_0x178a39,null))[_0xbf14('0x20')](handleError(_0x178a39,null));};exports['getInteractions']=function(_0x558c60,_0x4c68d0){var _0x3781a5={'raw':![],'where':{}};var _0x3e51a1={};var _0x871224={'count':0x0,'rows':[]};return db[_0xbf14('0x45')][_0xbf14('0x58')]({'where':{'id':_0x558c60[_0xbf14('0x52')]['id']}})['then'](handleEntityNotFound(_0x4c68d0,null))[_0xbf14('0x15')](function(_0x341c9a){if(_0x341c9a){_0x3e51a1[_0xbf14('0x37')]=_[_0xbf14('0x38')](db[_0xbf14('0xac')][_0xbf14('0x47')]);_0x3e51a1['query']=_['keys'](_0x558c60[_0xbf14('0x39')]);_0x3e51a1[_0xbf14('0x3a')]=_[_0xbf14('0x3b')](_0x3e51a1[_0xbf14('0x37')],_0x3e51a1[_0xbf14('0x39')]);_0x3781a5['attributes']=_[_0xbf14('0x3b')](_0x3e51a1[_0xbf14('0x37')],qs['fields'](_0x558c60[_0xbf14('0x39')]['fields']));_0x3781a5[_0xbf14('0x3c')]=_0x3781a5[_0xbf14('0x3c')][_0xbf14('0x3e')]?_0x3781a5[_0xbf14('0x3c')]:_0x3e51a1['model'];if(!_0x558c60[_0xbf14('0x39')][_0xbf14('0x59')](_0xbf14('0x3f'))){_0x3781a5[_0xbf14('0x27')]=qs['limit'](_0x558c60['query'][_0xbf14('0x27')]);_0x3781a5[_0xbf14('0x24')]=qs['offset'](_0x558c60['query']['offset']);}_0x3781a5[_0xbf14('0x5a')]=qs[_0xbf14('0x40')](_0x558c60[_0xbf14('0x39')]['sort']);_0x3781a5[_0xbf14('0x41')]=qs[_0xbf14('0x3a')](_[_0xbf14('0x63')](_0x558c60[_0xbf14('0x39')],_0x3e51a1[_0xbf14('0x3a')]));_0x3781a5['where'][_0xbf14('0x55')]=_0x341c9a['id'];if(_0x558c60[_0xbf14('0x39')][_0xbf14('0x5b')]){_0x3781a5[_0xbf14('0x41')]=_[_0xbf14('0x43')](_0x3781a5[_0xbf14('0x41')],{'$or':_['map'](_0x3781a5[_0xbf14('0x3c')],function(_0x215ebe){var _0x1d9422={};_0x1d9422[_0x215ebe]={'$like':'%'+_0x558c60['query']['filter']+'%'};return _0x1d9422;})});}_0x3781a5=_[_0xbf14('0x43')]({},_0x3781a5,_0x558c60[_0xbf14('0x44')]);return db[_0xbf14('0xac')][_0xbf14('0x26')]({'where':_0x3781a5[_0xbf14('0x41')]})[_0xbf14('0x15')](function(_0x2ff528){_0x871224[_0xbf14('0x26')]=_0x2ff528;if(_0x558c60[_0xbf14('0x39')][_0xbf14('0x46')]){_0x3781a5[_0xbf14('0x5c')]=[{'model':db[_0xbf14('0x85')],'as':_0xbf14('0xeb'),'required':![]},{'model':db[_0xbf14('0xec')],'as':_0xbf14('0xed'),'attributes':[_0xbf14('0x30'),_0xbf14('0xee'),'internal'],'required':![]},{'model':db[_0xbf14('0xef')],'as':_0xbf14('0xf0'),'attributes':['id',_0xbf14('0x30'),_0xbf14('0xf1')],'where':_0x558c60[_0xbf14('0x39')][_0xbf14('0xf2')]?{'id':_0x558c60[_0xbf14('0x39')][_0xbf14('0xf2')]}:undefined,'required':_0x558c60[_0xbf14('0x39')][_0xbf14('0xf2')]?!![]:![]}];}return db[_0xbf14('0xac')][_0xbf14('0x5d')](_0x3781a5);})[_0xbf14('0x15')](function(_0x3a7f08){_0x871224[_0xbf14('0x5e')]=_0x3a7f08;return _0x871224;});}})[_0xbf14('0x15')](respondWithFilteredResult(_0x4c68d0,_0x3781a5))[_0xbf14('0x20')](handleError(_0x4c68d0,null));};function iftimePromise(_0xd66e83,_0x42b1f9){return respondWithRpcPromise('Command',_0xbf14('0xf3'),{'command':_0x42b1f9[_0xbf14('0xf4')]?util[_0xbf14('0xa5')]('iftime\x20%s,%s',_0xd66e83[_0xbf14('0xf5')],_0x42b1f9[_0xbf14('0xf4')]):util[_0xbf14('0xa5')](_0xbf14('0xf6'),_0xd66e83[_0xbf14('0xf5')])},client9002)['then'](function(_0x7721c8){var _0x2ac27e=_0x7721c8&&_0x7721c8[_0xbf14('0xf7')]('true')>=0x0?!![]:![];logger[_0xbf14('0x16')](_0xbf14('0xf8'),_0x42b1f9['id'],_0xd66e83['id'],_0xd66e83[_0xbf14('0xf5')],_0x2ac27e?_0xbf14('0xf9'):_0xbf14('0xfa'),_0x42b1f9[_0xbf14('0xf4')]?_0x42b1f9[_0xbf14('0xf4')]:_0xbf14('0xfb'));return _0x2ac27e;})[_0xbf14('0x20')](function(_0x464b4e){logger[_0xbf14('0x1b')]('[%s][INTERVAL][%s]\x20%s\x20%s\x20(%s)',_0x42b1f9['id'],_0xd66e83['id'],_0xd66e83['interval'],util[_0xbf14('0xfc')](_0x464b4e,{'showHidden':![],'depth':null}),_0x42b1f9['timezone']?_0x42b1f9[_0xbf14('0xf4')]:_0xbf14('0xfb'));return![];});}exports[_0xbf14('0xf3')]=function(_0x4942fe,_0x50d8f2){var _0x1e13f0=0x0;var _0x52af53=0x0;var _0x27fce8=![];var _0x55b3fd;var _0x476efe;return db[_0xbf14('0x45')]['find']({'where':{'id':_0x4942fe[_0xbf14('0x52')]['id']},'include':[{'model':db['Interval'],'as':_0xbf14('0xfd'),'include':[{'model':db[_0xbf14('0xfd')],'as':_0xbf14('0xfe'),'attributes':['id',_0xbf14('0xf5')],'raw':!![]}]}]})[_0xbf14('0x15')](handleEntityNotFound(_0x50d8f2,null))[_0xbf14('0x15')](function(_0x5f0fe8){if(_0x5f0fe8){_0x55b3fd=_0x5f0fe8;return _0x5f0fe8[_0xbf14('0xff')]({'raw':!![]});}})[_0xbf14('0x15')](function(_0x24f5ea){if(_0x55b3fd){if(_0x24f5ea){_0x476efe=_0x24f5ea;}}return require(_0xbf14('0x6f'))[_0xbf14('0x100')]();})[_0xbf14('0x15')](function(_0x1cddfa){if(_0x1cddfa){_0x52af53=_0x1cddfa[_0xbf14('0x101')];_0x27fce8=_0x1cddfa[_0xbf14('0x70')];}})['then'](function(){return db[_0xbf14('0xac')][_0xbf14('0x26')]({'where':{'closed':![]}});})[_0xbf14('0x15')](function(_0x4e4434){_0x1e13f0=_0x4e4434;if(_0x52af53&&_0x4e4434>_0x52af53){return db[_0xbf14('0x102')]['findOne']({'where':{'id':0x1}})[_0xbf14('0x15')](function(_0x7b4263){if(_0x7b4263){_0x7b4263[_0xbf14('0x103')](_0xbf14('0x104'));}});}})['then'](function(){if(_0x55b3fd[_0xbf14('0xfd')]&&_0x55b3fd[_0xbf14('0xfd')][_0xbf14('0xfe')]){var _0x522a82=[];for(var _0x350743=0x0;_0x350743<_0x55b3fd[_0xbf14('0xfd')][_0xbf14('0xfe')][_0xbf14('0x3e')];_0x350743++){var _0x484341=_0x55b3fd[_0xbf14('0xfd')][_0xbf14('0xfe')][_0x350743]['get']({'plain':!![]});_0x522a82[_0xbf14('0xb4')](iftimePromise(_0x484341,_0x55b3fd));}return BPromise[_0xbf14('0x105')](_0x522a82)[_0xbf14('0x15')](function(_0x6784e7){return _[_0xbf14('0x106')](_0x6784e7);});}else{return!![];}})[_0xbf14('0x15')](function(_0x33e9d7){var _0x1f9732=fs[_0xbf14('0xc8')](path[_0xbf14('0x6d')](config[_0xbf14('0x6e')],'server/files/chat/iframe.ejs'),_0xbf14('0xca'));var _0x455a61={'remote':_0x55b3fd[_0xbf14('0x107')],'query':querystring['stringify'](_[_0xbf14('0x43')](_0x55b3fd[_0xbf14('0x4b')]({'plain':!![]}),{'customerIp':_0x4942fe[_0xbf14('0x81')][_0xbf14('0x108')]||_0x4942fe[_0xbf14('0x81')][_0xbf14('0x109')]||_0x4942fe['connection'][_0xbf14('0x10a')]||_0x4942fe['ip'],'referer':_0x4942fe[_0xbf14('0x81')][_0xbf14('0x10b')],'openedInteractions':_0x1e13f0,'maxInteractions':_0x52af53,'virtual':_0x27fce8['virtual'],'online':_0x33e9d7,'custom':_0x27fce8}))[_0xbf14('0x10c')](/'/g,'\x5c\x27')};_0x50d8f2['send'](ejs['render'](Mustache['render'](_0x1f9732,_0x455a61),{'proactiveActions':_0x476efe,'alignment':_0x55b3fd[_0xbf14('0x10d')],'verticalAlignment':_0x55b3fd['verticalAlignment'],'div_color':_0x55b3fd[_0xbf14('0xf1')],'labelText':_0x55b3fd[_0xbf14('0x10e')],'text_color':_0x55b3fd[_0xbf14('0x10f')],'button_color':_0x55b3fd['color_button'],'background_color':_0x55b3fd[_0xbf14('0x110')],'hideWhenOffline':_0x55b3fd[_0xbf14('0x111')],'interval':_0x55b3fd[_0xbf14('0x112')]}));})[_0xbf14('0x20')](handleError(_0x50d8f2,null));};exports[_0xbf14('0x113')]=function(_0x16a0bb,_0x2c8cea){var _0x5d2a7c=_0x16a0bb[_0xbf14('0x52')]['id'];var _0x1a1575=_0x16a0bb[_0xbf14('0x51')];var _0x4cd609=0xc8;var _0x5d8c71=null;return db[_0xbf14('0xd3')][_0xbf14('0x114')]({'isolationLevel':db['sequelize']['Transaction']['ISOLATION_LEVELS']['READ_COMMITTED']},function(_0x1c89d5){return db[_0xbf14('0x45')]['findOne']({'where':{'id':_0x5d2a7c},'transaction':_0x1c89d5})[_0xbf14('0x15')](function(_0x23587e){if(_0x23587e){return db[_0xbf14('0x96')][_0xbf14('0x2b')]({'where':{'ChatWebsiteId':_0x5d2a7c},'transaction':_0x1c89d5})[_0xbf14('0x15')](function(){var _0x3d3c5c=_[_0xbf14('0x34')](_0x1a1575,function(_0x2c97d9){_0x2c97d9[_0xbf14('0x55')]=_0x5d2a7c;return _0x2c97d9;});return db['ChatApplication'][_0xbf14('0xd5')](_0x3d3c5c,{'transaction':_0x1c89d5});});}else{_0x4cd609=0x194;_0x5d8c71=[];}});})[_0xbf14('0x15')](function(){if(_0x4cd609!==0x194){return db[_0xbf14('0x96')][_0xbf14('0x115')]({'where':{'ChatWebsiteId':_0x5d2a7c},'order':'priority'})[_0xbf14('0x15')](function(_0x21a7fd){_0x5d8c71=_0x21a7fd;});}})['catch'](function(_0x1ee25e){_0x4cd609=0x1f4;logger['error'](_0x1ee25e['stack']);if(_0x1ee25e[_0xbf14('0x30')]){delete _0x1ee25e['name'];}_0x5d8c71=_0x1ee25e;})[_0xbf14('0x116')](function(){if(_0x5d8c71===null){_0x2c8cea[_0xbf14('0x21')](_0x4cd609);}else{if(_0x4cd609===0x1f4){_0x2c8cea[_0xbf14('0x22')](_0x4cd609)['send'](_0x5d8c71);}else{_0x2c8cea[_0xbf14('0x22')](_0x4cd609)[_0xbf14('0x23')](_0x5d8c71);}}});};exports[_0xbf14('0x117')]=function(_0x50b890,_0x4bef0e){var _0x395e8b={};var _0x1d06aa={};var _0x332547;var _0x48c45c;return db[_0xbf14('0x45')][_0xbf14('0x58')]({'where':{'id':_0x50b890[_0xbf14('0x52')]['id']}})[_0xbf14('0x15')](handleEntityNotFound(_0x4bef0e,null))[_0xbf14('0x15')](function(_0x519d43){if(_0x519d43){_0x332547=_0x519d43;_0x1d06aa[_0xbf14('0x37')]=_[_0xbf14('0x38')](db[_0xbf14('0x96')]['rawAttributes']);_0x1d06aa['query']=_[_0xbf14('0x38')](_0x50b890['query']);_0x1d06aa[_0xbf14('0x3a')]=_[_0xbf14('0x3b')](_0x1d06aa['model'],_0x1d06aa[_0xbf14('0x39')]);_0x395e8b['attributes']=_[_0xbf14('0x3b')](_0x1d06aa['model'],qs[_0xbf14('0x3d')](_0x50b890['query'][_0xbf14('0x3d')]));_0x395e8b[_0xbf14('0x3c')]=_0x395e8b[_0xbf14('0x3c')][_0xbf14('0x3e')]?_0x395e8b['attributes']:_0x1d06aa['model'];_0x395e8b[_0xbf14('0x5a')]=qs[_0xbf14('0x40')](_0x50b890['query']['sort']);_0x395e8b[_0xbf14('0x41')]=qs['filters'](_['pick'](_0x50b890[_0xbf14('0x39')],_0x1d06aa[_0xbf14('0x3a')]));if(_0x50b890[_0xbf14('0x39')][_0xbf14('0x5b')]){_0x395e8b['where']=_['merge'](_0x395e8b[_0xbf14('0x41')],{'$or':_[_0xbf14('0x34')](_0x395e8b[_0xbf14('0x3c')],function(_0x5de2f3){var _0x337340={};_0x337340[_0x5de2f3]={'$like':'%'+_0x50b890[_0xbf14('0x39')][_0xbf14('0x5b')]+'%'};return _0x337340;})});}_0x395e8b=_[_0xbf14('0x43')]({},_0x395e8b,_0x50b890[_0xbf14('0x44')]);return _0x332547[_0xbf14('0x117')](_0x395e8b);}})[_0xbf14('0x15')](function(_0x5b2e31){if(_0x5b2e31){_0x48c45c=_0x5b2e31[_0xbf14('0x3e')];if(!_0x50b890[_0xbf14('0x39')]['hasOwnProperty'](_0xbf14('0x3f'))){_0x395e8b['limit']=qs[_0xbf14('0x27')](_0x50b890[_0xbf14('0x39')]['limit']);_0x395e8b[_0xbf14('0x24')]=qs[_0xbf14('0x24')](_0x50b890[_0xbf14('0x39')][_0xbf14('0x24')]);}return _0x332547[_0xbf14('0x117')](_0x395e8b);}})[_0xbf14('0x15')](function(_0x2ae937){if(_0x2ae937){return _0x2ae937?{'count':_0x48c45c,'rows':_0x2ae937}:null;}})['then'](respondWithResult(_0x4bef0e,null))[_0xbf14('0x20')](handleError(_0x4bef0e,null));};exports[_0xbf14('0x118')]=function(_0x3433d1,_0x5758ab){return db[_0xbf14('0x119')][_0xbf14('0x48')]({'where':{'id':_0x3433d1['params']['id']}})[_0xbf14('0x15')](handleEntityNotFound(_0x5758ab,null))['then'](function(_0x20f508){if(_0x20f508){return _0x20f508[_0xbf14('0x118')](_0x3433d1[_0xbf14('0x51')][_0xbf14('0x60')],_[_0xbf14('0xea')](_0x3433d1['body'],['ids','id'])||{});}})[_0xbf14('0x15')](respondWithResult(_0x5758ab,null))[_0xbf14('0x20')](handleError(_0x5758ab,null));};exports[_0xbf14('0xff')]=function(_0x2616c4,_0x132a86){var _0x3a0edb={};var _0x4ad803={};var _0x35c659;var _0x402e7b;return db[_0xbf14('0x45')][_0xbf14('0x58')]({'where':{'id':_0x2616c4[_0xbf14('0x52')]['id']}})[_0xbf14('0x15')](handleEntityNotFound(_0x132a86,null))[_0xbf14('0x15')](function(_0x1c5e40){if(_0x1c5e40){_0x35c659=_0x1c5e40;_0x4ad803[_0xbf14('0x37')]=_['keys'](db[_0xbf14('0x11a')]['rawAttributes']);_0x4ad803[_0xbf14('0x39')]=_[_0xbf14('0x38')](_0x2616c4['query']);_0x4ad803[_0xbf14('0x3a')]=_[_0xbf14('0x3b')](_0x4ad803[_0xbf14('0x37')],_0x4ad803[_0xbf14('0x39')]);_0x3a0edb[_0xbf14('0x3c')]=_['intersection'](_0x4ad803[_0xbf14('0x37')],qs[_0xbf14('0x3d')](_0x2616c4[_0xbf14('0x39')][_0xbf14('0x3d')]));_0x3a0edb[_0xbf14('0x3c')]=_0x3a0edb['attributes'][_0xbf14('0x3e')]?_0x3a0edb[_0xbf14('0x3c')]:_0x4ad803[_0xbf14('0x37')];_0x3a0edb[_0xbf14('0x5a')]=qs[_0xbf14('0x40')](_0x2616c4[_0xbf14('0x39')][_0xbf14('0x40')]);_0x3a0edb[_0xbf14('0x41')]=qs[_0xbf14('0x3a')](_[_0xbf14('0x63')](_0x2616c4[_0xbf14('0x39')],_0x4ad803['filters']));if(_0x2616c4['query'][_0xbf14('0x5b')]){_0x3a0edb[_0xbf14('0x41')]=_[_0xbf14('0x43')](_0x3a0edb[_0xbf14('0x41')],{'$or':_[_0xbf14('0x34')](_0x3a0edb[_0xbf14('0x3c')],function(_0x49b285){var _0x16a01b={};_0x16a01b[_0x49b285]={'$like':'%'+_0x2616c4[_0xbf14('0x39')]['filter']+'%'};return _0x16a01b;})});}_0x3a0edb=_[_0xbf14('0x43')]({},_0x3a0edb,_0x2616c4[_0xbf14('0x44')]);return _0x35c659['getProactiveActions'](_0x3a0edb);}})[_0xbf14('0x15')](function(_0x1dbbbd){if(_0x1dbbbd){_0x402e7b=_0x1dbbbd[_0xbf14('0x3e')];if(!_0x2616c4['query'][_0xbf14('0x59')](_0xbf14('0x3f'))){_0x3a0edb[_0xbf14('0x27')]=qs[_0xbf14('0x27')](_0x2616c4['query']['limit']);_0x3a0edb[_0xbf14('0x24')]=qs[_0xbf14('0x24')](_0x2616c4[_0xbf14('0x39')]['offset']);}return _0x35c659[_0xbf14('0xff')](_0x3a0edb);}})['then'](function(_0x4c3f59){if(_0x4c3f59){return _0x4c3f59?{'count':_0x402e7b,'rows':_0x4c3f59}:null;}})[_0xbf14('0x15')](respondWithResult(_0x132a86,null))['catch'](handleError(_0x132a86,null));};exports[_0xbf14('0x11b')]=function(_0x5a8f40,_0xe5e229){var _0x1eab71=_0x5a8f40[_0xbf14('0x39')]['online']===_0xbf14('0x11c')?_0xbf14('0x11d'):_0xbf14('0x11e');return db[_0xbf14('0x45')][_0xbf14('0x48')]({'attributes':['id',_0x1eab71],'where':{'id':_0x5a8f40[_0xbf14('0x52')]['id']}})['then'](handleEntityNotFound(_0xe5e229,null))[_0xbf14('0x15')](function(_0x47e4ef){if(_0x47e4ef){var _0x3a7fb4=_0x47e4ef[_0x1eab71];var _0xeee990=_0x3a7fb4&&_0x3a7fb4[_0xbf14('0x11f')]?_0x3a7fb4[_0xbf14('0x11f')]:[];_0xe5e229[_0xbf14('0xc3')]({'fromKey':_[_0xbf14('0x71')](_0x3a7fb4['fromKey'])?undefined:_0x3a7fb4['fromKey'],'count':_0xeee990[_0xbf14('0x3e')],'rows':_0xeee990});}})['catch'](handleError(_0xe5e229,null));};exports['getOfflineMessages']=function(_0x5c6b09,_0xd66839){var _0x2cc579={'raw':![],'where':{}};var _0x2db725={};var _0x36d4d1={'count':0x0,'rows':[]};return db['ChatWebsite'][_0xbf14('0x58')]({'where':{'id':_0x5c6b09[_0xbf14('0x52')]['id']}})[_0xbf14('0x15')](handleEntityNotFound(_0xd66839,null))['then'](function(_0x418938){if(_0x418938){_0x2db725[_0xbf14('0x37')]=_[_0xbf14('0x38')](db[_0xbf14('0xcd')][_0xbf14('0x47')]);_0x2db725[_0xbf14('0x39')]=_[_0xbf14('0x38')](_0x5c6b09[_0xbf14('0x39')]);_0x2db725[_0xbf14('0x3a')]=_[_0xbf14('0x3b')](_0x2db725['model'],_0x2db725[_0xbf14('0x39')]);_0x2cc579[_0xbf14('0x3c')]=_[_0xbf14('0x3b')](_0x2db725['model'],qs[_0xbf14('0x3d')](_0x5c6b09['query'][_0xbf14('0x3d')]));_0x2cc579[_0xbf14('0x3c')]=_0x2cc579[_0xbf14('0x3c')][_0xbf14('0x3e')]?_0x2cc579[_0xbf14('0x3c')]:_0x2db725[_0xbf14('0x37')];if(!_0x5c6b09[_0xbf14('0x39')][_0xbf14('0x59')]('nolimit')){_0x2cc579[_0xbf14('0x27')]=qs[_0xbf14('0x27')](_0x5c6b09[_0xbf14('0x39')][_0xbf14('0x27')]);_0x2cc579[_0xbf14('0x24')]=qs[_0xbf14('0x24')](_0x5c6b09['query'][_0xbf14('0x24')]);}_0x2cc579['order']=qs[_0xbf14('0x40')](_0x5c6b09['query'][_0xbf14('0x40')]);_0x2cc579[_0xbf14('0x41')]=qs[_0xbf14('0x3a')](_['pick'](_0x5c6b09[_0xbf14('0x39')],_0x2db725[_0xbf14('0x3a')]));_0x2cc579[_0xbf14('0x41')][_0xbf14('0x55')]=_0x418938['id'];if(_0x5c6b09['query'][_0xbf14('0x5b')]){_0x2cc579[_0xbf14('0x41')]=_['merge'](_0x2cc579[_0xbf14('0x41')],{'$or':_[_0xbf14('0x34')](_0x2cc579[_0xbf14('0x3c')],function(_0x221e3b){var _0x2d99f0={};_0x2d99f0[_0x221e3b]={'$like':'%'+_0x5c6b09[_0xbf14('0x39')]['filter']+'%'};return _0x2d99f0;})});}_0x2cc579=_[_0xbf14('0x43')]({},_0x2cc579,_0x5c6b09[_0xbf14('0x44')]);return db['ChatOfflineMessage']['count']({'where':_0x2cc579['where']})['then'](function(_0x485cbc){_0x36d4d1['count']=_0x485cbc;if(_0x5c6b09[_0xbf14('0x39')]['includeAll']){_0x2cc579['include']=[{'all':!![]}];}else{_0x2cc579[_0xbf14('0x5c')]=[{'model':db[_0xbf14('0x85')],'as':_0xbf14('0xeb'),'required':![]},{'model':db[_0xbf14('0xd4')],'as':_0xbf14('0x120'),'required':![]}];}return db['ChatOfflineMessage'][_0xbf14('0x5d')](_0x2cc579);})['then'](function(_0x394958){_0x36d4d1['rows']=_0x394958;return _0x36d4d1;});}})['then'](respondWithFilteredResult(_0xd66839,_0x2cc579))[_0xbf14('0x20')](handleError(_0xd66839,null));};exports[_0xbf14('0x121')]=function(_0x8798ed,_0x2e3fd1){return db[_0xbf14('0x45')][_0xbf14('0x48')]({'where':{'id':_0x8798ed[_0xbf14('0x52')]['id']}})[_0xbf14('0x15')](handleEntityNotFound(_0x2e3fd1,null))['then'](function(_0x457ae5){if(_0x457ae5){return _0x457ae5[_0xbf14('0x121')](_0x8798ed[_0xbf14('0x51')]['ids'],_[_0xbf14('0xea')](_0x8798ed['body'],[_0xbf14('0x60'),'id'])||{})[_0xbf14('0xaf')](function(_0x1d58e0){for(var _0x35b7da=0x0;_0x35b7da<_0x8798ed[_0xbf14('0x51')][_0xbf14('0x60')][_0xbf14('0x3e')];_0x35b7da+=0x1){socket[_0xbf14('0x122')]('userChatWebsite:save',{'UserId':Number(_0x8798ed[_0xbf14('0x51')]['ids'][_0x35b7da]),'ChatWebsiteId':Number(_0x8798ed[_0xbf14('0x52')]['id'])});}return _0x1d58e0;});}})[_0xbf14('0x15')](respondWithResult(_0x2e3fd1,null))[_0xbf14('0x20')](handleError(_0x2e3fd1,null));};exports[_0xbf14('0x123')]=function(_0x2f27e8,_0x1c97ab){return db[_0xbf14('0x45')][_0xbf14('0x48')]({'where':{'id':_0x2f27e8[_0xbf14('0x52')]['id']}})[_0xbf14('0x15')](handleEntityNotFound(_0x1c97ab,null))['then'](function(_0x3c86c6){if(_0x3c86c6){return _0x3c86c6['removeAgents'](_0x2f27e8[_0xbf14('0x39')]['ids'])['then'](function(){if(_[_0xbf14('0x124')](_0x2f27e8[_0xbf14('0x39')][_0xbf14('0x60')])){for(var _0xefc20b=0x0;_0xefc20b<_0x2f27e8['query']['ids'][_0xbf14('0x3e')];_0xefc20b+=0x1){socket[_0xbf14('0x122')](_0xbf14('0x125'),{'UserId':Number(_0x2f27e8['query'][_0xbf14('0x60')][_0xefc20b]),'ChatWebsiteId':Number(_0x2f27e8[_0xbf14('0x52')]['id'])});}}else{socket[_0xbf14('0x122')]('userChatWebsite:remove',{'UserId':Number(_0x2f27e8[_0xbf14('0x39')][_0xbf14('0x60')]),'ChatWebsiteId':Number(_0x2f27e8['params']['id'])});}});}})[_0xbf14('0x15')](respondWithStatusCode(_0x1c97ab,null))['catch'](handleError(_0x1c97ab,null));};exports[_0xbf14('0x126')]=function(_0x476257,_0x124425){var _0x28841c={};var _0x3e3ad9={};var _0x137b0d;var _0xc9c598;return db[_0xbf14('0x45')]['findOne']({'where':{'id':_0x476257[_0xbf14('0x52')]['id']}})[_0xbf14('0x15')](handleEntityNotFound(_0x124425,null))[_0xbf14('0x15')](function(_0x8a0847){if(_0x8a0847){_0x137b0d=_0x8a0847;_0x3e3ad9['model']=_[_0xbf14('0x38')](db[_0xbf14('0xec')]['rawAttributes']);_0x3e3ad9['query']=_[_0xbf14('0x38')](_0x476257[_0xbf14('0x39')]);_0x3e3ad9[_0xbf14('0x3a')]=_[_0xbf14('0x3b')](_0x3e3ad9['model'],_0x3e3ad9[_0xbf14('0x39')]);_0x28841c[_0xbf14('0x3c')]=_[_0xbf14('0x3b')](_0x3e3ad9[_0xbf14('0x37')],qs[_0xbf14('0x3d')](_0x476257['query'][_0xbf14('0x3d')]));_0x28841c[_0xbf14('0x3c')]=_0x28841c[_0xbf14('0x3c')]['length']?_0x28841c[_0xbf14('0x3c')]:_0x3e3ad9[_0xbf14('0x37')];_0x28841c['order']=qs['sort'](_0x476257['query'][_0xbf14('0x40')]);_0x28841c[_0xbf14('0x41')]=qs[_0xbf14('0x3a')](_['pick'](_0x476257[_0xbf14('0x39')],_0x3e3ad9[_0xbf14('0x3a')]));if(_0x476257['query'][_0xbf14('0x5b')]){_0x28841c['where']=_['merge'](_0x28841c[_0xbf14('0x41')],{'$or':_['map'](_0x28841c[_0xbf14('0x3c')],function(_0x567f20){var _0x21a8db={};_0x21a8db[_0x567f20]={'$like':'%'+_0x476257['query'][_0xbf14('0x5b')]+'%'};return _0x21a8db;})});}_0x28841c=_[_0xbf14('0x43')]({},_0x28841c,_0x476257[_0xbf14('0x44')]);return _0x137b0d['getAgents'](_0x28841c);}})['then'](function(_0x48ceb0){if(_0x48ceb0){_0xc9c598=_0x48ceb0['length'];if(!_0x476257[_0xbf14('0x39')][_0xbf14('0x59')](_0xbf14('0x3f'))){_0x28841c['limit']=qs[_0xbf14('0x27')](_0x476257[_0xbf14('0x39')]['limit']);_0x28841c[_0xbf14('0x24')]=qs[_0xbf14('0x24')](_0x476257['query'][_0xbf14('0x24')]);}return _0x137b0d[_0xbf14('0x126')](_0x28841c);}})[_0xbf14('0x15')](function(_0x3b596){if(_0x3b596){return _0x3b596?{'count':_0xc9c598,'rows':_0x3b596}:null;}})[_0xbf14('0x15')](respondWithResult(_0x124425,null))['catch'](handleError(_0x124425,null));};