Built motion from commit d5e4af8c.|2.6.23
[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 _0x99bf=['keys','filters','intersection','attributes','fields','nolimit','order','sort','where','pick','merge','VIRTUAL','filter','options','includeAll','include','findAll','rows','show','params','mandatoryDispositionPause','length','create','body','user','UserProfileSection','find','userProfileId','update','describe','addDisposition','ChatWebsiteId','Disposition','getDispositions','removeDispositions','ids','addAnswer','CannedAnswer','getAnswers','findOne','hasOwnProperty','removeAnswers','addLogo','sitepic','file','addAvatar','agentAvatar','filename','getLogo','join','root','../../config/license/util','getLicense','server/files/images/logos/','download','getAvatar','existsSync','getCustomerAvatar','customerAvatar','isNil','server/files/images/avatars/','showCustomerAvatar','systemAvatar','notify','chat','CmContact','Sequelize','ValidationError','no\x20available\x20attributes','difference','createdAt','updatedAt','CompanyId','from','body\x20is\x20mandatory\x20and\x20not\x20empty','mapKey','mapKey\x20is\x20mandatory,\x20please\x20use\x20one\x20of\x20these:\x20','List','Contacts','DESC','ChatApplication','Applications','Chat\x20Website\x20with\x20id\x20%s\x20not\x20found','spread','applications','orderBy','priority','account','ListId','contact','headers','threadId','ChatInteraction','externalUrl','ContactId','interaction','messageId','created','push','unmanaged','*,*,*,*','ChatMessage','AttachmentId','UserId','unshift','agent','waitForTheAssignedAgent','forcedOwnership','queueId','queue','Start','EventManager','offline','from\x20is\x20mandatory','mapKeyOffline','mapKeyOffline\x20is\x20mandatory,\x20please\x20use\x20one\x20of\x20these:\x20','includes','mapKeyOffline\x20invalid,\x20please\x20use\x20one\x20of\x20these:\x20','CmList','MailAccount','findOrCreate','server/files/templates/chatOfflineMessage.ejs','utf8','render','toPairs','ChatOfflineMessage','originalname','server','files','attachments','offline-chat','basename','transaction','Attachment','bulkCreate','MailServerOut','Smtp','forwardOffline','forwardOfflineAddress','getSmtpOptions','SendMail','\x22%s\x22\x20<%s>','email','offlineMessageSubject','MailAccountId','mimetype','subjectOffline','NotifyMailAccount','remove','addInteraction','omit','getInteractions','User','Owner','fullname','internal','Tag','Tags','color','tag','getProactiveActions','virtual','custom','License','readFileSync','server/files/chat/iframe.ejs','origin','3.5.0','remote','x-real-ip','connection','remoteAddress','referer','replace','alignment','verticalAlignment','textButtonColor','color_button','backgroundColor','hideWhenOffline','IntervalId','sequelize','ISOLATION_LEVELS','READ_COMMITTED','findAndCountAll','finally','getApplications','addProactiveActions','chatProactiveAction','getFields','online','false','offlineForm','onlineForm','items','fromKey','Contact','Attachments','addAgents','emit','userChatWebsite:save','removeAgents','userChatWebsite:remove','getAgents','mustache','util','fs-extra','lodash','querystring','html-to-text','ioredis','url','../../components/parsers/qs','../../config/logger','api','../../config/environment','../../errors/api','handleError','../../mysqldb','redis','defaults','localhost','./chatWebsite.socket','http','client','then','info','ChatWebsite,\x20%s,\x20%s','request\x20sent','ChatWebsite,\x20%s,\x20%s,\x20%s','stringify','error','message','result','sendStatus','status','json','offset','undefined','limit','count','set','destroy','get','ChatWebsites','UserProfileResource','end','stack','name','send','Command','timezone','format','iftime\x20%s,%s','interval','iftime\x20%s','indexOf','[%s][INTERVAL][%s]\x20%s\x20%s\x20(%s)','OFFLINE','No\x20timezone','catch','inspect','Interval','Intervals','all','some','setUA','user-agent','customerIp','cf-connecting-ip','first','x-forwarded-for','split','firstName','lastName','x-real-port','browser','%s\x20%s','version','unknown','device','model','vendor','type','index','Pause','map','ChatWebsite','rawAttributes','query'];(function(_0x35f83e,_0x30ec55){var _0x249b05=function(_0x2c2fcc){while(--_0x2c2fcc){_0x35f83e['push'](_0x35f83e['shift']());}};_0x249b05(++_0x30ec55);}(_0x99bf,0x1ee));var _0xf99b=function(_0x1203f,_0x554bbc){_0x1203f=_0x1203f-0x0;var _0x365f0a=_0x99bf[_0x1203f];return _0x365f0a;};'use strict';var Mustache=require(_0xf99b('0x0'));var util=require(_0xf99b('0x1'));var path=require('path');var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0xf99b('0x2'));var _=require(_0xf99b('0x3'));var querystring=require(_0xf99b('0x4'));var htmlToText=require(_0xf99b('0x5'));var Redis=require(_0xf99b('0x6'));var jayson=require('jayson/promise');var url=require(_0xf99b('0x7'));var qs=require(_0xf99b('0x8'));var logger=require(_0xf99b('0x9'))(_0xf99b('0xa'));var config=require(_0xf99b('0xb'));var APIOutOfIntervalError=require(_0xf99b('0xc'))['APIOutOfIntervalError'];var APINotFoundError=require('../../errors/api')['APINotFoundError'];var APIHandleError=require(_0xf99b('0xc'))[_0xf99b('0xd')];var db=require(_0xf99b('0xe'))['db'];config[_0xf99b('0xf')]=_[_0xf99b('0x10')](config[_0xf99b('0xf')],{'host':_0xf99b('0x11'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config['redis']));require(_0xf99b('0x12'))['register'](socket);var client=jayson['client'][_0xf99b('0x13')]({'port':0x232c});var client9002=jayson[_0xf99b('0x14')][_0xf99b('0x13')]({'port':0x232a});var client9003=jayson[_0xf99b('0x14')]['http']({'port':0x232b});var client9001=jayson[_0xf99b('0x14')]['http']({'port':0x2329});function respondWithRpcPromise(_0x5e1014,_0x1866aa,_0x20d64,_0x344b10){return new Promise(function(_0x541331,_0x2f0903){var _0x51ced5=_0x344b10||client;return _0x51ced5['request'](_0x5e1014,_0x20d64)[_0xf99b('0x15')](function(_0x2c2804){logger[_0xf99b('0x16')](_0xf99b('0x17'),_0x1866aa,_0xf99b('0x18'));logger['debug'](_0xf99b('0x19'),_0x1866aa,_0xf99b('0x18'),JSON[_0xf99b('0x1a')](_0x2c2804));if(_0x2c2804[_0xf99b('0x1b')]){if(_0x2c2804[_0xf99b('0x1b')]['code']===0x1f4){logger[_0xf99b('0x1b')](_0xf99b('0x17'),_0x1866aa,_0x2c2804[_0xf99b('0x1b')][_0xf99b('0x1c')]);return _0x2f0903(_0x2c2804[_0xf99b('0x1b')]['message']);}logger[_0xf99b('0x1b')]('ChatWebsite,\x20%s,\x20%s',_0x1866aa,_0x2c2804[_0xf99b('0x1b')][_0xf99b('0x1c')]);return _0x541331(_0x2c2804[_0xf99b('0x1b')]['message']);}else{logger[_0xf99b('0x16')](_0xf99b('0x17'),_0x1866aa,_0xf99b('0x18'));_0x541331(_0x2c2804[_0xf99b('0x1d')]['message']);}})['catch'](function(_0x418139){logger[_0xf99b('0x1b')](_0xf99b('0x17'),_0x1866aa,_0x418139);_0x2f0903(_0x418139);});});}function respondWithStatusCode(_0x545c41,_0x47608f){_0x47608f=_0x47608f||0xcc;return function(_0x544396){if(_0x544396){return _0x545c41[_0xf99b('0x1e')](_0x47608f);}return _0x545c41['status'](_0x47608f)['end']();};}function respondWithResult(_0x5614e9,_0xfceb90){_0xfceb90=_0xfceb90||0xc8;return function(_0x107410){if(_0x107410){return _0x5614e9[_0xf99b('0x1f')](_0xfceb90)[_0xf99b('0x20')](_0x107410);}};}function respondWithFilteredResult(_0x58e2fe,_0x5c916a){return function(_0x564ccc){if(_0x564ccc){var _0x373f1d=typeof _0x5c916a[_0xf99b('0x21')]===_0xf99b('0x22')&&typeof _0x5c916a[_0xf99b('0x23')]===_0xf99b('0x22');var _0x138550=_0x564ccc[_0xf99b('0x24')];var _0x251b19=_0x373f1d?0x0:_0x5c916a[_0xf99b('0x21')];var _0x3e8e4d=_0x373f1d?_0x564ccc[_0xf99b('0x24')]:_0x5c916a[_0xf99b('0x21')]+_0x5c916a['limit'];var _0x155cb9;if(_0x3e8e4d>=_0x138550){_0x3e8e4d=_0x138550;_0x155cb9=0xc8;}else{_0x155cb9=0xce;}_0x58e2fe[_0xf99b('0x1f')](_0x155cb9);return _0x58e2fe[_0xf99b('0x25')]('Content-Range',_0x251b19+'-'+_0x3e8e4d+'/'+_0x138550)[_0xf99b('0x20')](_0x564ccc);}return null;};}function saveUpdates(_0x35b264){return function(_0x22362c){if(_0x22362c){return _0x22362c['update'](_0x35b264)['then'](function(_0x34c404){return _0x34c404;});}return null;};}function removeEntity(_0x44055c){return function(_0x66a247){if(_0x66a247){return _0x66a247[_0xf99b('0x26')]()[_0xf99b('0x15')](function(){var _0x392205=_0x66a247[_0xf99b('0x27')]({'plain':!![]});var _0x9b6646=_0xf99b('0x28');return db[_0xf99b('0x29')][_0xf99b('0x26')]({'where':{'type':_0x9b6646,'resourceId':_0x392205['id']}})[_0xf99b('0x15')](function(){return _0x66a247;});})[_0xf99b('0x15')](function(){_0x44055c[_0xf99b('0x1f')](0xcc)[_0xf99b('0x2a')]();});}};}function handleEntityNotFound(_0xadc8a4){return function(_0x109e7b){if(!_0x109e7b){_0xadc8a4[_0xf99b('0x1e')](0x194);}return _0x109e7b;};}function handleError(_0x3cb012,_0x4fa82e){_0x4fa82e=_0x4fa82e||0x1f4;return function(_0xc278da){logger[_0xf99b('0x1b')](_0xc278da[_0xf99b('0x2b')]);if(_0xc278da[_0xf99b('0x2c')]){delete _0xc278da[_0xf99b('0x2c')];}_0x3cb012[_0xf99b('0x1f')](_0x4fa82e)[_0xf99b('0x2d')](_0xc278da);};}function iftimePromise(_0x23cb9f,_0x3093c5){return respondWithRpcPromise(_0xf99b('0x2e'),'getSnippet',{'command':_0x3093c5[_0xf99b('0x2f')]?util[_0xf99b('0x30')](_0xf99b('0x31'),_0x23cb9f[_0xf99b('0x32')],_0x3093c5[_0xf99b('0x2f')]):util['format'](_0xf99b('0x33'),_0x23cb9f[_0xf99b('0x32')])},client9002)[_0xf99b('0x15')](function(_0x557cca){var _0x11ca6d=_0x557cca&&_0x557cca[_0xf99b('0x34')]('true')>=0x0?!![]:![];logger[_0xf99b('0x16')](_0xf99b('0x35'),_0x3093c5['id'],_0x23cb9f['id'],_0x23cb9f['interval'],_0x11ca6d?'ONLINE':_0xf99b('0x36'),_0x3093c5[_0xf99b('0x2f')]?_0x3093c5[_0xf99b('0x2f')]:_0xf99b('0x37'));return _0x11ca6d;})[_0xf99b('0x38')](function(_0x264225){logger['error'](_0xf99b('0x35'),_0x3093c5['id'],_0x23cb9f['id'],_0x23cb9f['interval'],util[_0xf99b('0x39')](_0x264225,{'showHidden':![],'depth':null}),_0x3093c5['timezone']?_0x3093c5[_0xf99b('0x2f')]:_0xf99b('0x37'));return![];});}function checkWebsiteIntervals(_0x31abde){var _0x4a3370=_['map'](_0x31abde[_0xf99b('0x3a')][_0xf99b('0x3b')],function(_0x2204e2){var _0x5f012d=_0x2204e2[_0xf99b('0x27')]({'plain':!![]});return iftimePromise(_0x5f012d,_0x31abde);});return Promise[_0xf99b('0x3c')](_0x4a3370)['then'](function(_0x23ad75){return _[_0xf99b('0x3d')](_0x23ad75);});}function createInteractionObject(_0x13702f,_0x490e40,_0x37282c,_0x428eb0){var _0x25cc43=require('user-agent-parser');var _0x2813d5=new _0x25cc43();var _0x4396e3=_0x2813d5[_0xf99b('0x3e')](_0x37282c[_0xf99b('0x3f')])['getResult']();var _0x2663d3=_0x490e40[_0xf99b('0x40')];if(_0x37282c[_0xf99b('0x41')]){_0x2663d3=_0x37282c[_0xf99b('0x41')];}else if(_0x37282c['x-forwarded-for']){_0x2663d3=_[_0xf99b('0x42')](_0x37282c[_0xf99b('0x43')][_0xf99b('0x44')](','));}return{'ContactId':_0x428eb0['id'],'ChatWebsiteId':_0x13702f,'from':(_0x428eb0[_0xf99b('0x45')]||'')+'\x20'+(_0x428eb0[_0xf99b('0x46')]||''),'customerIp':_0x2663d3,'customerPort':_0x37282c[_0xf99b('0x47')]?_0x37282c[_0xf99b('0x47')]:null,'referer':_0x490e40['referer'],'browserName':_0x4396e3[_0xf99b('0x48')][_0xf99b('0x2c')]&&_0x4396e3['browser']['version']?util[_0xf99b('0x30')](_0xf99b('0x49'),_0x4396e3[_0xf99b('0x48')]['name'],_0x4396e3[_0xf99b('0x48')][_0xf99b('0x4a')]):_0xf99b('0x4b'),'browserVersion':_0x4396e3[_0xf99b('0x48')][_0xf99b('0x4a')]||_0xf99b('0x4b'),'osName':util[_0xf99b('0x30')](_0xf99b('0x49'),_0x4396e3['os'][_0xf99b('0x2c')],_0x4396e3['os'][_0xf99b('0x4a')]),'osVersion':_0x4396e3['os'][_0xf99b('0x4a')],'deviceModel':_0x4396e3[_0xf99b('0x4c')][_0xf99b('0x4d')]&&_0x4396e3[_0xf99b('0x4c')][_0xf99b('0x4e')]?util[_0xf99b('0x30')]('%s\x20%s\x20%s',_0x4396e3[_0xf99b('0x4c')][_0xf99b('0x4d')],_0x4396e3[_0xf99b('0x4c')][_0xf99b('0x4e')],_0x4396e3[_0xf99b('0x4c')][_0xf99b('0x4f')]):null,'deviceVendor':_0x4396e3['device']['vendor'],'deviceType':_0x4396e3[_0xf99b('0x4c')][_0xf99b('0x4f')],'formData':JSON['stringify'](_0x490e40)};}exports[_0xf99b('0x50')]=function(_0x507c48,_0x57b9bd){var _0x4ca524={'include':[{'model':db[_0xf99b('0x51')],'as':'mandatoryDispositionPause'}]},_0x26e1bc={},_0x2ef315={'count':0x0,'rows':[]};var _0x4fb336=_[_0xf99b('0x52')](db[_0xf99b('0x53')][_0xf99b('0x54')],function(_0x141fee){return{'name':_0x141fee['fieldName'],'type':_0x141fee[_0xf99b('0x4f')]['key']};});_0x26e1bc['model']=_['map'](_0x4fb336,'name');_0x26e1bc[_0xf99b('0x55')]=_[_0xf99b('0x56')](_0x507c48[_0xf99b('0x55')]);_0x26e1bc[_0xf99b('0x57')]=_[_0xf99b('0x58')](_0x26e1bc['model'],_0x26e1bc['query']);_0x4ca524[_0xf99b('0x59')]=_[_0xf99b('0x58')](_0x26e1bc['model'],qs[_0xf99b('0x5a')](_0x507c48[_0xf99b('0x55')][_0xf99b('0x5a')]));_0x4ca524[_0xf99b('0x59')]=_0x4ca524[_0xf99b('0x59')]['length']?_0x4ca524[_0xf99b('0x59')]:_0x26e1bc['model'];if(!_0x507c48[_0xf99b('0x55')]['hasOwnProperty'](_0xf99b('0x5b'))){_0x4ca524['limit']=qs['limit'](_0x507c48[_0xf99b('0x55')][_0xf99b('0x23')]);_0x4ca524[_0xf99b('0x21')]=qs[_0xf99b('0x21')](_0x507c48[_0xf99b('0x55')][_0xf99b('0x21')]);}_0x4ca524[_0xf99b('0x5c')]=qs['sort'](_0x507c48['query'][_0xf99b('0x5d')]);_0x4ca524[_0xf99b('0x5e')]=qs[_0xf99b('0x57')](_[_0xf99b('0x5f')](_0x507c48['query'],_0x26e1bc[_0xf99b('0x57')]),_0x4fb336);if(_0x507c48['query']['filter']){_0x4ca524[_0xf99b('0x5e')]=_[_0xf99b('0x60')](_0x4ca524[_0xf99b('0x5e')],{'$or':_['map'](_0x4fb336,function(_0x5d6138){if(_0x5d6138['type']!==_0xf99b('0x61')){var _0x54a6b1={};_0x54a6b1[_0x5d6138['name']]={'$like':'%'+_0x507c48[_0xf99b('0x55')][_0xf99b('0x62')]+'%'};return _0x54a6b1;}})});}_0x4ca524=_[_0xf99b('0x60')]({},_0x4ca524,_0x507c48[_0xf99b('0x63')]);var _0x4a0e1b={'where':_0x4ca524[_0xf99b('0x5e')]};return db[_0xf99b('0x53')][_0xf99b('0x24')](_0x4a0e1b)[_0xf99b('0x15')](function(_0x5e3466){_0x2ef315[_0xf99b('0x24')]=_0x5e3466;if(_0x507c48[_0xf99b('0x55')][_0xf99b('0x64')]){_0x4ca524[_0xf99b('0x65')]=[{'all':!![]}];}return db['ChatWebsite'][_0xf99b('0x66')](_0x4ca524);})['then'](function(_0x319784){_0x2ef315[_0xf99b('0x67')]=_0x319784;return _0x2ef315;})[_0xf99b('0x15')](respondWithFilteredResult(_0x57b9bd,_0x4ca524))[_0xf99b('0x38')](handleError(_0x57b9bd,null));};exports[_0xf99b('0x68')]=function(_0x44efa3,_0x4fea29){var _0x134c7b={'raw':![],'where':{'id':_0x44efa3[_0xf99b('0x69')]['id']},'include':[{'model':db[_0xf99b('0x51')],'as':_0xf99b('0x6a')}]},_0x550efb={};_0x550efb['model']=_['keys'](db[_0xf99b('0x53')][_0xf99b('0x54')]);_0x550efb['query']=_[_0xf99b('0x56')](_0x44efa3[_0xf99b('0x55')]);_0x550efb[_0xf99b('0x57')]=_[_0xf99b('0x58')](_0x550efb['model'],_0x550efb[_0xf99b('0x55')]);_0x134c7b[_0xf99b('0x59')]=_['intersection'](_0x550efb[_0xf99b('0x4d')],qs['fields'](_0x44efa3[_0xf99b('0x55')][_0xf99b('0x5a')]));_0x134c7b[_0xf99b('0x59')]=_0x134c7b[_0xf99b('0x59')][_0xf99b('0x6b')]?_0x134c7b[_0xf99b('0x59')]:_0x550efb[_0xf99b('0x4d')];if(_0x44efa3[_0xf99b('0x55')]['includeAll']){_0x134c7b[_0xf99b('0x65')]=[{'all':!![]}];}_0x134c7b=_[_0xf99b('0x60')]({},_0x134c7b,_0x44efa3[_0xf99b('0x63')]);return db[_0xf99b('0x53')]['find'](_0x134c7b)[_0xf99b('0x15')](handleEntityNotFound(_0x4fea29,null))[_0xf99b('0x15')](respondWithResult(_0x4fea29,null))['catch'](handleError(_0x4fea29,null));};exports[_0xf99b('0x6c')]=function(_0x5cc6ef,_0x590343){return db[_0xf99b('0x53')][_0xf99b('0x6c')](_0x5cc6ef[_0xf99b('0x6d')],{})[_0xf99b('0x15')](function(_0x13693c){var _0x2beb1f=_0x5cc6ef[_0xf99b('0x6e')][_0xf99b('0x27')]({'plain':!![]});if(!_0x2beb1f)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x2beb1f['role']===_0xf99b('0x6e')){var _0x19c4a4=_0x13693c[_0xf99b('0x27')]({'plain':!![]});var _0x3ffd3a=_0xf99b('0x28');return db[_0xf99b('0x6f')][_0xf99b('0x70')]({'where':{'name':_0x3ffd3a,'userProfileId':_0x2beb1f[_0xf99b('0x71')]},'raw':!![]})[_0xf99b('0x15')](function(_0x19901c){if(_0x19901c&&_0x19901c['autoAssociation']===0x0){return db[_0xf99b('0x29')]['create']({'name':_0x19c4a4[_0xf99b('0x2c')],'resourceId':_0x19c4a4['id'],'type':_0x19901c[_0xf99b('0x2c')],'sectionId':_0x19901c['id']},{})[_0xf99b('0x15')](function(){return _0x13693c;});}else{return _0x13693c;}})[_0xf99b('0x38')](function(_0x58bd0d){logger[_0xf99b('0x1b')]('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x58bd0d);throw _0x58bd0d;});}return _0x13693c;})['then'](respondWithResult(_0x590343,0xc9))[_0xf99b('0x38')](handleError(_0x590343,null));};exports[_0xf99b('0x72')]=function(_0x23e9cc,_0x55dd8d){if(_0x23e9cc[_0xf99b('0x6d')]['id']){delete _0x23e9cc[_0xf99b('0x6d')]['id'];}return db[_0xf99b('0x53')]['find']({'where':{'id':_0x23e9cc[_0xf99b('0x69')]['id']},'include':[{'model':db[_0xf99b('0x51')],'as':_0xf99b('0x6a')}]})[_0xf99b('0x15')](handleEntityNotFound(_0x55dd8d,null))[_0xf99b('0x15')](saveUpdates(_0x23e9cc[_0xf99b('0x6d')],null))[_0xf99b('0x15')](respondWithResult(_0x55dd8d,null))[_0xf99b('0x38')](handleError(_0x55dd8d,null));};exports['destroy']=function(_0x186070,_0x2e5665){return db[_0xf99b('0x53')]['find']({'where':{'id':_0x186070[_0xf99b('0x69')]['id']}})[_0xf99b('0x15')](handleEntityNotFound(_0x2e5665,null))['then'](removeEntity(_0x2e5665,null))[_0xf99b('0x38')](handleError(_0x2e5665,null));};exports['describe']=function(_0x1c44b2,_0x3c7bfe){return db[_0xf99b('0x53')][_0xf99b('0x73')]()['then'](respondWithResult(_0x3c7bfe,null))[_0xf99b('0x38')](handleError(_0x3c7bfe,null));};exports[_0xf99b('0x74')]=function(_0x4d41f5,_0x42612e){if(_0x4d41f5[_0xf99b('0x6d')]['id']){delete _0x4d41f5[_0xf99b('0x6d')]['id'];}return db[_0xf99b('0x53')][_0xf99b('0x70')]({'where':{'id':_0x4d41f5[_0xf99b('0x69')]['id']}})[_0xf99b('0x15')](handleEntityNotFound(_0x42612e,null))[_0xf99b('0x15')](function(_0x3a2478){if(_0x3a2478){_0x4d41f5['body'][_0xf99b('0x75')]=_0x3a2478['id'];return db[_0xf99b('0x76')]['create'](_0x4d41f5[_0xf99b('0x6d')]);}})[_0xf99b('0x15')](respondWithResult(_0x42612e,null))[_0xf99b('0x38')](handleError(_0x42612e,null));};exports[_0xf99b('0x77')]=function(_0x3e2a03,_0x497c0c){var _0x54f02d={'raw':![],'where':{}};var _0x1788ea={};var _0x573eb4={'count':0x0,'rows':[]};return db['ChatWebsite']['findOne']({'where':{'id':_0x3e2a03['params']['id']}})['then'](handleEntityNotFound(_0x497c0c,null))[_0xf99b('0x15')](function(_0x324112){if(_0x324112){_0x1788ea[_0xf99b('0x4d')]=_[_0xf99b('0x56')](db['Disposition'][_0xf99b('0x54')]);_0x1788ea[_0xf99b('0x55')]=_[_0xf99b('0x56')](_0x3e2a03[_0xf99b('0x55')]);_0x1788ea[_0xf99b('0x57')]=_['intersection'](_0x1788ea['model'],_0x1788ea[_0xf99b('0x55')]);_0x54f02d[_0xf99b('0x59')]=_[_0xf99b('0x58')](_0x1788ea[_0xf99b('0x4d')],qs['fields'](_0x3e2a03[_0xf99b('0x55')][_0xf99b('0x5a')]));_0x54f02d[_0xf99b('0x59')]=_0x54f02d['attributes'][_0xf99b('0x6b')]?_0x54f02d['attributes']:_0x1788ea['model'];if(!_0x3e2a03['query']['hasOwnProperty'](_0xf99b('0x5b'))){_0x54f02d[_0xf99b('0x23')]=qs['limit'](_0x3e2a03['query'][_0xf99b('0x23')]);_0x54f02d[_0xf99b('0x21')]=qs[_0xf99b('0x21')](_0x3e2a03['query'][_0xf99b('0x21')]);}_0x54f02d['order']=qs['sort'](_0x3e2a03['query']['sort']);_0x54f02d['where']=qs[_0xf99b('0x57')](_[_0xf99b('0x5f')](_0x3e2a03[_0xf99b('0x55')],_0x1788ea['filters']));_0x54f02d[_0xf99b('0x5e')]['ChatWebsiteId']=_0x324112['id'];if(_0x3e2a03['query']['filter']){_0x54f02d[_0xf99b('0x5e')]=_['merge'](_0x54f02d[_0xf99b('0x5e')],{'$or':_['map'](_0x54f02d['attributes'],function(_0x3f4495){var _0x2fe461={};_0x2fe461[_0x3f4495]={'$like':'%'+_0x3e2a03[_0xf99b('0x55')][_0xf99b('0x62')]+'%'};return _0x2fe461;})});}_0x54f02d=_[_0xf99b('0x60')]({},_0x54f02d,_0x3e2a03['options']);return db[_0xf99b('0x76')]['count']({'where':_0x54f02d[_0xf99b('0x5e')]})[_0xf99b('0x15')](function(_0xf2fd03){_0x573eb4['count']=_0xf2fd03;if(_0x3e2a03[_0xf99b('0x55')]['includeAll']){_0x54f02d[_0xf99b('0x65')]=[{'all':!![]}];}return db[_0xf99b('0x76')][_0xf99b('0x66')](_0x54f02d);})[_0xf99b('0x15')](function(_0x44f7f5){_0x573eb4[_0xf99b('0x67')]=_0x44f7f5;return _0x573eb4;});}})[_0xf99b('0x15')](respondWithFilteredResult(_0x497c0c,_0x54f02d))[_0xf99b('0x38')](handleError(_0x497c0c,null));};exports[_0xf99b('0x78')]=function(_0x516bc9,_0x523552){return db['ChatWebsite'][_0xf99b('0x70')]({'where':{'id':_0x516bc9[_0xf99b('0x69')]['id']}})[_0xf99b('0x15')](handleEntityNotFound(_0x523552,null))[_0xf99b('0x15')](function(_0xbc4240){if(_0xbc4240){return _0xbc4240[_0xf99b('0x78')](_0x516bc9[_0xf99b('0x55')][_0xf99b('0x79')]);}})[_0xf99b('0x15')](respondWithStatusCode(_0x523552,null))[_0xf99b('0x38')](handleError(_0x523552,null));};exports[_0xf99b('0x7a')]=function(_0x2b680f,_0x43ea2a){if(_0x2b680f[_0xf99b('0x6d')]['id']){delete _0x2b680f[_0xf99b('0x6d')]['id'];}return db['ChatWebsite'][_0xf99b('0x70')]({'where':{'id':_0x2b680f['params']['id']}})['then'](handleEntityNotFound(_0x43ea2a,null))[_0xf99b('0x15')](function(_0x3c9c87){if(_0x3c9c87){_0x2b680f[_0xf99b('0x6d')][_0xf99b('0x75')]=_0x3c9c87['id'];return db[_0xf99b('0x7b')][_0xf99b('0x6c')](_0x2b680f[_0xf99b('0x6d')]);}})['then'](respondWithResult(_0x43ea2a,null))['catch'](handleError(_0x43ea2a,null));};exports[_0xf99b('0x7c')]=function(_0x465ca7,_0xd5df61){var _0x3e512b={'raw':![],'where':{}};var _0x526a2e={};var _0x125845={'count':0x0,'rows':[]};return db[_0xf99b('0x53')][_0xf99b('0x7d')]({'where':{'id':_0x465ca7['params']['id']}})['then'](handleEntityNotFound(_0xd5df61,null))['then'](function(_0x516d8b){if(_0x516d8b){_0x526a2e[_0xf99b('0x4d')]=_[_0xf99b('0x56')](db[_0xf99b('0x7b')][_0xf99b('0x54')]);_0x526a2e['query']=_[_0xf99b('0x56')](_0x465ca7[_0xf99b('0x55')]);_0x526a2e[_0xf99b('0x57')]=_[_0xf99b('0x58')](_0x526a2e[_0xf99b('0x4d')],_0x526a2e[_0xf99b('0x55')]);_0x3e512b[_0xf99b('0x59')]=_[_0xf99b('0x58')](_0x526a2e[_0xf99b('0x4d')],qs[_0xf99b('0x5a')](_0x465ca7[_0xf99b('0x55')][_0xf99b('0x5a')]));_0x3e512b['attributes']=_0x3e512b[_0xf99b('0x59')][_0xf99b('0x6b')]?_0x3e512b[_0xf99b('0x59')]:_0x526a2e['model'];if(!_0x465ca7[_0xf99b('0x55')][_0xf99b('0x7e')](_0xf99b('0x5b'))){_0x3e512b['limit']=qs[_0xf99b('0x23')](_0x465ca7[_0xf99b('0x55')]['limit']);_0x3e512b[_0xf99b('0x21')]=qs['offset'](_0x465ca7['query'][_0xf99b('0x21')]);}_0x3e512b[_0xf99b('0x5c')]=qs[_0xf99b('0x5d')](_0x465ca7[_0xf99b('0x55')][_0xf99b('0x5d')]);_0x3e512b['where']=qs['filters'](_[_0xf99b('0x5f')](_0x465ca7[_0xf99b('0x55')],_0x526a2e[_0xf99b('0x57')]));_0x3e512b[_0xf99b('0x5e')][_0xf99b('0x75')]=_0x516d8b['id'];if(_0x465ca7['query'][_0xf99b('0x62')]){_0x3e512b['where']=_[_0xf99b('0x60')](_0x3e512b['where'],{'$or':_[_0xf99b('0x52')](_0x3e512b[_0xf99b('0x59')],function(_0x4a45c2){var _0x2e6155={};_0x2e6155[_0x4a45c2]={'$like':'%'+_0x465ca7[_0xf99b('0x55')][_0xf99b('0x62')]+'%'};return _0x2e6155;})});}_0x3e512b=_[_0xf99b('0x60')]({},_0x3e512b,_0x465ca7[_0xf99b('0x63')]);return db[_0xf99b('0x7b')]['count']({'where':_0x3e512b[_0xf99b('0x5e')]})['then'](function(_0xdfdcc5){_0x125845[_0xf99b('0x24')]=_0xdfdcc5;if(_0x465ca7[_0xf99b('0x55')][_0xf99b('0x64')]){_0x3e512b[_0xf99b('0x65')]=[{'all':!![]}];}return db[_0xf99b('0x7b')][_0xf99b('0x66')](_0x3e512b);})[_0xf99b('0x15')](function(_0x5afff8){_0x125845[_0xf99b('0x67')]=_0x5afff8;return _0x125845;});}})[_0xf99b('0x15')](respondWithFilteredResult(_0xd5df61,_0x3e512b))[_0xf99b('0x38')](handleError(_0xd5df61,null));};exports[_0xf99b('0x7f')]=function(_0xb65373,_0x299096){return db[_0xf99b('0x53')]['find']({'where':{'id':_0xb65373[_0xf99b('0x69')]['id']}})[_0xf99b('0x15')](handleEntityNotFound(_0x299096,null))[_0xf99b('0x15')](function(_0x10fec9){if(_0x10fec9){return _0x10fec9['removeAnswers'](_0xb65373[_0xf99b('0x55')][_0xf99b('0x79')]);}})[_0xf99b('0x15')](respondWithStatusCode(_0x299096,null))[_0xf99b('0x38')](handleError(_0x299096,null));};exports[_0xf99b('0x80')]=function(_0x41b380,_0x229889){_0x41b380[_0xf99b('0x6d')][_0xf99b('0x81')]=_0x41b380[_0xf99b('0x82')]['filename'];return db[_0xf99b('0x53')]['find']({'where':{'id':_0x41b380['params']['id']}})[_0xf99b('0x15')](handleEntityNotFound(_0x229889,null))[_0xf99b('0x15')](saveUpdates(_0x41b380['body'],null))[_0xf99b('0x15')](respondWithResult(_0x229889,null))['catch'](handleError(_0x229889,null));};exports[_0xf99b('0x83')]=function(_0x564f35,_0x234574){_0x564f35[_0xf99b('0x6d')][_0xf99b('0x84')]=_0x564f35[_0xf99b('0x82')][_0xf99b('0x85')];return db[_0xf99b('0x53')][_0xf99b('0x70')]({'where':{'id':_0x564f35[_0xf99b('0x69')]['id']}})['then'](handleEntityNotFound(_0x234574,null))['then'](saveUpdates(_0x564f35[_0xf99b('0x6d')],null))['then'](respondWithResult(_0x234574,null))[_0xf99b('0x38')](handleError(_0x234574,null));};exports['addCustomerAvatar']=function(_0x54f287,_0x5ed388){_0x54f287[_0xf99b('0x6d')]['customerAvatar']=_0x54f287[_0xf99b('0x82')][_0xf99b('0x85')];return db[_0xf99b('0x53')][_0xf99b('0x70')]({'where':{'id':_0x54f287[_0xf99b('0x69')]['id']}})[_0xf99b('0x15')](handleEntityNotFound(_0x5ed388,null))['then'](saveUpdates(_0x54f287[_0xf99b('0x6d')],null))[_0xf99b('0x15')](respondWithResult(_0x5ed388,null))[_0xf99b('0x38')](handleError(_0x5ed388,null));};exports['addSystemAvatar']=function(_0x508362,_0x1cccbc){_0x508362[_0xf99b('0x6d')]['systemAvatar']=_0x508362[_0xf99b('0x82')][_0xf99b('0x85')];return db[_0xf99b('0x53')][_0xf99b('0x70')]({'where':{'id':_0x508362[_0xf99b('0x69')]['id']}})['then'](handleEntityNotFound(_0x1cccbc,null))[_0xf99b('0x15')](saveUpdates(_0x508362[_0xf99b('0x6d')],null))[_0xf99b('0x15')](respondWithResult(_0x1cccbc,null))[_0xf99b('0x38')](handleError(_0x1cccbc,null));};exports[_0xf99b('0x86')]=function(_0x279b10,_0x2a2d32){var _0x45fb9b=path[_0xf99b('0x87')](config[_0xf99b('0x88')],'server/files/images/logos/default_logo.svg');var _0xf4e51e={'where':{'id':_0x279b10[_0xf99b('0x69')]['id']},'attributes':['id',_0xf99b('0x81')],'raw':!![]};var _0x4d5b94=![];return require(_0xf99b('0x89'))[_0xf99b('0x8a')]()[_0xf99b('0x15')](function(_0x41dfc7){if(_0x41dfc7){_0x4d5b94=_0x41dfc7['custom'];}})[_0xf99b('0x15')](function(){return db[_0xf99b('0x53')]['find'](_0xf4e51e);})[_0xf99b('0x15')](handleEntityNotFound(_0x2a2d32,null))[_0xf99b('0x15')](function(_0x4575c0){if(_0x4575c0){if(!_['isNil'](_0x4575c0[_0xf99b('0x81')])){if(fs['existsSync'](path[_0xf99b('0x87')](config[_0xf99b('0x88')],_0xf99b('0x8b'),_0x4575c0[_0xf99b('0x81')]))&&_0x4d5b94){_0x45fb9b=path[_0xf99b('0x87')](config[_0xf99b('0x88')],_0xf99b('0x8b'),_0x4575c0[_0xf99b('0x81')]);}}return _0x2a2d32[_0xf99b('0x8c')](_0x45fb9b);}})[_0xf99b('0x38')](handleError(_0x2a2d32,null));};exports[_0xf99b('0x8d')]=function(_0x5cfc25,_0x5d5b25){var _0x2b63a5=path[_0xf99b('0x87')](config[_0xf99b('0x88')],'server/files/images/avatars/default_avatar.png');var _0x353c4b={'where':{'id':_0x5cfc25['params']['id']},'attributes':['id',_0xf99b('0x84')],'raw':!![]};return db['ChatWebsite'][_0xf99b('0x70')](_0x353c4b)[_0xf99b('0x15')](handleEntityNotFound(_0x5d5b25,null))[_0xf99b('0x15')](function(_0x1e093a){if(_0x1e093a){if(!_['isNil'](_0x1e093a[_0xf99b('0x84')])){if(fs[_0xf99b('0x8e')](path[_0xf99b('0x87')](config[_0xf99b('0x88')],'server/files/images/avatars/',_0x1e093a['agentAvatar']))){_0x2b63a5=path[_0xf99b('0x87')](config[_0xf99b('0x88')],'server/files/images/avatars/',_0x1e093a[_0xf99b('0x84')]);}}return _0x5d5b25[_0xf99b('0x8c')](_0x2b63a5);}})[_0xf99b('0x38')](handleError(_0x5d5b25,null));};exports[_0xf99b('0x8f')]=function(_0x2c6747,_0x5b793d){var _0x845e1c=path[_0xf99b('0x87')](config['root'],'server/files/images/avatars/customer_avatar.png');var _0x2425cb={'where':{'id':_0x2c6747[_0xf99b('0x69')]['id']},'attributes':['id',_0xf99b('0x90'),'showCustomerAvatar'],'raw':!![]};return db['ChatWebsite'][_0xf99b('0x70')](_0x2425cb)[_0xf99b('0x15')](handleEntityNotFound(_0x5b793d,null))['then'](function(_0x121dfa){if(_0x121dfa){if(!_[_0xf99b('0x91')](_0x121dfa[_0xf99b('0x90')])){if(fs[_0xf99b('0x8e')](path['join'](config[_0xf99b('0x88')],_0xf99b('0x92'),_0x121dfa[_0xf99b('0x90')]))&&_0x121dfa[_0xf99b('0x93')]){_0x845e1c=path[_0xf99b('0x87')](config[_0xf99b('0x88')],_0xf99b('0x92'),_0x121dfa[_0xf99b('0x90')]);}}return _0x5b793d[_0xf99b('0x8c')](_0x845e1c);}})[_0xf99b('0x38')](handleError(_0x5b793d,null));};exports['getSystemAvatar']=function(_0x1539bd,_0x229bc8){var _0x2fea7b=path[_0xf99b('0x87')](config[_0xf99b('0x88')],'server/files/images/avatars/system_avatar.png');var _0x6ea6ba={'where':{'id':_0x1539bd[_0xf99b('0x69')]['id']},'attributes':['id',_0xf99b('0x94')],'raw':!![]};return db['ChatWebsite'][_0xf99b('0x70')](_0x6ea6ba)[_0xf99b('0x15')](handleEntityNotFound(_0x229bc8,null))['then'](function(_0x3ff717){if(_0x3ff717){if(!_[_0xf99b('0x91')](_0x3ff717[_0xf99b('0x94')])){if(fs[_0xf99b('0x8e')](path[_0xf99b('0x87')](config[_0xf99b('0x88')],'server/files/images/avatars/',_0x3ff717[_0xf99b('0x94')]))){_0x2fea7b=path['join'](config[_0xf99b('0x88')],'server/files/images/avatars/',_0x3ff717[_0xf99b('0x94')]);}}return _0x229bc8[_0xf99b('0x8c')](_0x2fea7b);}})[_0xf99b('0x38')](handleError(_0x229bc8,null));};exports[_0xf99b('0x95')]=function(_0x29727c,_0x4b5ead){var _0x35e9f1={'body':_0x29727c['body'],'channel':_0xf99b('0x96')};var _0x863331=[];var _0x45ccb8=[];var _0x40e8c0={};var _0x481a9d=![];return db[_0xf99b('0x97')]['describe']()[_0xf99b('0x15')](function(_0x30d63e){if(!_0x30d63e){throw new db[(_0xf99b('0x98'))][(_0xf99b('0x99'))](_0xf99b('0x9a'));}_0x863331=_[_0xf99b('0x9b')](_[_0xf99b('0x56')](_0x30d63e),[_0xf99b('0x9c'),_0xf99b('0x9d')]);_0x45ccb8=_[_0xf99b('0x9b')](_['keys'](_0x30d63e),[_0xf99b('0x9c'),_0xf99b('0x9d'),_0xf99b('0x9e'),'ListId']);if(_0x29727c['body']['id']){delete _0x29727c[_0xf99b('0x6d')]['id'];}if(_[_0xf99b('0x91')](_0x29727c[_0xf99b('0x6d')][_0xf99b('0x9f')])){throw new db[(_0xf99b('0x98'))][(_0xf99b('0x99'))]('from\x20is\x20mandatory');}if(_[_0xf99b('0x91')](_0x29727c[_0xf99b('0x6d')][_0xf99b('0x6d')])||_0x29727c[_0xf99b('0x6d')][_0xf99b('0x6d')]===''){throw new db['Sequelize'][(_0xf99b('0x99'))](_0xf99b('0xa0'));}if(_[_0xf99b('0x91')](_0x29727c[_0xf99b('0x6d')][_0xf99b('0xa1')])){throw new db[(_0xf99b('0x98'))][(_0xf99b('0x99'))](_0xf99b('0xa2')+_0x45ccb8);}if(!_['includes'](_0x45ccb8,_0x29727c['body'][_0xf99b('0xa1')])){throw new db[(_0xf99b('0x98'))]['ValidationError']('mapKey\x20invalid,\x20please\x20use\x20one\x20of\x20these:\x20'+_0x45ccb8);}_0x40e8c0[_0x29727c[_0xf99b('0x6d')][_0xf99b('0xa1')]]=_0x29727c['body'][_0xf99b('0x9f')];})[_0xf99b('0x15')](function(){return db[_0xf99b('0x53')][_0xf99b('0x70')]({'where':{'id':_0x29727c[_0xf99b('0x69')]['id']},'include':[{'model':db['CmList'],'as':_0xf99b('0xa3'),'include':[{'model':db[_0xf99b('0x97')],'as':_0xf99b('0xa4'),'where':_0x40e8c0,'limit':0x1,'order':[['updatedAt',_0xf99b('0xa5')]]}]},{'model':db[_0xf99b('0xa6')],'as':_0xf99b('0xa7')},{'model':db[_0xf99b('0x3a')],'as':_0xf99b('0x3a'),'include':[{'model':db[_0xf99b('0x3a')],'as':_0xf99b('0x3b'),'attributes':['id','interval'],'raw':!![]}]}]});})['then'](function(_0x220adb){if(!_0x220adb)throw new APINotFoundError(util[_0xf99b('0x30')](_0xf99b('0xa8'),_0x29727c[_0xf99b('0x69')]['id']));if(!_0x220adb[_0xf99b('0x3a')]||!_0x220adb[_0xf99b('0x3a')][_0xf99b('0x3b')])return[_0x220adb,!![]];return[_0x220adb,checkWebsiteIntervals(_0x220adb)];})[_0xf99b('0xa9')](function(_0x2e249f,_0x2a308f){if(!_0x2a308f)throw new APIOutOfIntervalError();if(!_0x2e249f[_0xf99b('0xa3')])return;_0x35e9f1['account']=_0x2e249f;_0x35e9f1['list']=_0x2e249f[_0xf99b('0xa3')];_0x35e9f1[_0xf99b('0xaa')]=_[_0xf99b('0xab')](_0x2e249f[_0xf99b('0xa7')],[_0xf99b('0xac')],['asc']);if(_0x35e9f1[_0xf99b('0xad')][_0xf99b('0xa7')]){delete _0x35e9f1['account']['Applications'];}if(_0x35e9f1[_0xf99b('0xad')][_0xf99b('0xa3')]&&_0x35e9f1['account'][_0xf99b('0xa3')]['Contacts'][_0xf99b('0x6b')]){return _0x35e9f1[_0xf99b('0xad')][_0xf99b('0xa3')][_0xf99b('0xa4')][0x0];}var _0xf2e4ac=_['defaults'](_0x29727c[_0xf99b('0x6d')],{'firstName':_0x29727c[_0xf99b('0x6d')]['from'],'ListId':_0x2e249f[_0xf99b('0xae')]});_0xf2e4ac[_0x29727c[_0xf99b('0x6d')]['mapKey']]=_0x29727c['body']['from'];return db[_0xf99b('0x97')]['create'](_0xf2e4ac,{'fields':_0x863331,'raw':!![]});})[_0xf99b('0x15')](function(_0x51f2eb){_0x35e9f1[_0xf99b('0xaf')]=_0x51f2eb;var _0x36d227=createInteractionObject(_0x29727c['params']['id'],_0x29727c[_0xf99b('0x6d')],_0x29727c[_0xf99b('0xb0')],_0x51f2eb);var _0x286538={'ChatWebsiteId':_0x29727c[_0xf99b('0x69')]['id'],'closed':![]};if(_0x29727c[_0xf99b('0x6d')][_0xf99b('0xb1')]){_0x286538[_0xf99b('0xb1')]=_0x29727c[_0xf99b('0x6d')][_0xf99b('0xb1')];return db[_0xf99b('0xb2')][_0xf99b('0x70')]({'where':_0x286538})[_0xf99b('0x15')](function(_0x30fd14){if(_0x30fd14){_0x481a9d=!![];return _0x30fd14;}_0x36d227[_0xf99b('0xb1')]=_0x29727c[_0xf99b('0x6d')][_0xf99b('0xb1')];_0x36d227['externalUrl']=_0x29727c[_0xf99b('0x6d')][_0xf99b('0xb3')];return db[_0xf99b('0xb2')][_0xf99b('0x6c')](_0x36d227);});}_0x286538[_0xf99b('0xb4')]=_0x51f2eb['id'];if(_0x29727c['body'][_0xf99b('0xb5')]&&_0x29727c[_0xf99b('0x6d')]['interaction']['id']){_0x286538['id']=_0x29727c[_0xf99b('0x6d')][_0xf99b('0xb5')]['id'];return db[_0xf99b('0xb2')]['find']({'where':_0x286538})[_0xf99b('0x15')](function(_0x59938f){if(_0x59938f){_0x481a9d=!![];return _0x59938f;}return db[_0xf99b('0xb2')][_0xf99b('0x6c')](_0x36d227);});}return db[_0xf99b('0xb2')][_0xf99b('0x6c')](_0x36d227);})[_0xf99b('0x15')](function(_0x43941e){if(!_0x481a9d)return _0x43941e;var _0x406acd={'from':(_0x35e9f1[_0xf99b('0xaf')][_0xf99b('0x45')]||'')+'\x20'+(_0x35e9f1['contact'][_0xf99b('0x46')]||'')};if(_0x29727c[_0xf99b('0x6d')][_0xf99b('0xb1')]&&_0x29727c['body']['messageId']&&_0x29727c[_0xf99b('0x6d')]['threadId']!=_0x29727c[_0xf99b('0x6d')][_0xf99b('0xb6')]){_0x406acd[_0xf99b('0xb1')]=_0x29727c[_0xf99b('0x6d')][_0xf99b('0xb6')];}return _0x43941e[_0xf99b('0x72')](_0x406acd);})['then'](function(_0x2afc5b){_0x35e9f1[_0xf99b('0xb5')]=_0x2afc5b['get']({'plain':!![]});_0x35e9f1[_0xf99b('0xb5')][_0xf99b('0xb7')]=!_0x481a9d;if(_0x35e9f1[_0xf99b('0xb5')][_0xf99b('0xb7')]){if(_0x35e9f1[_0xf99b('0xad')]['autoclose']){_0x35e9f1[_0xf99b('0xaa')][_0xf99b('0xb8')]({'id':0x0,'priority':_0x35e9f1[_0xf99b('0xaa')][_0xf99b('0x6b')]+0x1,'app':'close','appdata':_0xf99b('0xb9'),'interval':_0xf99b('0xba')});}}return db[_0xf99b('0xbb')][_0xf99b('0x6c')]({'body':_0x29727c['body']['body'],'ChatWebsiteId':_0x29727c['params']['id'],'ChatInteractionId':_0x2afc5b['id'],'direction':'in','ContactId':_0x35e9f1[_0xf99b('0xaf')]['id'],'AttachmentId':_0x29727c[_0xf99b('0x6d')][_0xf99b('0xbc')]});})['then'](function(_0x5bd63a){_0x35e9f1[_0xf99b('0x1c')]=_0x5bd63a;if(!_0x35e9f1[_0xf99b('0xb5')][_0xf99b('0xbd')]){return;}return db['User'][_0xf99b('0x70')]({'attributes':['id',_0xf99b('0x2c')],'where':{'id':_0x35e9f1[_0xf99b('0xb5')]['UserId']}});})[_0xf99b('0x15')](function(_0xbf8ba9){if(_0xbf8ba9){_0x35e9f1[_0xf99b('0xaa')][_0xf99b('0xbe')]({'id':0x0,'priority':0x0,'app':_0xf99b('0xbf'),'appdata':_0xbf8ba9[_0xf99b('0x2c')]+','+(_0x35e9f1[_0xf99b('0xad')][_0xf99b('0xc0')]||0xa),'interval':'*,*,*,*'});_0x35e9f1[_0xf99b('0xc1')]=!![];}if(!_0x35e9f1[_0xf99b('0xb5')]['queueId']){return;}return db['ChatQueue'][_0xf99b('0x70')]({'attributes':['id','name'],'where':{'id':_0x35e9f1[_0xf99b('0xb5')][_0xf99b('0xc2')]}});})[_0xf99b('0x15')](function(_0x587d40){if(_0x587d40){_0x35e9f1['applications'][_0xf99b('0xbe')]({'id':0x0,'priority':0x1,'app':_0xf99b('0xc3'),'appdata':_0x587d40[_0xf99b('0x2c')]+','+(_0x35e9f1[_0xf99b('0xad')]['waitForTheAssignedQueue']||0x12c),'interval':'*,*,*,*'});}return respondWithRpcPromise(_0xf99b('0xc4'),'startRouting',_0x35e9f1);})[_0xf99b('0x15')](function(_0x2f5f6e){respondWithRpcPromise(_0xf99b('0xc5'),_0xf99b('0xc5'),{'event':_0xf99b('0x95'),'message':_0x2f5f6e},client9002);return _0x2f5f6e;})[_0xf99b('0x15')](respondWithResult(_0x4b5ead,null))[_0xf99b('0x38')](APIHandleError(_0x4b5ead));};exports[_0xf99b('0xc6')]=function(_0x2fe499,_0x2b7bf5){var _0x44030a,_0xa48254,_0x2ef198;var _0x3c71f9=[];var _0x15d43c={};var _0x3a31d1=_0x2fe499['files']||[];var _0x5928df=[];var _0x4a5c8b;return db[_0xf99b('0x97')]['describe']()[_0xf99b('0x15')](function(_0x5f4863){if(!_0x5f4863){throw new db[(_0xf99b('0x98'))]['ValidationError'](_0xf99b('0x9a'));}_0x3c71f9=_[_0xf99b('0x9b')](_[_0xf99b('0x56')](_0x5f4863),['createdAt',_0xf99b('0x9d'),_0xf99b('0x9e'),'ListId']);if(_0x2fe499[_0xf99b('0x6d')]['id']){delete _0x2fe499['body']['id'];}if(_[_0xf99b('0x91')](_0x2fe499[_0xf99b('0x6d')][_0xf99b('0x9f')])){throw _0x2b7bf5['status'](0x1f4)[_0xf99b('0x2d')](new db['Sequelize'][(_0xf99b('0x99'))](_0xf99b('0xc7')));}if(_[_0xf99b('0x91')](_0x2fe499[_0xf99b('0x6d')][_0xf99b('0x6d')])||_0x2fe499[_0xf99b('0x6d')][_0xf99b('0x6d')]===''){throw _0x2b7bf5[_0xf99b('0x1f')](0x1f4)[_0xf99b('0x2d')](new db[(_0xf99b('0x98'))][(_0xf99b('0x99'))](_0xf99b('0xa0')));}if(_[_0xf99b('0x91')](_0x2fe499['body'][_0xf99b('0xc8')])){throw _0x2b7bf5[_0xf99b('0x1f')](0x1f4)[_0xf99b('0x2d')](new db['Sequelize'][(_0xf99b('0x99'))](_0xf99b('0xc9')+_0x3c71f9));}if(!_[_0xf99b('0xca')](_0x3c71f9,_0x2fe499['body'][_0xf99b('0xc8')])){throw _0x2b7bf5[_0xf99b('0x1f')](0x1f4)[_0xf99b('0x2d')](new db[(_0xf99b('0x98'))][(_0xf99b('0x99'))](_0xf99b('0xcb')+_0x3c71f9));}_0x15d43c[_0x2fe499[_0xf99b('0x6d')][_0xf99b('0xc8')]]=_0x2fe499['body'][_0xf99b('0x9f')];})[_0xf99b('0x15')](function(){return db[_0xf99b('0x53')]['find']({'where':{'id':_0x2fe499[_0xf99b('0x69')]['id']},'include':[{'model':db[_0xf99b('0xcc')],'as':_0xf99b('0xa3')},{'model':db[_0xf99b('0xcd')],'as':_0xf99b('0xcd')}]});})['then'](handleEntityNotFound(_0x2b7bf5,null))[_0xf99b('0x15')](function(_0x37a0c1){if(_0x37a0c1&&_0x37a0c1['List']){_0xa48254=_0x37a0c1;var _0xd49044=_[_0xf99b('0x10')](_0x2fe499[_0xf99b('0x6d')],{'firstName':_0x2fe499[_0xf99b('0x6d')][_0xf99b('0x9f')],'phone':_0x2fe499[_0xf99b('0x6d')][_0xf99b('0x9f')],'ListId':_0x37a0c1['ListId']});_0xd49044[_0x2fe499['body']['mapKeyOffline']]=_0x2fe499[_0xf99b('0x6d')][_0xf99b('0x9f')];return db[_0xf99b('0x97')][_0xf99b('0xce')]({'where':_0x15d43c,'defaults':_0xd49044});}})[_0xf99b('0xa9')](function(_0x3fd334){if(_0x3fd334){_0x2ef198=_0x3fd334;var _0x3c10f0=fs['readFileSync'](path[_0xf99b('0x87')](config[_0xf99b('0x88')],_0xf99b('0xcf')),_0xf99b('0xd0'));var _0x383781=ejs[_0xf99b('0xd1')](_0x3c10f0,{'body':_[_0xf99b('0xd2')](_0x2fe499[_0xf99b('0x6d')][_0xf99b('0x6d')]),'bodyTitle':_0xa48254['offlineMessageBody']});return db[_0xf99b('0xd3')]['create']({'body':_0x383781,'plainBody':htmlToText['fromString'](_0x383781),'ContactId':_0x3fd334['id'],'ChatWebsiteId':_0xa48254['id']});}})['then'](function(_0x49c4af){_0x4a5c8b=_0x49c4af;if(_0x3a31d1[_0xf99b('0x6b')]){var _0x14bd62=_0x3a31d1[_0xf99b('0x52')](function(_0x339c8c){return{'name':_0x339c8c[_0xf99b('0xd4')],'basename':_0x339c8c[_0xf99b('0x85')],'type':_0x339c8c['mimetype'],'ChatOfflineMessageId':_0x49c4af['id']};});_0x5928df=_0x14bd62[_0xf99b('0x52')](_0x356b13=>{var _0x10dc69={'filename':_0x356b13[_0xf99b('0x2c')],'path':path[_0xf99b('0x87')](config['root'],_0xf99b('0xd5'),_0xf99b('0xd6'),_0xf99b('0xd7'),_0xf99b('0xd8'),_0x356b13[_0xf99b('0xd9')])};return _0x10dc69;});if(!_0xa48254['openNewInteraction']){return db['sequelize'][_0xf99b('0xda')](function(_0x56a197){return db[_0xf99b('0xdb')][_0xf99b('0xdc')](_0x14bd62,{'transaction':_0x56a197});});}}})[_0xf99b('0x15')](function(){if(_0x4a5c8b){_0x44030a=_0x4a5c8b;return db['MailAccount']['findOne']({'where':{'service':!![]},'include':[{'model':db[_0xf99b('0xdd')],'as':_0xf99b('0xde'),'raw':!![],'include':[{'model':db['CloudProvider'],'as':'CloudProvider','raw':!![]}]}]});}})[_0xf99b('0x15')](function(_0x52c462){if(_0x52c462&&_0x52c462[_0xf99b('0xde')]&&_0xa48254[_0xf99b('0xdf')]&&_0xa48254[_0xf99b('0xe0')]){var _0x2e1973=_0x52c462[_0xf99b('0xe1')]();return respondWithRpcPromise(_0xf99b('0xe2'),'sendMail',{'account':_0x2e1973,'message':{'from':util['format'](_0xf99b('0xe3'),_0x52c462[_0xf99b('0x2c')],_0x52c462[_0xf99b('0xe4')]||_0x52c462[_0xf99b('0xde')]['user']),'to':_0xa48254[_0xf99b('0xe0')],'subject':_0xa48254[_0xf99b('0xe5')],'html':_0x44030a['body'],'attachments':_0x5928df}},client9003)[_0xf99b('0x15')](function(){return _0x44030a;})['catch'](function(_0x3bd804){logger[_0xf99b('0x1b')](_0x3bd804);});}})[_0xf99b('0x15')](function(){if(_0xa48254&&_0xa48254['openNewInteraction']&&_0xa48254[_0xf99b('0xe6')]){var _0x38ac0a=[];if(_0x3a31d1['length']){_0x38ac0a=_0x3a31d1[_0xf99b('0x52')](function(_0x236afd){return{'name':_0x236afd[_0xf99b('0xd4')],'basename':_0x236afd['filename'],'type':_0x236afd[_0xf99b('0xe7')],'ChatOfflineMessageId':_0x4a5c8b['id']};});}var _0x5528ab;if(!_[_0xf99b('0x91')](_0xa48254['subjectOffline'])){var _0xf9a676=_['map'](_0x2fe499[_0xf99b('0x6d')],function(_0x525267){return _0x525267;});var _0x28d3e2=_['toPairsIn'](_0xf9a676)[0x0];var _0x17b4b9=_['mapValues'](_0x28d3e2,function(_0x46e8c3){return _0x46e8c3;});_0x5528ab=_0x17b4b9[0x1][_0xa48254[_0xf99b('0xe8')]];}var _0x506e06={'from':_0x2ef198[_0xf99b('0xe4')],'firstName':_0x2ef198[_0xf99b('0x45')],'lastName':_0x2ef198[_0xf99b('0x46')],'mapKey':_0xf99b('0xe4'),'message':{'from':_0x2ef198['email'],'to':_0xa48254['MailAccount']['email'],'cc':'','subject':_['isNil'](_0x5528ab)?_0xa48254[_0xf99b('0xe5')]:_0x5528ab,'messageId':'','sentAt':new Date(),'attach':_0x38ac0a['length'],'attachments':_0x38ac0a,'originChannel':'Chat','ChatWebsiteId':_0xa48254['id'],'ChatOfflineMessageId':_0x44030a['id'],'originTo':_0xa48254[_0xf99b('0xcd')][_0xf99b('0xe4')]},'body':_0x44030a[_0xf99b('0x6d')]};var _0x508342={'account':{'id':_0xa48254[_0xf99b('0xe6')]},'body':_0x506e06,'log':_0xf99b('0xe9')};return respondWithRpcPromise('NotifyMailAccount','notifyMail',_0x508342,client9001)[_0xf99b('0x15')](function(){return _0x44030a;})[_0xf99b('0x38')](function(_0x18c717){logger[_0xf99b('0x1b')](_0x18c717);});}return;})[_0xf99b('0x15')](function(){if(_0x44030a){return _0x44030a;}})[_0xf99b('0x15')](respondWithResult(_0x2b7bf5,null))[_0xf99b('0x38')](function(){for(var _0x7a29ec of _0x3a31d1){var _0xce5c21=path[_0xf99b('0x87')](config[_0xf99b('0x88')],'server','files',_0xf99b('0xd7'),_0xf99b('0xd8'),_0x7a29ec[_0xf99b('0x85')]);fs_extra[_0xf99b('0xea')](_0xce5c21)[_0xf99b('0x38')](function(_0x5bd490){logger['error']('Could\x20not\x20remove\x20attachment\x20file',_0xce5c21,_0x5bd490);});}});};exports[_0xf99b('0xeb')]=function(_0x29b9f8,_0x40b684){return db['ChatInteraction'][_0xf99b('0x70')]({'where':{'id':_0x29b9f8[_0xf99b('0x69')]['id']}})['then'](handleEntityNotFound(_0x40b684,null))['then'](function(_0x2a1b57){if(_0x2a1b57){return _0x2a1b57[_0xf99b('0xeb')](_0x29b9f8[_0xf99b('0x6d')]['ids'],_[_0xf99b('0xec')](_0x29b9f8[_0xf99b('0x6d')],['ids','id'])||{});}})[_0xf99b('0x15')](respondWithResult(_0x40b684,null))['catch'](handleError(_0x40b684,null));};exports[_0xf99b('0xed')]=function(_0x4584ad,_0x3b1128){var _0x5b6a6e={'raw':![],'where':{}};var _0x16d7ca={};var _0x84939b={'count':0x0,'rows':[]};return db[_0xf99b('0x53')][_0xf99b('0x7d')]({'where':{'id':_0x4584ad[_0xf99b('0x69')]['id']}})[_0xf99b('0x15')](handleEntityNotFound(_0x3b1128,null))[_0xf99b('0x15')](function(_0x1e3513){if(_0x1e3513){_0x16d7ca[_0xf99b('0x4d')]=_[_0xf99b('0x56')](db[_0xf99b('0xb2')]['rawAttributes']);_0x16d7ca['query']=_[_0xf99b('0x56')](_0x4584ad[_0xf99b('0x55')]);_0x16d7ca[_0xf99b('0x57')]=_['intersection'](_0x16d7ca[_0xf99b('0x4d')],_0x16d7ca[_0xf99b('0x55')]);_0x5b6a6e[_0xf99b('0x59')]=_[_0xf99b('0x58')](_0x16d7ca[_0xf99b('0x4d')],qs[_0xf99b('0x5a')](_0x4584ad[_0xf99b('0x55')]['fields']));_0x5b6a6e[_0xf99b('0x59')]=_0x5b6a6e[_0xf99b('0x59')][_0xf99b('0x6b')]?_0x5b6a6e[_0xf99b('0x59')]:_0x16d7ca[_0xf99b('0x4d')];if(!_0x4584ad['query'][_0xf99b('0x7e')]('nolimit')){_0x5b6a6e[_0xf99b('0x23')]=qs[_0xf99b('0x23')](_0x4584ad[_0xf99b('0x55')]['limit']);_0x5b6a6e['offset']=qs[_0xf99b('0x21')](_0x4584ad[_0xf99b('0x55')][_0xf99b('0x21')]);}_0x5b6a6e['order']=qs[_0xf99b('0x5d')](_0x4584ad[_0xf99b('0x55')][_0xf99b('0x5d')]);_0x5b6a6e[_0xf99b('0x5e')]=qs['filters'](_[_0xf99b('0x5f')](_0x4584ad[_0xf99b('0x55')],_0x16d7ca[_0xf99b('0x57')]));_0x5b6a6e[_0xf99b('0x5e')]['ChatWebsiteId']=_0x1e3513['id'];if(_0x4584ad[_0xf99b('0x55')][_0xf99b('0x62')]){_0x5b6a6e[_0xf99b('0x5e')]=_[_0xf99b('0x60')](_0x5b6a6e[_0xf99b('0x5e')],{'$or':_[_0xf99b('0x52')](_0x5b6a6e[_0xf99b('0x59')],function(_0x21f5ae){var _0x1e82d9={};_0x1e82d9[_0x21f5ae]={'$like':'%'+_0x4584ad['query'][_0xf99b('0x62')]+'%'};return _0x1e82d9;})});}_0x5b6a6e=_['merge']({},_0x5b6a6e,_0x4584ad[_0xf99b('0x63')]);return db[_0xf99b('0xb2')][_0xf99b('0x24')]({'where':_0x5b6a6e[_0xf99b('0x5e')]})[_0xf99b('0x15')](function(_0xdc9715){_0x84939b[_0xf99b('0x24')]=_0xdc9715;if(_0x4584ad[_0xf99b('0x55')]['includeAll']){_0x5b6a6e['include']=[{'model':db[_0xf99b('0x97')],'as':'Contact','required':![]},{'model':db[_0xf99b('0xee')],'as':_0xf99b('0xef'),'attributes':[_0xf99b('0x2c'),_0xf99b('0xf0'),_0xf99b('0xf1')],'required':![]},{'model':db[_0xf99b('0xf2')],'as':_0xf99b('0xf3'),'attributes':['id',_0xf99b('0x2c'),_0xf99b('0xf4')],'where':_0x4584ad[_0xf99b('0x55')][_0xf99b('0xf5')]?{'id':_0x4584ad[_0xf99b('0x55')]['tag']}:undefined,'required':_0x4584ad[_0xf99b('0x55')][_0xf99b('0xf5')]?!![]:![]}];}return db[_0xf99b('0xb2')][_0xf99b('0x66')](_0x5b6a6e);})[_0xf99b('0x15')](function(_0x5a1e33){_0x84939b[_0xf99b('0x67')]=_0x5a1e33;return _0x84939b;});}})[_0xf99b('0x15')](respondWithFilteredResult(_0x3b1128,_0x5b6a6e))[_0xf99b('0x38')](handleError(_0x3b1128,null));};exports['getSnippet']=function(_0x3c66de,_0x24ba2a){var _0x1f259c=0x0;var _0x5edb28=0x0;var _0x130f20=![];var _0x576355;var _0x3137df;return db[_0xf99b('0x53')][_0xf99b('0x70')]({'where':{'id':_0x3c66de[_0xf99b('0x69')]['id']},'include':[{'model':db[_0xf99b('0x3a')],'as':_0xf99b('0x3a'),'include':[{'model':db[_0xf99b('0x3a')],'as':_0xf99b('0x3b'),'attributes':['id',_0xf99b('0x32')]}]}]})[_0xf99b('0x15')](handleEntityNotFound(_0x24ba2a,null))['then'](function(_0x3b116c){if(_0x3b116c){_0x576355=_0x3b116c;return _0x3b116c[_0xf99b('0xf6')]({'raw':!![]});}})[_0xf99b('0x15')](function(_0x3de217){if(_0x576355){if(_0x3de217){_0x3137df=_0x3de217;}}return require(_0xf99b('0x89'))[_0xf99b('0x8a')]();})[_0xf99b('0x15')](function(_0x2c3ef4){if(_0x2c3ef4){_0x5edb28=_0x2c3ef4[_0xf99b('0xf7')];_0x130f20=_0x2c3ef4[_0xf99b('0xf8')];}})[_0xf99b('0x15')](function(){return db[_0xf99b('0xb2')]['count']({'where':{'closed':![]}});})[_0xf99b('0x15')](function(_0x250f05){_0x1f259c=_0x250f05;if(_0x5edb28&&_0x250f05>_0x5edb28){return db[_0xf99b('0xf9')]['findOne']({'where':{'id':0x1}})['then'](function(_0x21727d){if(_0x21727d){_0x21727d['increment']('chatLicenseExceeded');}});}})[_0xf99b('0x15')](function(){if(!_0x576355[_0xf99b('0x3a')]||!_0x576355['Interval']['Intervals'])return!![];return checkWebsiteIntervals(_0x576355);})[_0xf99b('0x15')](function(_0x4fa57e){var _0x443444=fs[_0xf99b('0xfa')](path[_0xf99b('0x87')](config[_0xf99b('0x88')],_0xf99b('0xfb')),_0xf99b('0xd0'));var _0x3c3d4c=new url['URL'](_0x576355['address'])[_0xf99b('0xfc')];var _0x259fcb=_0xf99b('0xfd');var _0x11b1ef=![];var _0x43d0e8={'chatVersion':_0x259fcb,'chatWebsiteAddressOrigin':_0x3c3d4c,'remote':_0x576355[_0xf99b('0xfe')],'query':querystring[_0xf99b('0x1a')](_[_0xf99b('0x60')](_0x576355[_0xf99b('0x27')]({'plain':!![]}),{'customerIp':_0x3c66de[_0xf99b('0xb0')][_0xf99b('0x43')]||_0x3c66de[_0xf99b('0xb0')][_0xf99b('0xff')]||_0x3c66de[_0xf99b('0x100')][_0xf99b('0x101')]||_0x3c66de['ip'],'referer':_0x3c66de[_0xf99b('0xb0')][_0xf99b('0x102')],'openedInteractions':_0x1f259c,'maxInteractions':_0x5edb28,'virtual':_0x130f20['virtual'],'online':_0x4fa57e,'custom':_0x130f20}))[_0xf99b('0x103')](/'/g,'\x5c\x27')};_0x24ba2a[_0xf99b('0x2d')](ejs[_0xf99b('0xd1')](Mustache[_0xf99b('0xd1')](_0x443444,_0x43d0e8),{'proactiveActions':_0x3137df,'alignment':_0x576355[_0xf99b('0x104')],'verticalAlignment':_0x576355[_0xf99b('0x105')],'div_color':_0x576355[_0xf99b('0xf4')],'labelText':_0x576355['labelText'],'text_color':_0x576355['textColor'],'text_button_color':_0x576355[_0xf99b('0x106')],'button_color':_0x576355[_0xf99b('0x107')],'background_color':_0x576355[_0xf99b('0x108')],'hideWhenOffline':_0x576355[_0xf99b('0x109')],'intervalId':_0x576355[_0xf99b('0x10a')],'isDevelopment':_0x11b1ef,'chatVersion':_0x259fcb}));})[_0xf99b('0x38')](handleError(_0x24ba2a,null));};exports['addApplications']=function(_0xfadaf3,_0x1a5a42){var _0xdd345a=_0xfadaf3['params']['id'];var _0x4fb5cf=_0xfadaf3[_0xf99b('0x6d')];var _0x227d59=0xc8;var _0x55d8a3=null;return db['sequelize'][_0xf99b('0xda')]({'isolationLevel':db[_0xf99b('0x10b')]['Transaction'][_0xf99b('0x10c')][_0xf99b('0x10d')]},function(_0x534055){return db[_0xf99b('0x53')][_0xf99b('0x7d')]({'where':{'id':_0xdd345a},'transaction':_0x534055})[_0xf99b('0x15')](function(_0x21c160){if(_0x21c160){return db['ChatApplication']['destroy']({'where':{'ChatWebsiteId':_0xdd345a},'transaction':_0x534055})[_0xf99b('0x15')](function(){var _0x211d3c=_[_0xf99b('0x52')](_0x4fb5cf,function(_0x1512cf){_0x1512cf[_0xf99b('0x75')]=_0xdd345a;return _0x1512cf;});return db[_0xf99b('0xa6')][_0xf99b('0xdc')](_0x211d3c,{'transaction':_0x534055});});}else{_0x227d59=0x194;_0x55d8a3=[];}});})['then'](function(){if(_0x227d59!==0x194){return db['ChatApplication'][_0xf99b('0x10e')]({'where':{'ChatWebsiteId':_0xdd345a},'order':_0xf99b('0xac')})[_0xf99b('0x15')](function(_0x2e5c0b){_0x55d8a3=_0x2e5c0b;});}})[_0xf99b('0x38')](function(_0x50dc9f){_0x227d59=0x1f4;logger[_0xf99b('0x1b')](_0x50dc9f[_0xf99b('0x2b')]);if(_0x50dc9f['name']){delete _0x50dc9f[_0xf99b('0x2c')];}_0x55d8a3=_0x50dc9f;})[_0xf99b('0x10f')](function(){if(_0x55d8a3===null){_0x1a5a42[_0xf99b('0x1e')](_0x227d59);}else{if(_0x227d59===0x1f4){_0x1a5a42['status'](_0x227d59)[_0xf99b('0x2d')](_0x55d8a3);}else{_0x1a5a42['status'](_0x227d59)[_0xf99b('0x20')](_0x55d8a3);}}});};exports[_0xf99b('0x110')]=function(_0x545d19,_0x5df697){var _0x40341f={};var _0x27d3f2={};var _0x39f3e8;var _0x20f942;return db[_0xf99b('0x53')]['findOne']({'where':{'id':_0x545d19[_0xf99b('0x69')]['id']}})[_0xf99b('0x15')](handleEntityNotFound(_0x5df697,null))[_0xf99b('0x15')](function(_0x58306a){if(_0x58306a){_0x39f3e8=_0x58306a;_0x27d3f2['model']=_['keys'](db[_0xf99b('0xa6')][_0xf99b('0x54')]);_0x27d3f2[_0xf99b('0x55')]=_[_0xf99b('0x56')](_0x545d19[_0xf99b('0x55')]);_0x27d3f2[_0xf99b('0x57')]=_['intersection'](_0x27d3f2['model'],_0x27d3f2[_0xf99b('0x55')]);_0x40341f['attributes']=_[_0xf99b('0x58')](_0x27d3f2[_0xf99b('0x4d')],qs[_0xf99b('0x5a')](_0x545d19[_0xf99b('0x55')][_0xf99b('0x5a')]));_0x40341f[_0xf99b('0x59')]=_0x40341f['attributes']['length']?_0x40341f[_0xf99b('0x59')]:_0x27d3f2[_0xf99b('0x4d')];_0x40341f['order']=qs[_0xf99b('0x5d')](_0x545d19['query'][_0xf99b('0x5d')]);_0x40341f[_0xf99b('0x5e')]=qs[_0xf99b('0x57')](_[_0xf99b('0x5f')](_0x545d19[_0xf99b('0x55')],_0x27d3f2['filters']));if(_0x545d19[_0xf99b('0x55')][_0xf99b('0x62')]){_0x40341f[_0xf99b('0x5e')]=_[_0xf99b('0x60')](_0x40341f[_0xf99b('0x5e')],{'$or':_['map'](_0x40341f[_0xf99b('0x59')],function(_0x38cf11){var _0x4f5654={};_0x4f5654[_0x38cf11]={'$like':'%'+_0x545d19['query']['filter']+'%'};return _0x4f5654;})});}_0x40341f=_[_0xf99b('0x60')]({},_0x40341f,_0x545d19['options']);return _0x39f3e8[_0xf99b('0x110')](_0x40341f);}})[_0xf99b('0x15')](function(_0x584c02){if(_0x584c02){_0x20f942=_0x584c02[_0xf99b('0x6b')];if(!_0x545d19[_0xf99b('0x55')][_0xf99b('0x7e')](_0xf99b('0x5b'))){_0x40341f[_0xf99b('0x23')]=qs['limit'](_0x545d19['query'][_0xf99b('0x23')]);_0x40341f[_0xf99b('0x21')]=qs[_0xf99b('0x21')](_0x545d19[_0xf99b('0x55')]['offset']);}return _0x39f3e8[_0xf99b('0x110')](_0x40341f);}})[_0xf99b('0x15')](function(_0x5c30e3){if(_0x5c30e3){return _0x5c30e3?{'count':_0x20f942,'rows':_0x5c30e3}:null;}})[_0xf99b('0x15')](respondWithResult(_0x5df697,null))[_0xf99b('0x38')](handleError(_0x5df697,null));};exports[_0xf99b('0x111')]=function(_0x91175c,_0x47bfa1){return db[_0xf99b('0x112')][_0xf99b('0x70')]({'where':{'id':_0x91175c['params']['id']}})['then'](handleEntityNotFound(_0x47bfa1,null))[_0xf99b('0x15')](function(_0x3d1d4a){if(_0x3d1d4a){return _0x3d1d4a['addProactiveActions'](_0x91175c[_0xf99b('0x6d')][_0xf99b('0x79')],_[_0xf99b('0xec')](_0x91175c[_0xf99b('0x6d')],[_0xf99b('0x79'),'id'])||{});}})[_0xf99b('0x15')](respondWithResult(_0x47bfa1,null))[_0xf99b('0x38')](handleError(_0x47bfa1,null));};exports['getProactiveActions']=function(_0x3e7fac,_0x37224c){var _0x2e1f40={};var _0xbbdd1c={};var _0x351121;var _0xcacc12;return db[_0xf99b('0x53')]['findOne']({'where':{'id':_0x3e7fac[_0xf99b('0x69')]['id']}})['then'](handleEntityNotFound(_0x37224c,null))[_0xf99b('0x15')](function(_0xfae04c){if(_0xfae04c){_0x351121=_0xfae04c;_0xbbdd1c[_0xf99b('0x4d')]=_['keys'](db['ChatProactiveAction'][_0xf99b('0x54')]);_0xbbdd1c['query']=_[_0xf99b('0x56')](_0x3e7fac[_0xf99b('0x55')]);_0xbbdd1c['filters']=_[_0xf99b('0x58')](_0xbbdd1c[_0xf99b('0x4d')],_0xbbdd1c[_0xf99b('0x55')]);_0x2e1f40[_0xf99b('0x59')]=_[_0xf99b('0x58')](_0xbbdd1c['model'],qs[_0xf99b('0x5a')](_0x3e7fac[_0xf99b('0x55')][_0xf99b('0x5a')]));_0x2e1f40['attributes']=_0x2e1f40[_0xf99b('0x59')][_0xf99b('0x6b')]?_0x2e1f40[_0xf99b('0x59')]:_0xbbdd1c['model'];_0x2e1f40[_0xf99b('0x5c')]=qs[_0xf99b('0x5d')](_0x3e7fac[_0xf99b('0x55')]['sort']);_0x2e1f40['where']=qs['filters'](_[_0xf99b('0x5f')](_0x3e7fac[_0xf99b('0x55')],_0xbbdd1c[_0xf99b('0x57')]));if(_0x3e7fac[_0xf99b('0x55')][_0xf99b('0x62')]){_0x2e1f40[_0xf99b('0x5e')]=_['merge'](_0x2e1f40[_0xf99b('0x5e')],{'$or':_[_0xf99b('0x52')](_0x2e1f40[_0xf99b('0x59')],function(_0x1a7e65){var _0x4c878c={};_0x4c878c[_0x1a7e65]={'$like':'%'+_0x3e7fac['query'][_0xf99b('0x62')]+'%'};return _0x4c878c;})});}_0x2e1f40=_['merge']({},_0x2e1f40,_0x3e7fac[_0xf99b('0x63')]);return _0x351121[_0xf99b('0xf6')](_0x2e1f40);}})[_0xf99b('0x15')](function(_0x475241){if(_0x475241){_0xcacc12=_0x475241[_0xf99b('0x6b')];if(!_0x3e7fac[_0xf99b('0x55')][_0xf99b('0x7e')](_0xf99b('0x5b'))){_0x2e1f40['limit']=qs[_0xf99b('0x23')](_0x3e7fac[_0xf99b('0x55')][_0xf99b('0x23')]);_0x2e1f40[_0xf99b('0x21')]=qs[_0xf99b('0x21')](_0x3e7fac[_0xf99b('0x55')][_0xf99b('0x21')]);}return _0x351121[_0xf99b('0xf6')](_0x2e1f40);}})['then'](function(_0x55319e){if(_0x55319e){return _0x55319e?{'count':_0xcacc12,'rows':_0x55319e}:null;}})['then'](respondWithResult(_0x37224c,null))[_0xf99b('0x38')](handleError(_0x37224c,null));};exports[_0xf99b('0x113')]=function(_0x5554c8,_0x1b5dce){var _0x2c154f=_0x5554c8['query'][_0xf99b('0x114')]===_0xf99b('0x115')?_0xf99b('0x116'):_0xf99b('0x117');return db[_0xf99b('0x53')][_0xf99b('0x70')]({'attributes':['id',_0x2c154f],'where':{'id':_0x5554c8[_0xf99b('0x69')]['id']}})['then'](handleEntityNotFound(_0x1b5dce,null))['then'](function(_0x25b88f){if(_0x25b88f){var _0x363574=_0x25b88f[_0x2c154f];var _0x4e7915=_0x363574&&_0x363574[_0xf99b('0x118')]?_0x363574[_0xf99b('0x118')]:[];_0x1b5dce[_0xf99b('0x2d')]({'fromKey':_['isNil'](_0x363574[_0xf99b('0x119')])?undefined:_0x363574[_0xf99b('0x119')],'count':_0x4e7915[_0xf99b('0x6b')],'rows':_0x4e7915});}})[_0xf99b('0x38')](handleError(_0x1b5dce,null));};exports['getOfflineMessages']=function(_0x115e4c,_0x166346){var _0x144622={'raw':![],'where':{}};var _0x2f0300={};var _0xcaa87f={'count':0x0,'rows':[]};return db[_0xf99b('0x53')][_0xf99b('0x7d')]({'where':{'id':_0x115e4c[_0xf99b('0x69')]['id']}})[_0xf99b('0x15')](handleEntityNotFound(_0x166346,null))[_0xf99b('0x15')](function(_0xc1908b){if(_0xc1908b){_0x2f0300[_0xf99b('0x4d')]=_[_0xf99b('0x56')](db[_0xf99b('0xd3')][_0xf99b('0x54')]);_0x2f0300['query']=_[_0xf99b('0x56')](_0x115e4c[_0xf99b('0x55')]);_0x2f0300[_0xf99b('0x57')]=_['intersection'](_0x2f0300[_0xf99b('0x4d')],_0x2f0300[_0xf99b('0x55')]);_0x144622[_0xf99b('0x59')]=_[_0xf99b('0x58')](_0x2f0300[_0xf99b('0x4d')],qs['fields'](_0x115e4c['query'][_0xf99b('0x5a')]));_0x144622[_0xf99b('0x59')]=_0x144622[_0xf99b('0x59')]['length']?_0x144622[_0xf99b('0x59')]:_0x2f0300[_0xf99b('0x4d')];if(!_0x115e4c['query'][_0xf99b('0x7e')](_0xf99b('0x5b'))){_0x144622[_0xf99b('0x23')]=qs[_0xf99b('0x23')](_0x115e4c[_0xf99b('0x55')][_0xf99b('0x23')]);_0x144622[_0xf99b('0x21')]=qs['offset'](_0x115e4c[_0xf99b('0x55')][_0xf99b('0x21')]);}_0x144622[_0xf99b('0x5c')]=qs['sort'](_0x115e4c['query'][_0xf99b('0x5d')]);_0x144622[_0xf99b('0x5e')]=qs[_0xf99b('0x57')](_['pick'](_0x115e4c['query'],_0x2f0300[_0xf99b('0x57')]));_0x144622[_0xf99b('0x5e')]['ChatWebsiteId']=_0xc1908b['id'];if(_0x115e4c[_0xf99b('0x55')][_0xf99b('0x62')]){_0x144622[_0xf99b('0x5e')]=_[_0xf99b('0x60')](_0x144622[_0xf99b('0x5e')],{'$or':_['map'](_0x144622[_0xf99b('0x59')],function(_0x47316d){var _0x4c7b0b={};_0x4c7b0b[_0x47316d]={'$like':'%'+_0x115e4c[_0xf99b('0x55')][_0xf99b('0x62')]+'%'};return _0x4c7b0b;})});}_0x144622=_[_0xf99b('0x60')]({},_0x144622,_0x115e4c[_0xf99b('0x63')]);return db[_0xf99b('0xd3')][_0xf99b('0x24')]({'where':_0x144622[_0xf99b('0x5e')]})[_0xf99b('0x15')](function(_0x1eb17d){_0xcaa87f[_0xf99b('0x24')]=_0x1eb17d;if(_0x115e4c['query'][_0xf99b('0x64')]){_0x144622['include']=[{'all':!![]}];}else{_0x144622[_0xf99b('0x65')]=[{'model':db[_0xf99b('0x97')],'as':_0xf99b('0x11a'),'required':![]},{'model':db[_0xf99b('0xdb')],'as':_0xf99b('0x11b'),'required':![]}];}return db['ChatOfflineMessage']['findAll'](_0x144622);})[_0xf99b('0x15')](function(_0x57d480){_0xcaa87f['rows']=_0x57d480;return _0xcaa87f;});}})[_0xf99b('0x15')](respondWithFilteredResult(_0x166346,_0x144622))[_0xf99b('0x38')](handleError(_0x166346,null));};exports[_0xf99b('0x11c')]=function(_0x507696,_0x1ebdab){return db[_0xf99b('0x53')]['find']({'where':{'id':_0x507696['params']['id']}})[_0xf99b('0x15')](handleEntityNotFound(_0x1ebdab,null))[_0xf99b('0x15')](function(_0x4a96fc){if(_0x4a96fc){return _0x4a96fc[_0xf99b('0x11c')](_0x507696[_0xf99b('0x6d')][_0xf99b('0x79')],_['omit'](_0x507696[_0xf99b('0x6d')],[_0xf99b('0x79'),'id'])||{})[_0xf99b('0xa9')](function(_0x55c0f4){for(var _0x3095fc=0x0;_0x3095fc<_0x507696[_0xf99b('0x6d')][_0xf99b('0x79')][_0xf99b('0x6b')];_0x3095fc+=0x1){socket[_0xf99b('0x11d')](_0xf99b('0x11e'),{'UserId':Number(_0x507696['body'][_0xf99b('0x79')][_0x3095fc]),'ChatWebsiteId':Number(_0x507696[_0xf99b('0x69')]['id'])});}return _0x55c0f4;});}})[_0xf99b('0x15')](respondWithResult(_0x1ebdab,null))[_0xf99b('0x38')](handleError(_0x1ebdab,null));};exports['removeAgents']=function(_0x4bb977,_0x2798ac){return db[_0xf99b('0x53')][_0xf99b('0x70')]({'where':{'id':_0x4bb977[_0xf99b('0x69')]['id']}})[_0xf99b('0x15')](handleEntityNotFound(_0x2798ac,null))[_0xf99b('0x15')](function(_0x22c5e6){if(_0x22c5e6){return _0x22c5e6[_0xf99b('0x11f')](_0x4bb977['query'][_0xf99b('0x79')])[_0xf99b('0x15')](function(){if(_['isArray'](_0x4bb977['query'][_0xf99b('0x79')])){for(var _0x194b03=0x0;_0x194b03<_0x4bb977[_0xf99b('0x55')][_0xf99b('0x79')][_0xf99b('0x6b')];_0x194b03+=0x1){socket[_0xf99b('0x11d')](_0xf99b('0x120'),{'UserId':Number(_0x4bb977['query'][_0xf99b('0x79')][_0x194b03]),'ChatWebsiteId':Number(_0x4bb977[_0xf99b('0x69')]['id'])});}}else{socket[_0xf99b('0x11d')](_0xf99b('0x120'),{'UserId':Number(_0x4bb977['query'][_0xf99b('0x79')]),'ChatWebsiteId':Number(_0x4bb977[_0xf99b('0x69')]['id'])});}});}})[_0xf99b('0x15')](respondWithStatusCode(_0x2798ac,null))[_0xf99b('0x38')](handleError(_0x2798ac,null));};exports[_0xf99b('0x121')]=function(_0x3a0058,_0x444057){var _0xaf3f39={};var _0x16aa1e={};var _0x3fa666;var _0x4970ce;return db[_0xf99b('0x53')][_0xf99b('0x7d')]({'where':{'id':_0x3a0058[_0xf99b('0x69')]['id']}})[_0xf99b('0x15')](handleEntityNotFound(_0x444057,null))[_0xf99b('0x15')](function(_0x855588){if(_0x855588){_0x3fa666=_0x855588;_0x16aa1e[_0xf99b('0x4d')]=_[_0xf99b('0x56')](db[_0xf99b('0xee')][_0xf99b('0x54')]);_0x16aa1e[_0xf99b('0x55')]=_['keys'](_0x3a0058[_0xf99b('0x55')]);_0x16aa1e['filters']=_['intersection'](_0x16aa1e[_0xf99b('0x4d')],_0x16aa1e[_0xf99b('0x55')]);_0xaf3f39[_0xf99b('0x59')]=_[_0xf99b('0x58')](_0x16aa1e['model'],qs[_0xf99b('0x5a')](_0x3a0058[_0xf99b('0x55')]['fields']));_0xaf3f39[_0xf99b('0x59')]=_0xaf3f39['attributes'][_0xf99b('0x6b')]?_0xaf3f39[_0xf99b('0x59')]:_0x16aa1e['model'];_0xaf3f39[_0xf99b('0x5c')]=qs[_0xf99b('0x5d')](_0x3a0058[_0xf99b('0x55')][_0xf99b('0x5d')]);_0xaf3f39[_0xf99b('0x5e')]=qs[_0xf99b('0x57')](_['pick'](_0x3a0058[_0xf99b('0x55')],_0x16aa1e[_0xf99b('0x57')]));if(_0x3a0058[_0xf99b('0x55')][_0xf99b('0x62')]){_0xaf3f39[_0xf99b('0x5e')]=_[_0xf99b('0x60')](_0xaf3f39[_0xf99b('0x5e')],{'$or':_[_0xf99b('0x52')](_0xaf3f39['attributes'],function(_0x1ba814){var _0x459ce1={};_0x459ce1[_0x1ba814]={'$like':'%'+_0x3a0058[_0xf99b('0x55')][_0xf99b('0x62')]+'%'};return _0x459ce1;})});}_0xaf3f39=_[_0xf99b('0x60')]({},_0xaf3f39,_0x3a0058['options']);return _0x3fa666[_0xf99b('0x121')](_0xaf3f39);}})['then'](function(_0x8aa349){if(_0x8aa349){_0x4970ce=_0x8aa349[_0xf99b('0x6b')];if(!_0x3a0058[_0xf99b('0x55')][_0xf99b('0x7e')](_0xf99b('0x5b'))){_0xaf3f39[_0xf99b('0x23')]=qs['limit'](_0x3a0058['query']['limit']);_0xaf3f39[_0xf99b('0x21')]=qs['offset'](_0x3a0058[_0xf99b('0x55')][_0xf99b('0x21')]);}return _0x3fa666[_0xf99b('0x121')](_0xaf3f39);}})['then'](function(_0x9ca7c5){if(_0x9ca7c5){return _0x9ca7c5?{'count':_0x4970ce,'rows':_0x9ca7c5}:null;}})[_0xf99b('0x15')](respondWithResult(_0x444057,null))['catch'](handleError(_0x444057,null));};