Built motion from commit (unavailable).|2.5.21
[motion2.git] / server / services / routing / model / agent.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 _0xf53d=['chatCurrentCapacity','mailCurrentCapacity','faxStatus','faxCapacity','faxCurrentCapacity','smsStatus','smsStatusTime','smsCapacity','smsCurrentCapacity','whatsappStatus','whatsappStatusTime','whatsappCapacity','openchannelStatus','openchannelStatusTime','openchannelCapacity','openchannelCurrentCapacity','busy','md5','getChannelStatus','CurrentCapacity','Capacity','maxcapacity','working','idle','updateRealtime','mail','chat','fax','sms','whatsapp','length','Status','StatusTime','toNumber','format','mailStatus','mailStatusTime','faxStatusTime','whatsappCurrentCapacity','busyQueue','stringify','user:save','exports','lodash','moment','ioredis','../../../config/environment','redis','socket.io-emitter','name','online','voicePause','chatPause','mailPause','faxPause','smsPause','openchannelPause','chatStatus','unknown','chatStatusTime','chatCapacity'];(function(_0x390ff2,_0x366734){var _0x224cd8=function(_0x3aed06){while(--_0x3aed06){_0x390ff2['push'](_0x390ff2['shift']());}};_0x224cd8(++_0x366734);}(_0xf53d,0x199));var _0xdf53=function(_0x2e62a8,_0x32fb07){_0x2e62a8=_0x2e62a8-0x0;var _0x765eeb=_0xf53d[_0x2e62a8];return _0x765eeb;};'use strict';var _=require(_0xdf53('0x0'));var moment=require(_0xdf53('0x1'));var md5=require('md5');var Redis=require(_0xdf53('0x2'));var config=require(_0xdf53('0x3'));config[_0xdf53('0x4')]=_['defaults'](config[_0xdf53('0x4')],{'host':'localhost','port':0x18eb});var io=require(_0xdf53('0x5'))(new Redis(config['redis']));function Agent(_0x531636){this['id']=_0x531636['id']||0x0;this[_0xdf53('0x6')]=_0x531636['name']||'';this[_0xdf53('0x7')]=_0x531636[_0xdf53('0x7')]||!![];this[_0xdf53('0x8')]=_0x531636[_0xdf53('0x8')]||![];this[_0xdf53('0x9')]=_0x531636[_0xdf53('0x9')]||![];this[_0xdf53('0xa')]=_0x531636[_0xdf53('0xa')]||![];this['faxPause']=_0x531636[_0xdf53('0xb')]||![];this[_0xdf53('0xc')]=_0x531636['smsPause']||![];this[_0xdf53('0xd')]=_0x531636['openchannelPause']||![];this[_0xdf53('0xe')]=_0xdf53('0xf');this[_0xdf53('0x10')]=0x0;this[_0xdf53('0x11')]=_0x531636[_0xdf53('0x11')]||0x0;this[_0xdf53('0x12')]=0x0;this['mailStatus']=_0xdf53('0xf');this['mailStatusTime']=0x0;this['mailCapacity']=_0x531636['mailCapacity']||0x0;this[_0xdf53('0x13')]=0x0;this[_0xdf53('0x14')]=_0xdf53('0xf');this['faxStatusTime']=0x0;this[_0xdf53('0x15')]=_0x531636[_0xdf53('0x15')]||0x0;this[_0xdf53('0x16')]=0x0;this[_0xdf53('0x17')]=_0xdf53('0xf');this[_0xdf53('0x18')]=0x0;this[_0xdf53('0x19')]=_0x531636[_0xdf53('0x19')]||0x0;this[_0xdf53('0x1a')]=0x0;this[_0xdf53('0x1b')]=_0xdf53('0xf');this[_0xdf53('0x1c')]=0x0;this['whatsappCapacity']=_0x531636[_0xdf53('0x1d')]||0x0;this['whatsappCurrentCapacity']=0x0;this[_0xdf53('0x1e')]=_0xdf53('0xf');this[_0xdf53('0x1f')]=0x0;this['openchannelCapacity']=_0x531636[_0xdf53('0x20')]||0x0;this[_0xdf53('0x21')]=0x0;this[_0xdf53('0x22')]=![];this['busyQueue']=undefined;this[_0xdf53('0x23')]='';this['updateRealtime']();}Agent['prototype'][_0xdf53('0x24')]=function(_0x4810d0){if(this[_0x4810d0+_0xdf53('0x25')]>0x0){if(this[_0x4810d0+_0xdf53('0x26')]>0x0&&this[_0x4810d0+_0xdf53('0x25')]>=this[_0x4810d0+_0xdf53('0x26')]){return _0xdf53('0x27');}else{return _0xdf53('0x28');}}else{return _0xdf53('0x29');}};Agent['prototype'][_0xdf53('0x2a')]=function(){var _0x344936=[_0xdf53('0x2b'),_0xdf53('0x2c'),'openchannel',_0xdf53('0x2d'),_0xdf53('0x2e'),_0xdf53('0x2f')];for(var _0x42a64e=0x0;_0x42a64e<_0x344936[_0xdf53('0x30')];_0x42a64e+=0x1){var _0x116136=this[_0xdf53('0x24')](_0x344936[_0x42a64e]);if(this[_0x344936[_0x42a64e]+_0xdf53('0x31')]!==_0x116136){this[_0x344936[_0x42a64e]+_0xdf53('0x32')]=_[_0xdf53('0x33')](moment()[_0xdf53('0x34')]('x'));}this[_0x344936[_0x42a64e]+_0xdf53('0x31')]=_0x116136;}var _0x413c3d={'id':this['id'],'name':this[_0xdf53('0x6')],'online':this[_0xdf53('0x7')],'voicePause':this['voicePause'],'chatPause':this[_0xdf53('0x9')],'mailPause':this['mailPause'],'smsPause':this['smsPause'],'faxPause':this[_0xdf53('0xb')],'openchannelPause':this[_0xdf53('0xd')],'chatStatus':this[_0xdf53('0xe')],'chatStatusTime':this[_0xdf53('0x10')],'chatCapacity':this[_0xdf53('0x11')],'chatCurrentCapacity':this[_0xdf53('0x12')],'mailStatus':this[_0xdf53('0x35')],'mailStatusTime':this[_0xdf53('0x36')],'mailCapacity':this['mailCapacity'],'mailCurrentCapacity':this[_0xdf53('0x13')],'faxStatus':this[_0xdf53('0x14')],'faxStatusTime':this[_0xdf53('0x37')],'faxCapacity':this[_0xdf53('0x15')],'faxCurrentCapacity':this[_0xdf53('0x16')],'smsStatus':this[_0xdf53('0x17')],'smsStatusTime':this[_0xdf53('0x18')],'smsCapacity':this[_0xdf53('0x19')],'smsCurrentCapacity':this[_0xdf53('0x1a')],'whatsappStatus':this[_0xdf53('0x1b')],'whatsappStatusTime':this[_0xdf53('0x1c')],'whatsappCapacity':this[_0xdf53('0x1d')],'whatsappCurrentCapacity':this[_0xdf53('0x38')],'openchannelStatus':this[_0xdf53('0x1e')],'openchannelStatusTime':this['openchannelStatusTime'],'openchannelCapacity':this[_0xdf53('0x20')],'openchannelCurrentCapacity':this['openchannelCurrentCapacity'],'busy':this[_0xdf53('0x22')],'busyQueue':this[_0xdf53('0x39')]};var _0x54f840=md5(JSON[_0xdf53('0x3a')](_0x413c3d));if(this['md5']!==_0x54f840){this[_0xdf53('0x23')]=_0x54f840;io['emit'](_0xdf53('0x3b'),_0x413c3d);}};module[_0xdf53('0x3c')]=Agent;