Built motion from commit c738b9ac.|2.6.25
[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 _0x229b=['Chat\x20Website\x20with\x20id\x20%s\x20not\x20found','timezone','ifTime','account','orderBy','priority','asc','Contacts','ListId','contact','headers','threadId','ChatInteraction','referer','closed','externalUrl','ContactId','Writing\x20on\x20closed\x20interaction','firstName','messageId','interaction','created','autoclose','applications','close','*,*,*,*','ChatMessage','AttachmentId','waitForTheAssignedAgent','forcedOwnership','queueId','unshift','queue','waitForTheAssignedQueue','Start','startRouting','EventManager','offline','files','Sequelize','ValidationError','no\x20available\x20attributes','difference','from\x20is\x20mandatory','body\x20is\x20mandatory\x20and\x20not\x20empty','mapKeyOffline','mapKeyOffline\x20is\x20mandatory,\x20please\x20use\x20one\x20of\x20these:\x20','mapKeyOffline\x20invalid,\x20please\x20use\x20one\x20of\x20these:\x20','MailAccount','spread','server/files/templates/chatOfflineMessage.ejs','render','toPairs','offlineMessageBody','ChatOfflineMessage','fromString','originalname','mimetype','server','attachments','offline-chat','basename','sequelize','transaction','Attachment','MailServerOut','Smtp','CloudProvider','forwardOffline','getSmtpOptions','sendMail','\x22%s\x22\x20<%s>','email','user','offlineMessageSubject','openNewInteraction','subjectOffline','toPairsIn','mapValues','Chat','MailAccountId','NotifyMailAccount','remove','Could\x20not\x20remove\x20attachment\x20file','addInteraction','omit','Contact','Owner','fullname','Tag','Tags','tag','getSnippet','getProactiveActions','getLicense','virtual','License','increment','readFileSync','server/files/chat/iframe.ejs','utf8','URL','origin','3.8.1','remote','stringify','x-real-ip','connection','remoteAddress','replace','alignment','verticalAlignment','color','textColor','textButtonColor','backgroundColor','hideWhenOffline','IntervalId','addApplications','bulkCreate','finally','getApplications','addProactiveActions','chatProactiveAction','ChatProactiveAction','getFields','online','false','offlineForm','onlineForm','items','fromKey','getOfflineMessages','Attachments','addAgents','emit','removeAgents','isArray','userChatWebsite:remove','getAgents','User','mustache','util','path','fs-extra','lodash','querystring','html-to-text','ioredis','jayson/promise','url','../../components/parsers/qs','../../config/logger','api','../../config/environment','../../errors/api','APIBadRequestError','APINotFoundError','handleError','../../mysqldb','redis','defaults','localhost','socket.io-emitter','register','client','http','request','then','info','ChatWebsite,\x20%s,\x20%s','request\x20sent','ChatWebsite,\x20%s,\x20%s,\x20%s','error','message','result','catch','sendStatus','status','end','json','limit','count','offset','set','destroy','ChatWebsites','stack','name','send','user-agent-parser','setUA','getResult','customerIp','cf-connecting-ip','x-forwarded-for','first','split','lastName','x-real-port','browser','%s\x20%s','version','unknown','format','model','device','vendor','%s\x20%s\x20%s','type','Pause','mandatoryDispositionPause','map','ChatWebsite','fieldName','keys','query','filters','intersection','fields','attributes','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','VIRTUAL','merge','options','includeAll','findAll','rows','show','params','rawAttributes','find','create','body','get','Unable\x20to\x20retrieve\x20the\x20current\x20user','UserProfileSection','userProfileId','autoAssociation','UserProfileResource','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','update','describe','addDisposition','Disposition','getDispositions','findOne','include','removeDispositions','ids','addAnswer','ChatWebsiteId','CannedAnswer','removeAnswers','addLogo','sitepic','file','filename','addAvatar','agentAvatar','addCustomerAvatar','customerAvatar','addSystemAvatar','systemAvatar','getLogo','join','root','server/files/images/logos/default_logo.svg','../../config/license/util','custom','existsSync','server/files/images/logos/','download','getAvatar','server/files/images/avatars/default_avatar.png','isNil','server/files/images/avatars/','getCustomerAvatar','server/files/images/avatars/customer_avatar.png','showCustomerAvatar','server/files/images/avatars/system_avatar.png','notify','chat','from','From\x20is\x20mandatory','mapKey','MapKey\x20is\x20mandatory','Body\x20is\x20mandatory','CmContact','createdAt','updatedAt','includes','CompanyId','Invalid\x20MapKey\x20parameter.\x20Allowed\x20values:\x20','CmList','List','DESC','ChatApplication','Applications','Interval','Intervals'];(function(_0x20fdc1,_0xde1296){var _0x25397c=function(_0x814b51){while(--_0x814b51){_0x20fdc1['push'](_0x20fdc1['shift']());}};_0x25397c(++_0xde1296);}(_0x229b,0x1c1));var _0xb229=function(_0x49296e,_0x226f1e){_0x49296e=_0x49296e-0x0;var _0x1cb7af=_0x229b[_0x49296e];return _0x1cb7af;};'use strict';var Mustache=require(_0xb229('0x0'));var util=require(_0xb229('0x1'));var path=require(_0xb229('0x2'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0xb229('0x3'));var _=require(_0xb229('0x4'));var querystring=require(_0xb229('0x5'));var htmlToText=require(_0xb229('0x6'));var Redis=require(_0xb229('0x7'));var jayson=require(_0xb229('0x8'));var url=require(_0xb229('0x9'));var qs=require(_0xb229('0xa'));var logger=require(_0xb229('0xb'))(_0xb229('0xc'));var config=require(_0xb229('0xd'));var APIBadRequestError=require(_0xb229('0xe'))[_0xb229('0xf')];var APINotFoundError=require('../../errors/api')[_0xb229('0x10')];var APIOutOfIntervalError=require(_0xb229('0xe'))['APIOutOfIntervalError'];var APIHandleError=require('../../errors/api')[_0xb229('0x11')];var APIConflictError=require(_0xb229('0xe'))['APIConflictError'];var db=require(_0xb229('0x12'))['db'];config[_0xb229('0x13')]=_[_0xb229('0x14')](config[_0xb229('0x13')],{'host':_0xb229('0x15'),'port':0x18eb});var socket=require(_0xb229('0x16'))(new Redis(config[_0xb229('0x13')]));require('./chatWebsite.socket')[_0xb229('0x17')](socket);var client=jayson[_0xb229('0x18')]['http']({'port':0x232c});var client9002=jayson[_0xb229('0x18')][_0xb229('0x19')]({'port':0x232a});var client9003=jayson[_0xb229('0x18')]['http']({'port':0x232b});var client9001=jayson[_0xb229('0x18')][_0xb229('0x19')]({'port':0x2329});function respondWithRpcPromise(_0x278bfa,_0x53ccd3,_0x24de9c,_0x4cd5dd){return new Promise(function(_0x285d6c,_0x31d66d){var _0x1af737=_0x4cd5dd||client;return _0x1af737[_0xb229('0x1a')](_0x278bfa,_0x24de9c)[_0xb229('0x1b')](function(_0x575c4a){logger[_0xb229('0x1c')](_0xb229('0x1d'),_0x53ccd3,_0xb229('0x1e'));logger['debug'](_0xb229('0x1f'),_0x53ccd3,'request\x20sent',JSON['stringify'](_0x575c4a));if(_0x575c4a['error']){if(_0x575c4a['error']['code']===0x1f4){logger[_0xb229('0x20')]('ChatWebsite,\x20%s,\x20%s',_0x53ccd3,_0x575c4a[_0xb229('0x20')]['message']);return _0x31d66d(_0x575c4a[_0xb229('0x20')][_0xb229('0x21')]);}logger[_0xb229('0x20')]('ChatWebsite,\x20%s,\x20%s',_0x53ccd3,_0x575c4a['error']['message']);return _0x285d6c(_0x575c4a['error'][_0xb229('0x21')]);}else{logger[_0xb229('0x1c')](_0xb229('0x1d'),_0x53ccd3,_0xb229('0x1e'));_0x285d6c(_0x575c4a[_0xb229('0x22')]['message']);}})[_0xb229('0x23')](function(_0xfedc22){logger[_0xb229('0x20')](_0xb229('0x1d'),_0x53ccd3,_0xfedc22);_0x31d66d(_0xfedc22);});});}function respondWithStatusCode(_0x5ff469,_0x240b18){_0x240b18=_0x240b18||0xcc;return function(_0x35103a){if(_0x35103a){return _0x5ff469[_0xb229('0x24')](_0x240b18);}return _0x5ff469[_0xb229('0x25')](_0x240b18)[_0xb229('0x26')]();};}function respondWithResult(_0x57e635,_0x2e26fc){_0x2e26fc=_0x2e26fc||0xc8;return function(_0x25a28b){if(_0x25a28b){return _0x57e635[_0xb229('0x25')](_0x2e26fc)[_0xb229('0x27')](_0x25a28b);}};}function respondWithFilteredResult(_0x4cdd86,_0x1f6bb0){return function(_0x4dd7ea){if(_0x4dd7ea){var _0x4d5c5d=typeof _0x1f6bb0['offset']==='undefined'&&typeof _0x1f6bb0[_0xb229('0x28')]==='undefined';var _0x27c8b8=_0x4dd7ea[_0xb229('0x29')];var _0x213043=_0x4d5c5d?0x0:_0x1f6bb0[_0xb229('0x2a')];var _0x2cc562=_0x4d5c5d?_0x4dd7ea[_0xb229('0x29')]:_0x1f6bb0['offset']+_0x1f6bb0[_0xb229('0x28')];var _0x2f1295;if(_0x2cc562>=_0x27c8b8){_0x2cc562=_0x27c8b8;_0x2f1295=0xc8;}else{_0x2f1295=0xce;}_0x4cdd86['status'](_0x2f1295);return _0x4cdd86[_0xb229('0x2b')]('Content-Range',_0x213043+'-'+_0x2cc562+'/'+_0x27c8b8)['json'](_0x4dd7ea);}return null;};}function saveUpdates(_0x23b01e){return function(_0x28c7fb){if(_0x28c7fb){return _0x28c7fb['update'](_0x23b01e)['then'](function(_0x17813e){return _0x17813e;});}return null;};}function removeEntity(_0x228a67){return function(_0x4366ba){if(_0x4366ba){return _0x4366ba[_0xb229('0x2c')]()[_0xb229('0x1b')](function(){var _0x40b7fb=_0x4366ba['get']({'plain':!![]});var _0x4225f7=_0xb229('0x2d');return db['UserProfileResource'][_0xb229('0x2c')]({'where':{'type':_0x4225f7,'resourceId':_0x40b7fb['id']}})[_0xb229('0x1b')](function(){return _0x4366ba;});})[_0xb229('0x1b')](function(){_0x228a67['status'](0xcc)[_0xb229('0x26')]();});}};}function handleEntityNotFound(_0x82a350){return function(_0x5f115f){if(!_0x5f115f){_0x82a350['sendStatus'](0x194);}return _0x5f115f;};}function handleError(_0x46717c,_0x4f719e){_0x4f719e=_0x4f719e||0x1f4;return function(_0x4eb895){logger[_0xb229('0x20')](_0x4eb895[_0xb229('0x2e')]);if(_0x4eb895[_0xb229('0x2f')]){delete _0x4eb895[_0xb229('0x2f')];}_0x46717c[_0xb229('0x25')](_0x4f719e)[_0xb229('0x30')](_0x4eb895);};}function createInteractionObject(_0x14f22f,_0xc51f2a,_0x1f572b,_0x5d1d76){var _0x298fa8=require(_0xb229('0x31'));var _0x2db185=new _0x298fa8();var _0x11fb6e=_0x2db185[_0xb229('0x32')](_0x1f572b['user-agent'])[_0xb229('0x33')]();var _0x5d3d75=_0xc51f2a[_0xb229('0x34')];if(_0x1f572b[_0xb229('0x35')]){_0x5d3d75=_0x1f572b[_0xb229('0x35')];}else if(_0x1f572b[_0xb229('0x36')]){_0x5d3d75=_[_0xb229('0x37')](_0x1f572b[_0xb229('0x36')][_0xb229('0x38')](','));}return{'ContactId':_0x5d1d76['id'],'ChatWebsiteId':_0x14f22f,'from':(_0x5d1d76['firstName']||'')+'\x20'+(_0x5d1d76[_0xb229('0x39')]||''),'customerIp':_0x5d3d75,'customerPort':_0x1f572b['x-real-port']?_0x1f572b[_0xb229('0x3a')]:null,'referer':_0xc51f2a['referer'],'browserName':_0x11fb6e[_0xb229('0x3b')][_0xb229('0x2f')]&&_0x11fb6e[_0xb229('0x3b')]['version']?util['format'](_0xb229('0x3c'),_0x11fb6e['browser'][_0xb229('0x2f')],_0x11fb6e[_0xb229('0x3b')][_0xb229('0x3d')]):_0xb229('0x3e'),'browserVersion':_0x11fb6e['browser']['version']||_0xb229('0x3e'),'osName':util[_0xb229('0x3f')](_0xb229('0x3c'),_0x11fb6e['os'][_0xb229('0x2f')],_0x11fb6e['os']['version']),'osVersion':_0x11fb6e['os'][_0xb229('0x3d')],'deviceModel':_0x11fb6e['device'][_0xb229('0x40')]&&_0x11fb6e[_0xb229('0x41')][_0xb229('0x42')]?util[_0xb229('0x3f')](_0xb229('0x43'),_0x11fb6e[_0xb229('0x41')][_0xb229('0x40')],_0x11fb6e[_0xb229('0x41')][_0xb229('0x42')],_0x11fb6e[_0xb229('0x41')][_0xb229('0x44')]):null,'deviceVendor':_0x11fb6e[_0xb229('0x41')][_0xb229('0x42')],'deviceType':_0x11fb6e[_0xb229('0x41')][_0xb229('0x44')],'formData':JSON['stringify'](_0xc51f2a)};}exports['index']=function(_0x4c0855,_0xe38fbc){var _0x4bcd43={'include':[{'model':db[_0xb229('0x45')],'as':_0xb229('0x46')}]},_0x460ffe={},_0xd69718={'count':0x0,'rows':[]};var _0x23fcbc=_[_0xb229('0x47')](db[_0xb229('0x48')]['rawAttributes'],function(_0x2f008e){return{'name':_0x2f008e[_0xb229('0x49')],'type':_0x2f008e[_0xb229('0x44')]['key']};});_0x460ffe[_0xb229('0x40')]=_[_0xb229('0x47')](_0x23fcbc,'name');_0x460ffe['query']=_[_0xb229('0x4a')](_0x4c0855[_0xb229('0x4b')]);_0x460ffe[_0xb229('0x4c')]=_[_0xb229('0x4d')](_0x460ffe[_0xb229('0x40')],_0x460ffe['query']);_0x4bcd43['attributes']=_[_0xb229('0x4d')](_0x460ffe[_0xb229('0x40')],qs[_0xb229('0x4e')](_0x4c0855[_0xb229('0x4b')]['fields']));_0x4bcd43[_0xb229('0x4f')]=_0x4bcd43[_0xb229('0x4f')][_0xb229('0x50')]?_0x4bcd43[_0xb229('0x4f')]:_0x460ffe[_0xb229('0x40')];if(!_0x4c0855[_0xb229('0x4b')][_0xb229('0x51')](_0xb229('0x52'))){_0x4bcd43[_0xb229('0x28')]=qs[_0xb229('0x28')](_0x4c0855[_0xb229('0x4b')]['limit']);_0x4bcd43[_0xb229('0x2a')]=qs['offset'](_0x4c0855[_0xb229('0x4b')][_0xb229('0x2a')]);}_0x4bcd43[_0xb229('0x53')]=qs[_0xb229('0x54')](_0x4c0855[_0xb229('0x4b')][_0xb229('0x54')]);_0x4bcd43[_0xb229('0x55')]=qs['filters'](_[_0xb229('0x56')](_0x4c0855['query'],_0x460ffe[_0xb229('0x4c')]),_0x23fcbc);if(_0x4c0855[_0xb229('0x4b')][_0xb229('0x57')]){_0x4bcd43[_0xb229('0x55')]=_['merge'](_0x4bcd43[_0xb229('0x55')],{'$or':_[_0xb229('0x47')](_0x23fcbc,function(_0x2e03cb){if(_0x2e03cb['type']!==_0xb229('0x58')){var _0x170d77={};_0x170d77[_0x2e03cb['name']]={'$like':'%'+_0x4c0855[_0xb229('0x4b')][_0xb229('0x57')]+'%'};return _0x170d77;}})});}_0x4bcd43=_[_0xb229('0x59')]({},_0x4bcd43,_0x4c0855[_0xb229('0x5a')]);var _0x372ccc={'where':_0x4bcd43[_0xb229('0x55')]};return db['ChatWebsite'][_0xb229('0x29')](_0x372ccc)['then'](function(_0xc9c909){_0xd69718[_0xb229('0x29')]=_0xc9c909;if(_0x4c0855[_0xb229('0x4b')][_0xb229('0x5b')]){_0x4bcd43['include']=[{'all':!![]}];}return db[_0xb229('0x48')][_0xb229('0x5c')](_0x4bcd43);})[_0xb229('0x1b')](function(_0x252b4d){_0xd69718[_0xb229('0x5d')]=_0x252b4d;return _0xd69718;})[_0xb229('0x1b')](respondWithFilteredResult(_0xe38fbc,_0x4bcd43))[_0xb229('0x23')](handleError(_0xe38fbc,null));};exports[_0xb229('0x5e')]=function(_0x70fda8,_0x205793){var _0x5873ae={'raw':![],'where':{'id':_0x70fda8[_0xb229('0x5f')]['id']},'include':[{'model':db[_0xb229('0x45')],'as':_0xb229('0x46')}]},_0x17d7d4={};_0x17d7d4[_0xb229('0x40')]=_[_0xb229('0x4a')](db['ChatWebsite'][_0xb229('0x60')]);_0x17d7d4[_0xb229('0x4b')]=_[_0xb229('0x4a')](_0x70fda8[_0xb229('0x4b')]);_0x17d7d4[_0xb229('0x4c')]=_[_0xb229('0x4d')](_0x17d7d4[_0xb229('0x40')],_0x17d7d4[_0xb229('0x4b')]);_0x5873ae[_0xb229('0x4f')]=_[_0xb229('0x4d')](_0x17d7d4[_0xb229('0x40')],qs[_0xb229('0x4e')](_0x70fda8[_0xb229('0x4b')][_0xb229('0x4e')]));_0x5873ae[_0xb229('0x4f')]=_0x5873ae[_0xb229('0x4f')][_0xb229('0x50')]?_0x5873ae[_0xb229('0x4f')]:_0x17d7d4[_0xb229('0x40')];if(_0x70fda8[_0xb229('0x4b')]['includeAll']){_0x5873ae['include']=[{'all':!![]}];}_0x5873ae=_[_0xb229('0x59')]({},_0x5873ae,_0x70fda8['options']);return db['ChatWebsite'][_0xb229('0x61')](_0x5873ae)[_0xb229('0x1b')](handleEntityNotFound(_0x205793,null))['then'](respondWithResult(_0x205793,null))[_0xb229('0x23')](handleError(_0x205793,null));};exports[_0xb229('0x62')]=function(_0x5e826f,_0xdd76c){return db['ChatWebsite']['create'](_0x5e826f[_0xb229('0x63')],{})[_0xb229('0x1b')](function(_0x3f324a){var _0x5f249e=_0x5e826f['user'][_0xb229('0x64')]({'plain':!![]});if(!_0x5f249e)throw new Error(_0xb229('0x65'));if(_0x5f249e['role']==='user'){var _0x2e3863=_0x3f324a[_0xb229('0x64')]({'plain':!![]});var _0x33d263=_0xb229('0x2d');return db[_0xb229('0x66')]['find']({'where':{'name':_0x33d263,'userProfileId':_0x5f249e[_0xb229('0x67')]},'raw':!![]})['then'](function(_0x1d321d){if(_0x1d321d&&_0x1d321d[_0xb229('0x68')]===0x0){return db[_0xb229('0x69')][_0xb229('0x62')]({'name':_0x2e3863[_0xb229('0x2f')],'resourceId':_0x2e3863['id'],'type':_0x1d321d[_0xb229('0x2f')],'sectionId':_0x1d321d['id']},{})[_0xb229('0x1b')](function(){return _0x3f324a;});}else{return _0x3f324a;}})[_0xb229('0x23')](function(_0x57363b){logger['error'](_0xb229('0x6a'),_0x57363b);throw _0x57363b;});}return _0x3f324a;})[_0xb229('0x1b')](respondWithResult(_0xdd76c,0xc9))[_0xb229('0x23')](handleError(_0xdd76c,null));};exports[_0xb229('0x6b')]=function(_0x17ae7f,_0x540904){if(_0x17ae7f['body']['id']){delete _0x17ae7f[_0xb229('0x63')]['id'];}return db['ChatWebsite']['find']({'where':{'id':_0x17ae7f[_0xb229('0x5f')]['id']},'include':[{'model':db[_0xb229('0x45')],'as':_0xb229('0x46')}]})[_0xb229('0x1b')](handleEntityNotFound(_0x540904,null))[_0xb229('0x1b')](saveUpdates(_0x17ae7f['body'],null))['then'](respondWithResult(_0x540904,null))[_0xb229('0x23')](handleError(_0x540904,null));};exports[_0xb229('0x2c')]=function(_0x2b27a5,_0x2dbbda){return db[_0xb229('0x48')][_0xb229('0x61')]({'where':{'id':_0x2b27a5[_0xb229('0x5f')]['id']}})[_0xb229('0x1b')](handleEntityNotFound(_0x2dbbda,null))['then'](removeEntity(_0x2dbbda,null))['catch'](handleError(_0x2dbbda,null));};exports['describe']=function(_0x338242,_0x1871bb){return db['ChatWebsite'][_0xb229('0x6c')]()[_0xb229('0x1b')](respondWithResult(_0x1871bb,null))['catch'](handleError(_0x1871bb,null));};exports[_0xb229('0x6d')]=function(_0x573fff,_0x85fcc3){if(_0x573fff[_0xb229('0x63')]['id']){delete _0x573fff['body']['id'];}return db[_0xb229('0x48')]['find']({'where':{'id':_0x573fff[_0xb229('0x5f')]['id']}})[_0xb229('0x1b')](handleEntityNotFound(_0x85fcc3,null))[_0xb229('0x1b')](function(_0x3ecb01){if(_0x3ecb01){_0x573fff[_0xb229('0x63')]['ChatWebsiteId']=_0x3ecb01['id'];return db[_0xb229('0x6e')][_0xb229('0x62')](_0x573fff['body']);}})[_0xb229('0x1b')](respondWithResult(_0x85fcc3,null))[_0xb229('0x23')](handleError(_0x85fcc3,null));};exports[_0xb229('0x6f')]=function(_0x30ea8f,_0x1c780d){var _0x3c0919={'raw':![],'where':{}};var _0x596123={};var _0x4ff9a3={'count':0x0,'rows':[]};return db['ChatWebsite'][_0xb229('0x70')]({'where':{'id':_0x30ea8f['params']['id']}})[_0xb229('0x1b')](handleEntityNotFound(_0x1c780d,null))[_0xb229('0x1b')](function(_0x2e4d71){if(_0x2e4d71){_0x596123[_0xb229('0x40')]=_[_0xb229('0x4a')](db['Disposition'][_0xb229('0x60')]);_0x596123[_0xb229('0x4b')]=_[_0xb229('0x4a')](_0x30ea8f[_0xb229('0x4b')]);_0x596123[_0xb229('0x4c')]=_[_0xb229('0x4d')](_0x596123[_0xb229('0x40')],_0x596123[_0xb229('0x4b')]);_0x3c0919[_0xb229('0x4f')]=_['intersection'](_0x596123['model'],qs[_0xb229('0x4e')](_0x30ea8f[_0xb229('0x4b')]['fields']));_0x3c0919[_0xb229('0x4f')]=_0x3c0919[_0xb229('0x4f')][_0xb229('0x50')]?_0x3c0919[_0xb229('0x4f')]:_0x596123['model'];if(!_0x30ea8f[_0xb229('0x4b')][_0xb229('0x51')]('nolimit')){_0x3c0919[_0xb229('0x28')]=qs['limit'](_0x30ea8f[_0xb229('0x4b')]['limit']);_0x3c0919[_0xb229('0x2a')]=qs['offset'](_0x30ea8f['query']['offset']);}_0x3c0919[_0xb229('0x53')]=qs[_0xb229('0x54')](_0x30ea8f['query'][_0xb229('0x54')]);_0x3c0919[_0xb229('0x55')]=qs[_0xb229('0x4c')](_[_0xb229('0x56')](_0x30ea8f['query'],_0x596123[_0xb229('0x4c')]));_0x3c0919[_0xb229('0x55')]['ChatWebsiteId']=_0x2e4d71['id'];if(_0x30ea8f[_0xb229('0x4b')][_0xb229('0x57')]){_0x3c0919['where']=_[_0xb229('0x59')](_0x3c0919['where'],{'$or':_[_0xb229('0x47')](_0x3c0919[_0xb229('0x4f')],function(_0x5e63fc){var _0x3c5f0f={};_0x3c5f0f[_0x5e63fc]={'$like':'%'+_0x30ea8f[_0xb229('0x4b')][_0xb229('0x57')]+'%'};return _0x3c5f0f;})});}_0x3c0919=_['merge']({},_0x3c0919,_0x30ea8f[_0xb229('0x5a')]);return db['Disposition'][_0xb229('0x29')]({'where':_0x3c0919[_0xb229('0x55')]})['then'](function(_0x109791){_0x4ff9a3[_0xb229('0x29')]=_0x109791;if(_0x30ea8f['query'][_0xb229('0x5b')]){_0x3c0919[_0xb229('0x71')]=[{'all':!![]}];}return db['Disposition']['findAll'](_0x3c0919);})[_0xb229('0x1b')](function(_0x3df6eb){_0x4ff9a3['rows']=_0x3df6eb;return _0x4ff9a3;});}})[_0xb229('0x1b')](respondWithFilteredResult(_0x1c780d,_0x3c0919))[_0xb229('0x23')](handleError(_0x1c780d,null));};exports[_0xb229('0x72')]=function(_0x364a81,_0x210dc1){return db[_0xb229('0x48')][_0xb229('0x61')]({'where':{'id':_0x364a81['params']['id']}})['then'](handleEntityNotFound(_0x210dc1,null))[_0xb229('0x1b')](function(_0x23b5dd){if(_0x23b5dd){return _0x23b5dd['removeDispositions'](_0x364a81[_0xb229('0x4b')][_0xb229('0x73')]);}})[_0xb229('0x1b')](respondWithStatusCode(_0x210dc1,null))[_0xb229('0x23')](handleError(_0x210dc1,null));};exports[_0xb229('0x74')]=function(_0x2396da,_0x235207){if(_0x2396da[_0xb229('0x63')]['id']){delete _0x2396da[_0xb229('0x63')]['id'];}return db[_0xb229('0x48')][_0xb229('0x61')]({'where':{'id':_0x2396da[_0xb229('0x5f')]['id']}})[_0xb229('0x1b')](handleEntityNotFound(_0x235207,null))['then'](function(_0x416217){if(_0x416217){_0x2396da['body'][_0xb229('0x75')]=_0x416217['id'];return db[_0xb229('0x76')]['create'](_0x2396da['body']);}})[_0xb229('0x1b')](respondWithResult(_0x235207,null))['catch'](handleError(_0x235207,null));};exports['getAnswers']=function(_0x4cec51,_0x38fb4f){var _0x49d08d={'raw':![],'where':{}};var _0xe8f785={};var _0x18ccaa={'count':0x0,'rows':[]};return db['ChatWebsite'][_0xb229('0x70')]({'where':{'id':_0x4cec51[_0xb229('0x5f')]['id']}})[_0xb229('0x1b')](handleEntityNotFound(_0x38fb4f,null))['then'](function(_0x110728){if(_0x110728){_0xe8f785[_0xb229('0x40')]=_[_0xb229('0x4a')](db[_0xb229('0x76')][_0xb229('0x60')]);_0xe8f785[_0xb229('0x4b')]=_[_0xb229('0x4a')](_0x4cec51['query']);_0xe8f785[_0xb229('0x4c')]=_[_0xb229('0x4d')](_0xe8f785[_0xb229('0x40')],_0xe8f785[_0xb229('0x4b')]);_0x49d08d['attributes']=_[_0xb229('0x4d')](_0xe8f785['model'],qs[_0xb229('0x4e')](_0x4cec51['query'][_0xb229('0x4e')]));_0x49d08d[_0xb229('0x4f')]=_0x49d08d[_0xb229('0x4f')][_0xb229('0x50')]?_0x49d08d[_0xb229('0x4f')]:_0xe8f785[_0xb229('0x40')];if(!_0x4cec51[_0xb229('0x4b')][_0xb229('0x51')](_0xb229('0x52'))){_0x49d08d[_0xb229('0x28')]=qs[_0xb229('0x28')](_0x4cec51[_0xb229('0x4b')]['limit']);_0x49d08d['offset']=qs[_0xb229('0x2a')](_0x4cec51[_0xb229('0x4b')]['offset']);}_0x49d08d[_0xb229('0x53')]=qs[_0xb229('0x54')](_0x4cec51[_0xb229('0x4b')]['sort']);_0x49d08d[_0xb229('0x55')]=qs['filters'](_[_0xb229('0x56')](_0x4cec51[_0xb229('0x4b')],_0xe8f785[_0xb229('0x4c')]));_0x49d08d[_0xb229('0x55')]['ChatWebsiteId']=_0x110728['id'];if(_0x4cec51[_0xb229('0x4b')]['filter']){_0x49d08d['where']=_[_0xb229('0x59')](_0x49d08d[_0xb229('0x55')],{'$or':_['map'](_0x49d08d[_0xb229('0x4f')],function(_0xe8027a){var _0x460d7d={};_0x460d7d[_0xe8027a]={'$like':'%'+_0x4cec51[_0xb229('0x4b')]['filter']+'%'};return _0x460d7d;})});}_0x49d08d=_[_0xb229('0x59')]({},_0x49d08d,_0x4cec51[_0xb229('0x5a')]);return db[_0xb229('0x76')][_0xb229('0x29')]({'where':_0x49d08d[_0xb229('0x55')]})['then'](function(_0x125226){_0x18ccaa[_0xb229('0x29')]=_0x125226;if(_0x4cec51[_0xb229('0x4b')]['includeAll']){_0x49d08d[_0xb229('0x71')]=[{'all':!![]}];}return db[_0xb229('0x76')]['findAll'](_0x49d08d);})[_0xb229('0x1b')](function(_0x437c29){_0x18ccaa[_0xb229('0x5d')]=_0x437c29;return _0x18ccaa;});}})[_0xb229('0x1b')](respondWithFilteredResult(_0x38fb4f,_0x49d08d))[_0xb229('0x23')](handleError(_0x38fb4f,null));};exports[_0xb229('0x77')]=function(_0x14e968,_0x4456e5){return db[_0xb229('0x48')]['find']({'where':{'id':_0x14e968[_0xb229('0x5f')]['id']}})[_0xb229('0x1b')](handleEntityNotFound(_0x4456e5,null))[_0xb229('0x1b')](function(_0x124116){if(_0x124116){return _0x124116[_0xb229('0x77')](_0x14e968[_0xb229('0x4b')][_0xb229('0x73')]);}})[_0xb229('0x1b')](respondWithStatusCode(_0x4456e5,null))['catch'](handleError(_0x4456e5,null));};exports[_0xb229('0x78')]=function(_0xd267b9,_0x5f2fb7){_0xd267b9['body'][_0xb229('0x79')]=_0xd267b9[_0xb229('0x7a')][_0xb229('0x7b')];return db[_0xb229('0x48')]['find']({'where':{'id':_0xd267b9[_0xb229('0x5f')]['id']}})[_0xb229('0x1b')](handleEntityNotFound(_0x5f2fb7,null))['then'](saveUpdates(_0xd267b9['body'],null))[_0xb229('0x1b')](respondWithResult(_0x5f2fb7,null))[_0xb229('0x23')](handleError(_0x5f2fb7,null));};exports[_0xb229('0x7c')]=function(_0x378eea,_0x27526d){_0x378eea[_0xb229('0x63')][_0xb229('0x7d')]=_0x378eea['file'][_0xb229('0x7b')];return db[_0xb229('0x48')][_0xb229('0x61')]({'where':{'id':_0x378eea[_0xb229('0x5f')]['id']}})[_0xb229('0x1b')](handleEntityNotFound(_0x27526d,null))['then'](saveUpdates(_0x378eea['body'],null))[_0xb229('0x1b')](respondWithResult(_0x27526d,null))['catch'](handleError(_0x27526d,null));};exports[_0xb229('0x7e')]=function(_0x52e3c9,_0x2549f7){_0x52e3c9[_0xb229('0x63')][_0xb229('0x7f')]=_0x52e3c9['file']['filename'];return db[_0xb229('0x48')][_0xb229('0x61')]({'where':{'id':_0x52e3c9['params']['id']}})[_0xb229('0x1b')](handleEntityNotFound(_0x2549f7,null))['then'](saveUpdates(_0x52e3c9[_0xb229('0x63')],null))['then'](respondWithResult(_0x2549f7,null))[_0xb229('0x23')](handleError(_0x2549f7,null));};exports[_0xb229('0x80')]=function(_0x2713d7,_0x14c773){_0x2713d7[_0xb229('0x63')][_0xb229('0x81')]=_0x2713d7['file'][_0xb229('0x7b')];return db['ChatWebsite'][_0xb229('0x61')]({'where':{'id':_0x2713d7[_0xb229('0x5f')]['id']}})['then'](handleEntityNotFound(_0x14c773,null))['then'](saveUpdates(_0x2713d7[_0xb229('0x63')],null))['then'](respondWithResult(_0x14c773,null))['catch'](handleError(_0x14c773,null));};exports[_0xb229('0x82')]=function(_0x2172e5,_0x419946){var _0x1dfedd=path[_0xb229('0x83')](config[_0xb229('0x84')],_0xb229('0x85'));var _0xc8d9f7={'where':{'id':_0x2172e5[_0xb229('0x5f')]['id']},'attributes':['id',_0xb229('0x79')],'raw':!![]};var _0x7bc47e=![];return require(_0xb229('0x86'))['getLicense']()['then'](function(_0x38dcd2){if(_0x38dcd2){_0x7bc47e=_0x38dcd2[_0xb229('0x87')];}})['then'](function(){return db[_0xb229('0x48')][_0xb229('0x61')](_0xc8d9f7);})[_0xb229('0x1b')](handleEntityNotFound(_0x419946,null))[_0xb229('0x1b')](function(_0x23605f){if(_0x23605f){if(!_['isNil'](_0x23605f[_0xb229('0x79')])){if(fs[_0xb229('0x88')](path[_0xb229('0x83')](config['root'],_0xb229('0x89'),_0x23605f['sitepic']))&&_0x7bc47e){_0x1dfedd=path['join'](config['root'],'server/files/images/logos/',_0x23605f['sitepic']);}}return _0x419946[_0xb229('0x8a')](_0x1dfedd);}})[_0xb229('0x23')](handleError(_0x419946,null));};exports[_0xb229('0x8b')]=function(_0x221504,_0x15020d){var _0xb84eec=path[_0xb229('0x83')](config[_0xb229('0x84')],_0xb229('0x8c'));var _0x5412c3={'where':{'id':_0x221504[_0xb229('0x5f')]['id']},'attributes':['id',_0xb229('0x7d')],'raw':!![]};return db[_0xb229('0x48')][_0xb229('0x61')](_0x5412c3)[_0xb229('0x1b')](handleEntityNotFound(_0x15020d,null))['then'](function(_0x573321){if(_0x573321){if(!_[_0xb229('0x8d')](_0x573321[_0xb229('0x7d')])){if(fs['existsSync'](path[_0xb229('0x83')](config[_0xb229('0x84')],_0xb229('0x8e'),_0x573321[_0xb229('0x7d')]))){_0xb84eec=path[_0xb229('0x83')](config[_0xb229('0x84')],_0xb229('0x8e'),_0x573321[_0xb229('0x7d')]);}}return _0x15020d['download'](_0xb84eec);}})[_0xb229('0x23')](handleError(_0x15020d,null));};exports[_0xb229('0x8f')]=function(_0xfe8139,_0x479ec1){var _0x67371c=path[_0xb229('0x83')](config[_0xb229('0x84')],_0xb229('0x90'));var _0xa75674={'where':{'id':_0xfe8139[_0xb229('0x5f')]['id']},'attributes':['id',_0xb229('0x7f'),_0xb229('0x91')],'raw':!![]};return db['ChatWebsite'][_0xb229('0x61')](_0xa75674)[_0xb229('0x1b')](handleEntityNotFound(_0x479ec1,null))[_0xb229('0x1b')](function(_0x579b12){if(_0x579b12){if(!_[_0xb229('0x8d')](_0x579b12[_0xb229('0x7f')])){if(fs[_0xb229('0x88')](path['join'](config[_0xb229('0x84')],'server/files/images/avatars/',_0x579b12[_0xb229('0x7f')]))&&_0x579b12['showCustomerAvatar']){_0x67371c=path[_0xb229('0x83')](config[_0xb229('0x84')],_0xb229('0x8e'),_0x579b12[_0xb229('0x7f')]);}}return _0x479ec1['download'](_0x67371c);}})['catch'](handleError(_0x479ec1,null));};exports['getSystemAvatar']=function(_0x4aa23f,_0x59f018){var _0xec5f54=path[_0xb229('0x83')](config['root'],_0xb229('0x92'));var _0x48fbd6={'where':{'id':_0x4aa23f[_0xb229('0x5f')]['id']},'attributes':['id','systemAvatar'],'raw':!![]};return db[_0xb229('0x48')]['find'](_0x48fbd6)['then'](handleEntityNotFound(_0x59f018,null))[_0xb229('0x1b')](function(_0x5c541d){if(_0x5c541d){if(!_[_0xb229('0x8d')](_0x5c541d['systemAvatar'])){if(fs['existsSync'](path[_0xb229('0x83')](config[_0xb229('0x84')],'server/files/images/avatars/',_0x5c541d[_0xb229('0x81')]))){_0xec5f54=path[_0xb229('0x83')](config['root'],_0xb229('0x8e'),_0x5c541d['systemAvatar']);}}return _0x59f018[_0xb229('0x8a')](_0xec5f54);}})[_0xb229('0x23')](handleError(_0x59f018,null));};exports[_0xb229('0x93')]=function(_0x4f5afd,_0x910fb6){var _0x2018b5={'body':_0x4f5afd[_0xb229('0x63')],'channel':_0xb229('0x94')};var _0x468a70=[];var _0x517295=[];var _0x4fd7d1={};var _0x59a507=![];if(_0x4f5afd[_0xb229('0x63')]['id']){delete _0x4f5afd['body']['id'];}if(_[_0xb229('0x8d')](_0x4f5afd[_0xb229('0x63')][_0xb229('0x95')])){throw new APIBadRequestError(_0xb229('0x96'));}if(_[_0xb229('0x8d')](_0x4f5afd[_0xb229('0x63')][_0xb229('0x97')])){throw new APIBadRequestError(_0xb229('0x98'));}if(_['isEmpty'](_0x4f5afd[_0xb229('0x63')][_0xb229('0x63')])){throw new APIBadRequestError(_0xb229('0x99'));}return db[_0xb229('0x9a')][_0xb229('0x6c')]()[_0xb229('0x1b')](function(_0x53b6dc){if(!_0x53b6dc){throw new Error('No\x20available\x20attributes');}_0x468a70=Object['keys'](_0x53b6dc)['filter'](function(_0x397796){return![_0xb229('0x9b'),_0xb229('0x9c')][_0xb229('0x9d')](_0x397796);});_0x517295=Object[_0xb229('0x4a')](_0x53b6dc)['filter'](function(_0x449a6f){return![_0xb229('0x9b'),_0xb229('0x9c'),_0xb229('0x9e'),'ListId']['includes'](_0x449a6f);});if(!_['includes'](_0x517295,_0x4f5afd['body']['mapKey'])){throw new APIBadRequestError(_0xb229('0x9f')+_0x517295[_0xb229('0x83')](',\x20'));}_0x4fd7d1[_0x4f5afd[_0xb229('0x63')][_0xb229('0x97')]]=_0x4f5afd[_0xb229('0x63')][_0xb229('0x95')];})[_0xb229('0x1b')](function(){return db[_0xb229('0x48')][_0xb229('0x61')]({'where':{'id':_0x4f5afd[_0xb229('0x5f')]['id']},'include':[{'model':db[_0xb229('0xa0')],'as':_0xb229('0xa1'),'include':[{'model':db[_0xb229('0x9a')],'as':'Contacts','where':_0x4fd7d1,'limit':0x1,'order':[[_0xb229('0x9c'),_0xb229('0xa2')]]}]},{'model':db[_0xb229('0xa3')],'as':_0xb229('0xa4')},{'model':db[_0xb229('0xa5')],'as':'Interval','include':[{'model':db['Interval'],'as':_0xb229('0xa6'),'attributes':['id','interval'],'raw':!![]}]}]});})[_0xb229('0x1b')](function(_0xbc5681){if(!_0xbc5681){throw new APINotFoundError(util['format'](_0xb229('0xa7'),_0x4f5afd[_0xb229('0x5f')]['id']));}var _0x28a00a=_0xbc5681['Interval'];if(_0x28a00a){var _0x48d168=_0xbc5681[_0xb229('0xa8')]||undefined;return _0x28a00a[_0xb229('0xa9')](_0x48d168)[_0xb229('0x1b')](function(_0x5a053a){if(!_0x5a053a){throw new APIOutOfIntervalError();}return _0xbc5681;});}else{return _0xbc5681;}})[_0xb229('0x1b')](function(_0x418391){if(!_0x418391[_0xb229('0xa1')]){return;}_0x2018b5[_0xb229('0xaa')]=_0x418391;_0x2018b5['list']=_0x418391[_0xb229('0xa1')];_0x2018b5['applications']=_[_0xb229('0xab')](_0x418391['Applications'],[_0xb229('0xac')],[_0xb229('0xad')]);if(_0x2018b5[_0xb229('0xaa')][_0xb229('0xa4')]){delete _0x2018b5[_0xb229('0xaa')][_0xb229('0xa4')];}if(_0x2018b5['account'][_0xb229('0xa1')]&&_0x2018b5['account'][_0xb229('0xa1')][_0xb229('0xae')]['length']){return _0x2018b5[_0xb229('0xaa')][_0xb229('0xa1')][_0xb229('0xae')][0x0];}var _0x35ebfc=_['defaults'](_0x4f5afd[_0xb229('0x63')],{'firstName':_0x4f5afd[_0xb229('0x63')][_0xb229('0x95')],'ListId':_0x418391[_0xb229('0xaf')]});_0x35ebfc[_0x4f5afd[_0xb229('0x63')][_0xb229('0x97')]]=_0x4f5afd[_0xb229('0x63')][_0xb229('0x95')];return db[_0xb229('0x9a')][_0xb229('0x62')](_0x35ebfc,{'fields':_0x468a70,'raw':!![]});})[_0xb229('0x1b')](function(_0x129f81){_0x2018b5[_0xb229('0xb0')]=_0x129f81;var _0x48dae3=createInteractionObject(_0x4f5afd[_0xb229('0x5f')]['id'],_0x4f5afd[_0xb229('0x63')],_0x4f5afd[_0xb229('0xb1')],_0x129f81);var _0x636531={'ChatWebsiteId':_0x4f5afd['params']['id']};if(_0x4f5afd[_0xb229('0x63')][_0xb229('0xb2')]){_0x636531[_0xb229('0xb2')]=_0x4f5afd[_0xb229('0x63')]['threadId'];_0x636531['closed']=![];return db[_0xb229('0xb3')][_0xb229('0x61')]({'where':_0x636531})[_0xb229('0x1b')](function(_0x3ff3ff){var _0xa53cbb=_0x4f5afd['body'][_0xb229('0x34')]&&_0x4f5afd[_0xb229('0x63')][_0xb229('0xb4')];if(_0x3ff3ff){_0x59a507=!![];return _0x3ff3ff;}else if(!_0xa53cbb&&_0x3ff3ff&&_0x3ff3ff[_0xb229('0xb5')]){throw new APIConflictError('Writing\x20on\x20closed\x20interaction');}_0x48dae3[_0xb229('0xb2')]=_0x4f5afd['body'][_0xb229('0xb2')];_0x48dae3[_0xb229('0xb6')]=_0x4f5afd['body'][_0xb229('0xb6')];return db[_0xb229('0xb3')][_0xb229('0x62')](_0x48dae3);});}_0x636531[_0xb229('0xb7')]=_0x129f81['id'];if(_0x4f5afd[_0xb229('0x63')]['interaction']&&_0x4f5afd['body']['interaction']['id']){_0x636531['id']=_0x4f5afd[_0xb229('0x63')]['interaction']['id'];return db[_0xb229('0xb3')][_0xb229('0x61')]({'where':_0x636531})[_0xb229('0x1b')](function(_0x4a8bbc){var _0x4c18c4=_0x4f5afd['body']['customerIp']&&_0x4f5afd[_0xb229('0x63')][_0xb229('0xb4')];if(!_0x4c18c4&&_0x4a8bbc&&_0x4a8bbc[_0xb229('0xb5')]){throw new APIConflictError(_0xb229('0xb8'));}else if(_0x4a8bbc){_0x59a507=!![];return _0x4a8bbc;}else{return db[_0xb229('0xb3')][_0xb229('0x62')](_0x48dae3);}});}return db['ChatInteraction'][_0xb229('0x62')](_0x48dae3);})[_0xb229('0x1b')](function(_0x2610c0){if(!_0x59a507){return _0x2610c0;}var _0x539e77={'from':(_0x2018b5[_0xb229('0xb0')][_0xb229('0xb9')]||'')+'\x20'+(_0x2018b5[_0xb229('0xb0')]['lastName']||'')};if(_0x4f5afd[_0xb229('0x63')][_0xb229('0xb2')]&&_0x4f5afd[_0xb229('0x63')][_0xb229('0xba')]&&_0x4f5afd[_0xb229('0x63')][_0xb229('0xb2')]!=_0x4f5afd[_0xb229('0x63')]['messageId']){_0x539e77['threadId']=_0x4f5afd[_0xb229('0x63')][_0xb229('0xba')];}return _0x2610c0[_0xb229('0x6b')](_0x539e77);})[_0xb229('0x1b')](function(_0x2ae435){_0x2018b5[_0xb229('0xbb')]=_0x2ae435[_0xb229('0x64')]({'plain':!![]});_0x2018b5['interaction'][_0xb229('0xbc')]=!_0x59a507;if(_0x2018b5['interaction'][_0xb229('0xbc')]){if(_0x2018b5['account'][_0xb229('0xbd')]){_0x2018b5[_0xb229('0xbe')]['push']({'id':0x0,'priority':_0x2018b5[_0xb229('0xbe')]['length']+0x1,'app':_0xb229('0xbf'),'appdata':'unmanaged','interval':_0xb229('0xc0')});}}return db[_0xb229('0xc1')][_0xb229('0x62')]({'body':_0x4f5afd[_0xb229('0x63')][_0xb229('0x63')],'ChatWebsiteId':_0x4f5afd[_0xb229('0x5f')]['id'],'ChatInteractionId':_0x2ae435['id'],'direction':'in','ContactId':_0x2018b5['contact']['id'],'AttachmentId':_0x4f5afd[_0xb229('0x63')][_0xb229('0xc2')]});})['then'](function(_0x15662d){_0x2018b5[_0xb229('0x21')]=_0x15662d;if(!_0x2018b5[_0xb229('0xbb')]['UserId']){return;}return db['User']['find']({'attributes':['id',_0xb229('0x2f')],'where':{'id':_0x2018b5['interaction']['UserId']}});})[_0xb229('0x1b')](function(_0x157622){if(_0x157622){_0x2018b5['applications']['unshift']({'id':0x0,'priority':0x0,'app':'agent','appdata':_0x157622[_0xb229('0x2f')]+','+(_0x2018b5[_0xb229('0xaa')][_0xb229('0xc3')]||0xa),'interval':_0xb229('0xc0')});_0x2018b5[_0xb229('0xc4')]=!![];}if(!_0x2018b5[_0xb229('0xbb')][_0xb229('0xc5')]){return;}return db['ChatQueue'][_0xb229('0x61')]({'attributes':['id',_0xb229('0x2f')],'where':{'id':_0x2018b5[_0xb229('0xbb')][_0xb229('0xc5')]}});})['then'](function(_0x555bca){if(_0x555bca){_0x2018b5[_0xb229('0xbe')][_0xb229('0xc6')]({'id':0x0,'priority':0x1,'app':_0xb229('0xc7'),'appdata':_0x555bca['name']+','+(_0x2018b5[_0xb229('0xaa')][_0xb229('0xc8')]||0x12c),'interval':_0xb229('0xc0')});}return respondWithRpcPromise(_0xb229('0xc9'),_0xb229('0xca'),_0x2018b5);})[_0xb229('0x1b')](function(_0xa7b4c7){respondWithRpcPromise(_0xb229('0xcb'),_0xb229('0xcb'),{'event':'notify','message':_0xa7b4c7},client9002);return _0xa7b4c7;})[_0xb229('0x1b')](respondWithResult(_0x910fb6,null))[_0xb229('0x23')](APIHandleError(_0x910fb6));};exports[_0xb229('0xcc')]=function(_0x3d4300,_0x444570){var _0x5d245e,_0x175470,_0x269683;var _0x42ef23=[];var _0x1e4ae6={};var _0x575b39=_0x3d4300[_0xb229('0xcd')]||[];var _0x25d97b=[];var _0x4a1d92;return db[_0xb229('0x9a')]['describe']()[_0xb229('0x1b')](function(_0x16c045){if(!_0x16c045){throw new db[(_0xb229('0xce'))][(_0xb229('0xcf'))](_0xb229('0xd0'));}_0x42ef23=_[_0xb229('0xd1')](_[_0xb229('0x4a')](_0x16c045),['createdAt',_0xb229('0x9c'),_0xb229('0x9e'),_0xb229('0xaf')]);if(_0x3d4300[_0xb229('0x63')]['id']){delete _0x3d4300['body']['id'];}if(_['isNil'](_0x3d4300[_0xb229('0x63')][_0xb229('0x95')])){throw _0x444570[_0xb229('0x25')](0x1f4)[_0xb229('0x30')](new db[(_0xb229('0xce'))]['ValidationError'](_0xb229('0xd2')));}if(_[_0xb229('0x8d')](_0x3d4300[_0xb229('0x63')][_0xb229('0x63')])||_0x3d4300[_0xb229('0x63')][_0xb229('0x63')]===''){throw _0x444570['status'](0x1f4)[_0xb229('0x30')](new db['Sequelize']['ValidationError'](_0xb229('0xd3')));}if(_[_0xb229('0x8d')](_0x3d4300['body'][_0xb229('0xd4')])){throw _0x444570[_0xb229('0x25')](0x1f4)[_0xb229('0x30')](new db[(_0xb229('0xce'))][(_0xb229('0xcf'))](_0xb229('0xd5')+_0x42ef23));}if(!_[_0xb229('0x9d')](_0x42ef23,_0x3d4300['body'][_0xb229('0xd4')])){throw _0x444570[_0xb229('0x25')](0x1f4)['send'](new db[(_0xb229('0xce'))][(_0xb229('0xcf'))](_0xb229('0xd6')+_0x42ef23));}_0x1e4ae6[_0x3d4300[_0xb229('0x63')][_0xb229('0xd4')]]=_0x3d4300[_0xb229('0x63')]['from'];})[_0xb229('0x1b')](function(){return db[_0xb229('0x48')][_0xb229('0x61')]({'where':{'id':_0x3d4300[_0xb229('0x5f')]['id']},'include':[{'model':db['CmList'],'as':_0xb229('0xa1')},{'model':db[_0xb229('0xd7')],'as':_0xb229('0xd7')}]});})[_0xb229('0x1b')](handleEntityNotFound(_0x444570,null))[_0xb229('0x1b')](function(_0x50c862){if(_0x50c862&&_0x50c862[_0xb229('0xa1')]){_0x175470=_0x50c862;var _0x5c73ca=_[_0xb229('0x14')](_0x3d4300[_0xb229('0x63')],{'firstName':_0x3d4300[_0xb229('0x63')][_0xb229('0x95')],'phone':_0x3d4300['body'][_0xb229('0x95')],'ListId':_0x50c862[_0xb229('0xaf')]});_0x5c73ca[_0x3d4300[_0xb229('0x63')][_0xb229('0xd4')]]=_0x3d4300['body'][_0xb229('0x95')];return db[_0xb229('0x9a')]['findOrCreate']({'where':_0x1e4ae6,'defaults':_0x5c73ca});}})[_0xb229('0xd8')](function(_0x262a35){if(_0x262a35){_0x269683=_0x262a35;var _0x397e22=fs['readFileSync'](path[_0xb229('0x83')](config[_0xb229('0x84')],_0xb229('0xd9')),'utf8');var _0xc4fa78=ejs[_0xb229('0xda')](_0x397e22,{'body':_[_0xb229('0xdb')](_0x3d4300[_0xb229('0x63')][_0xb229('0x63')]),'bodyTitle':_0x175470[_0xb229('0xdc')]});return db[_0xb229('0xdd')][_0xb229('0x62')]({'body':_0xc4fa78,'plainBody':htmlToText[_0xb229('0xde')](_0xc4fa78),'ContactId':_0x262a35['id'],'ChatWebsiteId':_0x175470['id']});}})['then'](function(_0x32c2a3){_0x4a1d92=_0x32c2a3;if(_0x575b39[_0xb229('0x50')]){var _0x3c10ef=_0x575b39[_0xb229('0x47')](function(_0x21c8de){return{'name':_0x21c8de[_0xb229('0xdf')],'basename':_0x21c8de[_0xb229('0x7b')],'type':_0x21c8de[_0xb229('0xe0')],'ChatOfflineMessageId':_0x32c2a3['id']};});_0x25d97b=_0x3c10ef[_0xb229('0x47')](_0x24e10c=>{var _0x14694c={'filename':_0x24e10c[_0xb229('0x2f')],'path':path[_0xb229('0x83')](config[_0xb229('0x84')],_0xb229('0xe1'),_0xb229('0xcd'),_0xb229('0xe2'),_0xb229('0xe3'),_0x24e10c[_0xb229('0xe4')])};return _0x14694c;});if(!_0x175470['openNewInteraction']){return db[_0xb229('0xe5')][_0xb229('0xe6')](function(_0xddcbef){return db[_0xb229('0xe7')]['bulkCreate'](_0x3c10ef,{'transaction':_0xddcbef});});}}})['then'](function(){if(_0x4a1d92){_0x5d245e=_0x4a1d92;return db[_0xb229('0xd7')][_0xb229('0x70')]({'where':{'service':!![]},'include':[{'model':db[_0xb229('0xe8')],'as':_0xb229('0xe9'),'raw':!![],'include':[{'model':db[_0xb229('0xea')],'as':_0xb229('0xea'),'raw':!![]}]}]});}})[_0xb229('0x1b')](function(_0x46d067){if(_0x46d067&&_0x46d067[_0xb229('0xe9')]&&_0x175470[_0xb229('0xeb')]&&_0x175470['forwardOfflineAddress']){var _0x4bcf77=_0x46d067[_0xb229('0xec')]();return respondWithRpcPromise('SendMail',_0xb229('0xed'),{'account':_0x4bcf77,'message':{'from':util['format'](_0xb229('0xee'),_0x46d067[_0xb229('0x2f')],_0x46d067[_0xb229('0xef')]||_0x46d067['Smtp'][_0xb229('0xf0')]),'to':_0x175470['forwardOfflineAddress'],'subject':_0x175470[_0xb229('0xf1')],'html':_0x5d245e['body'],'attachments':_0x25d97b}},client9003)[_0xb229('0x1b')](function(){return _0x5d245e;})[_0xb229('0x23')](function(_0x69eccb){logger[_0xb229('0x20')](_0x69eccb);});}})[_0xb229('0x1b')](function(){if(_0x175470&&_0x175470[_0xb229('0xf2')]&&_0x175470['MailAccountId']){var _0x8b0c2=[];if(_0x575b39[_0xb229('0x50')]){_0x8b0c2=_0x575b39[_0xb229('0x47')](function(_0x1d4be6){return{'name':_0x1d4be6[_0xb229('0xdf')],'basename':_0x1d4be6[_0xb229('0x7b')],'type':_0x1d4be6[_0xb229('0xe0')],'ChatOfflineMessageId':_0x4a1d92['id']};});}var _0x5d19c7;if(!_[_0xb229('0x8d')](_0x175470[_0xb229('0xf3')])){var _0x5d993a=_['map'](_0x3d4300[_0xb229('0x63')],function(_0x16e602){return _0x16e602;});var _0x45287a=_[_0xb229('0xf4')](_0x5d993a)[0x0];var _0x3ce9bb=_[_0xb229('0xf5')](_0x45287a,function(_0x36fd0f){return _0x36fd0f;});_0x5d19c7=_0x3ce9bb[0x1][_0x175470[_0xb229('0xf3')]];}var _0x24dce1={'from':_0x269683['email'],'firstName':_0x269683[_0xb229('0xb9')],'lastName':_0x269683[_0xb229('0x39')],'mapKey':'email','message':{'from':_0x269683[_0xb229('0xef')],'to':_0x175470[_0xb229('0xd7')][_0xb229('0xef')],'cc':'','subject':_[_0xb229('0x8d')](_0x5d19c7)?_0x175470[_0xb229('0xf1')]:_0x5d19c7,'messageId':'','sentAt':new Date(),'attach':_0x8b0c2[_0xb229('0x50')],'attachments':_0x8b0c2,'originChannel':_0xb229('0xf6'),'ChatWebsiteId':_0x175470['id'],'ChatOfflineMessageId':_0x5d245e['id'],'originTo':_0x175470[_0xb229('0xd7')]['email']},'body':_0x5d245e[_0xb229('0x63')]};var _0x2a18cf={'account':{'id':_0x175470[_0xb229('0xf7')]},'body':_0x24dce1,'log':_0xb229('0xf8')};return respondWithRpcPromise(_0xb229('0xf8'),'notifyMail',_0x2a18cf,client9001)[_0xb229('0x1b')](function(){return _0x5d245e;})['catch'](function(_0x437c6a){logger[_0xb229('0x20')](_0x437c6a);});}return;})[_0xb229('0x1b')](function(){if(_0x5d245e){return _0x5d245e;}})[_0xb229('0x1b')](respondWithResult(_0x444570,null))[_0xb229('0x23')](function(){for(var _0x3f2140 of _0x575b39){var _0x476deb=path[_0xb229('0x83')](config[_0xb229('0x84')],'server','files',_0xb229('0xe2'),'offline-chat',_0x3f2140[_0xb229('0x7b')]);fs_extra[_0xb229('0xf9')](_0x476deb)[_0xb229('0x23')](function(_0x17d2ec){logger[_0xb229('0x20')](_0xb229('0xfa'),_0x476deb,_0x17d2ec);});}});};exports[_0xb229('0xfb')]=function(_0x3105c6,_0x70d67c){return db[_0xb229('0xb3')]['find']({'where':{'id':_0x3105c6[_0xb229('0x5f')]['id']}})[_0xb229('0x1b')](handleEntityNotFound(_0x70d67c,null))[_0xb229('0x1b')](function(_0x213208){if(_0x213208){return _0x213208[_0xb229('0xfb')](_0x3105c6[_0xb229('0x63')][_0xb229('0x73')],_[_0xb229('0xfc')](_0x3105c6[_0xb229('0x63')],[_0xb229('0x73'),'id'])||{});}})[_0xb229('0x1b')](respondWithResult(_0x70d67c,null))[_0xb229('0x23')](handleError(_0x70d67c,null));};exports['getInteractions']=function(_0x1b2ce4,_0x17c277){var _0xb6d3fe={'raw':![],'where':{}};var _0x5b1c8b={};var _0x57ae42={'count':0x0,'rows':[]};return db[_0xb229('0x48')]['findOne']({'where':{'id':_0x1b2ce4['params']['id']}})['then'](handleEntityNotFound(_0x17c277,null))[_0xb229('0x1b')](function(_0x2b366c){if(_0x2b366c){_0x5b1c8b[_0xb229('0x40')]=_[_0xb229('0x4a')](db['ChatInteraction'][_0xb229('0x60')]);_0x5b1c8b[_0xb229('0x4b')]=_['keys'](_0x1b2ce4[_0xb229('0x4b')]);_0x5b1c8b['filters']=_[_0xb229('0x4d')](_0x5b1c8b['model'],_0x5b1c8b[_0xb229('0x4b')]);_0xb6d3fe[_0xb229('0x4f')]=_[_0xb229('0x4d')](_0x5b1c8b[_0xb229('0x40')],qs[_0xb229('0x4e')](_0x1b2ce4['query'][_0xb229('0x4e')]));_0xb6d3fe['attributes']=_0xb6d3fe['attributes'][_0xb229('0x50')]?_0xb6d3fe[_0xb229('0x4f')]:_0x5b1c8b[_0xb229('0x40')];if(!_0x1b2ce4['query'][_0xb229('0x51')](_0xb229('0x52'))){_0xb6d3fe[_0xb229('0x28')]=qs[_0xb229('0x28')](_0x1b2ce4[_0xb229('0x4b')][_0xb229('0x28')]);_0xb6d3fe['offset']=qs[_0xb229('0x2a')](_0x1b2ce4[_0xb229('0x4b')][_0xb229('0x2a')]);}_0xb6d3fe['order']=qs[_0xb229('0x54')](_0x1b2ce4[_0xb229('0x4b')][_0xb229('0x54')]);_0xb6d3fe[_0xb229('0x55')]=qs[_0xb229('0x4c')](_[_0xb229('0x56')](_0x1b2ce4['query'],_0x5b1c8b['filters']));_0xb6d3fe[_0xb229('0x55')]['ChatWebsiteId']=_0x2b366c['id'];if(_0x1b2ce4[_0xb229('0x4b')][_0xb229('0x57')]){_0xb6d3fe[_0xb229('0x55')]=_[_0xb229('0x59')](_0xb6d3fe['where'],{'$or':_['map'](_0xb6d3fe[_0xb229('0x4f')],function(_0x650dd8){var _0x53af19={};_0x53af19[_0x650dd8]={'$like':'%'+_0x1b2ce4[_0xb229('0x4b')][_0xb229('0x57')]+'%'};return _0x53af19;})});}_0xb6d3fe=_[_0xb229('0x59')]({},_0xb6d3fe,_0x1b2ce4[_0xb229('0x5a')]);return db[_0xb229('0xb3')]['count']({'where':_0xb6d3fe[_0xb229('0x55')]})[_0xb229('0x1b')](function(_0x4753ba){_0x57ae42[_0xb229('0x29')]=_0x4753ba;if(_0x1b2ce4[_0xb229('0x4b')]['includeAll']){_0xb6d3fe[_0xb229('0x71')]=[{'model':db[_0xb229('0x9a')],'as':_0xb229('0xfd'),'required':![]},{'model':db['User'],'as':_0xb229('0xfe'),'attributes':[_0xb229('0x2f'),_0xb229('0xff'),'internal'],'required':![]},{'model':db[_0xb229('0x100')],'as':_0xb229('0x101'),'attributes':['id',_0xb229('0x2f'),'color'],'where':_0x1b2ce4[_0xb229('0x4b')][_0xb229('0x102')]?{'id':_0x1b2ce4[_0xb229('0x4b')][_0xb229('0x102')]}:undefined,'required':_0x1b2ce4[_0xb229('0x4b')][_0xb229('0x102')]?!![]:![]}];}return db[_0xb229('0xb3')][_0xb229('0x5c')](_0xb6d3fe);})[_0xb229('0x1b')](function(_0x46df5b){_0x57ae42['rows']=_0x46df5b;return _0x57ae42;});}})[_0xb229('0x1b')](respondWithFilteredResult(_0x17c277,_0xb6d3fe))[_0xb229('0x23')](handleError(_0x17c277,null));};exports[_0xb229('0x103')]=function(_0x15fc66,_0x4c51a0){var _0x57e0e1=0x0;var _0xdb1e07=0x0;var _0x5352c8=![];var _0x390766;var _0x112f6b;return db[_0xb229('0x48')][_0xb229('0x61')]({'where':{'id':_0x15fc66[_0xb229('0x5f')]['id']},'include':[{'model':db['Interval'],'as':_0xb229('0xa5'),'include':[{'model':db[_0xb229('0xa5')],'as':_0xb229('0xa6'),'attributes':['id','interval']}]}]})[_0xb229('0x1b')](handleEntityNotFound(_0x4c51a0,null))[_0xb229('0x1b')](function(_0x3da5b8){if(_0x3da5b8){_0x390766=_0x3da5b8;return _0x3da5b8[_0xb229('0x104')]({'raw':!![]});}})[_0xb229('0x1b')](function(_0x42b601){if(_0x390766){if(_0x42b601){_0x112f6b=_0x42b601;}}return require(_0xb229('0x86'))[_0xb229('0x105')]();})[_0xb229('0x1b')](function(_0x482c43){if(_0x482c43){_0xdb1e07=_0x482c43[_0xb229('0x106')];_0x5352c8=_0x482c43[_0xb229('0x87')];}})['then'](function(){return db[_0xb229('0xb3')][_0xb229('0x29')]({'where':{'closed':![]}});})[_0xb229('0x1b')](function(_0x39eaf5){_0x57e0e1=_0x39eaf5;if(_0xdb1e07&&_0x39eaf5>_0xdb1e07){return db[_0xb229('0x107')][_0xb229('0x70')]({'where':{'id':0x1}})[_0xb229('0x1b')](function(_0x54bf87){if(_0x54bf87){_0x54bf87[_0xb229('0x108')]('chatLicenseExceeded');}});}})[_0xb229('0x1b')](function(){var _0x404a3f=_0x390766[_0xb229('0xa5')];var _0xba86dc=_0x390766[_0xb229('0xa8')]||undefined;return _0x404a3f?_0x404a3f['ifTime'](_0xba86dc):!![];})['then'](function(_0x577083){var _0x13d788=fs[_0xb229('0x109')](path[_0xb229('0x83')](config[_0xb229('0x84')],_0xb229('0x10a')),_0xb229('0x10b'));var _0x4de797=new url[(_0xb229('0x10c'))](_0x390766['address'])[_0xb229('0x10d')];var _0xe0cfa8=_0xb229('0x10e');var _0x11b54a=![];var _0x23e12d={'chatVersion':_0xe0cfa8,'chatWebsiteAddressOrigin':_0x4de797,'remote':_0x390766[_0xb229('0x10f')],'query':querystring[_0xb229('0x110')](_[_0xb229('0x59')](_0x390766['get']({'plain':!![]}),{'customerIp':_0x15fc66[_0xb229('0xb1')][_0xb229('0x36')]||_0x15fc66[_0xb229('0xb1')][_0xb229('0x111')]||_0x15fc66[_0xb229('0x112')][_0xb229('0x113')]||_0x15fc66['ip'],'referer':_0x15fc66['headers'][_0xb229('0xb4')],'openedInteractions':_0x57e0e1,'maxInteractions':_0xdb1e07,'virtual':_0x5352c8[_0xb229('0x106')],'online':_0x577083,'custom':_0x5352c8}))[_0xb229('0x114')](/'/g,'\x5c\x27')};_0x4c51a0[_0xb229('0x30')](ejs[_0xb229('0xda')](Mustache[_0xb229('0xda')](_0x13d788,_0x23e12d),{'proactiveActions':_0x112f6b,'alignment':_0x390766[_0xb229('0x115')],'verticalAlignment':_0x390766[_0xb229('0x116')],'div_color':_0x390766[_0xb229('0x117')],'labelText':_0x390766['labelText'],'text_color':_0x390766[_0xb229('0x118')],'text_button_color':_0x390766[_0xb229('0x119')],'button_color':_0x390766['color_button'],'background_color':_0x390766[_0xb229('0x11a')],'hideWhenOffline':_0x390766[_0xb229('0x11b')],'intervalId':_0x390766[_0xb229('0x11c')],'isDevelopment':_0x11b54a,'chatVersion':_0xe0cfa8}));})[_0xb229('0x23')](handleError(_0x4c51a0,null));};exports[_0xb229('0x11d')]=function(_0x103e4b,_0x5c48a5){var _0x26354d=_0x103e4b[_0xb229('0x5f')]['id'];var _0x475d2f=_0x103e4b[_0xb229('0x63')];var _0x532bf1=0xc8;var _0x2e933d=null;return db['sequelize'][_0xb229('0xe6')]({'isolationLevel':db['sequelize']['Transaction']['ISOLATION_LEVELS']['READ_COMMITTED']},function(_0x451369){return db[_0xb229('0x48')][_0xb229('0x70')]({'where':{'id':_0x26354d},'transaction':_0x451369})['then'](function(_0x17c782){if(_0x17c782){return db['ChatApplication'][_0xb229('0x2c')]({'where':{'ChatWebsiteId':_0x26354d},'transaction':_0x451369})['then'](function(){var _0x45b0b4=_[_0xb229('0x47')](_0x475d2f,function(_0xb6c3eb){_0xb6c3eb[_0xb229('0x75')]=_0x26354d;return _0xb6c3eb;});return db[_0xb229('0xa3')][_0xb229('0x11e')](_0x45b0b4,{'transaction':_0x451369});});}else{_0x532bf1=0x194;_0x2e933d=[];}});})[_0xb229('0x1b')](function(){if(_0x532bf1!==0x194){return db['ChatApplication']['findAndCountAll']({'where':{'ChatWebsiteId':_0x26354d},'order':_0xb229('0xac')})[_0xb229('0x1b')](function(_0x23d8ef){_0x2e933d=_0x23d8ef;});}})[_0xb229('0x23')](function(_0x1eec46){_0x532bf1=0x1f4;logger[_0xb229('0x20')](_0x1eec46[_0xb229('0x2e')]);if(_0x1eec46[_0xb229('0x2f')]){delete _0x1eec46[_0xb229('0x2f')];}_0x2e933d=_0x1eec46;})[_0xb229('0x11f')](function(){if(_0x2e933d===null){_0x5c48a5[_0xb229('0x24')](_0x532bf1);}else{if(_0x532bf1===0x1f4){_0x5c48a5[_0xb229('0x25')](_0x532bf1)[_0xb229('0x30')](_0x2e933d);}else{_0x5c48a5['status'](_0x532bf1)[_0xb229('0x27')](_0x2e933d);}}});};exports['getApplications']=function(_0x553b65,_0x57dcd6){var _0x2f37f6={};var _0x597727={};var _0x11fdbc;var _0x47a315;return db[_0xb229('0x48')]['findOne']({'where':{'id':_0x553b65[_0xb229('0x5f')]['id']}})[_0xb229('0x1b')](handleEntityNotFound(_0x57dcd6,null))[_0xb229('0x1b')](function(_0x3d6b68){if(_0x3d6b68){_0x11fdbc=_0x3d6b68;_0x597727['model']=_[_0xb229('0x4a')](db[_0xb229('0xa3')][_0xb229('0x60')]);_0x597727['query']=_['keys'](_0x553b65[_0xb229('0x4b')]);_0x597727[_0xb229('0x4c')]=_[_0xb229('0x4d')](_0x597727[_0xb229('0x40')],_0x597727[_0xb229('0x4b')]);_0x2f37f6[_0xb229('0x4f')]=_[_0xb229('0x4d')](_0x597727[_0xb229('0x40')],qs[_0xb229('0x4e')](_0x553b65[_0xb229('0x4b')][_0xb229('0x4e')]));_0x2f37f6[_0xb229('0x4f')]=_0x2f37f6[_0xb229('0x4f')]['length']?_0x2f37f6[_0xb229('0x4f')]:_0x597727[_0xb229('0x40')];_0x2f37f6[_0xb229('0x53')]=qs[_0xb229('0x54')](_0x553b65[_0xb229('0x4b')]['sort']);_0x2f37f6['where']=qs[_0xb229('0x4c')](_['pick'](_0x553b65[_0xb229('0x4b')],_0x597727[_0xb229('0x4c')]));if(_0x553b65['query'][_0xb229('0x57')]){_0x2f37f6[_0xb229('0x55')]=_['merge'](_0x2f37f6['where'],{'$or':_['map'](_0x2f37f6[_0xb229('0x4f')],function(_0x5e5048){var _0x3f6fd3={};_0x3f6fd3[_0x5e5048]={'$like':'%'+_0x553b65[_0xb229('0x4b')][_0xb229('0x57')]+'%'};return _0x3f6fd3;})});}_0x2f37f6=_['merge']({},_0x2f37f6,_0x553b65['options']);return _0x11fdbc[_0xb229('0x120')](_0x2f37f6);}})[_0xb229('0x1b')](function(_0x5f44da){if(_0x5f44da){_0x47a315=_0x5f44da[_0xb229('0x50')];if(!_0x553b65[_0xb229('0x4b')][_0xb229('0x51')](_0xb229('0x52'))){_0x2f37f6[_0xb229('0x28')]=qs[_0xb229('0x28')](_0x553b65[_0xb229('0x4b')][_0xb229('0x28')]);_0x2f37f6[_0xb229('0x2a')]=qs[_0xb229('0x2a')](_0x553b65['query'][_0xb229('0x2a')]);}return _0x11fdbc[_0xb229('0x120')](_0x2f37f6);}})['then'](function(_0x55fb69){if(_0x55fb69){return _0x55fb69?{'count':_0x47a315,'rows':_0x55fb69}:null;}})[_0xb229('0x1b')](respondWithResult(_0x57dcd6,null))[_0xb229('0x23')](handleError(_0x57dcd6,null));};exports[_0xb229('0x121')]=function(_0x29f340,_0x48a121){return db[_0xb229('0x122')]['find']({'where':{'id':_0x29f340['params']['id']}})[_0xb229('0x1b')](handleEntityNotFound(_0x48a121,null))[_0xb229('0x1b')](function(_0x1fde72){if(_0x1fde72){return _0x1fde72[_0xb229('0x121')](_0x29f340['body']['ids'],_[_0xb229('0xfc')](_0x29f340[_0xb229('0x63')],[_0xb229('0x73'),'id'])||{});}})[_0xb229('0x1b')](respondWithResult(_0x48a121,null))['catch'](handleError(_0x48a121,null));};exports[_0xb229('0x104')]=function(_0x3148fa,_0x3cb7e2){var _0x562b6a={};var _0x180621={};var _0xd19b91;var _0x122022;return db['ChatWebsite'][_0xb229('0x70')]({'where':{'id':_0x3148fa[_0xb229('0x5f')]['id']}})[_0xb229('0x1b')](handleEntityNotFound(_0x3cb7e2,null))['then'](function(_0x1caeae){if(_0x1caeae){_0xd19b91=_0x1caeae;_0x180621[_0xb229('0x40')]=_[_0xb229('0x4a')](db[_0xb229('0x123')][_0xb229('0x60')]);_0x180621[_0xb229('0x4b')]=_['keys'](_0x3148fa['query']);_0x180621[_0xb229('0x4c')]=_[_0xb229('0x4d')](_0x180621[_0xb229('0x40')],_0x180621[_0xb229('0x4b')]);_0x562b6a['attributes']=_[_0xb229('0x4d')](_0x180621[_0xb229('0x40')],qs[_0xb229('0x4e')](_0x3148fa[_0xb229('0x4b')][_0xb229('0x4e')]));_0x562b6a['attributes']=_0x562b6a[_0xb229('0x4f')]['length']?_0x562b6a[_0xb229('0x4f')]:_0x180621[_0xb229('0x40')];_0x562b6a[_0xb229('0x53')]=qs['sort'](_0x3148fa[_0xb229('0x4b')]['sort']);_0x562b6a['where']=qs[_0xb229('0x4c')](_[_0xb229('0x56')](_0x3148fa[_0xb229('0x4b')],_0x180621[_0xb229('0x4c')]));if(_0x3148fa[_0xb229('0x4b')][_0xb229('0x57')]){_0x562b6a[_0xb229('0x55')]=_['merge'](_0x562b6a['where'],{'$or':_[_0xb229('0x47')](_0x562b6a[_0xb229('0x4f')],function(_0x2fb71d){var _0x259550={};_0x259550[_0x2fb71d]={'$like':'%'+_0x3148fa[_0xb229('0x4b')][_0xb229('0x57')]+'%'};return _0x259550;})});}_0x562b6a=_[_0xb229('0x59')]({},_0x562b6a,_0x3148fa[_0xb229('0x5a')]);return _0xd19b91[_0xb229('0x104')](_0x562b6a);}})[_0xb229('0x1b')](function(_0x36fc3f){if(_0x36fc3f){_0x122022=_0x36fc3f[_0xb229('0x50')];if(!_0x3148fa[_0xb229('0x4b')][_0xb229('0x51')]('nolimit')){_0x562b6a[_0xb229('0x28')]=qs[_0xb229('0x28')](_0x3148fa['query'][_0xb229('0x28')]);_0x562b6a[_0xb229('0x2a')]=qs[_0xb229('0x2a')](_0x3148fa['query'][_0xb229('0x2a')]);}return _0xd19b91[_0xb229('0x104')](_0x562b6a);}})[_0xb229('0x1b')](function(_0x5a9251){if(_0x5a9251){return _0x5a9251?{'count':_0x122022,'rows':_0x5a9251}:null;}})[_0xb229('0x1b')](respondWithResult(_0x3cb7e2,null))[_0xb229('0x23')](handleError(_0x3cb7e2,null));};exports[_0xb229('0x124')]=function(_0xd2b450,_0x119135){var _0x1fcf72=_0xd2b450[_0xb229('0x4b')][_0xb229('0x125')]===_0xb229('0x126')?_0xb229('0x127'):_0xb229('0x128');return db['ChatWebsite'][_0xb229('0x61')]({'attributes':['id',_0x1fcf72],'where':{'id':_0xd2b450[_0xb229('0x5f')]['id']}})[_0xb229('0x1b')](handleEntityNotFound(_0x119135,null))[_0xb229('0x1b')](function(_0x2db17f){if(_0x2db17f){var _0x597c98=_0x2db17f[_0x1fcf72];var _0x3d28a2=_0x597c98&&_0x597c98[_0xb229('0x129')]?_0x597c98[_0xb229('0x129')]:[];_0x119135[_0xb229('0x30')]({'fromKey':_[_0xb229('0x8d')](_0x597c98[_0xb229('0x12a')])?undefined:_0x597c98[_0xb229('0x12a')],'count':_0x3d28a2[_0xb229('0x50')],'rows':_0x3d28a2});}})[_0xb229('0x23')](handleError(_0x119135,null));};exports[_0xb229('0x12b')]=function(_0x225290,_0x1ee701){var _0x21562f={'raw':![],'where':{}};var _0x4039fa={};var _0x371cc2={'count':0x0,'rows':[]};return db[_0xb229('0x48')][_0xb229('0x70')]({'where':{'id':_0x225290[_0xb229('0x5f')]['id']}})[_0xb229('0x1b')](handleEntityNotFound(_0x1ee701,null))[_0xb229('0x1b')](function(_0x3ceb0c){if(_0x3ceb0c){_0x4039fa[_0xb229('0x40')]=_[_0xb229('0x4a')](db['ChatOfflineMessage'][_0xb229('0x60')]);_0x4039fa['query']=_[_0xb229('0x4a')](_0x225290['query']);_0x4039fa[_0xb229('0x4c')]=_['intersection'](_0x4039fa[_0xb229('0x40')],_0x4039fa[_0xb229('0x4b')]);_0x21562f[_0xb229('0x4f')]=_[_0xb229('0x4d')](_0x4039fa[_0xb229('0x40')],qs[_0xb229('0x4e')](_0x225290[_0xb229('0x4b')][_0xb229('0x4e')]));_0x21562f[_0xb229('0x4f')]=_0x21562f['attributes'][_0xb229('0x50')]?_0x21562f[_0xb229('0x4f')]:_0x4039fa[_0xb229('0x40')];if(!_0x225290[_0xb229('0x4b')][_0xb229('0x51')]('nolimit')){_0x21562f[_0xb229('0x28')]=qs[_0xb229('0x28')](_0x225290['query'][_0xb229('0x28')]);_0x21562f['offset']=qs['offset'](_0x225290['query']['offset']);}_0x21562f[_0xb229('0x53')]=qs[_0xb229('0x54')](_0x225290['query']['sort']);_0x21562f['where']=qs['filters'](_['pick'](_0x225290[_0xb229('0x4b')],_0x4039fa['filters']));_0x21562f[_0xb229('0x55')][_0xb229('0x75')]=_0x3ceb0c['id'];if(_0x225290[_0xb229('0x4b')][_0xb229('0x57')]){_0x21562f[_0xb229('0x55')]=_[_0xb229('0x59')](_0x21562f[_0xb229('0x55')],{'$or':_[_0xb229('0x47')](_0x21562f[_0xb229('0x4f')],function(_0x444194){var _0x2325d3={};_0x2325d3[_0x444194]={'$like':'%'+_0x225290[_0xb229('0x4b')]['filter']+'%'};return _0x2325d3;})});}_0x21562f=_[_0xb229('0x59')]({},_0x21562f,_0x225290['options']);return db[_0xb229('0xdd')][_0xb229('0x29')]({'where':_0x21562f[_0xb229('0x55')]})[_0xb229('0x1b')](function(_0x49af8a){_0x371cc2['count']=_0x49af8a;if(_0x225290[_0xb229('0x4b')][_0xb229('0x5b')]){_0x21562f[_0xb229('0x71')]=[{'all':!![]}];}else{_0x21562f[_0xb229('0x71')]=[{'model':db[_0xb229('0x9a')],'as':_0xb229('0xfd'),'required':![]},{'model':db['Attachment'],'as':_0xb229('0x12c'),'required':![]}];}return db[_0xb229('0xdd')][_0xb229('0x5c')](_0x21562f);})[_0xb229('0x1b')](function(_0x344cf4){_0x371cc2[_0xb229('0x5d')]=_0x344cf4;return _0x371cc2;});}})[_0xb229('0x1b')](respondWithFilteredResult(_0x1ee701,_0x21562f))[_0xb229('0x23')](handleError(_0x1ee701,null));};exports[_0xb229('0x12d')]=function(_0x1a2e17,_0x58cf67){return db[_0xb229('0x48')][_0xb229('0x61')]({'where':{'id':_0x1a2e17[_0xb229('0x5f')]['id']}})[_0xb229('0x1b')](handleEntityNotFound(_0x58cf67,null))[_0xb229('0x1b')](function(_0x5d02fb){if(_0x5d02fb){return _0x5d02fb[_0xb229('0x12d')](_0x1a2e17[_0xb229('0x63')]['ids'],_[_0xb229('0xfc')](_0x1a2e17[_0xb229('0x63')],[_0xb229('0x73'),'id'])||{})['spread'](function(_0x59dc58){for(var _0x1a92de=0x0;_0x1a92de<_0x1a2e17['body'][_0xb229('0x73')][_0xb229('0x50')];_0x1a92de+=0x1){socket[_0xb229('0x12e')]('userChatWebsite:save',{'UserId':Number(_0x1a2e17[_0xb229('0x63')][_0xb229('0x73')][_0x1a92de]),'ChatWebsiteId':Number(_0x1a2e17['params']['id'])});}return _0x59dc58;});}})['then'](respondWithResult(_0x58cf67,null))[_0xb229('0x23')](handleError(_0x58cf67,null));};exports[_0xb229('0x12f')]=function(_0x67fa1e,_0x2b8025){return db[_0xb229('0x48')]['find']({'where':{'id':_0x67fa1e['params']['id']}})['then'](handleEntityNotFound(_0x2b8025,null))[_0xb229('0x1b')](function(_0x491df3){if(_0x491df3){return _0x491df3[_0xb229('0x12f')](_0x67fa1e[_0xb229('0x4b')][_0xb229('0x73')])[_0xb229('0x1b')](function(){if(_[_0xb229('0x130')](_0x67fa1e['query'][_0xb229('0x73')])){for(var _0x11c342=0x0;_0x11c342<_0x67fa1e[_0xb229('0x4b')]['ids'][_0xb229('0x50')];_0x11c342+=0x1){socket['emit'](_0xb229('0x131'),{'UserId':Number(_0x67fa1e['query'][_0xb229('0x73')][_0x11c342]),'ChatWebsiteId':Number(_0x67fa1e[_0xb229('0x5f')]['id'])});}}else{socket[_0xb229('0x12e')](_0xb229('0x131'),{'UserId':Number(_0x67fa1e[_0xb229('0x4b')][_0xb229('0x73')]),'ChatWebsiteId':Number(_0x67fa1e[_0xb229('0x5f')]['id'])});}});}})[_0xb229('0x1b')](respondWithStatusCode(_0x2b8025,null))[_0xb229('0x23')](handleError(_0x2b8025,null));};exports[_0xb229('0x132')]=function(_0x415bd5,_0x5206e8){var _0x56cb4d={};var _0x1533a7={};var _0x3e6cff;var _0x465300;return db[_0xb229('0x48')]['findOne']({'where':{'id':_0x415bd5[_0xb229('0x5f')]['id']}})[_0xb229('0x1b')](handleEntityNotFound(_0x5206e8,null))['then'](function(_0x40aae4){if(_0x40aae4){_0x3e6cff=_0x40aae4;_0x1533a7[_0xb229('0x40')]=_[_0xb229('0x4a')](db[_0xb229('0x133')][_0xb229('0x60')]);_0x1533a7[_0xb229('0x4b')]=_['keys'](_0x415bd5[_0xb229('0x4b')]);_0x1533a7['filters']=_[_0xb229('0x4d')](_0x1533a7[_0xb229('0x40')],_0x1533a7[_0xb229('0x4b')]);_0x56cb4d['attributes']=_[_0xb229('0x4d')](_0x1533a7[_0xb229('0x40')],qs[_0xb229('0x4e')](_0x415bd5[_0xb229('0x4b')][_0xb229('0x4e')]));_0x56cb4d[_0xb229('0x4f')]=_0x56cb4d['attributes'][_0xb229('0x50')]?_0x56cb4d[_0xb229('0x4f')]:_0x1533a7[_0xb229('0x40')];_0x56cb4d[_0xb229('0x53')]=qs[_0xb229('0x54')](_0x415bd5['query'][_0xb229('0x54')]);_0x56cb4d[_0xb229('0x55')]=qs[_0xb229('0x4c')](_[_0xb229('0x56')](_0x415bd5[_0xb229('0x4b')],_0x1533a7[_0xb229('0x4c')]));if(_0x415bd5[_0xb229('0x4b')][_0xb229('0x57')]){_0x56cb4d['where']=_['merge'](_0x56cb4d[_0xb229('0x55')],{'$or':_[_0xb229('0x47')](_0x56cb4d[_0xb229('0x4f')],function(_0x4e6272){var _0x9cc80b={};_0x9cc80b[_0x4e6272]={'$like':'%'+_0x415bd5[_0xb229('0x4b')][_0xb229('0x57')]+'%'};return _0x9cc80b;})});}_0x56cb4d=_[_0xb229('0x59')]({},_0x56cb4d,_0x415bd5[_0xb229('0x5a')]);return _0x3e6cff[_0xb229('0x132')](_0x56cb4d);}})[_0xb229('0x1b')](function(_0x56ea7e){if(_0x56ea7e){_0x465300=_0x56ea7e[_0xb229('0x50')];if(!_0x415bd5[_0xb229('0x4b')]['hasOwnProperty'](_0xb229('0x52'))){_0x56cb4d[_0xb229('0x28')]=qs[_0xb229('0x28')](_0x415bd5[_0xb229('0x4b')][_0xb229('0x28')]);_0x56cb4d[_0xb229('0x2a')]=qs[_0xb229('0x2a')](_0x415bd5[_0xb229('0x4b')][_0xb229('0x2a')]);}return _0x3e6cff[_0xb229('0x132')](_0x56cb4d);}})['then'](function(_0x3a1b1b){if(_0x3a1b1b){return _0x3a1b1b?{'count':_0x465300,'rows':_0x3a1b1b}:null;}})[_0xb229('0x1b')](respondWithResult(_0x5206e8,null))[_0xb229('0x23')](handleError(_0x5206e8,null));};