Built motion from commit b5996064.|2.6.21
[motion2.git] / server / services / ami / model / agent.js
index e576978..30656b4 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x2a1f=['mobile','interface','online','voiceStatus','voiceStatusTime','voiceStatusCallerIdNumber','onhold','local','updateStatusRealtime','toLowerCase','inuse','talking','toNumber','format','email','user:save','lodash','util','moment','md5','ioredis','../../../config/environment','name','accountcode','fullname','state','unknown','stateTime','status','address','phone'];(function(_0x4a53d,_0x58a95e){var _0x27410e=function(_0x38fc90){while(--_0x38fc90){_0x4a53d['push'](_0x4a53d['shift']());}};_0x27410e(++_0x58a95e);}(_0x2a1f,0x184));var _0xf2a1=function(_0x3dd15e,_0x1f0015){_0x3dd15e=_0x3dd15e-0x0;var _0x231fd0=_0x2a1f[_0x3dd15e];return _0x231fd0;};'use strict';var _=require(_0xf2a1('0x0'));var util=require(_0xf2a1('0x1'));var moment=require(_0xf2a1('0x2'));var md5=require(_0xf2a1('0x3'));var Redis=require(_0xf2a1('0x4'));var config=require(_0xf2a1('0x5'));config['redis']=_['defaults'](config['redis'],{'host':'localhost','port':0x18eb});var io=require('socket.io-emitter')(new Redis(config['redis']));function Agent(_0x28c7a2){this['id']=_0x28c7a2['id']||0x0;this['name']=_0x28c7a2[_0xf2a1('0x6')]||'';this['email']=_0x28c7a2['email']||'';this[_0xf2a1('0x7')]=_0x28c7a2[_0xf2a1('0x7')]||'';this[_0xf2a1('0x8')]=_0x28c7a2[_0xf2a1('0x8')]||'';this[_0xf2a1('0x9')]=_0xf2a1('0xa');this[_0xf2a1('0xb')]=0x0;this[_0xf2a1('0xc')]='unknown';this[_0xf2a1('0xd')]='';this[_0xf2a1('0xe')]='';this[_0xf2a1('0xf')]='';this[_0xf2a1('0x10')]='';this[_0xf2a1('0x11')]=_0x28c7a2[_0xf2a1('0x11')]||![];this[_0xf2a1('0x12')]='unknown';this[_0xf2a1('0x13')]=0x0;this[_0xf2a1('0x14')]='';this['voiceStatusQueue']='';this[_0xf2a1('0x15')]=![];this[_0xf2a1('0x16')]=![];this[_0xf2a1('0x3')]='';}Agent['prototype'][_0xf2a1('0x17')]=function(_0x40be06){var _0x5dac2a;if(_0x40be06&&_0x40be06[_0xf2a1('0x9')]){_0x5dac2a=_0x40be06[_0xf2a1('0x9')][_0xf2a1('0x18')]();switch(_0x5dac2a){case'not_inuse':_0x5dac2a='idle';break;case _0xf2a1('0x19'):_0x5dac2a=_0xf2a1('0x1a');break;}}if(_0x5dac2a&&this['voiceStatus']!==_0x5dac2a||_0x40be06['statePause']){this[_0xf2a1('0x13')]=_[_0xf2a1('0x1b')](moment()[_0xf2a1('0x1c')]('x'));}if(_0x5dac2a){this['voiceStatus']=_0x5dac2a;}var _0x3aaeb1={'id':this['id'],'name':this['name'],'email':this[_0xf2a1('0x1d')],'accountcode':this['accountcode'],'fullname':this[_0xf2a1('0x8')],'state':this['state'],'stateTime':this[_0xf2a1('0xb')],'status':this[_0xf2a1('0xc')],'address':this[_0xf2a1('0xd')],'online':this[_0xf2a1('0x11')],'voiceStatus':this[_0xf2a1('0x12')],'voiceStatusTime':this[_0xf2a1('0x13')],'voiceStatusCallerIdNumber':this[_0xf2a1('0x14')],'voiceStatusQueue':this['voiceStatusQueue'],'interface':this[_0xf2a1('0x10')],'onhold':this[_0xf2a1('0x15')]};var _0x1d22a2=md5(JSON['stringify'](_0x3aaeb1));if(this[_0xf2a1('0x3')]!==_0x1d22a2){this[_0xf2a1('0x3')]=_0x1d22a2;io['to'](util[_0xf2a1('0x1c')]('user:%s',_0x3aaeb1['name']))['emit'](_0xf2a1('0x1e'),_0x3aaeb1);}};module['exports']=Agent;
\ No newline at end of file
+var _0x475a=['toNumber','format','onhold','emit','omit','lodash','util','ioredis','redis','defaults','localhost','socket.io-emitter','name','email','accountcode','fullname','state','unknown','stateTime','status','address','phone','interface','online','voiceStatus','voiceStatusTime','voiceStatusCallerIdNumber','voiceStatusQueue','md5','prototype','updateStatusRealtime','toLowerCase','idle','inuse','talking','statePause'];(function(_0x17d9e3,_0x1f969c){var _0x14192d=function(_0x159745){while(--_0x159745){_0x17d9e3['push'](_0x17d9e3['shift']());}};_0x14192d(++_0x1f969c);}(_0x475a,0x95));var _0xa475=function(_0x122ef9,_0x451d2a){_0x122ef9=_0x122ef9-0x0;var _0x42fba0=_0x475a[_0x122ef9];return _0x42fba0;};'use strict';var _=require(_0xa475('0x0'));var util=require(_0xa475('0x1'));var moment=require('moment');var md5=require('md5');var Redis=require(_0xa475('0x2'));var config=require('../../../config/environment');config[_0xa475('0x3')]=_[_0xa475('0x4')](config[_0xa475('0x3')],{'host':_0xa475('0x5'),'port':0x18eb});var io=require(_0xa475('0x6'))(new Redis(config[_0xa475('0x3')]));function Agent(_0x4041c0){this['id']=_0x4041c0['id']||0x0;this[_0xa475('0x7')]=_0x4041c0[_0xa475('0x7')]||'';this[_0xa475('0x8')]=_0x4041c0[_0xa475('0x8')]||'';this[_0xa475('0x9')]=_0x4041c0[_0xa475('0x9')]||'';this[_0xa475('0xa')]=_0x4041c0[_0xa475('0xa')]||'';this[_0xa475('0xb')]=_0xa475('0xc');this[_0xa475('0xd')]=0x0;this[_0xa475('0xe')]=_0xa475('0xc');this[_0xa475('0xf')]='';this[_0xa475('0x10')]='';this['mobile']='';this[_0xa475('0x11')]='';this[_0xa475('0x12')]=_0x4041c0['online']||![];this[_0xa475('0x13')]=_0xa475('0xc');this[_0xa475('0x14')]=0x0;this[_0xa475('0x15')]='';this[_0xa475('0x16')]='';this['onhold']=![];this['local']=![];this[_0xa475('0x17')]='';}Agent[_0xa475('0x18')][_0xa475('0x19')]=function(_0x6a992f){var _0x40f78d;if(_0x6a992f&&_0x6a992f['state']){_0x40f78d=_0x6a992f['state'][_0xa475('0x1a')]();switch(_0x40f78d){case'not_inuse':_0x40f78d=_0xa475('0x1b');break;case _0xa475('0x1c'):_0x40f78d=_0xa475('0x1d');break;}}if(_0x40f78d&&this[_0xa475('0x13')]!==_0x40f78d||_0x6a992f[_0xa475('0x1e')]){this[_0xa475('0x14')]=_[_0xa475('0x1f')](moment()[_0xa475('0x20')]('x'));}if(_0x40f78d){this[_0xa475('0x13')]=_0x40f78d;}var _0x480d5c={'id':this['id'],'name':this[_0xa475('0x7')],'email':this[_0xa475('0x8')],'accountcode':this[_0xa475('0x9')],'fullname':this['fullname'],'state':this[_0xa475('0xb')],'stateTime':this['stateTime'],'status':this[_0xa475('0xe')],'address':this[_0xa475('0xf')],'online':this['online'],'voiceStatus':this[_0xa475('0x13')],'voiceStatusTime':this[_0xa475('0x14')],'voiceStatusCallerIdNumber':this['voiceStatusCallerIdNumber'],'voiceStatusQueue':this[_0xa475('0x16')],'interface':this['interface'],'onhold':this[_0xa475('0x21')]};var _0xf6a10e=md5(JSON['stringify'](_0x480d5c));if(this['md5']!==_0xf6a10e){this[_0xa475('0x17')]=_0xf6a10e;io['to'](util['format']('user:%s',_0x480d5c[_0xa475('0x7')]))[_0xa475('0x22')]('user:ami:update',_[_0xa475('0x23')](_0x480d5c,[_0xa475('0x12')]));io[_0xa475('0x22')]('user:presence',_0x480d5c);}};module['exports']=Agent;
\ No newline at end of file