Built motion from commit (unavailable).|2.5.30
[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 _0x453c=['split','firstName','lastName','x-real-port','referer','browser','version','format','unknown','device','vendor','%s\x20%s\x20%s','threadId','ChatInteraction','externalUrl','ContactId','interaction','messageId','created','push','close','ChatMessage','AttachmentId','UserId','User','agent','waitForTheAssignedAgent','*,*,*,*','forcedOwnership','Start','startRouting','EventManager','offline','createdAt','mapKeyOffline','mapKeyOffline\x20is\x20mandatory,\x20please\x20use\x20one\x20of\x20these:\x20','mapKeyOffline\x20invalid,\x20please\x20use\x20one\x20of\x20these:\x20','MailAccount','findOrCreate','spread','readFileSync','server/files/templates/chatOfflineMessage.ejs','utf8','toPairs','offlineMessageBody','ChatOfflineMessage','originalname','mimetype','files','offline-chat','basename','openNewInteraction','sequelize','transaction','Attachment','bulkCreate','MailServerOut','Smtp','forwardOffline','forwardOfflineAddress','service','host','port','secure','authentication','pass','SendMail','sendMail','\x22%s\x22\x20<%s>','offlineMessageSubject','toPairsIn','subjectOffline','email','Chat','MailAccountId','NotifyMailAccount','notifyMail','server','attachments','remove','Could\x20not\x20remove\x20attachment\x20file','getInteractions','hasOwnProperty','nolimit','Contact','Owner','fullname','internal','Tag','color','tag','getSnippet','timezone','iftime\x20%s','interval','true','[%s][INTERVAL][%s]\x20%s\x20%s\x20(%s)','ONLINE','OFFLINE','No\x20timezone','Intervals','getProactiveActions','virtual','increment','chatLicenseExceeded','Interval','all','some','remote','x-real-ip','remoteAddress','replace','render','alignment','verticalAlignment','textColor','color_button','addApplications','findAndCountAll','getApplications','addProactiveActions','omit','ChatProactiveAction','getFields','online','false','offlineForm','onlineForm','items','fromKey','Attachments','addAgents','emit','removeAgents','userChatWebsite:remove','getAgents','eml-format','rimraf','request-promise','bluebird','mustache','util','path','sox','ejs','fs-extra','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/logger','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','redis','localhost','socket.io-emitter','./chatWebsite.socket','jayson/promise','client','http','then','info','ChatWebsite,\x20%s,\x20%s','request\x20sent','stringify','error','code','message','result','catch','sendStatus','end','json','offset','limit','undefined','count','status','apply','reject','save','update','get','ChatWebsites','UserProfileResource','stack','name','send','index','Pause','ChatWebsite','rawAttributes','fieldName','type','model','map','query','keys','filters','intersection','attributes','fields','length','order','sort','pick','where','merge','VIRTUAL','include','findAll','rows','show','mandatoryDispositionPause','options','find','create','body','user','role','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','destroy','params','describe','ChatWebsiteId','Disposition','getDispositions','findOne','filter','includeAll','removeDispositions','ids','addAnswer','getAnswers','CannedAnswer','removeAnswers','addLogo','sitepic','file','agentAvatar','addCustomerAvatar','customerAvatar','filename','addSystemAvatar','systemAvatar','getLogo','join','root','server/files/images/logos/default_logo.svg','getLicense','isNil','existsSync','server/files/images/logos/','download','server/files/images/avatars/default_avatar.png','server/files/images/avatars/','server/files/images/avatars/customer_avatar.png','showCustomerAvatar','getSystemAvatar','server/files/images/avatars/system_avatar.png','notify','user-agent-parser','headers','user-agent','getResult','CmContact','Sequelize','ValidationError','no\x20available\x20attributes','difference','updatedAt','CompanyId','from\x20is\x20mandatory','mapKey','mapKey\x20is\x20mandatory,\x20please\x20use\x20one\x20of\x20these:\x20','includes','from','CmList','List','Contacts','ChatApplication','Applications','account','applications','orderBy','defaults','ListId','contact','customerIp','cf-connecting-ip','x-forwarded-for','first'];(function(_0x3bf771,_0x33a293){var _0x1d20f5=function(_0x539132){while(--_0x539132){_0x3bf771['push'](_0x3bf771['shift']());}};_0x1d20f5(++_0x33a293);}(_0x453c,0x88));var _0xc453=function(_0x231e16,_0x67347b){_0x231e16=_0x231e16-0x0;var _0x570a7c=_0x453c[_0x231e16];return _0x570a7c;};'use strict';var emlformat=require(_0xc453('0x0'));var rimraf=require(_0xc453('0x1'));var zipdir=require('zip-dir');var jsonpatch=require('fast-json-patch');var rp=require(_0xc453('0x2'));var moment=require('moment');var BPromise=require(_0xc453('0x3'));var Mustache=require(_0xc453('0x4'));var util=require(_0xc453('0x5'));var path=require(_0xc453('0x6'));var sox=require(_0xc453('0x7'));var csv=require('to-csv');var ejs=require(_0xc453('0x8'));var fs=require('fs');var fs_extra=require(_0xc453('0x9'));var _=require('lodash');var squel=require(_0xc453('0xa'));var crypto=require(_0xc453('0xb'));var jsforce=require(_0xc453('0xc'));var deskjs=require(_0xc453('0xd'));var toCsv=require('to-csv');var querystring=require(_0xc453('0xe'));var Papa=require(_0xc453('0xf'));var Redis=require(_0xc453('0x10'));var authService=require(_0xc453('0x11'));var qs=require(_0xc453('0x12'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require('../../config/license/hardware');var logger=require(_0xc453('0x13'))('api');var utils=require(_0xc453('0x14'));var config=require(_0xc453('0x15'));var licenseUtil=require(_0xc453('0x16'));var db=require(_0xc453('0x17'))['db'];config[_0xc453('0x18')]=_['defaults'](config[_0xc453('0x18')],{'host':_0xc453('0x19'),'port':0x18eb});var socket=require(_0xc453('0x1a'))(new Redis(config[_0xc453('0x18')]));require(_0xc453('0x1b'))['register'](socket);var jayson=require(_0xc453('0x1c'));var client=jayson[_0xc453('0x1d')][_0xc453('0x1e')]({'port':0x232c});var client9002=jayson['client'][_0xc453('0x1e')]({'port':0x232a});var client9003=jayson['client']['http']({'port':0x232b});var client9001=jayson[_0xc453('0x1d')][_0xc453('0x1e')]({'port':0x2329});function respondWithRpcPromise(_0x3d8379,_0xe7f99b,_0x5af8cc,_0x1b8fe){return new BPromise(function(_0x3a1b0e,_0x4ec2d8){var _0x17c149=_0x1b8fe||client;return _0x17c149['request'](_0x3d8379,_0x5af8cc)[_0xc453('0x1f')](function(_0x1fdef0){logger[_0xc453('0x20')](_0xc453('0x21'),_0xe7f99b,_0xc453('0x22'));logger['debug']('ChatWebsite,\x20%s,\x20%s,\x20%s',_0xe7f99b,'request\x20sent',JSON[_0xc453('0x23')](_0x1fdef0));if(_0x1fdef0[_0xc453('0x24')]){if(_0x1fdef0[_0xc453('0x24')][_0xc453('0x25')]===0x1f4){logger['error'](_0xc453('0x21'),_0xe7f99b,_0x1fdef0['error']['message']);return _0x4ec2d8(_0x1fdef0[_0xc453('0x24')][_0xc453('0x26')]);}logger[_0xc453('0x24')]('ChatWebsite,\x20%s,\x20%s',_0xe7f99b,_0x1fdef0[_0xc453('0x24')][_0xc453('0x26')]);return _0x3a1b0e(_0x1fdef0[_0xc453('0x24')][_0xc453('0x26')]);}else{logger['info']('ChatWebsite,\x20%s,\x20%s',_0xe7f99b,_0xc453('0x22'));_0x3a1b0e(_0x1fdef0[_0xc453('0x27')][_0xc453('0x26')]);}})[_0xc453('0x28')](function(_0x134551){logger[_0xc453('0x24')](_0xc453('0x21'),_0xe7f99b,_0x134551);_0x4ec2d8(_0x134551);});});}function respondWithStatusCode(_0x5bab6a,_0x14cb01){_0x14cb01=_0x14cb01||0xcc;return function(_0x12cc3b){if(_0x12cc3b){return _0x5bab6a[_0xc453('0x29')](_0x14cb01);}return _0x5bab6a['status'](_0x14cb01)[_0xc453('0x2a')]();};}function respondWithResult(_0x45f540,_0x43c58a){_0x43c58a=_0x43c58a||0xc8;return function(_0x174c81){if(_0x174c81){return _0x45f540['status'](_0x43c58a)[_0xc453('0x2b')](_0x174c81);}};}function respondWithFilteredResult(_0x3f2dd3,_0x39d8c5){return function(_0x3cd7fa){if(_0x3cd7fa){var _0x3f4f32=typeof _0x39d8c5[_0xc453('0x2c')]==='undefined'&&typeof _0x39d8c5[_0xc453('0x2d')]===_0xc453('0x2e');var _0x366c68=_0x3cd7fa['count'];var _0x4e2c1e=_0x3f4f32?0x0:_0x39d8c5[_0xc453('0x2c')];var _0x344e5d=_0x3f4f32?_0x3cd7fa[_0xc453('0x2f')]:_0x39d8c5[_0xc453('0x2c')]+_0x39d8c5[_0xc453('0x2d')];var _0x3a4838;if(_0x344e5d>=_0x366c68){_0x344e5d=_0x366c68;_0x3a4838=0xc8;}else{_0x3a4838=0xce;}_0x3f2dd3[_0xc453('0x30')](_0x3a4838);return _0x3f2dd3['set']('Content-Range',_0x4e2c1e+'-'+_0x344e5d+'/'+_0x366c68)[_0xc453('0x2b')](_0x3cd7fa);}return null;};}function patchUpdates(_0x4d22ba){return function(_0xddcd60){try{jsonpatch[_0xc453('0x31')](_0xddcd60,_0x4d22ba,!![]);}catch(_0x3da870){return BPromise[_0xc453('0x32')](_0x3da870);}return _0xddcd60[_0xc453('0x33')]();};}function saveUpdates(_0x29a9bf,_0x22aa4f){return function(_0x13a570){if(_0x13a570){return _0x13a570[_0xc453('0x34')](_0x29a9bf)[_0xc453('0x1f')](function(_0x34696f){return _0x34696f;});}return null;};}function removeEntity(_0xc8155a,_0x3e422f){return function(_0x2a8ce4){if(_0x2a8ce4){return _0x2a8ce4['destroy']()[_0xc453('0x1f')](function(){var _0x1d4b58=_0x2a8ce4[_0xc453('0x35')]({'plain':!![]});var _0x10e420=_0xc453('0x36');return db[_0xc453('0x37')]['destroy']({'where':{'type':_0x10e420,'resourceId':_0x1d4b58['id']}})[_0xc453('0x1f')](function(){return _0x2a8ce4;});})[_0xc453('0x1f')](function(){_0xc8155a['status'](0xcc)[_0xc453('0x2a')]();});}};}function handleEntityNotFound(_0x28c5fb,_0x43574c){return function(_0xd368c5){if(!_0xd368c5){_0x28c5fb[_0xc453('0x29')](0x194);}return _0xd368c5;};}function handleError(_0x35e2d9,_0x25b372){_0x25b372=_0x25b372||0x1f4;return function(_0x36d59c){logger[_0xc453('0x24')](_0x36d59c[_0xc453('0x38')]);if(_0x36d59c[_0xc453('0x39')]){delete _0x36d59c[_0xc453('0x39')];}_0x35e2d9['status'](_0x25b372)[_0xc453('0x3a')](_0x36d59c);};}exports[_0xc453('0x3b')]=function(_0x49f59b,_0x249191){var _0x34cf06={'include':[{'model':db[_0xc453('0x3c')],'as':'mandatoryDispositionPause'}]},_0x5cabbd={},_0xdccaec={'count':0x0,'rows':[]};var _0x50a805=_['map'](db[_0xc453('0x3d')][_0xc453('0x3e')],function(_0x1463f4){return{'name':_0x1463f4[_0xc453('0x3f')],'type':_0x1463f4[_0xc453('0x40')]['key']};});_0x5cabbd[_0xc453('0x41')]=_[_0xc453('0x42')](_0x50a805,_0xc453('0x39'));_0x5cabbd[_0xc453('0x43')]=_[_0xc453('0x44')](_0x49f59b['query']);_0x5cabbd[_0xc453('0x45')]=_[_0xc453('0x46')](_0x5cabbd[_0xc453('0x41')],_0x5cabbd['query']);_0x34cf06[_0xc453('0x47')]=_['intersection'](_0x5cabbd['model'],qs[_0xc453('0x48')](_0x49f59b[_0xc453('0x43')]['fields']));_0x34cf06[_0xc453('0x47')]=_0x34cf06['attributes'][_0xc453('0x49')]?_0x34cf06['attributes']:_0x5cabbd[_0xc453('0x41')];if(!_0x49f59b[_0xc453('0x43')]['hasOwnProperty']('nolimit')){_0x34cf06[_0xc453('0x2d')]=qs[_0xc453('0x2d')](_0x49f59b[_0xc453('0x43')]['limit']);_0x34cf06['offset']=qs[_0xc453('0x2c')](_0x49f59b[_0xc453('0x43')][_0xc453('0x2c')]);}_0x34cf06[_0xc453('0x4a')]=qs[_0xc453('0x4b')](_0x49f59b['query'][_0xc453('0x4b')]);_0x34cf06['where']=qs[_0xc453('0x45')](_[_0xc453('0x4c')](_0x49f59b['query'],_0x5cabbd[_0xc453('0x45')]),_0x50a805);if(_0x49f59b[_0xc453('0x43')]['filter']){_0x34cf06[_0xc453('0x4d')]=_[_0xc453('0x4e')](_0x34cf06[_0xc453('0x4d')],{'$or':_[_0xc453('0x42')](_0x50a805,function(_0x2818af){if(_0x2818af['type']!==_0xc453('0x4f')){var _0x5b47da={};_0x5b47da[_0x2818af['name']]={'$like':'%'+_0x49f59b['query']['filter']+'%'};return _0x5b47da;}})});}_0x34cf06=_['merge']({},_0x34cf06,_0x49f59b['options']);var _0x2411e6={'where':_0x34cf06['where']};return db['ChatWebsite']['count'](_0x2411e6)['then'](function(_0x470113){_0xdccaec[_0xc453('0x2f')]=_0x470113;if(_0x49f59b[_0xc453('0x43')]['includeAll']){_0x34cf06[_0xc453('0x50')]=[{'all':!![]}];}return db[_0xc453('0x3d')][_0xc453('0x51')](_0x34cf06);})['then'](function(_0x10f5e6){_0xdccaec[_0xc453('0x52')]=_0x10f5e6;return _0xdccaec;})[_0xc453('0x1f')](respondWithFilteredResult(_0x249191,_0x34cf06))[_0xc453('0x28')](handleError(_0x249191,null));};exports[_0xc453('0x53')]=function(_0x1ec416,_0x587e1d){var _0x540713={'raw':![],'where':{'id':_0x1ec416['params']['id']},'include':[{'model':db[_0xc453('0x3c')],'as':_0xc453('0x54')}]},_0x536979={};_0x536979[_0xc453('0x41')]=_['keys'](db[_0xc453('0x3d')]['rawAttributes']);_0x536979[_0xc453('0x43')]=_[_0xc453('0x44')](_0x1ec416[_0xc453('0x43')]);_0x536979[_0xc453('0x45')]=_[_0xc453('0x46')](_0x536979['model'],_0x536979[_0xc453('0x43')]);_0x540713['attributes']=_[_0xc453('0x46')](_0x536979[_0xc453('0x41')],qs[_0xc453('0x48')](_0x1ec416[_0xc453('0x43')][_0xc453('0x48')]));_0x540713[_0xc453('0x47')]=_0x540713[_0xc453('0x47')][_0xc453('0x49')]?_0x540713[_0xc453('0x47')]:_0x536979['model'];if(_0x1ec416[_0xc453('0x43')]['includeAll']){_0x540713[_0xc453('0x50')]=[{'all':!![]}];}_0x540713=_[_0xc453('0x4e')]({},_0x540713,_0x1ec416[_0xc453('0x55')]);return db[_0xc453('0x3d')][_0xc453('0x56')](_0x540713)[_0xc453('0x1f')](handleEntityNotFound(_0x587e1d,null))['then'](respondWithResult(_0x587e1d,null))[_0xc453('0x28')](handleError(_0x587e1d,null));};exports[_0xc453('0x57')]=function(_0x1622a8,_0x4fdabe){return db[_0xc453('0x3d')][_0xc453('0x57')](_0x1622a8[_0xc453('0x58')],{})[_0xc453('0x1f')](function(_0x35172b){var _0x5b3448=_0x1622a8[_0xc453('0x59')][_0xc453('0x35')]({'plain':!![]});if(!_0x5b3448)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x5b3448[_0xc453('0x5a')]===_0xc453('0x59')){var _0x54e727=_0x35172b['get']({'plain':!![]});var _0x593800=_0xc453('0x36');return db['UserProfileSection'][_0xc453('0x56')]({'where':{'name':_0x593800,'userProfileId':_0x5b3448[_0xc453('0x5b')]},'raw':!![]})[_0xc453('0x1f')](function(_0x9a6741){if(_0x9a6741&&_0x9a6741[_0xc453('0x5c')]===0x0){return db[_0xc453('0x37')]['create']({'name':_0x54e727['name'],'resourceId':_0x54e727['id'],'type':_0x9a6741[_0xc453('0x39')],'sectionId':_0x9a6741['id']},{})['then'](function(){return _0x35172b;});}else{return _0x35172b;}})['catch'](function(_0xc77fd3){logger[_0xc453('0x24')](_0xc453('0x5d'),_0xc77fd3);throw _0xc77fd3;});}return _0x35172b;})[_0xc453('0x1f')](respondWithResult(_0x4fdabe,0xc9))[_0xc453('0x28')](handleError(_0x4fdabe,null));};exports[_0xc453('0x34')]=function(_0x1d45a8,_0x3a0a59){if(_0x1d45a8[_0xc453('0x58')]['id']){delete _0x1d45a8[_0xc453('0x58')]['id'];}return db[_0xc453('0x3d')][_0xc453('0x56')]({'where':{'id':_0x1d45a8['params']['id']},'include':[{'model':db[_0xc453('0x3c')],'as':_0xc453('0x54')}]})[_0xc453('0x1f')](handleEntityNotFound(_0x3a0a59,null))[_0xc453('0x1f')](saveUpdates(_0x1d45a8[_0xc453('0x58')],null))['then'](respondWithResult(_0x3a0a59,null))[_0xc453('0x28')](handleError(_0x3a0a59,null));};exports[_0xc453('0x5e')]=function(_0x706733,_0x5aa440){return db[_0xc453('0x3d')][_0xc453('0x56')]({'where':{'id':_0x706733[_0xc453('0x5f')]['id']}})[_0xc453('0x1f')](handleEntityNotFound(_0x5aa440,null))['then'](removeEntity(_0x5aa440,null))[_0xc453('0x28')](handleError(_0x5aa440,null));};exports[_0xc453('0x60')]=function(_0x63a7c,_0x4b7df5){return db[_0xc453('0x3d')][_0xc453('0x60')]()[_0xc453('0x1f')](respondWithResult(_0x4b7df5,null))['catch'](handleError(_0x4b7df5,null));};exports['addDisposition']=function(_0x1a0370,_0x39bd9e,_0x58387a){if(_0x1a0370[_0xc453('0x58')]['id']){delete _0x1a0370[_0xc453('0x58')]['id'];}return db[_0xc453('0x3d')][_0xc453('0x56')]({'where':{'id':_0x1a0370[_0xc453('0x5f')]['id']}})['then'](handleEntityNotFound(_0x39bd9e,null))[_0xc453('0x1f')](function(_0x5a6afb){if(_0x5a6afb){_0x1a0370[_0xc453('0x58')][_0xc453('0x61')]=_0x5a6afb['id'];return db[_0xc453('0x62')][_0xc453('0x57')](_0x1a0370[_0xc453('0x58')]);}})[_0xc453('0x1f')](respondWithResult(_0x39bd9e,null))[_0xc453('0x28')](handleError(_0x39bd9e,null));};exports[_0xc453('0x63')]=function(_0x1a5167,_0x28c2a8,_0x421cfc){var _0x50e0c9={'raw':![],'where':{}};var _0x1e81c0={};var _0x4d3518={'count':0x0,'rows':[]};return db['ChatWebsite'][_0xc453('0x64')]({'where':{'id':_0x1a5167[_0xc453('0x5f')]['id']}})[_0xc453('0x1f')](handleEntityNotFound(_0x28c2a8,null))[_0xc453('0x1f')](function(_0x435273){if(_0x435273){_0x1e81c0[_0xc453('0x41')]=_[_0xc453('0x44')](db[_0xc453('0x62')]['rawAttributes']);_0x1e81c0[_0xc453('0x43')]=_['keys'](_0x1a5167[_0xc453('0x43')]);_0x1e81c0[_0xc453('0x45')]=_[_0xc453('0x46')](_0x1e81c0['model'],_0x1e81c0[_0xc453('0x43')]);_0x50e0c9['attributes']=_[_0xc453('0x46')](_0x1e81c0['model'],qs[_0xc453('0x48')](_0x1a5167[_0xc453('0x43')]['fields']));_0x50e0c9[_0xc453('0x47')]=_0x50e0c9[_0xc453('0x47')][_0xc453('0x49')]?_0x50e0c9[_0xc453('0x47')]:_0x1e81c0[_0xc453('0x41')];if(!_0x1a5167[_0xc453('0x43')]['hasOwnProperty']('nolimit')){_0x50e0c9['limit']=qs['limit'](_0x1a5167[_0xc453('0x43')]['limit']);_0x50e0c9[_0xc453('0x2c')]=qs[_0xc453('0x2c')](_0x1a5167['query'][_0xc453('0x2c')]);}_0x50e0c9[_0xc453('0x4a')]=qs[_0xc453('0x4b')](_0x1a5167['query'][_0xc453('0x4b')]);_0x50e0c9[_0xc453('0x4d')]=qs[_0xc453('0x45')](_[_0xc453('0x4c')](_0x1a5167['query'],_0x1e81c0[_0xc453('0x45')]));_0x50e0c9['where']['ChatWebsiteId']=_0x435273['id'];if(_0x1a5167[_0xc453('0x43')][_0xc453('0x65')]){_0x50e0c9[_0xc453('0x4d')]=_[_0xc453('0x4e')](_0x50e0c9['where'],{'$or':_[_0xc453('0x42')](_0x50e0c9[_0xc453('0x47')],function(_0x127eaa){var _0x1dac41={};_0x1dac41[_0x127eaa]={'$like':'%'+_0x1a5167[_0xc453('0x43')][_0xc453('0x65')]+'%'};return _0x1dac41;})});}_0x50e0c9=_[_0xc453('0x4e')]({},_0x50e0c9,_0x1a5167[_0xc453('0x55')]);return db['Disposition'][_0xc453('0x2f')]({'where':_0x50e0c9[_0xc453('0x4d')]})['then'](function(_0x3443b9){_0x4d3518[_0xc453('0x2f')]=_0x3443b9;if(_0x1a5167[_0xc453('0x43')][_0xc453('0x66')]){_0x50e0c9[_0xc453('0x50')]=[{'all':!![]}];}return db[_0xc453('0x62')][_0xc453('0x51')](_0x50e0c9);})[_0xc453('0x1f')](function(_0x58d38f){_0x4d3518[_0xc453('0x52')]=_0x58d38f;return _0x4d3518;});}})['then'](respondWithFilteredResult(_0x28c2a8,_0x50e0c9))[_0xc453('0x28')](handleError(_0x28c2a8,null));};exports[_0xc453('0x67')]=function(_0x468596,_0x5cb4d9,_0x2826fe){return db['ChatWebsite'][_0xc453('0x56')]({'where':{'id':_0x468596[_0xc453('0x5f')]['id']}})[_0xc453('0x1f')](handleEntityNotFound(_0x5cb4d9,null))['then'](function(_0x21bd32){if(_0x21bd32){return _0x21bd32[_0xc453('0x67')](_0x468596[_0xc453('0x43')][_0xc453('0x68')]);}})[_0xc453('0x1f')](respondWithStatusCode(_0x5cb4d9,null))['catch'](handleError(_0x5cb4d9,null));};exports[_0xc453('0x69')]=function(_0x258767,_0x3f2341,_0x4cb80e){if(_0x258767[_0xc453('0x58')]['id']){delete _0x258767['body']['id'];}return db[_0xc453('0x3d')][_0xc453('0x56')]({'where':{'id':_0x258767[_0xc453('0x5f')]['id']}})[_0xc453('0x1f')](handleEntityNotFound(_0x3f2341,null))[_0xc453('0x1f')](function(_0x59acd6){if(_0x59acd6){_0x258767[_0xc453('0x58')][_0xc453('0x61')]=_0x59acd6['id'];return db['CannedAnswer'][_0xc453('0x57')](_0x258767[_0xc453('0x58')]);}})[_0xc453('0x1f')](respondWithResult(_0x3f2341,null))['catch'](handleError(_0x3f2341,null));};exports[_0xc453('0x6a')]=function(_0x147d4b,_0x1438a3,_0x32b12b){var _0x4614fd={'raw':![],'where':{}};var _0x3e7dd0={};var _0x4db8e={'count':0x0,'rows':[]};return db['ChatWebsite']['findOne']({'where':{'id':_0x147d4b[_0xc453('0x5f')]['id']}})[_0xc453('0x1f')](handleEntityNotFound(_0x1438a3,null))[_0xc453('0x1f')](function(_0x3a720d){if(_0x3a720d){_0x3e7dd0['model']=_[_0xc453('0x44')](db[_0xc453('0x6b')][_0xc453('0x3e')]);_0x3e7dd0[_0xc453('0x43')]=_[_0xc453('0x44')](_0x147d4b[_0xc453('0x43')]);_0x3e7dd0[_0xc453('0x45')]=_[_0xc453('0x46')](_0x3e7dd0[_0xc453('0x41')],_0x3e7dd0[_0xc453('0x43')]);_0x4614fd['attributes']=_[_0xc453('0x46')](_0x3e7dd0[_0xc453('0x41')],qs['fields'](_0x147d4b[_0xc453('0x43')][_0xc453('0x48')]));_0x4614fd[_0xc453('0x47')]=_0x4614fd[_0xc453('0x47')][_0xc453('0x49')]?_0x4614fd[_0xc453('0x47')]:_0x3e7dd0[_0xc453('0x41')];if(!_0x147d4b[_0xc453('0x43')]['hasOwnProperty']('nolimit')){_0x4614fd[_0xc453('0x2d')]=qs[_0xc453('0x2d')](_0x147d4b[_0xc453('0x43')]['limit']);_0x4614fd[_0xc453('0x2c')]=qs[_0xc453('0x2c')](_0x147d4b['query']['offset']);}_0x4614fd[_0xc453('0x4a')]=qs['sort'](_0x147d4b[_0xc453('0x43')]['sort']);_0x4614fd[_0xc453('0x4d')]=qs[_0xc453('0x45')](_[_0xc453('0x4c')](_0x147d4b[_0xc453('0x43')],_0x3e7dd0['filters']));_0x4614fd['where'][_0xc453('0x61')]=_0x3a720d['id'];if(_0x147d4b[_0xc453('0x43')]['filter']){_0x4614fd['where']=_[_0xc453('0x4e')](_0x4614fd['where'],{'$or':_[_0xc453('0x42')](_0x4614fd[_0xc453('0x47')],function(_0x12d0b8){var _0x46fbe8={};_0x46fbe8[_0x12d0b8]={'$like':'%'+_0x147d4b[_0xc453('0x43')][_0xc453('0x65')]+'%'};return _0x46fbe8;})});}_0x4614fd=_[_0xc453('0x4e')]({},_0x4614fd,_0x147d4b[_0xc453('0x55')]);return db[_0xc453('0x6b')][_0xc453('0x2f')]({'where':_0x4614fd[_0xc453('0x4d')]})[_0xc453('0x1f')](function(_0x258773){_0x4db8e[_0xc453('0x2f')]=_0x258773;if(_0x147d4b[_0xc453('0x43')][_0xc453('0x66')]){_0x4614fd[_0xc453('0x50')]=[{'all':!![]}];}return db['CannedAnswer'][_0xc453('0x51')](_0x4614fd);})[_0xc453('0x1f')](function(_0x2d2afc){_0x4db8e[_0xc453('0x52')]=_0x2d2afc;return _0x4db8e;});}})[_0xc453('0x1f')](respondWithFilteredResult(_0x1438a3,_0x4614fd))[_0xc453('0x28')](handleError(_0x1438a3,null));};exports[_0xc453('0x6c')]=function(_0x274667,_0x1318ae,_0x24b968){return db[_0xc453('0x3d')][_0xc453('0x56')]({'where':{'id':_0x274667[_0xc453('0x5f')]['id']}})[_0xc453('0x1f')](handleEntityNotFound(_0x1318ae,null))[_0xc453('0x1f')](function(_0x5365a5){if(_0x5365a5){return _0x5365a5[_0xc453('0x6c')](_0x274667[_0xc453('0x43')][_0xc453('0x68')]);}})[_0xc453('0x1f')](respondWithStatusCode(_0x1318ae,null))[_0xc453('0x28')](handleError(_0x1318ae,null));};exports[_0xc453('0x6d')]=function(_0x1c7afe,_0x43cb5e,_0x3e3aba){_0x1c7afe[_0xc453('0x58')][_0xc453('0x6e')]=_0x1c7afe[_0xc453('0x6f')]['filename'];return db[_0xc453('0x3d')][_0xc453('0x56')]({'where':{'id':_0x1c7afe[_0xc453('0x5f')]['id']}})[_0xc453('0x1f')](handleEntityNotFound(_0x43cb5e,null))['then'](saveUpdates(_0x1c7afe[_0xc453('0x58')],null))[_0xc453('0x1f')](respondWithResult(_0x43cb5e,null))[_0xc453('0x28')](handleError(_0x43cb5e,null));};exports['addAvatar']=function(_0x561ffa,_0xdfab6b,_0x13460c){_0x561ffa[_0xc453('0x58')][_0xc453('0x70')]=_0x561ffa['file']['filename'];return db[_0xc453('0x3d')][_0xc453('0x56')]({'where':{'id':_0x561ffa['params']['id']}})[_0xc453('0x1f')](handleEntityNotFound(_0xdfab6b,null))[_0xc453('0x1f')](saveUpdates(_0x561ffa['body'],null))['then'](respondWithResult(_0xdfab6b,null))[_0xc453('0x28')](handleError(_0xdfab6b,null));};exports[_0xc453('0x71')]=function(_0x2b675b,_0x24073f,_0x114411){_0x2b675b['body'][_0xc453('0x72')]=_0x2b675b[_0xc453('0x6f')][_0xc453('0x73')];return db[_0xc453('0x3d')][_0xc453('0x56')]({'where':{'id':_0x2b675b[_0xc453('0x5f')]['id']}})[_0xc453('0x1f')](handleEntityNotFound(_0x24073f,null))[_0xc453('0x1f')](saveUpdates(_0x2b675b[_0xc453('0x58')],null))['then'](respondWithResult(_0x24073f,null))[_0xc453('0x28')](handleError(_0x24073f,null));};exports[_0xc453('0x74')]=function(_0x34b2a9,_0x1532cf,_0x2a9eb7){_0x34b2a9[_0xc453('0x58')][_0xc453('0x75')]=_0x34b2a9['file'][_0xc453('0x73')];return db[_0xc453('0x3d')][_0xc453('0x56')]({'where':{'id':_0x34b2a9[_0xc453('0x5f')]['id']}})['then'](handleEntityNotFound(_0x1532cf,null))['then'](saveUpdates(_0x34b2a9['body'],null))[_0xc453('0x1f')](respondWithResult(_0x1532cf,null))['catch'](handleError(_0x1532cf,null));};exports[_0xc453('0x76')]=function(_0x4bc732,_0x4a4cdc,_0x17a882){var _0x13d5d5=path[_0xc453('0x77')](config[_0xc453('0x78')],_0xc453('0x79'));var _0x2752b5={'where':{'id':_0x4bc732[_0xc453('0x5f')]['id']},'attributes':['id','sitepic'],'raw':!![]};var _0x4b9a23=![];return require('../../config/license/util')[_0xc453('0x7a')]()[_0xc453('0x1f')](function(_0x1eefea){if(_0x1eefea){_0x4b9a23=_0x1eefea['custom'];}})[_0xc453('0x1f')](function(){return db['ChatWebsite']['find'](_0x2752b5);})[_0xc453('0x1f')](handleEntityNotFound(_0x4a4cdc,null))['then'](function(_0x371b87){if(_0x371b87){if(!_[_0xc453('0x7b')](_0x371b87['sitepic'])){if(fs[_0xc453('0x7c')](path[_0xc453('0x77')](config[_0xc453('0x78')],_0xc453('0x7d'),_0x371b87[_0xc453('0x6e')]))&&_0x4b9a23){_0x13d5d5=path[_0xc453('0x77')](config['root'],_0xc453('0x7d'),_0x371b87[_0xc453('0x6e')]);}}return _0x4a4cdc[_0xc453('0x7e')](_0x13d5d5);}})['catch'](handleError(_0x4a4cdc,null));};exports['getAvatar']=function(_0x558f19,_0x30d770,_0x175abb){var _0x47946d=path[_0xc453('0x77')](config[_0xc453('0x78')],_0xc453('0x7f'));var _0x101b40={'where':{'id':_0x558f19[_0xc453('0x5f')]['id']},'attributes':['id',_0xc453('0x70')],'raw':!![]};return db['ChatWebsite'][_0xc453('0x56')](_0x101b40)[_0xc453('0x1f')](handleEntityNotFound(_0x30d770,null))[_0xc453('0x1f')](function(_0x5599f0){if(_0x5599f0){if(!_[_0xc453('0x7b')](_0x5599f0['agentAvatar'])){if(fs['existsSync'](path[_0xc453('0x77')](config['root'],_0xc453('0x80'),_0x5599f0['agentAvatar']))){_0x47946d=path[_0xc453('0x77')](config['root'],_0xc453('0x80'),_0x5599f0['agentAvatar']);}}return _0x30d770[_0xc453('0x7e')](_0x47946d);}})['catch'](handleError(_0x30d770,null));};exports['getCustomerAvatar']=function(_0x146589,_0x8698f5,_0x59add4){var _0x6ee578=path['join'](config[_0xc453('0x78')],_0xc453('0x81'));var _0x38eb98={'where':{'id':_0x146589['params']['id']},'attributes':['id',_0xc453('0x72'),'showCustomerAvatar'],'raw':!![]};return db[_0xc453('0x3d')][_0xc453('0x56')](_0x38eb98)[_0xc453('0x1f')](handleEntityNotFound(_0x8698f5,null))[_0xc453('0x1f')](function(_0x1f1bfa){if(_0x1f1bfa){if(!_[_0xc453('0x7b')](_0x1f1bfa['customerAvatar'])){if(fs[_0xc453('0x7c')](path[_0xc453('0x77')](config[_0xc453('0x78')],'server/files/images/avatars/',_0x1f1bfa[_0xc453('0x72')]))&&_0x1f1bfa[_0xc453('0x82')]){_0x6ee578=path[_0xc453('0x77')](config['root'],_0xc453('0x80'),_0x1f1bfa[_0xc453('0x72')]);}}return _0x8698f5[_0xc453('0x7e')](_0x6ee578);}})[_0xc453('0x28')](handleError(_0x8698f5,null));};exports[_0xc453('0x83')]=function(_0x22d2d9,_0x42aee7,_0x478540){var _0x563af0=path[_0xc453('0x77')](config[_0xc453('0x78')],_0xc453('0x84'));var _0x335eeb={'where':{'id':_0x22d2d9[_0xc453('0x5f')]['id']},'attributes':['id',_0xc453('0x75')],'raw':!![]};return db[_0xc453('0x3d')][_0xc453('0x56')](_0x335eeb)[_0xc453('0x1f')](handleEntityNotFound(_0x42aee7,null))['then'](function(_0x7b59bc){if(_0x7b59bc){if(!_[_0xc453('0x7b')](_0x7b59bc[_0xc453('0x75')])){if(fs[_0xc453('0x7c')](path[_0xc453('0x77')](config[_0xc453('0x78')],_0xc453('0x80'),_0x7b59bc[_0xc453('0x75')]))){_0x563af0=path[_0xc453('0x77')](config[_0xc453('0x78')],_0xc453('0x80'),_0x7b59bc[_0xc453('0x75')]);}}return _0x42aee7[_0xc453('0x7e')](_0x563af0);}})[_0xc453('0x28')](handleError(_0x42aee7,null));};exports[_0xc453('0x85')]=function(_0x533fe8,_0x1c14cf,_0x223619){var _0x4a1dd7=require(_0xc453('0x86'));var _0x4d67e8=new _0x4a1dd7();var _0x2a2992=_0x4d67e8['setUA'](_0x533fe8[_0xc453('0x87')][_0xc453('0x88')])[_0xc453('0x89')]();var _0x40a076={'body':_0x533fe8[_0xc453('0x58')],'channel':'chat'};var _0x4d0b6=[];var _0x1bbcf9=[];var _0x410d56={};var _0x4d69ba=![];return db[_0xc453('0x8a')]['describe']()[_0xc453('0x1f')](function(_0x10d9a3){if(!_0x10d9a3){throw new db[(_0xc453('0x8b'))][(_0xc453('0x8c'))](_0xc453('0x8d'));}_0x4d0b6=_[_0xc453('0x8e')](_[_0xc453('0x44')](_0x10d9a3),['createdAt','updatedAt']);_0x1bbcf9=_[_0xc453('0x8e')](_['keys'](_0x10d9a3),['createdAt',_0xc453('0x8f'),_0xc453('0x90'),'ListId']);if(_0x533fe8['body']['id']){delete _0x533fe8[_0xc453('0x58')]['id'];}if(_[_0xc453('0x7b')](_0x533fe8[_0xc453('0x58')]['from'])){throw new db[(_0xc453('0x8b'))][(_0xc453('0x8c'))](_0xc453('0x91'));}if(_[_0xc453('0x7b')](_0x533fe8[_0xc453('0x58')]['body'])||_0x533fe8[_0xc453('0x58')][_0xc453('0x58')]===''){throw new db[(_0xc453('0x8b'))]['ValidationError']('body\x20is\x20mandatory\x20and\x20not\x20empty');}if(_['isNil'](_0x533fe8['body'][_0xc453('0x92')])){throw new db[(_0xc453('0x8b'))][(_0xc453('0x8c'))](_0xc453('0x93')+_0x1bbcf9);}if(!_[_0xc453('0x94')](_0x1bbcf9,_0x533fe8[_0xc453('0x58')][_0xc453('0x92')])){throw new db[(_0xc453('0x8b'))][(_0xc453('0x8c'))]('mapKey\x20invalid,\x20please\x20use\x20one\x20of\x20these:\x20'+_0x1bbcf9);}_0x410d56[_0x533fe8[_0xc453('0x58')][_0xc453('0x92')]]=_0x533fe8['body'][_0xc453('0x95')];})[_0xc453('0x1f')](function(){return db[_0xc453('0x3d')][_0xc453('0x56')]({'where':{'id':_0x533fe8[_0xc453('0x5f')]['id']},'include':[{'model':db[_0xc453('0x96')],'as':_0xc453('0x97'),'include':[{'model':db[_0xc453('0x8a')],'as':_0xc453('0x98'),'where':_0x410d56,'limit':0x1,'order':[[_0xc453('0x8f'),'DESC']]}]},{'model':db[_0xc453('0x99')],'as':_0xc453('0x9a')}]});})[_0xc453('0x1f')](handleEntityNotFound(_0x1c14cf,null))[_0xc453('0x1f')](function(_0x799d54){if(_0x799d54&&_0x799d54[_0xc453('0x97')]){_0x40a076[_0xc453('0x9b')]=_0x799d54;_0x40a076[_0xc453('0x9c')]=_0x799d54[_0xc453('0x9a')];_0x40a076['list']=_0x799d54[_0xc453('0x97')];_0x40a076['applications']=_[_0xc453('0x9d')](_0x40a076[_0xc453('0x9c')],['priority'],['asc']);if(_0x40a076[_0xc453('0x9b')][_0xc453('0x9a')]){delete _0x40a076['account']['Applications'];}if(_0x40a076[_0xc453('0x9b')][_0xc453('0x97')]&&_0x40a076['account']['List'][_0xc453('0x98')][_0xc453('0x49')]){return _0x40a076['account'][_0xc453('0x97')]['Contacts'][0x0];}var _0x56c8f5=_[_0xc453('0x9e')](_0x533fe8[_0xc453('0x58')],{'firstName':_0x533fe8[_0xc453('0x58')][_0xc453('0x95')],'ListId':_0x799d54[_0xc453('0x9f')]});_0x56c8f5[_0x533fe8['body'][_0xc453('0x92')]]=_0x533fe8[_0xc453('0x58')][_0xc453('0x95')];return db['CmContact'][_0xc453('0x57')](_0x56c8f5,{'fields':_0x4d0b6,'raw':!![]});}})['then'](handleEntityNotFound(_0x1c14cf,null))[_0xc453('0x1f')](function(_0x931100){_0x40a076[_0xc453('0xa0')]=_0x931100;var _0x41c39e=_0x533fe8[_0xc453('0x58')][_0xc453('0xa1')];if(_0x533fe8['headers']['cf-connecting-ip']){_0x41c39e=_0x533fe8[_0xc453('0x87')][_0xc453('0xa2')];}else if(_0x533fe8[_0xc453('0x87')][_0xc453('0xa3')]){_0x41c39e=_[_0xc453('0xa4')](_0x533fe8[_0xc453('0x87')][_0xc453('0xa3')][_0xc453('0xa5')](','));}if(_0x931100){var _0x1527e9={'ContactId':_0x931100['id'],'ChatWebsiteId':_0x533fe8[_0xc453('0x5f')]['id'],'from':(_0x931100[_0xc453('0xa6')]||'')+'\x20'+(_0x931100[_0xc453('0xa7')]||''),'customerIp':_0x41c39e,'customerPort':_0x533fe8[_0xc453('0x87')]['x-real-port']?_0x533fe8[_0xc453('0x87')][_0xc453('0xa8')]:null,'referer':_0x533fe8['body'][_0xc453('0xa9')],'browserName':_0x2a2992['browser'][_0xc453('0x39')]&&_0x2a2992[_0xc453('0xaa')][_0xc453('0xab')]?util[_0xc453('0xac')]('%s\x20%s',_0x2a2992[_0xc453('0xaa')][_0xc453('0x39')],_0x2a2992['browser']['version']):_0xc453('0xad'),'browserVersion':_0x2a2992[_0xc453('0xaa')][_0xc453('0xab')]||_0xc453('0xad'),'osName':util[_0xc453('0xac')]('%s\x20%s',_0x2a2992['os'][_0xc453('0x39')],_0x2a2992['os'][_0xc453('0xab')]),'osVersion':_0x2a2992['os'][_0xc453('0xab')],'deviceModel':_0x2a2992[_0xc453('0xae')][_0xc453('0x41')]&&_0x2a2992['device'][_0xc453('0xaf')]?util[_0xc453('0xac')](_0xc453('0xb0'),_0x2a2992['device'][_0xc453('0x41')],_0x2a2992['device'][_0xc453('0xaf')],_0x2a2992[_0xc453('0xae')][_0xc453('0x40')]):null,'deviceVendor':_0x2a2992['device'][_0xc453('0xaf')],'deviceType':_0x2a2992[_0xc453('0xae')][_0xc453('0x40')],'formData':JSON[_0xc453('0x23')](_0x533fe8[_0xc453('0x58')])};var _0x594133={'ChatWebsiteId':_0x533fe8[_0xc453('0x5f')]['id'],'closed':![]};if(_0x533fe8[_0xc453('0x58')]['threadId']){_0x594133[_0xc453('0xb1')]=_0x533fe8[_0xc453('0x58')]['threadId'];return db[_0xc453('0xb2')][_0xc453('0x56')]({'where':_0x594133})[_0xc453('0x1f')](function(_0x1c5bf4){if(_0x1c5bf4){return[_0x1c5bf4,![]];}_0x1527e9[_0xc453('0xb1')]=_0x533fe8['body']['threadId'];_0x1527e9[_0xc453('0xb3')]=_0x533fe8[_0xc453('0x58')]['externalUrl'];return db[_0xc453('0xb2')]['create'](_0x1527e9)[_0xc453('0x1f')](function(_0x57b4ca){return[_0x57b4ca,!![]];});});}_0x594133[_0xc453('0xb4')]=_0x931100['id'];if(_0x533fe8[_0xc453('0x58')]['interaction']&&_0x533fe8[_0xc453('0x58')][_0xc453('0xb5')]['id']){_0x594133['id']=_0x533fe8[_0xc453('0x58')]['interaction']['id'];return db[_0xc453('0xb2')]['find']({'where':_0x594133})['then'](function(_0x5600a1){if(_0x5600a1){return[_0x5600a1,![]];}return db[_0xc453('0xb2')][_0xc453('0x57')](_0x1527e9)['then'](function(_0x28855e){return[_0x28855e,!![]];});});}return db['ChatInteraction']['create'](_0x1527e9)[_0xc453('0x1f')](function(_0x507d06){return[_0x507d06,!![]];});}})['spread'](function(_0x24e727,_0x27d6ff){if(_0x24e727){_0x4d69ba=_0x27d6ff;if(!_0x27d6ff){var _0x3f16b1={'from':(_0x40a076[_0xc453('0xa0')][_0xc453('0xa6')]||'')+'\x20'+(_0x40a076[_0xc453('0xa0')]['lastName']||'')};if(_0x533fe8[_0xc453('0x58')][_0xc453('0xb1')]&&_0x533fe8['body']['messageId']&&_0x533fe8[_0xc453('0x58')][_0xc453('0xb1')]!=_0x533fe8['body'][_0xc453('0xb6')]){_0x3f16b1[_0xc453('0xb1')]=_0x533fe8[_0xc453('0x58')][_0xc453('0xb6')];}return _0x24e727['update'](_0x3f16b1);}else{return _0x24e727;}}})[_0xc453('0x1f')](function(_0x1cf352){_0x40a076['interaction']=_0x1cf352[_0xc453('0x35')]({'plain':!![]});_0x40a076[_0xc453('0xb5')]['created']=_0x4d69ba;if(_0x40a076[_0xc453('0xb5')][_0xc453('0xb7')]){if(_0x40a076[_0xc453('0x9b')]['autoclose']){_0x40a076[_0xc453('0x9c')][_0xc453('0xb8')]({'id':0x0,'priority':_0x40a076[_0xc453('0x9c')][_0xc453('0x49')]+0x1,'app':_0xc453('0xb9'),'appdata':'unmanaged','interval':'*,*,*,*'});}}return db[_0xc453('0xba')][_0xc453('0x57')]({'body':_0x533fe8[_0xc453('0x58')][_0xc453('0x58')],'ChatWebsiteId':_0x533fe8['params']['id'],'ChatInteractionId':_0x1cf352['id'],'direction':'in','ContactId':_0x40a076['contact']['id'],'AttachmentId':_0x533fe8['body'][_0xc453('0xbb')]});})[_0xc453('0x1f')](function(_0x158a49){_0x40a076[_0xc453('0x26')]=_0x158a49;if(_0x40a076[_0xc453('0xb5')][_0xc453('0xbc')]){return db[_0xc453('0xbd')]['find']({'attributes':['id',_0xc453('0x39')],'where':{'id':_0x40a076[_0xc453('0xb5')][_0xc453('0xbc')]}})[_0xc453('0x1f')](function(_0x995d9){if(_0x995d9){_0x40a076['applications']['unshift']({'id':0x0,'priority':0x0,'app':_0xc453('0xbe'),'appdata':_0x995d9[_0xc453('0x39')]+','+(_0x40a076['account'][_0xc453('0xbf')]||0xa),'interval':_0xc453('0xc0')});_0x40a076[_0xc453('0xc1')]=!![];}return respondWithRpcPromise(_0xc453('0xc2'),'startRouting',_0x40a076);});}return respondWithRpcPromise(_0xc453('0xc2'),_0xc453('0xc3'),_0x40a076);})[_0xc453('0x1f')](function(_0x54bdfd){respondWithRpcPromise(_0xc453('0xc4'),'EventManager',{'event':'notify','message':_0x54bdfd},client9002);return _0x54bdfd;})[_0xc453('0x1f')](respondWithResult(_0x1c14cf,null))['catch'](handleError(_0x1c14cf,null));};exports[_0xc453('0xc5')]=function(_0x3edfe3,_0x413e35,_0x19d4d9){var _0x8c1062,_0x21dded,_0x31a72f;var _0x4635be=[];var _0x35cd78=[];var _0x109eb4={};var _0x432528=_0x3edfe3['files']||[];var _0x3eab44=[];var _0x561100;return db['CmContact'][_0xc453('0x60')]()[_0xc453('0x1f')](function(_0x6f8543){if(!_0x6f8543){throw new db['Sequelize'][(_0xc453('0x8c'))](_0xc453('0x8d'));}_0x35cd78=_['difference'](_[_0xc453('0x44')](_0x6f8543),[_0xc453('0xc6'),_0xc453('0x8f')]);_0x4635be=_['difference'](_[_0xc453('0x44')](_0x6f8543),['createdAt',_0xc453('0x8f'),_0xc453('0x90'),_0xc453('0x9f')]);if(_0x3edfe3[_0xc453('0x58')]['id']){delete _0x3edfe3[_0xc453('0x58')]['id'];}if(_[_0xc453('0x7b')](_0x3edfe3[_0xc453('0x58')][_0xc453('0x95')])){throw _0x413e35[_0xc453('0x30')](0x1f4)[_0xc453('0x3a')](new db[(_0xc453('0x8b'))][(_0xc453('0x8c'))]('from\x20is\x20mandatory'));}if(_[_0xc453('0x7b')](_0x3edfe3[_0xc453('0x58')][_0xc453('0x58')])||_0x3edfe3[_0xc453('0x58')][_0xc453('0x58')]===''){throw _0x413e35[_0xc453('0x30')](0x1f4)[_0xc453('0x3a')](new db[(_0xc453('0x8b'))]['ValidationError']('body\x20is\x20mandatory\x20and\x20not\x20empty'));}if(_[_0xc453('0x7b')](_0x3edfe3['body'][_0xc453('0xc7')])){throw _0x413e35['status'](0x1f4)[_0xc453('0x3a')](new db[(_0xc453('0x8b'))][(_0xc453('0x8c'))](_0xc453('0xc8')+_0x4635be));}if(!_['includes'](_0x4635be,_0x3edfe3[_0xc453('0x58')][_0xc453('0xc7')])){throw _0x413e35[_0xc453('0x30')](0x1f4)[_0xc453('0x3a')](new db[(_0xc453('0x8b'))]['ValidationError'](_0xc453('0xc9')+_0x4635be));}_0x109eb4[_0x3edfe3[_0xc453('0x58')][_0xc453('0xc7')]]=_0x3edfe3[_0xc453('0x58')][_0xc453('0x95')];})['then'](function(){return db[_0xc453('0x3d')][_0xc453('0x56')]({'where':{'id':_0x3edfe3[_0xc453('0x5f')]['id']},'include':[{'model':db[_0xc453('0x96')],'as':_0xc453('0x97')},{'model':db['MailAccount'],'as':_0xc453('0xca')}]});})['then'](handleEntityNotFound(_0x413e35,null))[_0xc453('0x1f')](function(_0x2070a4){if(_0x2070a4&&_0x2070a4[_0xc453('0x97')]){_0x21dded=_0x2070a4;var _0x32c009=_[_0xc453('0x9e')](_0x3edfe3[_0xc453('0x58')],{'firstName':_0x3edfe3[_0xc453('0x58')]['from'],'phone':_0x3edfe3[_0xc453('0x58')]['from'],'ListId':_0x2070a4[_0xc453('0x9f')]});_0x32c009[_0x3edfe3[_0xc453('0x58')][_0xc453('0xc7')]]=_0x3edfe3[_0xc453('0x58')][_0xc453('0x95')];return db[_0xc453('0x8a')][_0xc453('0xcb')]({'where':_0x109eb4,'defaults':_0x32c009});}})[_0xc453('0xcc')](function(_0x5050ac){if(_0x5050ac){_0x31a72f=_0x5050ac;var _0x5afff2=fs[_0xc453('0xcd')](path[_0xc453('0x77')](config[_0xc453('0x78')],_0xc453('0xce')),_0xc453('0xcf'));var _0x3820f8=ejs['render'](_0x5afff2,{'body':_[_0xc453('0xd0')](_0x3edfe3[_0xc453('0x58')]['body']),'bodyTitle':_0x21dded[_0xc453('0xd1')]});return db[_0xc453('0xd2')][_0xc453('0x57')]({'body':_0x3820f8,'ContactId':_0x5050ac['id'],'ChatWebsiteId':_0x21dded['id']});}})['then'](function(_0x331263){_0x561100=_0x331263;if(_0x432528[_0xc453('0x49')]){var _0x3445fb=_0x432528[_0xc453('0x42')](function(_0x4ede56){return{'name':_0x4ede56[_0xc453('0xd3')],'basename':_0x4ede56[_0xc453('0x73')],'type':_0x4ede56[_0xc453('0xd4')],'ChatOfflineMessageId':_0x331263['id']};});_0x3eab44=_0x3445fb['map'](_0x20d965=>{var _0x45eb1e={'filename':_0x20d965[_0xc453('0x39')],'path':path[_0xc453('0x77')](config[_0xc453('0x78')],'server',_0xc453('0xd5'),'attachments',_0xc453('0xd6'),_0x20d965[_0xc453('0xd7')])};return _0x45eb1e;});if(!_0x21dded[_0xc453('0xd8')]){return db[_0xc453('0xd9')][_0xc453('0xda')](function(_0x3bc01b){return db[_0xc453('0xdb')][_0xc453('0xdc')](_0x3445fb,{'transaction':_0x3bc01b});});}}})['then'](function(){if(_0x561100){_0x8c1062=_0x561100;return db[_0xc453('0xca')][_0xc453('0x64')]({'where':{'active':!![]},'include':[{'model':db[_0xc453('0xdd')],'as':_0xc453('0xde'),'raw':!![]}]});}})[_0xc453('0x1f')](function(_0x16d5ca){if(_0x16d5ca&&_0x16d5ca[_0xc453('0xde')]&&_0x21dded[_0xc453('0xdf')]&&_0x21dded[_0xc453('0xe0')]){var _0x103d89={'tls':{'rejectUnauthorized':![]}};if(_0x16d5ca[_0xc453('0xde')]['service']){_0x103d89[_0xc453('0xe1')]=_0x16d5ca[_0xc453('0xde')][_0xc453('0xe1')];}else{_0x103d89['host']=_0x16d5ca[_0xc453('0xde')][_0xc453('0xe2')];_0x103d89[_0xc453('0xe3')]=_0x16d5ca['Smtp'][_0xc453('0xe3')];_0x103d89['secure']=_0x16d5ca[_0xc453('0xde')][_0xc453('0xe4')];}if(_0x16d5ca[_0xc453('0xde')][_0xc453('0xe5')]){_0x103d89['auth']={'user':_0x16d5ca[_0xc453('0xde')][_0xc453('0x59')],'pass':_0x16d5ca[_0xc453('0xde')][_0xc453('0xe6')]};}return respondWithRpcPromise(_0xc453('0xe7'),_0xc453('0xe8'),{'account':_0x103d89,'message':{'from':util[_0xc453('0xac')](_0xc453('0xe9'),_0x16d5ca[_0xc453('0x39')],_0x16d5ca['email']||_0x16d5ca['Smtp'][_0xc453('0x59')]),'to':_0x21dded[_0xc453('0xe0')],'subject':_0x21dded[_0xc453('0xea')],'text':_0x8c1062[_0xc453('0x58')],'attachments':_0x3eab44}},client9003)[_0xc453('0x1f')](function(){return _0x8c1062;})[_0xc453('0x28')](function(_0xa3a02c){console[_0xc453('0x24')](_0xa3a02c);});}})['then'](function(){if(_0x21dded&&_0x21dded[_0xc453('0xd8')]&&_0x21dded['MailAccountId']){var _0x2db219=[];if(_0x432528['length']){_0x2db219=_0x432528[_0xc453('0x42')](function(_0x567803){return{'name':_0x567803[_0xc453('0xd3')],'basename':_0x567803[_0xc453('0x73')],'type':_0x567803['mimetype'],'ChatOfflineMessageId':_0x561100['id']};});}var _0x59262c;if(!_[_0xc453('0x7b')](_0x21dded['subjectOffline'])){var _0x4d30a7=_[_0xc453('0x42')](_0x3edfe3[_0xc453('0x58')],function(_0x550baa){return _0x550baa;});var _0x1dfce7=_[_0xc453('0xeb')](_0x4d30a7)[0x0];var _0x2c5e16=_['mapValues'](_0x1dfce7,function(_0x441dc6){return _0x441dc6;});_0x59262c=_0x2c5e16[0x1][_0x21dded[_0xc453('0xec')]];}var _0x1f8420={'from':_0x31a72f[_0xc453('0xed')],'firstName':_0x31a72f[_0xc453('0xa6')],'lastName':_0x31a72f[_0xc453('0xa7')],'mapKey':_0xc453('0xed'),'message':{'from':_0x31a72f[_0xc453('0xed')],'to':_0x21dded[_0xc453('0xca')]['email'],'cc':'','subject':_[_0xc453('0x7b')](_0x59262c)?_0x21dded[_0xc453('0xea')]:_0x59262c,'messageId':'','sentAt':new Date(),'attach':_0x2db219['length'],'attachments':_0x2db219,'originChannel':_0xc453('0xee'),'ChatWebsiteId':_0x21dded['id'],'ChatOfflineMessageId':_0x8c1062['id'],'originTo':_0x21dded[_0xc453('0xca')][_0xc453('0xed')]},'body':_0x8c1062[_0xc453('0x58')]};var _0x4b6dc4={'account':{'id':_0x21dded[_0xc453('0xef')]},'body':_0x1f8420,'log':_0xc453('0xf0')};return respondWithRpcPromise('NotifyMailAccount',_0xc453('0xf1'),_0x4b6dc4,client9001)['then'](function(){return _0x8c1062;})[_0xc453('0x28')](function(_0x271208){console[_0xc453('0x24')](_0x271208);});}return;})[_0xc453('0x1f')](function(){if(_0x8c1062){return _0x8c1062;}})['then'](respondWithResult(_0x413e35,null))[_0xc453('0x28')](function(_0x59daa3){console[_0xc453('0x24')]('catch',_0x59daa3);for(var _0x25d515 of _0x432528){var _0x2842cb=path[_0xc453('0x77')](config[_0xc453('0x78')],_0xc453('0xf2'),'files',_0xc453('0xf3'),_0xc453('0xd6'),_0x25d515[_0xc453('0x73')]);fs_extra[_0xc453('0xf4')](_0x2842cb)[_0xc453('0x28')](function(_0x540acc){console['error'](_0xc453('0xf5'),_0x2842cb,_0x540acc);});}});};exports['addInteraction']=function(_0x3ad57d,_0x409e5c,_0x3a37d3){return db[_0xc453('0xb2')][_0xc453('0x56')]({'where':{'id':_0x3ad57d[_0xc453('0x5f')]['id']}})[_0xc453('0x1f')](handleEntityNotFound(_0x409e5c,null))[_0xc453('0x1f')](function(_0x4a2b9d){if(_0x4a2b9d){return _0x4a2b9d['addInteraction'](_0x3ad57d[_0xc453('0x58')][_0xc453('0x68')],_['omit'](_0x3ad57d['body'],[_0xc453('0x68'),'id'])||{});}})[_0xc453('0x1f')](respondWithResult(_0x409e5c,null))[_0xc453('0x28')](handleError(_0x409e5c,null));};exports[_0xc453('0xf6')]=function(_0x2f0375,_0x350139,_0x2f09c9){var _0x58dcb0={'raw':![],'where':{}};var _0x1aaece={};var _0x323ca2={'count':0x0,'rows':[]};return db[_0xc453('0x3d')][_0xc453('0x64')]({'where':{'id':_0x2f0375['params']['id']}})['then'](handleEntityNotFound(_0x350139,null))[_0xc453('0x1f')](function(_0x138673){if(_0x138673){_0x1aaece[_0xc453('0x41')]=_['keys'](db[_0xc453('0xb2')][_0xc453('0x3e')]);_0x1aaece[_0xc453('0x43')]=_['keys'](_0x2f0375['query']);_0x1aaece[_0xc453('0x45')]=_['intersection'](_0x1aaece[_0xc453('0x41')],_0x1aaece[_0xc453('0x43')]);_0x58dcb0[_0xc453('0x47')]=_[_0xc453('0x46')](_0x1aaece['model'],qs['fields'](_0x2f0375['query'][_0xc453('0x48')]));_0x58dcb0[_0xc453('0x47')]=_0x58dcb0['attributes']['length']?_0x58dcb0[_0xc453('0x47')]:_0x1aaece['model'];if(!_0x2f0375[_0xc453('0x43')][_0xc453('0xf7')](_0xc453('0xf8'))){_0x58dcb0[_0xc453('0x2d')]=qs['limit'](_0x2f0375[_0xc453('0x43')]['limit']);_0x58dcb0[_0xc453('0x2c')]=qs[_0xc453('0x2c')](_0x2f0375[_0xc453('0x43')][_0xc453('0x2c')]);}_0x58dcb0[_0xc453('0x4a')]=qs[_0xc453('0x4b')](_0x2f0375['query'][_0xc453('0x4b')]);_0x58dcb0['where']=qs[_0xc453('0x45')](_[_0xc453('0x4c')](_0x2f0375['query'],_0x1aaece[_0xc453('0x45')]));_0x58dcb0[_0xc453('0x4d')][_0xc453('0x61')]=_0x138673['id'];if(_0x2f0375[_0xc453('0x43')][_0xc453('0x65')]){_0x58dcb0[_0xc453('0x4d')]=_[_0xc453('0x4e')](_0x58dcb0[_0xc453('0x4d')],{'$or':_[_0xc453('0x42')](_0x58dcb0[_0xc453('0x47')],function(_0x1c4648){var _0x308ac0={};_0x308ac0[_0x1c4648]={'$like':'%'+_0x2f0375[_0xc453('0x43')][_0xc453('0x65')]+'%'};return _0x308ac0;})});}_0x58dcb0=_[_0xc453('0x4e')]({},_0x58dcb0,_0x2f0375[_0xc453('0x55')]);return db[_0xc453('0xb2')]['count']({'where':_0x58dcb0[_0xc453('0x4d')]})[_0xc453('0x1f')](function(_0x45c86c){_0x323ca2[_0xc453('0x2f')]=_0x45c86c;if(_0x2f0375[_0xc453('0x43')]['includeAll']){_0x58dcb0[_0xc453('0x50')]=[{'model':db['CmContact'],'as':_0xc453('0xf9'),'required':![]},{'model':db[_0xc453('0xbd')],'as':_0xc453('0xfa'),'attributes':['name',_0xc453('0xfb'),_0xc453('0xfc')],'required':![]},{'model':db[_0xc453('0xfd')],'as':'Tags','attributes':['id',_0xc453('0x39'),_0xc453('0xfe')],'where':_0x2f0375[_0xc453('0x43')][_0xc453('0xff')]?{'id':_0x2f0375[_0xc453('0x43')][_0xc453('0xff')]}:undefined,'required':_0x2f0375['query'][_0xc453('0xff')]?!![]:![]}];}return db[_0xc453('0xb2')][_0xc453('0x51')](_0x58dcb0);})['then'](function(_0x4b5476){_0x323ca2[_0xc453('0x52')]=_0x4b5476;return _0x323ca2;});}})['then'](respondWithFilteredResult(_0x350139,_0x58dcb0))[_0xc453('0x28')](handleError(_0x350139,null));};function iftimePromise(_0x44b701,_0xf9c957){return respondWithRpcPromise('Command',_0xc453('0x100'),{'command':_0xf9c957[_0xc453('0x101')]?util[_0xc453('0xac')]('iftime\x20%s,%s',_0x44b701['interval'],_0xf9c957[_0xc453('0x101')]):util['format'](_0xc453('0x102'),_0x44b701[_0xc453('0x103')])},client9002)[_0xc453('0x1f')](function(_0x911e4){var _0x3c8356=_0x911e4&&_0x911e4['indexOf'](_0xc453('0x104'))>=0x0?!![]:![];logger['info'](_0xc453('0x105'),_0xf9c957['id'],_0x44b701['id'],_0x44b701[_0xc453('0x103')],_0x3c8356?_0xc453('0x106'):_0xc453('0x107'),_0xf9c957[_0xc453('0x101')]?_0xf9c957[_0xc453('0x101')]:'No\x20timezone');return _0x3c8356;})[_0xc453('0x28')](function(_0x5bea69){logger[_0xc453('0x24')](_0xc453('0x105'),_0xf9c957['id'],_0x44b701['id'],_0x44b701[_0xc453('0x103')],util['inspect'](_0x5bea69,{'showHidden':![],'depth':null}),_0xf9c957['timezone']?_0xf9c957['timezone']:_0xc453('0x108'));return![];});}exports['getSnippet']=function(_0x51ea62,_0x9f4199,_0x2d3b09){var _0x4ae00b=0x0;var _0x4a56a6=0x0;var _0x575596=![];var _0x517ecb;var _0x5bc269;return db[_0xc453('0x3d')]['find']({'where':{'id':_0x51ea62[_0xc453('0x5f')]['id']},'include':[{'model':db['Interval'],'as':'Interval','include':[{'model':db['Interval'],'as':_0xc453('0x109'),'attributes':['id',_0xc453('0x103')],'raw':!![]}]}]})[_0xc453('0x1f')](handleEntityNotFound(_0x9f4199,null))['then'](function(_0x56d24f){if(_0x56d24f){_0x517ecb=_0x56d24f;return _0x56d24f[_0xc453('0x10a')]({'raw':!![]});}})[_0xc453('0x1f')](function(_0xfecb5a){if(_0x517ecb){if(_0xfecb5a){_0x5bc269=_0xfecb5a;}}return require(_0xc453('0x16'))[_0xc453('0x7a')]();})['then'](function(_0x2f7a92){if(_0x2f7a92){_0x4a56a6=_0x2f7a92[_0xc453('0x10b')];_0x575596=_0x2f7a92['custom'];}})[_0xc453('0x1f')](function(){return db['ChatInteraction'][_0xc453('0x2f')]({'where':{'closed':![]}});})['then'](function(_0x32accd){_0x4ae00b=_0x32accd;if(_0x4a56a6&&_0x32accd>_0x4a56a6){return db['License'][_0xc453('0x64')]({'where':{'id':0x1}})[_0xc453('0x1f')](function(_0x2b7888){if(_0x2b7888){_0x2b7888[_0xc453('0x10c')](_0xc453('0x10d'));}});}})['then'](function(){if(_0x517ecb['Interval']&&_0x517ecb['Interval']['Intervals']){var _0x2bd383=[];for(var _0x5783e0=0x0;_0x5783e0<_0x517ecb[_0xc453('0x10e')][_0xc453('0x109')][_0xc453('0x49')];_0x5783e0++){var _0x47fae5=_0x517ecb[_0xc453('0x10e')][_0xc453('0x109')][_0x5783e0]['get']({'plain':!![]});_0x2bd383[_0xc453('0xb8')](iftimePromise(_0x47fae5,_0x517ecb));}return BPromise[_0xc453('0x10f')](_0x2bd383)[_0xc453('0x1f')](function(_0x3d1b5b){return _[_0xc453('0x110')](_0x3d1b5b);});}else{return!![];}})['then'](function(_0x3f76cc){var _0x1c7d0c=fs[_0xc453('0xcd')](path[_0xc453('0x77')](config[_0xc453('0x78')],'server/files/chat/iframe.js'),'utf8');var _0x33d3a7={'remote':_0x517ecb[_0xc453('0x111')],'query':querystring[_0xc453('0x23')](_[_0xc453('0x4e')](_0x517ecb[_0xc453('0x35')]({'plain':!![]}),{'customerIp':_0x51ea62['headers'][_0xc453('0xa3')]||_0x51ea62[_0xc453('0x87')][_0xc453('0x112')]||_0x51ea62['connection'][_0xc453('0x113')]||_0x51ea62['ip'],'referer':_0x51ea62[_0xc453('0x87')][_0xc453('0xa9')],'openedInteractions':_0x4ae00b,'maxInteractions':_0x4a56a6,'virtual':_0x575596['virtual'],'online':_0x3f76cc,'custom':_0x575596}))[_0xc453('0x114')](/'/g,'\x5c\x27')};_0x9f4199['send'](ejs[_0xc453('0x115')](Mustache[_0xc453('0x115')](_0x1c7d0c,_0x33d3a7),{'proactiveActions':_0x5bc269,'alignment':_0x517ecb[_0xc453('0x116')],'verticalAlignment':_0x517ecb[_0xc453('0x117')],'div_color':_0x517ecb['color'],'text_color':_0x517ecb[_0xc453('0x118')],'button_color':_0x517ecb[_0xc453('0x119')],'background_color':_0x517ecb['backgroundColor']}));})['catch'](handleError(_0x9f4199,null));};exports[_0xc453('0x11a')]=function(_0x42ca9d,_0x18fe30,_0x1d84dc){return db[_0xc453('0x3d')][_0xc453('0x64')]({'where':{'id':_0x42ca9d['params']['id']}})['then'](handleEntityNotFound(_0x18fe30,null))['then'](function(_0x4c9c1b){if(_0x4c9c1b){return db[_0xc453('0xd9')][_0xc453('0xda')](function(_0x4b7418){return db['ChatApplication'][_0xc453('0x5e')]({'where':{'ChatWebsiteId':_0x42ca9d[_0xc453('0x5f')]['id']},'transaction':_0x4b7418})['then'](function(_0x238b75){var _0x26f480=_['map'](_0x42ca9d[_0xc453('0x58')],function(_0x437f53){_0x437f53[_0xc453('0x61')]=_0x42ca9d[_0xc453('0x5f')]['id'];return _0x437f53;});return db[_0xc453('0x99')][_0xc453('0xdc')](_0x26f480,{'transaction':_0x4b7418});});})['then'](function(){return db['ChatApplication'][_0xc453('0x11b')]({'where':{'ChatWebsiteId':_0x42ca9d[_0xc453('0x5f')]['id']},'order':'priority'});});}})['then'](respondWithResult(_0x18fe30,null))[_0xc453('0x28')](handleError(_0x18fe30,null));};exports[_0xc453('0x11c')]=function(_0x42e7c7,_0x27ca02,_0x1ea1c4){var _0x38ec30={};var _0x5e65e2={};var _0x521a3a;var _0x36a8fa;return db[_0xc453('0x3d')][_0xc453('0x64')]({'where':{'id':_0x42e7c7[_0xc453('0x5f')]['id']}})[_0xc453('0x1f')](handleEntityNotFound(_0x27ca02,null))[_0xc453('0x1f')](function(_0xd3d26d){if(_0xd3d26d){_0x521a3a=_0xd3d26d;_0x5e65e2[_0xc453('0x41')]=_[_0xc453('0x44')](db[_0xc453('0x99')]['rawAttributes']);_0x5e65e2[_0xc453('0x43')]=_[_0xc453('0x44')](_0x42e7c7[_0xc453('0x43')]);_0x5e65e2['filters']=_[_0xc453('0x46')](_0x5e65e2[_0xc453('0x41')],_0x5e65e2[_0xc453('0x43')]);_0x38ec30[_0xc453('0x47')]=_[_0xc453('0x46')](_0x5e65e2[_0xc453('0x41')],qs['fields'](_0x42e7c7[_0xc453('0x43')][_0xc453('0x48')]));_0x38ec30[_0xc453('0x47')]=_0x38ec30[_0xc453('0x47')][_0xc453('0x49')]?_0x38ec30[_0xc453('0x47')]:_0x5e65e2[_0xc453('0x41')];_0x38ec30['order']=qs['sort'](_0x42e7c7[_0xc453('0x43')]['sort']);_0x38ec30['where']=qs['filters'](_[_0xc453('0x4c')](_0x42e7c7[_0xc453('0x43')],_0x5e65e2[_0xc453('0x45')]));if(_0x42e7c7[_0xc453('0x43')]['filter']){_0x38ec30[_0xc453('0x4d')]=_['merge'](_0x38ec30[_0xc453('0x4d')],{'$or':_[_0xc453('0x42')](_0x38ec30[_0xc453('0x47')],function(_0x445b11){var _0x76b596={};_0x76b596[_0x445b11]={'$like':'%'+_0x42e7c7[_0xc453('0x43')]['filter']+'%'};return _0x76b596;})});}_0x38ec30=_[_0xc453('0x4e')]({},_0x38ec30,_0x42e7c7[_0xc453('0x55')]);return _0x521a3a[_0xc453('0x11c')](_0x38ec30);}})[_0xc453('0x1f')](function(_0x29275d){if(_0x29275d){_0x36a8fa=_0x29275d[_0xc453('0x49')];if(!_0x42e7c7[_0xc453('0x43')]['hasOwnProperty']('nolimit')){_0x38ec30[_0xc453('0x2d')]=qs[_0xc453('0x2d')](_0x42e7c7[_0xc453('0x43')][_0xc453('0x2d')]);_0x38ec30[_0xc453('0x2c')]=qs[_0xc453('0x2c')](_0x42e7c7['query'][_0xc453('0x2c')]);}return _0x521a3a[_0xc453('0x11c')](_0x38ec30);}})[_0xc453('0x1f')](function(_0x2a4455){if(_0x2a4455){return _0x2a4455?{'count':_0x36a8fa,'rows':_0x2a4455}:null;}})['then'](respondWithResult(_0x27ca02,null))['catch'](handleError(_0x27ca02,null));};exports[_0xc453('0x11d')]=function(_0x3e9d,_0x3610b7,_0x1da3b3){return db['chatProactiveAction'][_0xc453('0x56')]({'where':{'id':_0x3e9d['params']['id']}})[_0xc453('0x1f')](handleEntityNotFound(_0x3610b7,null))['then'](function(_0x5e23dd){if(_0x5e23dd){return _0x5e23dd[_0xc453('0x11d')](_0x3e9d[_0xc453('0x58')][_0xc453('0x68')],_[_0xc453('0x11e')](_0x3e9d[_0xc453('0x58')],[_0xc453('0x68'),'id'])||{});}})[_0xc453('0x1f')](respondWithResult(_0x3610b7,null))[_0xc453('0x28')](handleError(_0x3610b7,null));};exports[_0xc453('0x10a')]=function(_0x367aff,_0x2746ed,_0x36b424){var _0x2b766e={};var _0x48fdfc={};var _0x2f9782;var _0x19ce27;return db['ChatWebsite']['findOne']({'where':{'id':_0x367aff[_0xc453('0x5f')]['id']}})[_0xc453('0x1f')](handleEntityNotFound(_0x2746ed,null))[_0xc453('0x1f')](function(_0x454111){if(_0x454111){_0x2f9782=_0x454111;_0x48fdfc[_0xc453('0x41')]=_[_0xc453('0x44')](db[_0xc453('0x11f')][_0xc453('0x3e')]);_0x48fdfc[_0xc453('0x43')]=_[_0xc453('0x44')](_0x367aff['query']);_0x48fdfc['filters']=_[_0xc453('0x46')](_0x48fdfc['model'],_0x48fdfc[_0xc453('0x43')]);_0x2b766e['attributes']=_['intersection'](_0x48fdfc['model'],qs['fields'](_0x367aff[_0xc453('0x43')][_0xc453('0x48')]));_0x2b766e['attributes']=_0x2b766e[_0xc453('0x47')]['length']?_0x2b766e[_0xc453('0x47')]:_0x48fdfc['model'];_0x2b766e[_0xc453('0x4a')]=qs[_0xc453('0x4b')](_0x367aff[_0xc453('0x43')][_0xc453('0x4b')]);_0x2b766e[_0xc453('0x4d')]=qs[_0xc453('0x45')](_[_0xc453('0x4c')](_0x367aff[_0xc453('0x43')],_0x48fdfc[_0xc453('0x45')]));if(_0x367aff[_0xc453('0x43')][_0xc453('0x65')]){_0x2b766e[_0xc453('0x4d')]=_[_0xc453('0x4e')](_0x2b766e[_0xc453('0x4d')],{'$or':_[_0xc453('0x42')](_0x2b766e[_0xc453('0x47')],function(_0x2d189f){var _0xdfd502={};_0xdfd502[_0x2d189f]={'$like':'%'+_0x367aff['query'][_0xc453('0x65')]+'%'};return _0xdfd502;})});}_0x2b766e=_[_0xc453('0x4e')]({},_0x2b766e,_0x367aff[_0xc453('0x55')]);return _0x2f9782[_0xc453('0x10a')](_0x2b766e);}})['then'](function(_0x338592){if(_0x338592){_0x19ce27=_0x338592['length'];if(!_0x367aff[_0xc453('0x43')][_0xc453('0xf7')](_0xc453('0xf8'))){_0x2b766e[_0xc453('0x2d')]=qs[_0xc453('0x2d')](_0x367aff[_0xc453('0x43')][_0xc453('0x2d')]);_0x2b766e[_0xc453('0x2c')]=qs[_0xc453('0x2c')](_0x367aff['query'][_0xc453('0x2c')]);}return _0x2f9782[_0xc453('0x10a')](_0x2b766e);}})[_0xc453('0x1f')](function(_0x488bd3){if(_0x488bd3){return _0x488bd3?{'count':_0x19ce27,'rows':_0x488bd3}:null;}})['then'](respondWithResult(_0x2746ed,null))['catch'](handleError(_0x2746ed,null));};exports[_0xc453('0x120')]=function(_0x2824b3,_0x5a7e1b,_0x304631){var _0x53f68d=_0x2824b3['query'][_0xc453('0x121')]===_0xc453('0x122')?_0xc453('0x123'):_0xc453('0x124');return db['ChatWebsite']['find']({'attributes':['id',_0x53f68d],'where':{'id':_0x2824b3[_0xc453('0x5f')]['id']}})[_0xc453('0x1f')](handleEntityNotFound(_0x5a7e1b,null))['then'](function(_0x2d1ada){if(_0x2d1ada){var _0x348f4f=_0x2d1ada[_0x53f68d];var _0x27289d=_0x348f4f&&_0x348f4f[_0xc453('0x125')]?_0x348f4f[_0xc453('0x125')]:[];_0x5a7e1b[_0xc453('0x3a')]({'fromKey':_[_0xc453('0x7b')](_0x348f4f[_0xc453('0x126')])?undefined:_0x348f4f[_0xc453('0x126')],'count':_0x27289d['length'],'rows':_0x27289d});}})['catch'](handleError(_0x5a7e1b,null));};exports['getOfflineMessages']=function(_0x537181,_0x53ff2d,_0x480895){var _0x5e4b7e={'raw':![],'where':{}};var _0x41c896={};var _0x3ad08e={'count':0x0,'rows':[]};return db['ChatWebsite'][_0xc453('0x64')]({'where':{'id':_0x537181[_0xc453('0x5f')]['id']}})['then'](handleEntityNotFound(_0x53ff2d,null))[_0xc453('0x1f')](function(_0x1b3043){if(_0x1b3043){_0x41c896[_0xc453('0x41')]=_['keys'](db[_0xc453('0xd2')]['rawAttributes']);_0x41c896[_0xc453('0x43')]=_[_0xc453('0x44')](_0x537181[_0xc453('0x43')]);_0x41c896[_0xc453('0x45')]=_[_0xc453('0x46')](_0x41c896[_0xc453('0x41')],_0x41c896[_0xc453('0x43')]);_0x5e4b7e[_0xc453('0x47')]=_['intersection'](_0x41c896[_0xc453('0x41')],qs['fields'](_0x537181[_0xc453('0x43')][_0xc453('0x48')]));_0x5e4b7e[_0xc453('0x47')]=_0x5e4b7e['attributes']['length']?_0x5e4b7e[_0xc453('0x47')]:_0x41c896[_0xc453('0x41')];if(!_0x537181[_0xc453('0x43')][_0xc453('0xf7')]('nolimit')){_0x5e4b7e[_0xc453('0x2d')]=qs[_0xc453('0x2d')](_0x537181[_0xc453('0x43')][_0xc453('0x2d')]);_0x5e4b7e[_0xc453('0x2c')]=qs[_0xc453('0x2c')](_0x537181[_0xc453('0x43')][_0xc453('0x2c')]);}_0x5e4b7e[_0xc453('0x4a')]=qs['sort'](_0x537181[_0xc453('0x43')][_0xc453('0x4b')]);_0x5e4b7e[_0xc453('0x4d')]=qs[_0xc453('0x45')](_['pick'](_0x537181[_0xc453('0x43')],_0x41c896[_0xc453('0x45')]));_0x5e4b7e[_0xc453('0x4d')]['ChatWebsiteId']=_0x1b3043['id'];if(_0x537181[_0xc453('0x43')][_0xc453('0x65')]){_0x5e4b7e[_0xc453('0x4d')]=_[_0xc453('0x4e')](_0x5e4b7e[_0xc453('0x4d')],{'$or':_[_0xc453('0x42')](_0x5e4b7e['attributes'],function(_0x36f14c){var _0x14fdd4={};_0x14fdd4[_0x36f14c]={'$like':'%'+_0x537181[_0xc453('0x43')][_0xc453('0x65')]+'%'};return _0x14fdd4;})});}_0x5e4b7e=_[_0xc453('0x4e')]({},_0x5e4b7e,_0x537181[_0xc453('0x55')]);return db[_0xc453('0xd2')][_0xc453('0x2f')]({'where':_0x5e4b7e[_0xc453('0x4d')]})[_0xc453('0x1f')](function(_0x56e206){_0x3ad08e[_0xc453('0x2f')]=_0x56e206;if(_0x537181[_0xc453('0x43')]['includeAll']){_0x5e4b7e['include']=[{'all':!![]}];}else{_0x5e4b7e[_0xc453('0x50')]=[{'model':db[_0xc453('0x8a')],'as':_0xc453('0xf9'),'required':![]},{'model':db[_0xc453('0xdb')],'as':_0xc453('0x127'),'required':![]}];}return db['ChatOfflineMessage']['findAll'](_0x5e4b7e);})[_0xc453('0x1f')](function(_0x8d384a){_0x3ad08e[_0xc453('0x52')]=_0x8d384a;return _0x3ad08e;});}})[_0xc453('0x1f')](respondWithFilteredResult(_0x53ff2d,_0x5e4b7e))['catch'](handleError(_0x53ff2d,null));};exports[_0xc453('0x128')]=function(_0x2eb3e6,_0x4762c2,_0x3f970f){return db[_0xc453('0x3d')]['find']({'where':{'id':_0x2eb3e6[_0xc453('0x5f')]['id']}})[_0xc453('0x1f')](handleEntityNotFound(_0x4762c2,null))['then'](function(_0x539ff4){if(_0x539ff4){return _0x539ff4[_0xc453('0x128')](_0x2eb3e6[_0xc453('0x58')][_0xc453('0x68')],_[_0xc453('0x11e')](_0x2eb3e6[_0xc453('0x58')],['ids','id'])||{})[_0xc453('0xcc')](function(_0xcb37ef){for(var _0x53e20e=0x0;_0x53e20e<_0x2eb3e6[_0xc453('0x58')]['ids']['length'];_0x53e20e+=0x1){socket[_0xc453('0x129')]('userChatWebsite:save',{'UserId':_0x2eb3e6['body'][_0xc453('0x68')][_0x53e20e],'ChatWebsiteId':_0x2eb3e6[_0xc453('0x5f')]['id']});}return _0xcb37ef;});}})['then'](respondWithResult(_0x4762c2,null))[_0xc453('0x28')](handleError(_0x4762c2,null));};exports[_0xc453('0x12a')]=function(_0x1cf8c5,_0x32d34d,_0xfded64){return db[_0xc453('0x3d')][_0xc453('0x56')]({'where':{'id':_0x1cf8c5[_0xc453('0x5f')]['id']}})[_0xc453('0x1f')](handleEntityNotFound(_0x32d34d,null))[_0xc453('0x1f')](function(_0x5a98d9){if(_0x5a98d9){return _0x5a98d9[_0xc453('0x12a')](_0x1cf8c5[_0xc453('0x43')][_0xc453('0x68')])['then'](function(){if(_['isArray'](_0x1cf8c5[_0xc453('0x43')][_0xc453('0x68')])){for(var _0x3e9102=0x0;_0x3e9102<_0x1cf8c5[_0xc453('0x43')][_0xc453('0x68')][_0xc453('0x49')];_0x3e9102+=0x1){socket['emit'](_0xc453('0x12b'),{'UserId':Number(_0x1cf8c5[_0xc453('0x43')][_0xc453('0x68')][_0x3e9102]),'ChatWebsiteId':Number(_0x1cf8c5[_0xc453('0x5f')]['id'])});}}else{socket['emit'](_0xc453('0x12b'),{'UserId':Number(_0x1cf8c5[_0xc453('0x43')][_0xc453('0x68')]),'ChatWebsiteId':Number(_0x1cf8c5[_0xc453('0x5f')]['id'])});}});}})[_0xc453('0x1f')](respondWithStatusCode(_0x32d34d,null))[_0xc453('0x28')](handleError(_0x32d34d,null));};exports['getAgents']=function(_0x55b9a1,_0x10908e,_0x2a102a){var _0x25976b={};var _0x15d54a={};var _0x59001f;var _0x4261cb;return db[_0xc453('0x3d')]['findOne']({'where':{'id':_0x55b9a1[_0xc453('0x5f')]['id']}})[_0xc453('0x1f')](handleEntityNotFound(_0x10908e,null))['then'](function(_0x4a758d){if(_0x4a758d){_0x59001f=_0x4a758d;_0x15d54a[_0xc453('0x41')]=_[_0xc453('0x44')](db['User'][_0xc453('0x3e')]);_0x15d54a[_0xc453('0x43')]=_[_0xc453('0x44')](_0x55b9a1[_0xc453('0x43')]);_0x15d54a[_0xc453('0x45')]=_['intersection'](_0x15d54a[_0xc453('0x41')],_0x15d54a[_0xc453('0x43')]);_0x25976b[_0xc453('0x47')]=_[_0xc453('0x46')](_0x15d54a[_0xc453('0x41')],qs[_0xc453('0x48')](_0x55b9a1[_0xc453('0x43')][_0xc453('0x48')]));_0x25976b[_0xc453('0x47')]=_0x25976b['attributes'][_0xc453('0x49')]?_0x25976b[_0xc453('0x47')]:_0x15d54a[_0xc453('0x41')];_0x25976b[_0xc453('0x4a')]=qs[_0xc453('0x4b')](_0x55b9a1[_0xc453('0x43')][_0xc453('0x4b')]);_0x25976b[_0xc453('0x4d')]=qs[_0xc453('0x45')](_[_0xc453('0x4c')](_0x55b9a1['query'],_0x15d54a['filters']));if(_0x55b9a1[_0xc453('0x43')][_0xc453('0x65')]){_0x25976b[_0xc453('0x4d')]=_[_0xc453('0x4e')](_0x25976b[_0xc453('0x4d')],{'$or':_[_0xc453('0x42')](_0x25976b[_0xc453('0x47')],function(_0x49a67c){var _0x73de7d={};_0x73de7d[_0x49a67c]={'$like':'%'+_0x55b9a1[_0xc453('0x43')]['filter']+'%'};return _0x73de7d;})});}_0x25976b=_[_0xc453('0x4e')]({},_0x25976b,_0x55b9a1[_0xc453('0x55')]);return _0x59001f[_0xc453('0x12c')](_0x25976b);}})[_0xc453('0x1f')](function(_0x30ab45){if(_0x30ab45){_0x4261cb=_0x30ab45[_0xc453('0x49')];if(!_0x55b9a1[_0xc453('0x43')][_0xc453('0xf7')](_0xc453('0xf8'))){_0x25976b[_0xc453('0x2d')]=qs[_0xc453('0x2d')](_0x55b9a1[_0xc453('0x43')][_0xc453('0x2d')]);_0x25976b['offset']=qs['offset'](_0x55b9a1['query'][_0xc453('0x2c')]);}return _0x59001f[_0xc453('0x12c')](_0x25976b);}})[_0xc453('0x1f')](function(_0x457b04){if(_0x457b04){return _0x457b04?{'count':_0x4261cb,'rows':_0x457b04}:null;}})[_0xc453('0x1f')](respondWithResult(_0x10908e,null))['catch'](handleError(_0x10908e,null));};