3899756b5de2a6ee62c22ca08425ad44ea66bd5f
[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 _0xc397=['created','autoclose','push','close','unmanaged','*,*,*,*','ChatMessage','AttachmentId','UserId','User','agent','waitForTheAssignedAgent','forcedOwnership','Start','startRouting','EventManager','offline','files','no\x20available\x20attributes','mapKeyOffline','mapKeyOffline\x20invalid,\x20please\x20use\x20one\x20of\x20these:\x20','findOrCreate','readFileSync','server/files/templates/chatOfflineMessage.ejs','utf8','render','toPairs','ChatOfflineMessage','fromString','mimetype','attachments','basename','openNewInteraction','sequelize','Attachment','MailServerOut','Smtp','CloudProvider','forwardOffline','forwardOfflineAddress','getSmtpOptions','SendMail','sendMail','\x22%s\x22\x20<%s>','email','offlineMessageSubject','MailAccountId','subjectOffline','toPairsIn','mapValues','MailAccount','Chat','NotifyMailAccount','notifyMail','server','offline-chat','remove','addInteraction','getInteractions','Contact','fullname','Tag','Tags','tag','Command','getSnippet','iftime\x20%s,%s','interval','indexOf','true','[%s][INTERVAL][%s]\x20%s\x20%s\x20(%s)','OFFLINE','timezone','No\x20timezone','inspect','Interval','Intervals','getProactiveActions','../../config/license/util','increment','chatLicenseExceeded','some','server/files/chat/iframe.ejs','remote','x-forwarded-for','x-real-ip','connection','remoteAddress','referer','virtual','alignment','verticalAlignment','labelText','textColor','textButtonColor','color_button','backgroundColor','hideWhenOffline','IntervalId','transaction','Transaction','ISOLATION_LEVELS','READ_COMMITTED','bulkCreate','findAndCountAll','stack','getApplications','addProactiveActions','chatProactiveAction','ChatProactiveAction','online','false','offlineForm','onlineForm','items','fromKey','getOfflineMessages','Attachments','addAgents','emit','userChatWebsite:save','removeAgents','isArray','userChatWebsite:remove','getAgents','util','path','lodash','querystring','ioredis','../../components/parsers/qs','../../config/environment','../../mysqldb','redis','defaults','localhost','socket.io-emitter','./chatWebsite.socket','html-to-text','client','http','request','then','info','request\x20sent','debug','ChatWebsite,\x20%s,\x20%s,\x20%s','stringify','error','code','message','ChatWebsite,\x20%s,\x20%s','result','sendStatus','status','offset','undefined','limit','count','set','json','update','get','ChatWebsites','UserProfileResource','destroy','end','name','send','index','Pause','map','rawAttributes','fieldName','type','key','model','query','keys','filters','intersection','attributes','fields','nolimit','sort','where','pick','filter','merge','options','ChatWebsite','includeAll','include','rows','catch','params','mandatoryDispositionPause','length','create','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','find','userProfileId','autoAssociation','describe','addDisposition','ChatWebsiteId','Disposition','getDispositions','hasOwnProperty','order','findAll','removeDispositions','ids','addAnswer','CannedAnswer','getAnswers','findOne','removeAnswers','addLogo','filename','addAvatar','file','addCustomerAvatar','customerAvatar','addSystemAvatar','getLogo','join','server/files/images/logos/default_logo.svg','sitepic','getLicense','custom','isNil','existsSync','root','server/files/images/logos/','download','getAvatar','server/files/images/avatars/default_avatar.png','agentAvatar','server/files/images/avatars/','showCustomerAvatar','server/files/images/avatars/system_avatar.png','systemAvatar','user-agent-parser','headers','user-agent','getResult','chat','CmContact','Sequelize','ValidationError','difference','createdAt','updatedAt','CompanyId','ListId','from','from\x20is\x20mandatory','body\x20is\x20mandatory\x20and\x20not\x20empty','mapKey\x20is\x20mandatory,\x20please\x20use\x20one\x20of\x20these:\x20','mapKey','CmList','List','Contacts','ChatApplication','account','applications','Applications','list','asc','contact','customerIp','cf-connecting-ip','firstName','lastName','x-real-port','browser','version','format','%s\x20%s','unknown','device','vendor','threadId','ChatInteraction','externalUrl','ContactId','interaction','spread','messageId'];(function(_0x2c7618,_0x26be9c){var _0x5ce3f0=function(_0x1837b3){while(--_0x1837b3){_0x2c7618['push'](_0x2c7618['shift']());}};_0x5ce3f0(++_0x26be9c);}(_0xc397,0x7d));var _0x7c39=function(_0x2796ff,_0x1aa4e5){_0x2796ff=_0x2796ff-0x0;var _0x52ec86=_0xc397[_0x2796ff];return _0x52ec86;};'use strict';var BPromise=require('bluebird');var Mustache=require('mustache');var util=require(_0x7c39('0x0'));var path=require(_0x7c39('0x1'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x7c39('0x2'));var querystring=require(_0x7c39('0x3'));var Redis=require(_0x7c39('0x4'));var qs=require(_0x7c39('0x5'));var logger=require('../../config/logger')('api');var config=require(_0x7c39('0x6'));var db=require(_0x7c39('0x7'))['db'];config[_0x7c39('0x8')]=_[_0x7c39('0x9')](config[_0x7c39('0x8')],{'host':_0x7c39('0xa'),'port':0x18eb});var socket=require(_0x7c39('0xb'))(new Redis(config[_0x7c39('0x8')]));require(_0x7c39('0xc'))['register'](socket);var htmlToText=require(_0x7c39('0xd'));var jayson=require('jayson/promise');var client=jayson[_0x7c39('0xe')][_0x7c39('0xf')]({'port':0x232c});var client9002=jayson[_0x7c39('0xe')][_0x7c39('0xf')]({'port':0x232a});var client9003=jayson[_0x7c39('0xe')][_0x7c39('0xf')]({'port':0x232b});var client9001=jayson[_0x7c39('0xe')][_0x7c39('0xf')]({'port':0x2329});function respondWithRpcPromise(_0x5326bd,_0x3bfdde,_0x37f488,_0x55743f){return new BPromise(function(_0x103e84,_0x4cb415){var _0x229ff3=_0x55743f||client;return _0x229ff3[_0x7c39('0x10')](_0x5326bd,_0x37f488)[_0x7c39('0x11')](function(_0x551e3c){logger[_0x7c39('0x12')]('ChatWebsite,\x20%s,\x20%s',_0x3bfdde,_0x7c39('0x13'));logger[_0x7c39('0x14')](_0x7c39('0x15'),_0x3bfdde,_0x7c39('0x13'),JSON[_0x7c39('0x16')](_0x551e3c));if(_0x551e3c[_0x7c39('0x17')]){if(_0x551e3c[_0x7c39('0x17')][_0x7c39('0x18')]===0x1f4){logger[_0x7c39('0x17')]('ChatWebsite,\x20%s,\x20%s',_0x3bfdde,_0x551e3c[_0x7c39('0x17')][_0x7c39('0x19')]);return _0x4cb415(_0x551e3c[_0x7c39('0x17')][_0x7c39('0x19')]);}logger[_0x7c39('0x17')](_0x7c39('0x1a'),_0x3bfdde,_0x551e3c[_0x7c39('0x17')][_0x7c39('0x19')]);return _0x103e84(_0x551e3c['error'][_0x7c39('0x19')]);}else{logger[_0x7c39('0x12')]('ChatWebsite,\x20%s,\x20%s',_0x3bfdde,_0x7c39('0x13'));_0x103e84(_0x551e3c[_0x7c39('0x1b')][_0x7c39('0x19')]);}})['catch'](function(_0xcac741){logger[_0x7c39('0x17')](_0x7c39('0x1a'),_0x3bfdde,_0xcac741);_0x4cb415(_0xcac741);});});}function respondWithStatusCode(_0x49a5a3,_0x235439){_0x235439=_0x235439||0xcc;return function(_0x112a88){if(_0x112a88){return _0x49a5a3[_0x7c39('0x1c')](_0x235439);}return _0x49a5a3[_0x7c39('0x1d')](_0x235439)['end']();};}function respondWithResult(_0x44902a,_0x25cb18){_0x25cb18=_0x25cb18||0xc8;return function(_0x5c0007){if(_0x5c0007){return _0x44902a[_0x7c39('0x1d')](_0x25cb18)['json'](_0x5c0007);}};}function respondWithFilteredResult(_0x4d8ed6,_0x26ddd3){return function(_0x3526eb){if(_0x3526eb){var _0xb48cfa=typeof _0x26ddd3[_0x7c39('0x1e')]===_0x7c39('0x1f')&&typeof _0x26ddd3[_0x7c39('0x20')]===_0x7c39('0x1f');var _0x163700=_0x3526eb['count'];var _0x46ba3e=_0xb48cfa?0x0:_0x26ddd3[_0x7c39('0x1e')];var _0x51e3b2=_0xb48cfa?_0x3526eb[_0x7c39('0x21')]:_0x26ddd3[_0x7c39('0x1e')]+_0x26ddd3[_0x7c39('0x20')];var _0x5dad49;if(_0x51e3b2>=_0x163700){_0x51e3b2=_0x163700;_0x5dad49=0xc8;}else{_0x5dad49=0xce;}_0x4d8ed6[_0x7c39('0x1d')](_0x5dad49);return _0x4d8ed6[_0x7c39('0x22')]('Content-Range',_0x46ba3e+'-'+_0x51e3b2+'/'+_0x163700)[_0x7c39('0x23')](_0x3526eb);}return null;};}function saveUpdates(_0x641b69){return function(_0x44ab06){if(_0x44ab06){return _0x44ab06[_0x7c39('0x24')](_0x641b69)[_0x7c39('0x11')](function(_0x2818fa){return _0x2818fa;});}return null;};}function removeEntity(_0x1f6a74){return function(_0x103957){if(_0x103957){return _0x103957['destroy']()[_0x7c39('0x11')](function(){var _0x43a07a=_0x103957[_0x7c39('0x25')]({'plain':!![]});var _0x38855e=_0x7c39('0x26');return db[_0x7c39('0x27')][_0x7c39('0x28')]({'where':{'type':_0x38855e,'resourceId':_0x43a07a['id']}})[_0x7c39('0x11')](function(){return _0x103957;});})['then'](function(){_0x1f6a74[_0x7c39('0x1d')](0xcc)[_0x7c39('0x29')]();});}};}function handleEntityNotFound(_0x31924b){return function(_0x475afb){if(!_0x475afb){_0x31924b['sendStatus'](0x194);}return _0x475afb;};}function handleError(_0x12e160,_0x340780){_0x340780=_0x340780||0x1f4;return function(_0x391a51){logger['error'](_0x391a51['stack']);if(_0x391a51[_0x7c39('0x2a')]){delete _0x391a51['name'];}_0x12e160['status'](_0x340780)[_0x7c39('0x2b')](_0x391a51);};}exports[_0x7c39('0x2c')]=function(_0x31480f,_0x5158c3){var _0x30df97={'include':[{'model':db[_0x7c39('0x2d')],'as':'mandatoryDispositionPause'}]},_0x33ad1e={},_0x27f5d8={'count':0x0,'rows':[]};var _0x454f65=_[_0x7c39('0x2e')](db['ChatWebsite'][_0x7c39('0x2f')],function(_0x2453e7){return{'name':_0x2453e7[_0x7c39('0x30')],'type':_0x2453e7[_0x7c39('0x31')][_0x7c39('0x32')]};});_0x33ad1e[_0x7c39('0x33')]=_['map'](_0x454f65,_0x7c39('0x2a'));_0x33ad1e[_0x7c39('0x34')]=_[_0x7c39('0x35')](_0x31480f['query']);_0x33ad1e[_0x7c39('0x36')]=_[_0x7c39('0x37')](_0x33ad1e[_0x7c39('0x33')],_0x33ad1e[_0x7c39('0x34')]);_0x30df97[_0x7c39('0x38')]=_[_0x7c39('0x37')](_0x33ad1e['model'],qs[_0x7c39('0x39')](_0x31480f[_0x7c39('0x34')][_0x7c39('0x39')]));_0x30df97[_0x7c39('0x38')]=_0x30df97['attributes']['length']?_0x30df97['attributes']:_0x33ad1e[_0x7c39('0x33')];if(!_0x31480f[_0x7c39('0x34')]['hasOwnProperty'](_0x7c39('0x3a'))){_0x30df97[_0x7c39('0x20')]=qs[_0x7c39('0x20')](_0x31480f[_0x7c39('0x34')][_0x7c39('0x20')]);_0x30df97[_0x7c39('0x1e')]=qs[_0x7c39('0x1e')](_0x31480f[_0x7c39('0x34')]['offset']);}_0x30df97['order']=qs[_0x7c39('0x3b')](_0x31480f[_0x7c39('0x34')][_0x7c39('0x3b')]);_0x30df97[_0x7c39('0x3c')]=qs['filters'](_[_0x7c39('0x3d')](_0x31480f[_0x7c39('0x34')],_0x33ad1e[_0x7c39('0x36')]),_0x454f65);if(_0x31480f[_0x7c39('0x34')][_0x7c39('0x3e')]){_0x30df97[_0x7c39('0x3c')]=_[_0x7c39('0x3f')](_0x30df97[_0x7c39('0x3c')],{'$or':_['map'](_0x454f65,function(_0x29083f){if(_0x29083f['type']!=='VIRTUAL'){var _0x23e58b={};_0x23e58b[_0x29083f[_0x7c39('0x2a')]]={'$like':'%'+_0x31480f[_0x7c39('0x34')][_0x7c39('0x3e')]+'%'};return _0x23e58b;}})});}_0x30df97=_['merge']({},_0x30df97,_0x31480f[_0x7c39('0x40')]);var _0x43a7fc={'where':_0x30df97[_0x7c39('0x3c')]};return db[_0x7c39('0x41')][_0x7c39('0x21')](_0x43a7fc)['then'](function(_0x3ce650){_0x27f5d8[_0x7c39('0x21')]=_0x3ce650;if(_0x31480f[_0x7c39('0x34')][_0x7c39('0x42')]){_0x30df97[_0x7c39('0x43')]=[{'all':!![]}];}return db[_0x7c39('0x41')]['findAll'](_0x30df97);})[_0x7c39('0x11')](function(_0x69780a){_0x27f5d8[_0x7c39('0x44')]=_0x69780a;return _0x27f5d8;})[_0x7c39('0x11')](respondWithFilteredResult(_0x5158c3,_0x30df97))[_0x7c39('0x45')](handleError(_0x5158c3,null));};exports['show']=function(_0x30dba3,_0xd5aad6){var _0x1d375d={'raw':![],'where':{'id':_0x30dba3[_0x7c39('0x46')]['id']},'include':[{'model':db[_0x7c39('0x2d')],'as':_0x7c39('0x47')}]},_0x1b178e={};_0x1b178e[_0x7c39('0x33')]=_[_0x7c39('0x35')](db[_0x7c39('0x41')][_0x7c39('0x2f')]);_0x1b178e[_0x7c39('0x34')]=_[_0x7c39('0x35')](_0x30dba3[_0x7c39('0x34')]);_0x1b178e[_0x7c39('0x36')]=_['intersection'](_0x1b178e[_0x7c39('0x33')],_0x1b178e[_0x7c39('0x34')]);_0x1d375d[_0x7c39('0x38')]=_[_0x7c39('0x37')](_0x1b178e[_0x7c39('0x33')],qs[_0x7c39('0x39')](_0x30dba3[_0x7c39('0x34')][_0x7c39('0x39')]));_0x1d375d['attributes']=_0x1d375d[_0x7c39('0x38')][_0x7c39('0x48')]?_0x1d375d[_0x7c39('0x38')]:_0x1b178e['model'];if(_0x30dba3[_0x7c39('0x34')][_0x7c39('0x42')]){_0x1d375d[_0x7c39('0x43')]=[{'all':!![]}];}_0x1d375d=_[_0x7c39('0x3f')]({},_0x1d375d,_0x30dba3[_0x7c39('0x40')]);return db[_0x7c39('0x41')]['find'](_0x1d375d)['then'](handleEntityNotFound(_0xd5aad6,null))[_0x7c39('0x11')](respondWithResult(_0xd5aad6,null))[_0x7c39('0x45')](handleError(_0xd5aad6,null));};exports[_0x7c39('0x49')]=function(_0x4b012a,_0x412142){return db[_0x7c39('0x41')][_0x7c39('0x49')](_0x4b012a[_0x7c39('0x4a')],{})[_0x7c39('0x11')](function(_0x5759dd){var _0x3a3287=_0x4b012a[_0x7c39('0x4b')][_0x7c39('0x25')]({'plain':!![]});if(!_0x3a3287)throw new Error(_0x7c39('0x4c'));if(_0x3a3287[_0x7c39('0x4d')]===_0x7c39('0x4b')){var _0x2448fc=_0x5759dd[_0x7c39('0x25')]({'plain':!![]});var _0x41f218=_0x7c39('0x26');return db[_0x7c39('0x4e')][_0x7c39('0x4f')]({'where':{'name':_0x41f218,'userProfileId':_0x3a3287[_0x7c39('0x50')]},'raw':!![]})[_0x7c39('0x11')](function(_0x5b32fa){if(_0x5b32fa&&_0x5b32fa[_0x7c39('0x51')]===0x0){return db['UserProfileResource'][_0x7c39('0x49')]({'name':_0x2448fc[_0x7c39('0x2a')],'resourceId':_0x2448fc['id'],'type':_0x5b32fa[_0x7c39('0x2a')],'sectionId':_0x5b32fa['id']},{})['then'](function(){return _0x5759dd;});}else{return _0x5759dd;}})[_0x7c39('0x45')](function(_0x481a03){logger[_0x7c39('0x17')]('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x481a03);throw _0x481a03;});}return _0x5759dd;})[_0x7c39('0x11')](respondWithResult(_0x412142,0xc9))[_0x7c39('0x45')](handleError(_0x412142,null));};exports[_0x7c39('0x24')]=function(_0x13aa7d,_0x1e4d06){if(_0x13aa7d[_0x7c39('0x4a')]['id']){delete _0x13aa7d['body']['id'];}return db[_0x7c39('0x41')][_0x7c39('0x4f')]({'where':{'id':_0x13aa7d[_0x7c39('0x46')]['id']},'include':[{'model':db[_0x7c39('0x2d')],'as':_0x7c39('0x47')}]})[_0x7c39('0x11')](handleEntityNotFound(_0x1e4d06,null))[_0x7c39('0x11')](saveUpdates(_0x13aa7d[_0x7c39('0x4a')],null))[_0x7c39('0x11')](respondWithResult(_0x1e4d06,null))[_0x7c39('0x45')](handleError(_0x1e4d06,null));};exports['destroy']=function(_0x59a513,_0x4a00b7){return db[_0x7c39('0x41')][_0x7c39('0x4f')]({'where':{'id':_0x59a513[_0x7c39('0x46')]['id']}})[_0x7c39('0x11')](handleEntityNotFound(_0x4a00b7,null))[_0x7c39('0x11')](removeEntity(_0x4a00b7,null))['catch'](handleError(_0x4a00b7,null));};exports['describe']=function(_0x17480b,_0xdf2693){return db['ChatWebsite'][_0x7c39('0x52')]()[_0x7c39('0x11')](respondWithResult(_0xdf2693,null))['catch'](handleError(_0xdf2693,null));};exports[_0x7c39('0x53')]=function(_0x3fde25,_0x4a2ba4){if(_0x3fde25[_0x7c39('0x4a')]['id']){delete _0x3fde25[_0x7c39('0x4a')]['id'];}return db['ChatWebsite']['find']({'where':{'id':_0x3fde25[_0x7c39('0x46')]['id']}})[_0x7c39('0x11')](handleEntityNotFound(_0x4a2ba4,null))['then'](function(_0x127311){if(_0x127311){_0x3fde25[_0x7c39('0x4a')][_0x7c39('0x54')]=_0x127311['id'];return db[_0x7c39('0x55')][_0x7c39('0x49')](_0x3fde25[_0x7c39('0x4a')]);}})[_0x7c39('0x11')](respondWithResult(_0x4a2ba4,null))[_0x7c39('0x45')](handleError(_0x4a2ba4,null));};exports[_0x7c39('0x56')]=function(_0x178ad7,_0x3d88ee){var _0x5f1b92={'raw':![],'where':{}};var _0x4c59d0={};var _0x33c9ac={'count':0x0,'rows':[]};return db[_0x7c39('0x41')]['findOne']({'where':{'id':_0x178ad7[_0x7c39('0x46')]['id']}})[_0x7c39('0x11')](handleEntityNotFound(_0x3d88ee,null))[_0x7c39('0x11')](function(_0x5a9676){if(_0x5a9676){_0x4c59d0['model']=_[_0x7c39('0x35')](db[_0x7c39('0x55')][_0x7c39('0x2f')]);_0x4c59d0[_0x7c39('0x34')]=_[_0x7c39('0x35')](_0x178ad7['query']);_0x4c59d0['filters']=_[_0x7c39('0x37')](_0x4c59d0[_0x7c39('0x33')],_0x4c59d0[_0x7c39('0x34')]);_0x5f1b92[_0x7c39('0x38')]=_['intersection'](_0x4c59d0[_0x7c39('0x33')],qs[_0x7c39('0x39')](_0x178ad7['query'][_0x7c39('0x39')]));_0x5f1b92[_0x7c39('0x38')]=_0x5f1b92[_0x7c39('0x38')][_0x7c39('0x48')]?_0x5f1b92['attributes']:_0x4c59d0['model'];if(!_0x178ad7[_0x7c39('0x34')][_0x7c39('0x57')]('nolimit')){_0x5f1b92[_0x7c39('0x20')]=qs[_0x7c39('0x20')](_0x178ad7['query'][_0x7c39('0x20')]);_0x5f1b92[_0x7c39('0x1e')]=qs['offset'](_0x178ad7[_0x7c39('0x34')][_0x7c39('0x1e')]);}_0x5f1b92[_0x7c39('0x58')]=qs[_0x7c39('0x3b')](_0x178ad7[_0x7c39('0x34')][_0x7c39('0x3b')]);_0x5f1b92[_0x7c39('0x3c')]=qs['filters'](_[_0x7c39('0x3d')](_0x178ad7[_0x7c39('0x34')],_0x4c59d0[_0x7c39('0x36')]));_0x5f1b92['where'][_0x7c39('0x54')]=_0x5a9676['id'];if(_0x178ad7['query'][_0x7c39('0x3e')]){_0x5f1b92[_0x7c39('0x3c')]=_[_0x7c39('0x3f')](_0x5f1b92[_0x7c39('0x3c')],{'$or':_['map'](_0x5f1b92[_0x7c39('0x38')],function(_0x42c268){var _0x25cbea={};_0x25cbea[_0x42c268]={'$like':'%'+_0x178ad7[_0x7c39('0x34')][_0x7c39('0x3e')]+'%'};return _0x25cbea;})});}_0x5f1b92=_[_0x7c39('0x3f')]({},_0x5f1b92,_0x178ad7[_0x7c39('0x40')]);return db[_0x7c39('0x55')][_0x7c39('0x21')]({'where':_0x5f1b92[_0x7c39('0x3c')]})[_0x7c39('0x11')](function(_0x17905d){_0x33c9ac['count']=_0x17905d;if(_0x178ad7[_0x7c39('0x34')][_0x7c39('0x42')]){_0x5f1b92[_0x7c39('0x43')]=[{'all':!![]}];}return db['Disposition'][_0x7c39('0x59')](_0x5f1b92);})[_0x7c39('0x11')](function(_0x4d38aa){_0x33c9ac['rows']=_0x4d38aa;return _0x33c9ac;});}})[_0x7c39('0x11')](respondWithFilteredResult(_0x3d88ee,_0x5f1b92))[_0x7c39('0x45')](handleError(_0x3d88ee,null));};exports['removeDispositions']=function(_0x39b325,_0x3e0bcf){return db[_0x7c39('0x41')]['find']({'where':{'id':_0x39b325['params']['id']}})[_0x7c39('0x11')](handleEntityNotFound(_0x3e0bcf,null))[_0x7c39('0x11')](function(_0x5e7bde){if(_0x5e7bde){return _0x5e7bde[_0x7c39('0x5a')](_0x39b325[_0x7c39('0x34')][_0x7c39('0x5b')]);}})['then'](respondWithStatusCode(_0x3e0bcf,null))[_0x7c39('0x45')](handleError(_0x3e0bcf,null));};exports[_0x7c39('0x5c')]=function(_0x20b365,_0x3249fb){if(_0x20b365[_0x7c39('0x4a')]['id']){delete _0x20b365[_0x7c39('0x4a')]['id'];}return db[_0x7c39('0x41')]['find']({'where':{'id':_0x20b365[_0x7c39('0x46')]['id']}})[_0x7c39('0x11')](handleEntityNotFound(_0x3249fb,null))[_0x7c39('0x11')](function(_0x1f4fd2){if(_0x1f4fd2){_0x20b365[_0x7c39('0x4a')][_0x7c39('0x54')]=_0x1f4fd2['id'];return db[_0x7c39('0x5d')][_0x7c39('0x49')](_0x20b365[_0x7c39('0x4a')]);}})[_0x7c39('0x11')](respondWithResult(_0x3249fb,null))[_0x7c39('0x45')](handleError(_0x3249fb,null));};exports[_0x7c39('0x5e')]=function(_0x4d25c4,_0x1761e2){var _0x3f758d={'raw':![],'where':{}};var _0x2103d7={};var _0x2739a5={'count':0x0,'rows':[]};return db[_0x7c39('0x41')][_0x7c39('0x5f')]({'where':{'id':_0x4d25c4[_0x7c39('0x46')]['id']}})['then'](handleEntityNotFound(_0x1761e2,null))['then'](function(_0x231493){if(_0x231493){_0x2103d7[_0x7c39('0x33')]=_[_0x7c39('0x35')](db[_0x7c39('0x5d')]['rawAttributes']);_0x2103d7[_0x7c39('0x34')]=_['keys'](_0x4d25c4[_0x7c39('0x34')]);_0x2103d7[_0x7c39('0x36')]=_[_0x7c39('0x37')](_0x2103d7[_0x7c39('0x33')],_0x2103d7['query']);_0x3f758d[_0x7c39('0x38')]=_['intersection'](_0x2103d7[_0x7c39('0x33')],qs[_0x7c39('0x39')](_0x4d25c4['query'][_0x7c39('0x39')]));_0x3f758d[_0x7c39('0x38')]=_0x3f758d[_0x7c39('0x38')][_0x7c39('0x48')]?_0x3f758d['attributes']:_0x2103d7[_0x7c39('0x33')];if(!_0x4d25c4[_0x7c39('0x34')][_0x7c39('0x57')](_0x7c39('0x3a'))){_0x3f758d[_0x7c39('0x20')]=qs[_0x7c39('0x20')](_0x4d25c4[_0x7c39('0x34')][_0x7c39('0x20')]);_0x3f758d[_0x7c39('0x1e')]=qs[_0x7c39('0x1e')](_0x4d25c4[_0x7c39('0x34')]['offset']);}_0x3f758d['order']=qs['sort'](_0x4d25c4['query'][_0x7c39('0x3b')]);_0x3f758d[_0x7c39('0x3c')]=qs[_0x7c39('0x36')](_[_0x7c39('0x3d')](_0x4d25c4['query'],_0x2103d7[_0x7c39('0x36')]));_0x3f758d['where'][_0x7c39('0x54')]=_0x231493['id'];if(_0x4d25c4['query'][_0x7c39('0x3e')]){_0x3f758d['where']=_['merge'](_0x3f758d[_0x7c39('0x3c')],{'$or':_[_0x7c39('0x2e')](_0x3f758d[_0x7c39('0x38')],function(_0x14b2b4){var _0x12049e={};_0x12049e[_0x14b2b4]={'$like':'%'+_0x4d25c4[_0x7c39('0x34')][_0x7c39('0x3e')]+'%'};return _0x12049e;})});}_0x3f758d=_[_0x7c39('0x3f')]({},_0x3f758d,_0x4d25c4[_0x7c39('0x40')]);return db['CannedAnswer']['count']({'where':_0x3f758d[_0x7c39('0x3c')]})[_0x7c39('0x11')](function(_0x34e45f){_0x2739a5[_0x7c39('0x21')]=_0x34e45f;if(_0x4d25c4[_0x7c39('0x34')]['includeAll']){_0x3f758d[_0x7c39('0x43')]=[{'all':!![]}];}return db[_0x7c39('0x5d')][_0x7c39('0x59')](_0x3f758d);})[_0x7c39('0x11')](function(_0x52d205){_0x2739a5[_0x7c39('0x44')]=_0x52d205;return _0x2739a5;});}})[_0x7c39('0x11')](respondWithFilteredResult(_0x1761e2,_0x3f758d))[_0x7c39('0x45')](handleError(_0x1761e2,null));};exports[_0x7c39('0x60')]=function(_0x29eaa5,_0x268d65){return db[_0x7c39('0x41')][_0x7c39('0x4f')]({'where':{'id':_0x29eaa5[_0x7c39('0x46')]['id']}})[_0x7c39('0x11')](handleEntityNotFound(_0x268d65,null))['then'](function(_0x19a9d5){if(_0x19a9d5){return _0x19a9d5[_0x7c39('0x60')](_0x29eaa5[_0x7c39('0x34')][_0x7c39('0x5b')]);}})[_0x7c39('0x11')](respondWithStatusCode(_0x268d65,null))['catch'](handleError(_0x268d65,null));};exports[_0x7c39('0x61')]=function(_0x265e1e,_0x2f32b6){_0x265e1e[_0x7c39('0x4a')]['sitepic']=_0x265e1e['file'][_0x7c39('0x62')];return db['ChatWebsite'][_0x7c39('0x4f')]({'where':{'id':_0x265e1e['params']['id']}})[_0x7c39('0x11')](handleEntityNotFound(_0x2f32b6,null))['then'](saveUpdates(_0x265e1e['body'],null))[_0x7c39('0x11')](respondWithResult(_0x2f32b6,null))[_0x7c39('0x45')](handleError(_0x2f32b6,null));};exports[_0x7c39('0x63')]=function(_0x36c647,_0x2ecb80){_0x36c647[_0x7c39('0x4a')]['agentAvatar']=_0x36c647[_0x7c39('0x64')][_0x7c39('0x62')];return db[_0x7c39('0x41')][_0x7c39('0x4f')]({'where':{'id':_0x36c647[_0x7c39('0x46')]['id']}})[_0x7c39('0x11')](handleEntityNotFound(_0x2ecb80,null))['then'](saveUpdates(_0x36c647['body'],null))[_0x7c39('0x11')](respondWithResult(_0x2ecb80,null))[_0x7c39('0x45')](handleError(_0x2ecb80,null));};exports[_0x7c39('0x65')]=function(_0x12ef8c,_0x291e6a){_0x12ef8c[_0x7c39('0x4a')][_0x7c39('0x66')]=_0x12ef8c[_0x7c39('0x64')][_0x7c39('0x62')];return db[_0x7c39('0x41')][_0x7c39('0x4f')]({'where':{'id':_0x12ef8c[_0x7c39('0x46')]['id']}})[_0x7c39('0x11')](handleEntityNotFound(_0x291e6a,null))[_0x7c39('0x11')](saveUpdates(_0x12ef8c[_0x7c39('0x4a')],null))['then'](respondWithResult(_0x291e6a,null))[_0x7c39('0x45')](handleError(_0x291e6a,null));};exports[_0x7c39('0x67')]=function(_0x9caef,_0x5cea9f){_0x9caef[_0x7c39('0x4a')]['systemAvatar']=_0x9caef[_0x7c39('0x64')][_0x7c39('0x62')];return db[_0x7c39('0x41')][_0x7c39('0x4f')]({'where':{'id':_0x9caef[_0x7c39('0x46')]['id']}})[_0x7c39('0x11')](handleEntityNotFound(_0x5cea9f,null))[_0x7c39('0x11')](saveUpdates(_0x9caef[_0x7c39('0x4a')],null))['then'](respondWithResult(_0x5cea9f,null))['catch'](handleError(_0x5cea9f,null));};exports[_0x7c39('0x68')]=function(_0x25aeeb,_0x4eb20b){var _0x38330b=path[_0x7c39('0x69')](config['root'],_0x7c39('0x6a'));var _0x4eebe5={'where':{'id':_0x25aeeb[_0x7c39('0x46')]['id']},'attributes':['id',_0x7c39('0x6b')],'raw':!![]};var _0x443e8e=![];return require('../../config/license/util')[_0x7c39('0x6c')]()[_0x7c39('0x11')](function(_0x549f52){if(_0x549f52){_0x443e8e=_0x549f52[_0x7c39('0x6d')];}})[_0x7c39('0x11')](function(){return db[_0x7c39('0x41')][_0x7c39('0x4f')](_0x4eebe5);})[_0x7c39('0x11')](handleEntityNotFound(_0x4eb20b,null))[_0x7c39('0x11')](function(_0x45f428){if(_0x45f428){if(!_[_0x7c39('0x6e')](_0x45f428['sitepic'])){if(fs[_0x7c39('0x6f')](path['join'](config[_0x7c39('0x70')],_0x7c39('0x71'),_0x45f428[_0x7c39('0x6b')]))&&_0x443e8e){_0x38330b=path[_0x7c39('0x69')](config[_0x7c39('0x70')],'server/files/images/logos/',_0x45f428[_0x7c39('0x6b')]);}}return _0x4eb20b[_0x7c39('0x72')](_0x38330b);}})[_0x7c39('0x45')](handleError(_0x4eb20b,null));};exports[_0x7c39('0x73')]=function(_0x2999bb,_0x5a85cd){var _0x33df14=path[_0x7c39('0x69')](config[_0x7c39('0x70')],_0x7c39('0x74'));var _0x13c6dc={'where':{'id':_0x2999bb['params']['id']},'attributes':['id',_0x7c39('0x75')],'raw':!![]};return db[_0x7c39('0x41')]['find'](_0x13c6dc)[_0x7c39('0x11')](handleEntityNotFound(_0x5a85cd,null))[_0x7c39('0x11')](function(_0xc5bd2a){if(_0xc5bd2a){if(!_[_0x7c39('0x6e')](_0xc5bd2a[_0x7c39('0x75')])){if(fs[_0x7c39('0x6f')](path[_0x7c39('0x69')](config[_0x7c39('0x70')],_0x7c39('0x76'),_0xc5bd2a[_0x7c39('0x75')]))){_0x33df14=path[_0x7c39('0x69')](config[_0x7c39('0x70')],_0x7c39('0x76'),_0xc5bd2a[_0x7c39('0x75')]);}}return _0x5a85cd['download'](_0x33df14);}})[_0x7c39('0x45')](handleError(_0x5a85cd,null));};exports['getCustomerAvatar']=function(_0x216e20,_0x298ad0){var _0x16ee76=path[_0x7c39('0x69')](config[_0x7c39('0x70')],'server/files/images/avatars/customer_avatar.png');var _0x8bcc3d={'where':{'id':_0x216e20[_0x7c39('0x46')]['id']},'attributes':['id','customerAvatar',_0x7c39('0x77')],'raw':!![]};return db[_0x7c39('0x41')]['find'](_0x8bcc3d)[_0x7c39('0x11')](handleEntityNotFound(_0x298ad0,null))[_0x7c39('0x11')](function(_0x465f88){if(_0x465f88){if(!_[_0x7c39('0x6e')](_0x465f88[_0x7c39('0x66')])){if(fs[_0x7c39('0x6f')](path['join'](config[_0x7c39('0x70')],_0x7c39('0x76'),_0x465f88[_0x7c39('0x66')]))&&_0x465f88[_0x7c39('0x77')]){_0x16ee76=path[_0x7c39('0x69')](config[_0x7c39('0x70')],_0x7c39('0x76'),_0x465f88[_0x7c39('0x66')]);}}return _0x298ad0['download'](_0x16ee76);}})[_0x7c39('0x45')](handleError(_0x298ad0,null));};exports['getSystemAvatar']=function(_0x59a3e9,_0x4b188a){var _0x39e3c5=path['join'](config[_0x7c39('0x70')],_0x7c39('0x78'));var _0x3fbac7={'where':{'id':_0x59a3e9['params']['id']},'attributes':['id',_0x7c39('0x79')],'raw':!![]};return db[_0x7c39('0x41')][_0x7c39('0x4f')](_0x3fbac7)[_0x7c39('0x11')](handleEntityNotFound(_0x4b188a,null))[_0x7c39('0x11')](function(_0x4cf265){if(_0x4cf265){if(!_[_0x7c39('0x6e')](_0x4cf265[_0x7c39('0x79')])){if(fs['existsSync'](path[_0x7c39('0x69')](config[_0x7c39('0x70')],'server/files/images/avatars/',_0x4cf265[_0x7c39('0x79')]))){_0x39e3c5=path[_0x7c39('0x69')](config['root'],_0x7c39('0x76'),_0x4cf265[_0x7c39('0x79')]);}}return _0x4b188a[_0x7c39('0x72')](_0x39e3c5);}})[_0x7c39('0x45')](handleError(_0x4b188a,null));};exports['notify']=function(_0x5e9dac,_0x103790){var _0x3cb2fc=require(_0x7c39('0x7a'));var _0x38846e=new _0x3cb2fc();var _0x5da30b=_0x38846e['setUA'](_0x5e9dac[_0x7c39('0x7b')][_0x7c39('0x7c')])[_0x7c39('0x7d')]();var _0x4aea6b={'body':_0x5e9dac[_0x7c39('0x4a')],'channel':_0x7c39('0x7e')};var _0x141c07=[];var _0x4b1e40=[];var _0x319591={};var _0x25c33c=![];return db[_0x7c39('0x7f')][_0x7c39('0x52')]()['then'](function(_0x3784d6){if(!_0x3784d6){throw new db[(_0x7c39('0x80'))][(_0x7c39('0x81'))]('no\x20available\x20attributes');}_0x141c07=_[_0x7c39('0x82')](_['keys'](_0x3784d6),[_0x7c39('0x83'),_0x7c39('0x84')]);_0x4b1e40=_[_0x7c39('0x82')](_[_0x7c39('0x35')](_0x3784d6),[_0x7c39('0x83'),_0x7c39('0x84'),_0x7c39('0x85'),_0x7c39('0x86')]);if(_0x5e9dac[_0x7c39('0x4a')]['id']){delete _0x5e9dac['body']['id'];}if(_['isNil'](_0x5e9dac[_0x7c39('0x4a')][_0x7c39('0x87')])){throw new db[(_0x7c39('0x80'))]['ValidationError'](_0x7c39('0x88'));}if(_[_0x7c39('0x6e')](_0x5e9dac['body'][_0x7c39('0x4a')])||_0x5e9dac[_0x7c39('0x4a')][_0x7c39('0x4a')]===''){throw new db['Sequelize'][(_0x7c39('0x81'))](_0x7c39('0x89'));}if(_[_0x7c39('0x6e')](_0x5e9dac[_0x7c39('0x4a')]['mapKey'])){throw new db[(_0x7c39('0x80'))]['ValidationError'](_0x7c39('0x8a')+_0x4b1e40);}if(!_['includes'](_0x4b1e40,_0x5e9dac['body'][_0x7c39('0x8b')])){throw new db[(_0x7c39('0x80'))][(_0x7c39('0x81'))]('mapKey\x20invalid,\x20please\x20use\x20one\x20of\x20these:\x20'+_0x4b1e40);}_0x319591[_0x5e9dac[_0x7c39('0x4a')][_0x7c39('0x8b')]]=_0x5e9dac['body']['from'];})[_0x7c39('0x11')](function(){return db[_0x7c39('0x41')][_0x7c39('0x4f')]({'where':{'id':_0x5e9dac['params']['id']},'include':[{'model':db[_0x7c39('0x8c')],'as':_0x7c39('0x8d'),'include':[{'model':db[_0x7c39('0x7f')],'as':_0x7c39('0x8e'),'where':_0x319591,'limit':0x1,'order':[['updatedAt','DESC']]}]},{'model':db[_0x7c39('0x8f')],'as':'Applications'}]});})[_0x7c39('0x11')](handleEntityNotFound(_0x103790,null))['then'](function(_0x579e4d){if(_0x579e4d&&_0x579e4d[_0x7c39('0x8d')]){_0x4aea6b[_0x7c39('0x90')]=_0x579e4d;_0x4aea6b[_0x7c39('0x91')]=_0x579e4d[_0x7c39('0x92')];_0x4aea6b[_0x7c39('0x93')]=_0x579e4d[_0x7c39('0x8d')];_0x4aea6b['applications']=_['orderBy'](_0x4aea6b[_0x7c39('0x91')],['priority'],[_0x7c39('0x94')]);if(_0x4aea6b[_0x7c39('0x90')][_0x7c39('0x92')]){delete _0x4aea6b['account'][_0x7c39('0x92')];}if(_0x4aea6b[_0x7c39('0x90')][_0x7c39('0x8d')]&&_0x4aea6b[_0x7c39('0x90')][_0x7c39('0x8d')][_0x7c39('0x8e')][_0x7c39('0x48')]){return _0x4aea6b[_0x7c39('0x90')][_0x7c39('0x8d')][_0x7c39('0x8e')][0x0];}var _0x3d8ec9=_[_0x7c39('0x9')](_0x5e9dac[_0x7c39('0x4a')],{'firstName':_0x5e9dac[_0x7c39('0x4a')][_0x7c39('0x87')],'ListId':_0x579e4d['ListId']});_0x3d8ec9[_0x5e9dac[_0x7c39('0x4a')][_0x7c39('0x8b')]]=_0x5e9dac[_0x7c39('0x4a')]['from'];return db[_0x7c39('0x7f')][_0x7c39('0x49')](_0x3d8ec9,{'fields':_0x141c07,'raw':!![]});}})[_0x7c39('0x11')](handleEntityNotFound(_0x103790,null))[_0x7c39('0x11')](function(_0x3c9ddd){_0x4aea6b[_0x7c39('0x95')]=_0x3c9ddd;var _0x2912ad=_0x5e9dac[_0x7c39('0x4a')][_0x7c39('0x96')];if(_0x5e9dac['headers'][_0x7c39('0x97')]){_0x2912ad=_0x5e9dac[_0x7c39('0x7b')][_0x7c39('0x97')];}else if(_0x5e9dac[_0x7c39('0x7b')]['x-forwarded-for']){_0x2912ad=_['first'](_0x5e9dac['headers']['x-forwarded-for']['split'](','));}if(_0x3c9ddd){var _0x4be9f0={'ContactId':_0x3c9ddd['id'],'ChatWebsiteId':_0x5e9dac[_0x7c39('0x46')]['id'],'from':(_0x3c9ddd[_0x7c39('0x98')]||'')+'\x20'+(_0x3c9ddd[_0x7c39('0x99')]||''),'customerIp':_0x2912ad,'customerPort':_0x5e9dac[_0x7c39('0x7b')]['x-real-port']?_0x5e9dac[_0x7c39('0x7b')][_0x7c39('0x9a')]:null,'referer':_0x5e9dac['body']['referer'],'browserName':_0x5da30b['browser'][_0x7c39('0x2a')]&&_0x5da30b[_0x7c39('0x9b')][_0x7c39('0x9c')]?util[_0x7c39('0x9d')](_0x7c39('0x9e'),_0x5da30b[_0x7c39('0x9b')][_0x7c39('0x2a')],_0x5da30b[_0x7c39('0x9b')][_0x7c39('0x9c')]):_0x7c39('0x9f'),'browserVersion':_0x5da30b[_0x7c39('0x9b')][_0x7c39('0x9c')]||_0x7c39('0x9f'),'osName':util[_0x7c39('0x9d')](_0x7c39('0x9e'),_0x5da30b['os']['name'],_0x5da30b['os'][_0x7c39('0x9c')]),'osVersion':_0x5da30b['os'][_0x7c39('0x9c')],'deviceModel':_0x5da30b[_0x7c39('0xa0')][_0x7c39('0x33')]&&_0x5da30b[_0x7c39('0xa0')][_0x7c39('0xa1')]?util[_0x7c39('0x9d')]('%s\x20%s\x20%s',_0x5da30b[_0x7c39('0xa0')][_0x7c39('0x33')],_0x5da30b[_0x7c39('0xa0')][_0x7c39('0xa1')],_0x5da30b[_0x7c39('0xa0')][_0x7c39('0x31')]):null,'deviceVendor':_0x5da30b[_0x7c39('0xa0')]['vendor'],'deviceType':_0x5da30b[_0x7c39('0xa0')][_0x7c39('0x31')],'formData':JSON[_0x7c39('0x16')](_0x5e9dac['body'])};var _0x3bd60e={'ChatWebsiteId':_0x5e9dac[_0x7c39('0x46')]['id'],'closed':![]};if(_0x5e9dac[_0x7c39('0x4a')][_0x7c39('0xa2')]){_0x3bd60e[_0x7c39('0xa2')]=_0x5e9dac[_0x7c39('0x4a')]['threadId'];return db[_0x7c39('0xa3')][_0x7c39('0x4f')]({'where':_0x3bd60e})[_0x7c39('0x11')](function(_0x4f9e32){if(_0x4f9e32){return[_0x4f9e32,![]];}_0x4be9f0['threadId']=_0x5e9dac[_0x7c39('0x4a')][_0x7c39('0xa2')];_0x4be9f0[_0x7c39('0xa4')]=_0x5e9dac['body']['externalUrl'];return db['ChatInteraction'][_0x7c39('0x49')](_0x4be9f0)[_0x7c39('0x11')](function(_0x1f902c){return[_0x1f902c,!![]];});});}_0x3bd60e[_0x7c39('0xa5')]=_0x3c9ddd['id'];if(_0x5e9dac['body'][_0x7c39('0xa6')]&&_0x5e9dac[_0x7c39('0x4a')][_0x7c39('0xa6')]['id']){_0x3bd60e['id']=_0x5e9dac['body'][_0x7c39('0xa6')]['id'];return db[_0x7c39('0xa3')]['find']({'where':_0x3bd60e})['then'](function(_0x19e574){if(_0x19e574){return[_0x19e574,![]];}return db[_0x7c39('0xa3')][_0x7c39('0x49')](_0x4be9f0)[_0x7c39('0x11')](function(_0x57f357){return[_0x57f357,!![]];});});}return db[_0x7c39('0xa3')][_0x7c39('0x49')](_0x4be9f0)[_0x7c39('0x11')](function(_0x4d0166){return[_0x4d0166,!![]];});}})[_0x7c39('0xa7')](function(_0x2f4bd6,_0x264a6f){if(_0x2f4bd6){_0x25c33c=_0x264a6f;if(!_0x264a6f){var _0x2a2b9a={'from':(_0x4aea6b[_0x7c39('0x95')]['firstName']||'')+'\x20'+(_0x4aea6b[_0x7c39('0x95')]['lastName']||'')};if(_0x5e9dac[_0x7c39('0x4a')][_0x7c39('0xa2')]&&_0x5e9dac[_0x7c39('0x4a')][_0x7c39('0xa8')]&&_0x5e9dac[_0x7c39('0x4a')][_0x7c39('0xa2')]!=_0x5e9dac[_0x7c39('0x4a')][_0x7c39('0xa8')]){_0x2a2b9a[_0x7c39('0xa2')]=_0x5e9dac['body'][_0x7c39('0xa8')];}return _0x2f4bd6[_0x7c39('0x24')](_0x2a2b9a);}else{return _0x2f4bd6;}}})[_0x7c39('0x11')](function(_0x263169){_0x4aea6b[_0x7c39('0xa6')]=_0x263169['get']({'plain':!![]});_0x4aea6b[_0x7c39('0xa6')]['created']=_0x25c33c;if(_0x4aea6b['interaction'][_0x7c39('0xa9')]){if(_0x4aea6b[_0x7c39('0x90')][_0x7c39('0xaa')]){_0x4aea6b['applications'][_0x7c39('0xab')]({'id':0x0,'priority':_0x4aea6b['applications'][_0x7c39('0x48')]+0x1,'app':_0x7c39('0xac'),'appdata':_0x7c39('0xad'),'interval':_0x7c39('0xae')});}}return db[_0x7c39('0xaf')]['create']({'body':_0x5e9dac[_0x7c39('0x4a')][_0x7c39('0x4a')],'ChatWebsiteId':_0x5e9dac['params']['id'],'ChatInteractionId':_0x263169['id'],'direction':'in','ContactId':_0x4aea6b[_0x7c39('0x95')]['id'],'AttachmentId':_0x5e9dac[_0x7c39('0x4a')][_0x7c39('0xb0')]});})[_0x7c39('0x11')](function(_0x5519c5){_0x4aea6b[_0x7c39('0x19')]=_0x5519c5;if(_0x4aea6b[_0x7c39('0xa6')][_0x7c39('0xb1')]){return db[_0x7c39('0xb2')][_0x7c39('0x4f')]({'attributes':['id',_0x7c39('0x2a')],'where':{'id':_0x4aea6b['interaction'][_0x7c39('0xb1')]}})[_0x7c39('0x11')](function(_0x2976c4){if(_0x2976c4){_0x4aea6b[_0x7c39('0x91')]['unshift']({'id':0x0,'priority':0x0,'app':_0x7c39('0xb3'),'appdata':_0x2976c4[_0x7c39('0x2a')]+','+(_0x4aea6b['account'][_0x7c39('0xb4')]||0xa),'interval':'*,*,*,*'});_0x4aea6b[_0x7c39('0xb5')]=!![];}return respondWithRpcPromise(_0x7c39('0xb6'),_0x7c39('0xb7'),_0x4aea6b);});}return respondWithRpcPromise(_0x7c39('0xb6'),_0x7c39('0xb7'),_0x4aea6b);})[_0x7c39('0x11')](function(_0x2dc916){respondWithRpcPromise('EventManager',_0x7c39('0xb8'),{'event':'notify','message':_0x2dc916},client9002);return _0x2dc916;})[_0x7c39('0x11')](respondWithResult(_0x103790,null))[_0x7c39('0x45')](handleError(_0x103790,null));};exports[_0x7c39('0xb9')]=function(_0xf168fe,_0xf1a71f){var _0x4b88c2,_0x494cae,_0x52410a;var _0x401cf8=[];var _0x452a3d={};var _0x334a66=_0xf168fe[_0x7c39('0xba')]||[];var _0x34f930=[];var _0x15277c;return db[_0x7c39('0x7f')]['describe']()[_0x7c39('0x11')](function(_0x1532b9){if(!_0x1532b9){throw new db[(_0x7c39('0x80'))][(_0x7c39('0x81'))](_0x7c39('0xbb'));}_0x401cf8=_[_0x7c39('0x82')](_[_0x7c39('0x35')](_0x1532b9),[_0x7c39('0x83'),'updatedAt',_0x7c39('0x85'),'ListId']);if(_0xf168fe[_0x7c39('0x4a')]['id']){delete _0xf168fe[_0x7c39('0x4a')]['id'];}if(_[_0x7c39('0x6e')](_0xf168fe[_0x7c39('0x4a')]['from'])){throw _0xf1a71f[_0x7c39('0x1d')](0x1f4)['send'](new db[(_0x7c39('0x80'))][(_0x7c39('0x81'))](_0x7c39('0x88')));}if(_[_0x7c39('0x6e')](_0xf168fe[_0x7c39('0x4a')][_0x7c39('0x4a')])||_0xf168fe[_0x7c39('0x4a')][_0x7c39('0x4a')]===''){throw _0xf1a71f[_0x7c39('0x1d')](0x1f4)[_0x7c39('0x2b')](new db['Sequelize'][(_0x7c39('0x81'))](_0x7c39('0x89')));}if(_[_0x7c39('0x6e')](_0xf168fe[_0x7c39('0x4a')]['mapKeyOffline'])){throw _0xf1a71f[_0x7c39('0x1d')](0x1f4)[_0x7c39('0x2b')](new db[(_0x7c39('0x80'))][(_0x7c39('0x81'))]('mapKeyOffline\x20is\x20mandatory,\x20please\x20use\x20one\x20of\x20these:\x20'+_0x401cf8));}if(!_['includes'](_0x401cf8,_0xf168fe[_0x7c39('0x4a')][_0x7c39('0xbc')])){throw _0xf1a71f['status'](0x1f4)[_0x7c39('0x2b')](new db['Sequelize'][(_0x7c39('0x81'))](_0x7c39('0xbd')+_0x401cf8));}_0x452a3d[_0xf168fe[_0x7c39('0x4a')][_0x7c39('0xbc')]]=_0xf168fe['body'][_0x7c39('0x87')];})[_0x7c39('0x11')](function(){return db[_0x7c39('0x41')][_0x7c39('0x4f')]({'where':{'id':_0xf168fe[_0x7c39('0x46')]['id']},'include':[{'model':db[_0x7c39('0x8c')],'as':'List'},{'model':db['MailAccount'],'as':'MailAccount'}]});})['then'](handleEntityNotFound(_0xf1a71f,null))[_0x7c39('0x11')](function(_0x1b3cb5){if(_0x1b3cb5&&_0x1b3cb5[_0x7c39('0x8d')]){_0x494cae=_0x1b3cb5;var _0x394574=_[_0x7c39('0x9')](_0xf168fe[_0x7c39('0x4a')],{'firstName':_0xf168fe['body'][_0x7c39('0x87')],'phone':_0xf168fe[_0x7c39('0x4a')][_0x7c39('0x87')],'ListId':_0x1b3cb5[_0x7c39('0x86')]});_0x394574[_0xf168fe[_0x7c39('0x4a')][_0x7c39('0xbc')]]=_0xf168fe['body'][_0x7c39('0x87')];return db['CmContact'][_0x7c39('0xbe')]({'where':_0x452a3d,'defaults':_0x394574});}})['spread'](function(_0x344f85){if(_0x344f85){_0x52410a=_0x344f85;var _0x14337f=fs[_0x7c39('0xbf')](path[_0x7c39('0x69')](config[_0x7c39('0x70')],_0x7c39('0xc0')),_0x7c39('0xc1'));var _0x31a878=ejs[_0x7c39('0xc2')](_0x14337f,{'body':_[_0x7c39('0xc3')](_0xf168fe['body']['body']),'bodyTitle':_0x494cae['offlineMessageBody']});return db[_0x7c39('0xc4')][_0x7c39('0x49')]({'body':_0x31a878,'plainBody':htmlToText[_0x7c39('0xc5')](_0x31a878),'ContactId':_0x344f85['id'],'ChatWebsiteId':_0x494cae['id']});}})[_0x7c39('0x11')](function(_0x8ae70b){_0x15277c=_0x8ae70b;if(_0x334a66[_0x7c39('0x48')]){var _0x346036=_0x334a66[_0x7c39('0x2e')](function(_0x1680de){return{'name':_0x1680de['originalname'],'basename':_0x1680de['filename'],'type':_0x1680de[_0x7c39('0xc6')],'ChatOfflineMessageId':_0x8ae70b['id']};});_0x34f930=_0x346036[_0x7c39('0x2e')](_0x1f24c3=>{var _0x404fe2={'filename':_0x1f24c3[_0x7c39('0x2a')],'path':path['join'](config[_0x7c39('0x70')],'server',_0x7c39('0xba'),_0x7c39('0xc7'),'offline-chat',_0x1f24c3[_0x7c39('0xc8')])};return _0x404fe2;});if(!_0x494cae[_0x7c39('0xc9')]){return db[_0x7c39('0xca')]['transaction'](function(_0x35884e){return db[_0x7c39('0xcb')]['bulkCreate'](_0x346036,{'transaction':_0x35884e});});}}})[_0x7c39('0x11')](function(){if(_0x15277c){_0x4b88c2=_0x15277c;return db['MailAccount'][_0x7c39('0x5f')]({'where':{'service':!![]},'include':[{'model':db[_0x7c39('0xcc')],'as':_0x7c39('0xcd'),'raw':!![],'include':[{'model':db['CloudProvider'],'as':_0x7c39('0xce'),'raw':!![]}]}]});}})[_0x7c39('0x11')](function(_0x4aee87){if(_0x4aee87&&_0x4aee87['Smtp']&&_0x494cae[_0x7c39('0xcf')]&&_0x494cae[_0x7c39('0xd0')]){var _0x44c3a1=_0x4aee87[_0x7c39('0xd1')]();return respondWithRpcPromise(_0x7c39('0xd2'),_0x7c39('0xd3'),{'account':_0x44c3a1,'message':{'from':util[_0x7c39('0x9d')](_0x7c39('0xd4'),_0x4aee87[_0x7c39('0x2a')],_0x4aee87[_0x7c39('0xd5')]||_0x4aee87['Smtp'][_0x7c39('0x4b')]),'to':_0x494cae['forwardOfflineAddress'],'subject':_0x494cae[_0x7c39('0xd6')],'html':_0x4b88c2[_0x7c39('0x4a')],'attachments':_0x34f930}},client9003)[_0x7c39('0x11')](function(){return _0x4b88c2;})['catch'](function(_0x12d2b3){logger[_0x7c39('0x17')](_0x12d2b3);});}})['then'](function(){if(_0x494cae&&_0x494cae[_0x7c39('0xc9')]&&_0x494cae[_0x7c39('0xd7')]){var _0xce1f7d=[];if(_0x334a66[_0x7c39('0x48')]){_0xce1f7d=_0x334a66['map'](function(_0x48e6cc){return{'name':_0x48e6cc['originalname'],'basename':_0x48e6cc[_0x7c39('0x62')],'type':_0x48e6cc[_0x7c39('0xc6')],'ChatOfflineMessageId':_0x15277c['id']};});}var _0x381b1e;if(!_[_0x7c39('0x6e')](_0x494cae[_0x7c39('0xd8')])){var _0x3a9452=_['map'](_0xf168fe[_0x7c39('0x4a')],function(_0x3212ff){return _0x3212ff;});var _0x50ddd0=_[_0x7c39('0xd9')](_0x3a9452)[0x0];var _0x2db642=_[_0x7c39('0xda')](_0x50ddd0,function(_0x30e01a){return _0x30e01a;});_0x381b1e=_0x2db642[0x1][_0x494cae[_0x7c39('0xd8')]];}var _0xefffd1={'from':_0x52410a[_0x7c39('0xd5')],'firstName':_0x52410a[_0x7c39('0x98')],'lastName':_0x52410a[_0x7c39('0x99')],'mapKey':_0x7c39('0xd5'),'message':{'from':_0x52410a[_0x7c39('0xd5')],'to':_0x494cae[_0x7c39('0xdb')][_0x7c39('0xd5')],'cc':'','subject':_['isNil'](_0x381b1e)?_0x494cae['offlineMessageSubject']:_0x381b1e,'messageId':'','sentAt':new Date(),'attach':_0xce1f7d['length'],'attachments':_0xce1f7d,'originChannel':_0x7c39('0xdc'),'ChatWebsiteId':_0x494cae['id'],'ChatOfflineMessageId':_0x4b88c2['id'],'originTo':_0x494cae[_0x7c39('0xdb')][_0x7c39('0xd5')]},'body':_0x4b88c2[_0x7c39('0x4a')]};var _0x2d3c41={'account':{'id':_0x494cae[_0x7c39('0xd7')]},'body':_0xefffd1,'log':_0x7c39('0xdd')};return respondWithRpcPromise(_0x7c39('0xdd'),_0x7c39('0xde'),_0x2d3c41,client9001)[_0x7c39('0x11')](function(){return _0x4b88c2;})[_0x7c39('0x45')](function(_0x430e27){logger[_0x7c39('0x17')](_0x430e27);});}return;})[_0x7c39('0x11')](function(){if(_0x4b88c2){return _0x4b88c2;}})[_0x7c39('0x11')](respondWithResult(_0xf1a71f,null))['catch'](function(_0x2441ec){logger[_0x7c39('0x17')](_0x7c39('0x45'),_0x2441ec);for(var _0x320e79 of _0x334a66){var _0x775034=path[_0x7c39('0x69')](config[_0x7c39('0x70')],_0x7c39('0xdf'),_0x7c39('0xba'),'attachments',_0x7c39('0xe0'),_0x320e79[_0x7c39('0x62')]);fs_extra[_0x7c39('0xe1')](_0x775034)[_0x7c39('0x45')](function(_0x4d46ca){logger['error']('Could\x20not\x20remove\x20attachment\x20file',_0x775034,_0x4d46ca);});}});};exports[_0x7c39('0xe2')]=function(_0x211926,_0x115edd){return db[_0x7c39('0xa3')][_0x7c39('0x4f')]({'where':{'id':_0x211926['params']['id']}})[_0x7c39('0x11')](handleEntityNotFound(_0x115edd,null))['then'](function(_0x22fd83){if(_0x22fd83){return _0x22fd83[_0x7c39('0xe2')](_0x211926['body']['ids'],_['omit'](_0x211926[_0x7c39('0x4a')],[_0x7c39('0x5b'),'id'])||{});}})['then'](respondWithResult(_0x115edd,null))['catch'](handleError(_0x115edd,null));};exports[_0x7c39('0xe3')]=function(_0x3f7825,_0x24dc16){var _0x4a17eb={'raw':![],'where':{}};var _0x396c53={};var _0x57dd72={'count':0x0,'rows':[]};return db[_0x7c39('0x41')][_0x7c39('0x5f')]({'where':{'id':_0x3f7825['params']['id']}})[_0x7c39('0x11')](handleEntityNotFound(_0x24dc16,null))[_0x7c39('0x11')](function(_0x2ad414){if(_0x2ad414){_0x396c53[_0x7c39('0x33')]=_[_0x7c39('0x35')](db[_0x7c39('0xa3')][_0x7c39('0x2f')]);_0x396c53[_0x7c39('0x34')]=_[_0x7c39('0x35')](_0x3f7825[_0x7c39('0x34')]);_0x396c53[_0x7c39('0x36')]=_[_0x7c39('0x37')](_0x396c53[_0x7c39('0x33')],_0x396c53[_0x7c39('0x34')]);_0x4a17eb['attributes']=_[_0x7c39('0x37')](_0x396c53[_0x7c39('0x33')],qs[_0x7c39('0x39')](_0x3f7825[_0x7c39('0x34')][_0x7c39('0x39')]));_0x4a17eb[_0x7c39('0x38')]=_0x4a17eb[_0x7c39('0x38')][_0x7c39('0x48')]?_0x4a17eb[_0x7c39('0x38')]:_0x396c53[_0x7c39('0x33')];if(!_0x3f7825['query']['hasOwnProperty'](_0x7c39('0x3a'))){_0x4a17eb['limit']=qs[_0x7c39('0x20')](_0x3f7825[_0x7c39('0x34')]['limit']);_0x4a17eb[_0x7c39('0x1e')]=qs[_0x7c39('0x1e')](_0x3f7825[_0x7c39('0x34')][_0x7c39('0x1e')]);}_0x4a17eb[_0x7c39('0x58')]=qs[_0x7c39('0x3b')](_0x3f7825[_0x7c39('0x34')][_0x7c39('0x3b')]);_0x4a17eb[_0x7c39('0x3c')]=qs[_0x7c39('0x36')](_['pick'](_0x3f7825['query'],_0x396c53[_0x7c39('0x36')]));_0x4a17eb[_0x7c39('0x3c')][_0x7c39('0x54')]=_0x2ad414['id'];if(_0x3f7825[_0x7c39('0x34')]['filter']){_0x4a17eb['where']=_['merge'](_0x4a17eb[_0x7c39('0x3c')],{'$or':_['map'](_0x4a17eb[_0x7c39('0x38')],function(_0x41f469){var _0x4b5c31={};_0x4b5c31[_0x41f469]={'$like':'%'+_0x3f7825[_0x7c39('0x34')][_0x7c39('0x3e')]+'%'};return _0x4b5c31;})});}_0x4a17eb=_[_0x7c39('0x3f')]({},_0x4a17eb,_0x3f7825[_0x7c39('0x40')]);return db[_0x7c39('0xa3')]['count']({'where':_0x4a17eb['where']})[_0x7c39('0x11')](function(_0x5dcdcf){_0x57dd72[_0x7c39('0x21')]=_0x5dcdcf;if(_0x3f7825[_0x7c39('0x34')][_0x7c39('0x42')]){_0x4a17eb[_0x7c39('0x43')]=[{'model':db[_0x7c39('0x7f')],'as':_0x7c39('0xe4'),'required':![]},{'model':db[_0x7c39('0xb2')],'as':'Owner','attributes':[_0x7c39('0x2a'),_0x7c39('0xe5'),'internal'],'required':![]},{'model':db[_0x7c39('0xe6')],'as':_0x7c39('0xe7'),'attributes':['id',_0x7c39('0x2a'),'color'],'where':_0x3f7825[_0x7c39('0x34')][_0x7c39('0xe8')]?{'id':_0x3f7825[_0x7c39('0x34')]['tag']}:undefined,'required':_0x3f7825[_0x7c39('0x34')][_0x7c39('0xe8')]?!![]:![]}];}return db[_0x7c39('0xa3')][_0x7c39('0x59')](_0x4a17eb);})['then'](function(_0x3dafc9){_0x57dd72[_0x7c39('0x44')]=_0x3dafc9;return _0x57dd72;});}})[_0x7c39('0x11')](respondWithFilteredResult(_0x24dc16,_0x4a17eb))[_0x7c39('0x45')](handleError(_0x24dc16,null));};function iftimePromise(_0x5a4a40,_0x1e47ee){return respondWithRpcPromise(_0x7c39('0xe9'),_0x7c39('0xea'),{'command':_0x1e47ee['timezone']?util[_0x7c39('0x9d')](_0x7c39('0xeb'),_0x5a4a40[_0x7c39('0xec')],_0x1e47ee['timezone']):util[_0x7c39('0x9d')]('iftime\x20%s',_0x5a4a40[_0x7c39('0xec')])},client9002)[_0x7c39('0x11')](function(_0x1dface){var _0x2f547a=_0x1dface&&_0x1dface[_0x7c39('0xed')](_0x7c39('0xee'))>=0x0?!![]:![];logger[_0x7c39('0x12')](_0x7c39('0xef'),_0x1e47ee['id'],_0x5a4a40['id'],_0x5a4a40[_0x7c39('0xec')],_0x2f547a?'ONLINE':_0x7c39('0xf0'),_0x1e47ee[_0x7c39('0xf1')]?_0x1e47ee[_0x7c39('0xf1')]:_0x7c39('0xf2'));return _0x2f547a;})['catch'](function(_0x215cfe){logger[_0x7c39('0x17')](_0x7c39('0xef'),_0x1e47ee['id'],_0x5a4a40['id'],_0x5a4a40[_0x7c39('0xec')],util[_0x7c39('0xf3')](_0x215cfe,{'showHidden':![],'depth':null}),_0x1e47ee[_0x7c39('0xf1')]?_0x1e47ee[_0x7c39('0xf1')]:_0x7c39('0xf2'));return![];});}exports['getSnippet']=function(_0x5d990b,_0x3f3ef7){var _0x4341c5=0x0;var _0x48df61=0x0;var _0x5dbaf5=![];var _0xed062a;var _0x2e3eb4;return db[_0x7c39('0x41')]['find']({'where':{'id':_0x5d990b[_0x7c39('0x46')]['id']},'include':[{'model':db[_0x7c39('0xf4')],'as':'Interval','include':[{'model':db['Interval'],'as':_0x7c39('0xf5'),'attributes':['id',_0x7c39('0xec')],'raw':!![]}]}]})[_0x7c39('0x11')](handleEntityNotFound(_0x3f3ef7,null))['then'](function(_0x378044){if(_0x378044){_0xed062a=_0x378044;return _0x378044[_0x7c39('0xf6')]({'raw':!![]});}})['then'](function(_0x2e16ed){if(_0xed062a){if(_0x2e16ed){_0x2e3eb4=_0x2e16ed;}}return require(_0x7c39('0xf7'))[_0x7c39('0x6c')]();})[_0x7c39('0x11')](function(_0x584bb7){if(_0x584bb7){_0x48df61=_0x584bb7['virtual'];_0x5dbaf5=_0x584bb7[_0x7c39('0x6d')];}})[_0x7c39('0x11')](function(){return db[_0x7c39('0xa3')]['count']({'where':{'closed':![]}});})[_0x7c39('0x11')](function(_0x204c1a){_0x4341c5=_0x204c1a;if(_0x48df61&&_0x204c1a>_0x48df61){return db['License']['findOne']({'where':{'id':0x1}})[_0x7c39('0x11')](function(_0x25a5c7){if(_0x25a5c7){_0x25a5c7[_0x7c39('0xf8')](_0x7c39('0xf9'));}});}})[_0x7c39('0x11')](function(){if(_0xed062a['Interval']&&_0xed062a['Interval'][_0x7c39('0xf5')]){var _0x1d6ef1=[];for(var _0x267d70=0x0;_0x267d70<_0xed062a[_0x7c39('0xf4')][_0x7c39('0xf5')][_0x7c39('0x48')];_0x267d70++){var _0x1e75b8=_0xed062a[_0x7c39('0xf4')][_0x7c39('0xf5')][_0x267d70][_0x7c39('0x25')]({'plain':!![]});_0x1d6ef1[_0x7c39('0xab')](iftimePromise(_0x1e75b8,_0xed062a));}return BPromise['all'](_0x1d6ef1)[_0x7c39('0x11')](function(_0x4adcb0){return _[_0x7c39('0xfa')](_0x4adcb0);});}else{return!![];}})[_0x7c39('0x11')](function(_0x196211){var _0x4b72df=fs[_0x7c39('0xbf')](path[_0x7c39('0x69')](config[_0x7c39('0x70')],_0x7c39('0xfb')),_0x7c39('0xc1'));var _0x2d06e8={'remote':_0xed062a[_0x7c39('0xfc')],'query':querystring[_0x7c39('0x16')](_[_0x7c39('0x3f')](_0xed062a[_0x7c39('0x25')]({'plain':!![]}),{'customerIp':_0x5d990b[_0x7c39('0x7b')][_0x7c39('0xfd')]||_0x5d990b[_0x7c39('0x7b')][_0x7c39('0xfe')]||_0x5d990b[_0x7c39('0xff')][_0x7c39('0x100')]||_0x5d990b['ip'],'referer':_0x5d990b['headers'][_0x7c39('0x101')],'openedInteractions':_0x4341c5,'maxInteractions':_0x48df61,'virtual':_0x5dbaf5[_0x7c39('0x102')],'online':_0x196211,'custom':_0x5dbaf5}))['replace'](/'/g,'\x5c\x27')};_0x3f3ef7[_0x7c39('0x2b')](ejs[_0x7c39('0xc2')](Mustache[_0x7c39('0xc2')](_0x4b72df,_0x2d06e8),{'proactiveActions':_0x2e3eb4,'alignment':_0xed062a[_0x7c39('0x103')],'verticalAlignment':_0xed062a[_0x7c39('0x104')],'div_color':_0xed062a['color'],'labelText':_0xed062a[_0x7c39('0x105')],'text_color':_0xed062a[_0x7c39('0x106')],'text_button_color':_0xed062a[_0x7c39('0x107')],'button_color':_0xed062a[_0x7c39('0x108')],'background_color':_0xed062a[_0x7c39('0x109')],'hideWhenOffline':_0xed062a[_0x7c39('0x10a')],'interval':_0xed062a[_0x7c39('0x10b')]}));})[_0x7c39('0x45')](handleError(_0x3f3ef7,null));};exports['addApplications']=function(_0x3f9f83,_0x3a2236){var _0x3466db=_0x3f9f83[_0x7c39('0x46')]['id'];var _0x731357=_0x3f9f83['body'];var _0x1aadcc=0xc8;var _0x3ee1f2=null;return db['sequelize'][_0x7c39('0x10c')]({'isolationLevel':db[_0x7c39('0xca')][_0x7c39('0x10d')][_0x7c39('0x10e')][_0x7c39('0x10f')]},function(_0x4612d1){return db['ChatWebsite']['findOne']({'where':{'id':_0x3466db},'transaction':_0x4612d1})[_0x7c39('0x11')](function(_0x2503ea){if(_0x2503ea){return db[_0x7c39('0x8f')]['destroy']({'where':{'ChatWebsiteId':_0x3466db},'transaction':_0x4612d1})[_0x7c39('0x11')](function(){var _0x181a70=_[_0x7c39('0x2e')](_0x731357,function(_0x33e2f6){_0x33e2f6[_0x7c39('0x54')]=_0x3466db;return _0x33e2f6;});return db[_0x7c39('0x8f')][_0x7c39('0x110')](_0x181a70,{'transaction':_0x4612d1});});}else{_0x1aadcc=0x194;_0x3ee1f2=[];}});})[_0x7c39('0x11')](function(){if(_0x1aadcc!==0x194){return db[_0x7c39('0x8f')][_0x7c39('0x111')]({'where':{'ChatWebsiteId':_0x3466db},'order':'priority'})[_0x7c39('0x11')](function(_0x2785f2){_0x3ee1f2=_0x2785f2;});}})[_0x7c39('0x45')](function(_0x5e93ec){_0x1aadcc=0x1f4;logger[_0x7c39('0x17')](_0x5e93ec[_0x7c39('0x112')]);if(_0x5e93ec[_0x7c39('0x2a')]){delete _0x5e93ec[_0x7c39('0x2a')];}_0x3ee1f2=_0x5e93ec;})['finally'](function(){if(_0x3ee1f2===null){_0x3a2236['sendStatus'](_0x1aadcc);}else{if(_0x1aadcc===0x1f4){_0x3a2236[_0x7c39('0x1d')](_0x1aadcc)[_0x7c39('0x2b')](_0x3ee1f2);}else{_0x3a2236[_0x7c39('0x1d')](_0x1aadcc)[_0x7c39('0x23')](_0x3ee1f2);}}});};exports[_0x7c39('0x113')]=function(_0x1ea8b4,_0x44c3d2){var _0x564983={};var _0x305b41={};var _0x93b9a;var _0x503a65;return db[_0x7c39('0x41')][_0x7c39('0x5f')]({'where':{'id':_0x1ea8b4[_0x7c39('0x46')]['id']}})['then'](handleEntityNotFound(_0x44c3d2,null))['then'](function(_0xc0119d){if(_0xc0119d){_0x93b9a=_0xc0119d;_0x305b41[_0x7c39('0x33')]=_[_0x7c39('0x35')](db['ChatApplication']['rawAttributes']);_0x305b41[_0x7c39('0x34')]=_[_0x7c39('0x35')](_0x1ea8b4['query']);_0x305b41[_0x7c39('0x36')]=_['intersection'](_0x305b41[_0x7c39('0x33')],_0x305b41['query']);_0x564983[_0x7c39('0x38')]=_[_0x7c39('0x37')](_0x305b41['model'],qs[_0x7c39('0x39')](_0x1ea8b4[_0x7c39('0x34')][_0x7c39('0x39')]));_0x564983[_0x7c39('0x38')]=_0x564983[_0x7c39('0x38')][_0x7c39('0x48')]?_0x564983['attributes']:_0x305b41[_0x7c39('0x33')];_0x564983['order']=qs[_0x7c39('0x3b')](_0x1ea8b4['query'][_0x7c39('0x3b')]);_0x564983[_0x7c39('0x3c')]=qs[_0x7c39('0x36')](_['pick'](_0x1ea8b4['query'],_0x305b41[_0x7c39('0x36')]));if(_0x1ea8b4[_0x7c39('0x34')]['filter']){_0x564983[_0x7c39('0x3c')]=_[_0x7c39('0x3f')](_0x564983['where'],{'$or':_[_0x7c39('0x2e')](_0x564983[_0x7c39('0x38')],function(_0x51e424){var _0xed7e61={};_0xed7e61[_0x51e424]={'$like':'%'+_0x1ea8b4[_0x7c39('0x34')][_0x7c39('0x3e')]+'%'};return _0xed7e61;})});}_0x564983=_[_0x7c39('0x3f')]({},_0x564983,_0x1ea8b4[_0x7c39('0x40')]);return _0x93b9a[_0x7c39('0x113')](_0x564983);}})[_0x7c39('0x11')](function(_0x261cc1){if(_0x261cc1){_0x503a65=_0x261cc1[_0x7c39('0x48')];if(!_0x1ea8b4[_0x7c39('0x34')][_0x7c39('0x57')](_0x7c39('0x3a'))){_0x564983[_0x7c39('0x20')]=qs[_0x7c39('0x20')](_0x1ea8b4['query']['limit']);_0x564983[_0x7c39('0x1e')]=qs[_0x7c39('0x1e')](_0x1ea8b4[_0x7c39('0x34')]['offset']);}return _0x93b9a[_0x7c39('0x113')](_0x564983);}})[_0x7c39('0x11')](function(_0x48fe04){if(_0x48fe04){return _0x48fe04?{'count':_0x503a65,'rows':_0x48fe04}:null;}})['then'](respondWithResult(_0x44c3d2,null))[_0x7c39('0x45')](handleError(_0x44c3d2,null));};exports[_0x7c39('0x114')]=function(_0x1327e1,_0x7cc4ca){return db[_0x7c39('0x115')][_0x7c39('0x4f')]({'where':{'id':_0x1327e1['params']['id']}})[_0x7c39('0x11')](handleEntityNotFound(_0x7cc4ca,null))[_0x7c39('0x11')](function(_0x55fb75){if(_0x55fb75){return _0x55fb75['addProactiveActions'](_0x1327e1[_0x7c39('0x4a')][_0x7c39('0x5b')],_['omit'](_0x1327e1[_0x7c39('0x4a')],['ids','id'])||{});}})[_0x7c39('0x11')](respondWithResult(_0x7cc4ca,null))['catch'](handleError(_0x7cc4ca,null));};exports['getProactiveActions']=function(_0x4d8177,_0x323767){var _0x4a55c6={};var _0x4f224c={};var _0x169883;var _0xf1fc62;return db[_0x7c39('0x41')][_0x7c39('0x5f')]({'where':{'id':_0x4d8177['params']['id']}})['then'](handleEntityNotFound(_0x323767,null))[_0x7c39('0x11')](function(_0x78783c){if(_0x78783c){_0x169883=_0x78783c;_0x4f224c[_0x7c39('0x33')]=_[_0x7c39('0x35')](db[_0x7c39('0x116')][_0x7c39('0x2f')]);_0x4f224c['query']=_['keys'](_0x4d8177[_0x7c39('0x34')]);_0x4f224c['filters']=_['intersection'](_0x4f224c['model'],_0x4f224c[_0x7c39('0x34')]);_0x4a55c6[_0x7c39('0x38')]=_[_0x7c39('0x37')](_0x4f224c[_0x7c39('0x33')],qs['fields'](_0x4d8177[_0x7c39('0x34')][_0x7c39('0x39')]));_0x4a55c6[_0x7c39('0x38')]=_0x4a55c6[_0x7c39('0x38')][_0x7c39('0x48')]?_0x4a55c6[_0x7c39('0x38')]:_0x4f224c[_0x7c39('0x33')];_0x4a55c6[_0x7c39('0x58')]=qs['sort'](_0x4d8177[_0x7c39('0x34')][_0x7c39('0x3b')]);_0x4a55c6[_0x7c39('0x3c')]=qs['filters'](_[_0x7c39('0x3d')](_0x4d8177['query'],_0x4f224c[_0x7c39('0x36')]));if(_0x4d8177[_0x7c39('0x34')][_0x7c39('0x3e')]){_0x4a55c6[_0x7c39('0x3c')]=_[_0x7c39('0x3f')](_0x4a55c6[_0x7c39('0x3c')],{'$or':_[_0x7c39('0x2e')](_0x4a55c6[_0x7c39('0x38')],function(_0x380b65){var _0x3394d2={};_0x3394d2[_0x380b65]={'$like':'%'+_0x4d8177[_0x7c39('0x34')]['filter']+'%'};return _0x3394d2;})});}_0x4a55c6=_[_0x7c39('0x3f')]({},_0x4a55c6,_0x4d8177[_0x7c39('0x40')]);return _0x169883[_0x7c39('0xf6')](_0x4a55c6);}})['then'](function(_0x2339bd){if(_0x2339bd){_0xf1fc62=_0x2339bd['length'];if(!_0x4d8177['query'][_0x7c39('0x57')](_0x7c39('0x3a'))){_0x4a55c6[_0x7c39('0x20')]=qs[_0x7c39('0x20')](_0x4d8177[_0x7c39('0x34')][_0x7c39('0x20')]);_0x4a55c6[_0x7c39('0x1e')]=qs[_0x7c39('0x1e')](_0x4d8177[_0x7c39('0x34')][_0x7c39('0x1e')]);}return _0x169883[_0x7c39('0xf6')](_0x4a55c6);}})[_0x7c39('0x11')](function(_0x4d79b6){if(_0x4d79b6){return _0x4d79b6?{'count':_0xf1fc62,'rows':_0x4d79b6}:null;}})[_0x7c39('0x11')](respondWithResult(_0x323767,null))['catch'](handleError(_0x323767,null));};exports['getFields']=function(_0x5d280a,_0x5eec23){var _0x523b62=_0x5d280a['query'][_0x7c39('0x117')]===_0x7c39('0x118')?_0x7c39('0x119'):_0x7c39('0x11a');return db['ChatWebsite'][_0x7c39('0x4f')]({'attributes':['id',_0x523b62],'where':{'id':_0x5d280a[_0x7c39('0x46')]['id']}})[_0x7c39('0x11')](handleEntityNotFound(_0x5eec23,null))[_0x7c39('0x11')](function(_0x45335b){if(_0x45335b){var _0x549661=_0x45335b[_0x523b62];var _0x4725a7=_0x549661&&_0x549661[_0x7c39('0x11b')]?_0x549661[_0x7c39('0x11b')]:[];_0x5eec23[_0x7c39('0x2b')]({'fromKey':_[_0x7c39('0x6e')](_0x549661[_0x7c39('0x11c')])?undefined:_0x549661[_0x7c39('0x11c')],'count':_0x4725a7[_0x7c39('0x48')],'rows':_0x4725a7});}})[_0x7c39('0x45')](handleError(_0x5eec23,null));};exports[_0x7c39('0x11d')]=function(_0x42be79,_0x2b71d1){var _0x2ed9c4={'raw':![],'where':{}};var _0x4d25c8={};var _0x12d8e4={'count':0x0,'rows':[]};return db[_0x7c39('0x41')][_0x7c39('0x5f')]({'where':{'id':_0x42be79[_0x7c39('0x46')]['id']}})[_0x7c39('0x11')](handleEntityNotFound(_0x2b71d1,null))[_0x7c39('0x11')](function(_0x2f1488){if(_0x2f1488){_0x4d25c8[_0x7c39('0x33')]=_[_0x7c39('0x35')](db[_0x7c39('0xc4')][_0x7c39('0x2f')]);_0x4d25c8[_0x7c39('0x34')]=_['keys'](_0x42be79[_0x7c39('0x34')]);_0x4d25c8[_0x7c39('0x36')]=_['intersection'](_0x4d25c8[_0x7c39('0x33')],_0x4d25c8[_0x7c39('0x34')]);_0x2ed9c4[_0x7c39('0x38')]=_[_0x7c39('0x37')](_0x4d25c8[_0x7c39('0x33')],qs[_0x7c39('0x39')](_0x42be79['query'][_0x7c39('0x39')]));_0x2ed9c4[_0x7c39('0x38')]=_0x2ed9c4['attributes']['length']?_0x2ed9c4[_0x7c39('0x38')]:_0x4d25c8[_0x7c39('0x33')];if(!_0x42be79[_0x7c39('0x34')][_0x7c39('0x57')]('nolimit')){_0x2ed9c4[_0x7c39('0x20')]=qs[_0x7c39('0x20')](_0x42be79['query'][_0x7c39('0x20')]);_0x2ed9c4[_0x7c39('0x1e')]=qs[_0x7c39('0x1e')](_0x42be79[_0x7c39('0x34')][_0x7c39('0x1e')]);}_0x2ed9c4[_0x7c39('0x58')]=qs[_0x7c39('0x3b')](_0x42be79[_0x7c39('0x34')]['sort']);_0x2ed9c4[_0x7c39('0x3c')]=qs[_0x7c39('0x36')](_[_0x7c39('0x3d')](_0x42be79[_0x7c39('0x34')],_0x4d25c8[_0x7c39('0x36')]));_0x2ed9c4['where']['ChatWebsiteId']=_0x2f1488['id'];if(_0x42be79[_0x7c39('0x34')]['filter']){_0x2ed9c4[_0x7c39('0x3c')]=_[_0x7c39('0x3f')](_0x2ed9c4[_0x7c39('0x3c')],{'$or':_[_0x7c39('0x2e')](_0x2ed9c4[_0x7c39('0x38')],function(_0x2124a1){var _0x43aa5e={};_0x43aa5e[_0x2124a1]={'$like':'%'+_0x42be79[_0x7c39('0x34')][_0x7c39('0x3e')]+'%'};return _0x43aa5e;})});}_0x2ed9c4=_[_0x7c39('0x3f')]({},_0x2ed9c4,_0x42be79['options']);return db['ChatOfflineMessage']['count']({'where':_0x2ed9c4[_0x7c39('0x3c')]})[_0x7c39('0x11')](function(_0x254e38){_0x12d8e4['count']=_0x254e38;if(_0x42be79[_0x7c39('0x34')][_0x7c39('0x42')]){_0x2ed9c4['include']=[{'all':!![]}];}else{_0x2ed9c4[_0x7c39('0x43')]=[{'model':db['CmContact'],'as':'Contact','required':![]},{'model':db['Attachment'],'as':_0x7c39('0x11e'),'required':![]}];}return db['ChatOfflineMessage'][_0x7c39('0x59')](_0x2ed9c4);})[_0x7c39('0x11')](function(_0x218e63){_0x12d8e4[_0x7c39('0x44')]=_0x218e63;return _0x12d8e4;});}})[_0x7c39('0x11')](respondWithFilteredResult(_0x2b71d1,_0x2ed9c4))[_0x7c39('0x45')](handleError(_0x2b71d1,null));};exports[_0x7c39('0x11f')]=function(_0x280787,_0x187601){return db[_0x7c39('0x41')]['find']({'where':{'id':_0x280787[_0x7c39('0x46')]['id']}})['then'](handleEntityNotFound(_0x187601,null))[_0x7c39('0x11')](function(_0x48a4be){if(_0x48a4be){return _0x48a4be[_0x7c39('0x11f')](_0x280787[_0x7c39('0x4a')][_0x7c39('0x5b')],_['omit'](_0x280787[_0x7c39('0x4a')],[_0x7c39('0x5b'),'id'])||{})['spread'](function(_0x3d5a45){for(var _0x1d698a=0x0;_0x1d698a<_0x280787[_0x7c39('0x4a')][_0x7c39('0x5b')]['length'];_0x1d698a+=0x1){socket[_0x7c39('0x120')](_0x7c39('0x121'),{'UserId':Number(_0x280787[_0x7c39('0x4a')][_0x7c39('0x5b')][_0x1d698a]),'ChatWebsiteId':Number(_0x280787[_0x7c39('0x46')]['id'])});}return _0x3d5a45;});}})[_0x7c39('0x11')](respondWithResult(_0x187601,null))[_0x7c39('0x45')](handleError(_0x187601,null));};exports[_0x7c39('0x122')]=function(_0x17633d,_0x1923d2){return db['ChatWebsite'][_0x7c39('0x4f')]({'where':{'id':_0x17633d[_0x7c39('0x46')]['id']}})['then'](handleEntityNotFound(_0x1923d2,null))[_0x7c39('0x11')](function(_0x421146){if(_0x421146){return _0x421146[_0x7c39('0x122')](_0x17633d[_0x7c39('0x34')][_0x7c39('0x5b')])[_0x7c39('0x11')](function(){if(_[_0x7c39('0x123')](_0x17633d[_0x7c39('0x34')][_0x7c39('0x5b')])){for(var _0x48bd60=0x0;_0x48bd60<_0x17633d[_0x7c39('0x34')]['ids'][_0x7c39('0x48')];_0x48bd60+=0x1){socket[_0x7c39('0x120')](_0x7c39('0x124'),{'UserId':Number(_0x17633d['query'][_0x7c39('0x5b')][_0x48bd60]),'ChatWebsiteId':Number(_0x17633d[_0x7c39('0x46')]['id'])});}}else{socket['emit']('userChatWebsite:remove',{'UserId':Number(_0x17633d[_0x7c39('0x34')]['ids']),'ChatWebsiteId':Number(_0x17633d[_0x7c39('0x46')]['id'])});}});}})[_0x7c39('0x11')](respondWithStatusCode(_0x1923d2,null))[_0x7c39('0x45')](handleError(_0x1923d2,null));};exports[_0x7c39('0x125')]=function(_0x666360,_0x4b71df){var _0x7505b8={};var _0x4aa0d1={};var _0x278c83;var _0x3b41b1;return db[_0x7c39('0x41')][_0x7c39('0x5f')]({'where':{'id':_0x666360['params']['id']}})[_0x7c39('0x11')](handleEntityNotFound(_0x4b71df,null))['then'](function(_0x43742c){if(_0x43742c){_0x278c83=_0x43742c;_0x4aa0d1['model']=_[_0x7c39('0x35')](db[_0x7c39('0xb2')]['rawAttributes']);_0x4aa0d1[_0x7c39('0x34')]=_[_0x7c39('0x35')](_0x666360[_0x7c39('0x34')]);_0x4aa0d1[_0x7c39('0x36')]=_[_0x7c39('0x37')](_0x4aa0d1[_0x7c39('0x33')],_0x4aa0d1[_0x7c39('0x34')]);_0x7505b8[_0x7c39('0x38')]=_[_0x7c39('0x37')](_0x4aa0d1[_0x7c39('0x33')],qs[_0x7c39('0x39')](_0x666360['query'][_0x7c39('0x39')]));_0x7505b8[_0x7c39('0x38')]=_0x7505b8[_0x7c39('0x38')][_0x7c39('0x48')]?_0x7505b8[_0x7c39('0x38')]:_0x4aa0d1[_0x7c39('0x33')];_0x7505b8[_0x7c39('0x58')]=qs[_0x7c39('0x3b')](_0x666360[_0x7c39('0x34')][_0x7c39('0x3b')]);_0x7505b8[_0x7c39('0x3c')]=qs['filters'](_[_0x7c39('0x3d')](_0x666360['query'],_0x4aa0d1[_0x7c39('0x36')]));if(_0x666360[_0x7c39('0x34')][_0x7c39('0x3e')]){_0x7505b8[_0x7c39('0x3c')]=_[_0x7c39('0x3f')](_0x7505b8[_0x7c39('0x3c')],{'$or':_[_0x7c39('0x2e')](_0x7505b8[_0x7c39('0x38')],function(_0xee97f6){var _0x52ab30={};_0x52ab30[_0xee97f6]={'$like':'%'+_0x666360[_0x7c39('0x34')][_0x7c39('0x3e')]+'%'};return _0x52ab30;})});}_0x7505b8=_[_0x7c39('0x3f')]({},_0x7505b8,_0x666360[_0x7c39('0x40')]);return _0x278c83[_0x7c39('0x125')](_0x7505b8);}})[_0x7c39('0x11')](function(_0x4d1f06){if(_0x4d1f06){_0x3b41b1=_0x4d1f06[_0x7c39('0x48')];if(!_0x666360[_0x7c39('0x34')][_0x7c39('0x57')](_0x7c39('0x3a'))){_0x7505b8[_0x7c39('0x20')]=qs[_0x7c39('0x20')](_0x666360['query'][_0x7c39('0x20')]);_0x7505b8[_0x7c39('0x1e')]=qs[_0x7c39('0x1e')](_0x666360[_0x7c39('0x34')][_0x7c39('0x1e')]);}return _0x278c83['getAgents'](_0x7505b8);}})[_0x7c39('0x11')](function(_0x390f89){if(_0x390f89){return _0x390f89?{'count':_0x3b41b1,'rows':_0x390f89}:null;}})[_0x7c39('0x11')](respondWithResult(_0x4b71df,null))[_0x7c39('0x45')](handleError(_0x4b71df,null));};