Built motion from commit 85328c08.|2.5.50
[motion2.git] / server / services / xdr / members.controller.js
index 91bf369..e8faa5d 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x2149=['channel','data2','type','getUserByInterface','then','membername','name','internal','getUserByName','split','request','CreateMemberReport','catch','error','some','startsWith','state','INUSE','device','voice','agent','NOT_INUSE','isNil','exitAt','now','duration','enterAt','agentcomplete','assign','queue','cdr','source','data3','destination','destinationchannel','data1','./utils','Queue:','info','format','MEMBER|%s|%s|%s|%s|%s|%s','uniqueid','interface'];(function(_0x1a36a5,_0x746928){var _0x746243=function(_0x481966){while(--_0x481966){_0x1a36a5['push'](_0x1a36a5['shift']());}};_0x746243(++_0x746928);}(_0x2149,0xd0));var _0x9214=function(_0x40415e,_0x56548f){_0x40415e=_0x40415e-0x0;var _0x25cb66=_0x2149[_0x40415e];return _0x25cb66;};'use strict';var _=require('lodash');var util=require('util');var utils=require(_0x9214('0x0'));var members={};var exclude=['Local/_attended@transfer',_0x9214('0x1')];function writeDB(_0xe03627){utils[_0x9214('0x2')](util[_0x9214('0x3')](_0x9214('0x4'),_0xe03627[_0x9214('0x5')],_0xe03627[_0x9214('0x6')],_0xe03627[_0x9214('0x7')],_0xe03627[_0x9214('0x8')],_0xe03627['membername'],_0xe03627[_0x9214('0x9')]));if(_0xe03627[_0x9214('0x6')]){utils[_0x9214('0xa')](_0xe03627[_0x9214('0x6')])[_0x9214('0xb')](function(_0x2325c2){if(_0x2325c2){_0xe03627[_0x9214('0xc')]=_0x2325c2[_0x9214('0xd')];_0xe03627[_0x9214('0xe')]=_0x2325c2[_0x9214('0xe')];utils['request']('CreateMemberReport',_0xe03627);}else{utils[_0x9214('0xf')](_0xe03627[_0x9214('0x6')][_0x9214('0x10')]('/')[0x1])[_0x9214('0xb')](function(_0x4e6240){if(_0x4e6240){_0xe03627[_0x9214('0xc')]=_0x4e6240[_0x9214('0xd')];_0xe03627[_0x9214('0xe')]=_0x4e6240['internal'];utils[_0x9214('0x11')](_0x9214('0x12'),_0xe03627);}});}})[_0x9214('0x13')](function(_0x49b45f){utils[_0x9214('0x14')](_0x49b45f);});}delete members[_0xe03627[_0x9214('0x6')]];}function startsWith(_0x5a006d,_0x29cbb7){return _[_0x9214('0x15')](_0x5a006d,function(_0x114625){return _[_0x9214('0x16')](_0x29cbb7,_0x114625);});}exports['devicestatechange']=function(_0x545d61){switch(_0x545d61[_0x9214('0x17')]){case _0x9214('0x18'):case'BUSY':if(!startsWith(exclude,_0x545d61[_0x9214('0x19')])){members[_0x545d61[_0x9214('0x19')]]={'channel':_0x9214('0x1a'),'interface':_0x545d61[_0x9214('0x19')],'type':'TALKING','enterAt':utils['now'](),'role':_0x9214('0x1b')};}break;case _0x9214('0x1c'):if(!_[_0x9214('0x1d')](members[_0x545d61['device']])){members[_0x545d61[_0x9214('0x19')]][_0x9214('0x1e')]=utils[_0x9214('0x1f')]();members[_0x545d61[_0x9214('0x19')]][_0x9214('0x20')]=utils['diffTime'](members[_0x545d61[_0x9214('0x19')]]['exitAt'],members[_0x545d61[_0x9214('0x19')]][_0x9214('0x21')]);if(members[_0x545d61['device']]['uniqueid']){writeDB(members[_0x545d61[_0x9214('0x19')]]);}}default:break;}};exports[_0x9214('0x22')]=function(_0x70f897){if(!_[_0x9214('0x1d')](members[_0x70f897[_0x9214('0x6')]])){members[_0x70f897['interface']]=_[_0x9214('0x23')](members[_0x70f897['interface']],{'data4':_0x70f897[_0x9214('0x24')],'uniqueid':_0x70f897[_0x9214('0x5')]});}};exports[_0x9214('0x25')]=function(_0x4c20b5){if(_0x4c20b5['channel']){var _0x17b415=_0x4c20b5[_0x9214('0x7')][_0x9214('0x10')]('-')[0x0];if(!_[_0x9214('0x1d')](members[_0x17b415])){members[_0x17b415]=_[_0x9214('0x23')](members[_0x17b415],{'data1':members[_0x17b415]['data1']||_0x4c20b5[_0x9214('0x9')],'data2':members[_0x17b415][_0x9214('0x8')]||_0x4c20b5[_0x9214('0x26')],'data3':members[_0x17b415][_0x9214('0x27')]||_0x4c20b5[_0x9214('0x28')],'uniqueid':members[_0x17b415][_0x9214('0x5')]||_0x4c20b5[_0x9214('0x5')]});if(members[_0x17b415][_0x9214('0x1e')]){writeDB(members[_0x17b415]);}}}if(_0x4c20b5[_0x9214('0x29')]){var _0x50a000=_0x4c20b5[_0x9214('0x29')][_0x9214('0x10')]('-')[0x0];if(!_['isNil'](members[_0x50a000])){members[_0x50a000]=_[_0x9214('0x23')](members[_0x50a000],{'data1':members[_0x50a000][_0x9214('0x2a')]||_0x4c20b5[_0x9214('0x9')],'data2':members[_0x50a000][_0x9214('0x8')]||_0x4c20b5['source'],'data3':members[_0x50a000]['data3']||_0x4c20b5[_0x9214('0x28')],'uniqueid':members[_0x50a000][_0x9214('0x5')]||_0x4c20b5[_0x9214('0x5')]});if(members[_0x50a000][_0x9214('0x1e')]){writeDB(members[_0x50a000]);}}}};
\ No newline at end of file
+var _0xce92=['source','destination','[%s][members][cdr]\x20type:%s\x20source:%s\x20destination:%s','data2','data3','destinationchannel','lodash','./utils','Local/_attended@transfer','Queue:','info','format','channel','membername','type','interface','getUserByInterface','then','internal','getUserByName','split','name','request','CreateMemberReport','catch','error','[%s][members][writeDB]','uniqueid','some','devicestatechange','debug','[%s][members][devicestatechange]','device','[%s][members][devicestatechange]\x20state:%s\x20interface:%s','state','BUSY','TALKING','now','agent','NOT_INUSE','exitAt','enterAt','agentcomplete','isNil','[%s][members][agentcomplete]','queue','assign','data1'];(function(_0x538e11,_0x3c01f2){var _0xebfb03=function(_0x34f22f){while(--_0x34f22f){_0x538e11['push'](_0x538e11['shift']());}};_0xebfb03(++_0x3c01f2);}(_0xce92,0x186));var _0x2ce9=function(_0x5e1f24,_0x442000){_0x5e1f24=_0x5e1f24-0x0;var _0x53823d=_0xce92[_0x5e1f24];return _0x53823d;};'use strict';var _=require(_0x2ce9('0x0'));var util=require('util');var utils=require(_0x2ce9('0x1'));var members={};var exclude=[_0x2ce9('0x2'),_0x2ce9('0x3')];function writeDB(_0x203ff1){utils[_0x2ce9('0x4')](util[_0x2ce9('0x5')]('[%s][members][writeDB]\x20interface:%s\x20channel:%s\x20data2:%s\x20agent:%s\x20type:%s',_0x203ff1['uniqueid'],_0x203ff1['interface'],_0x203ff1[_0x2ce9('0x6')],_0x203ff1['data2'],_0x203ff1[_0x2ce9('0x7')],_0x203ff1[_0x2ce9('0x8')]));if(_0x203ff1[_0x2ce9('0x9')]){utils[_0x2ce9('0xa')](_0x203ff1[_0x2ce9('0x9')])[_0x2ce9('0xb')](function(_0xd1c721){if(_0xd1c721){_0x203ff1[_0x2ce9('0x7')]=_0xd1c721['name'];_0x203ff1[_0x2ce9('0xc')]=_0xd1c721[_0x2ce9('0xc')];utils['request']('CreateMemberReport',_0x203ff1);}else{utils[_0x2ce9('0xd')](_0x203ff1[_0x2ce9('0x9')][_0x2ce9('0xe')]('/')[0x1])[_0x2ce9('0xb')](function(_0x5b29f2){if(_0x5b29f2){_0x203ff1[_0x2ce9('0x7')]=_0x5b29f2[_0x2ce9('0xf')];_0x203ff1[_0x2ce9('0xc')]=_0x5b29f2[_0x2ce9('0xc')];utils[_0x2ce9('0x10')](_0x2ce9('0x11'),_0x203ff1);}});}})[_0x2ce9('0x12')](function(_0x589f20){utils[_0x2ce9('0x13')](util[_0x2ce9('0x5')](_0x2ce9('0x14'),_0x203ff1[_0x2ce9('0x15')]),_0x589f20);});}delete members[_0x203ff1[_0x2ce9('0x9')]];}function startsWith(_0x27841d,_0x5c9432){return _[_0x2ce9('0x16')](_0x27841d,function(_0x270828){return _['startsWith'](_0x5c9432,_0x270828);});}exports[_0x2ce9('0x17')]=function(_0x528818){try{utils[_0x2ce9('0x18')](util[_0x2ce9('0x5')](_0x2ce9('0x19'),members[_0x528818['device']]?members[_0x528818['device']]['uniqueid']:_0x528818[_0x2ce9('0x1a')]),_0x528818);utils['info'](util['format'](_0x2ce9('0x1b'),members[_0x528818['device']]?members[_0x528818[_0x2ce9('0x1a')]][_0x2ce9('0x15')]:_0x528818[_0x2ce9('0x1a')],_0x528818[_0x2ce9('0x1c')],_0x528818[_0x2ce9('0x1a')]));switch(_0x528818[_0x2ce9('0x1c')]){case'INUSE':case _0x2ce9('0x1d'):if(!startsWith(exclude,_0x528818[_0x2ce9('0x1a')])){members[_0x528818['device']]={'channel':'voice','interface':_0x528818[_0x2ce9('0x1a')],'type':_0x2ce9('0x1e'),'enterAt':utils[_0x2ce9('0x1f')](),'role':_0x2ce9('0x20')};}break;case _0x2ce9('0x21'):if(!_['isNil'](members[_0x528818[_0x2ce9('0x1a')]])){members[_0x528818['device']][_0x2ce9('0x22')]=utils['now']();members[_0x528818[_0x2ce9('0x1a')]]['duration']=utils['diffTime'](members[_0x528818[_0x2ce9('0x1a')]][_0x2ce9('0x22')],members[_0x528818[_0x2ce9('0x1a')]][_0x2ce9('0x23')]);if(members[_0x528818[_0x2ce9('0x1a')]][_0x2ce9('0x15')]){writeDB(members[_0x528818[_0x2ce9('0x1a')]]);}}break;default:break;}}catch(_0x4bc703){utils[_0x2ce9('0x13')](util[_0x2ce9('0x5')](_0x2ce9('0x19'),members[_0x528818[_0x2ce9('0x1a')]]?members[_0x528818['device']][_0x2ce9('0x15')]:_0x528818['device']),_0x4bc703);}};exports[_0x2ce9('0x24')]=function(_0x335a49){try{if(!_[_0x2ce9('0x25')](members[_0x335a49['interface']])){utils[_0x2ce9('0x18')](util['format'](_0x2ce9('0x26'),_0x335a49[_0x2ce9('0x15')]),_0x335a49);utils['info'](util[_0x2ce9('0x5')]('[%s][members][agentcomplete]\x20interface:%s\x20queue:%s',_0x335a49['uniqueid'],_0x335a49[_0x2ce9('0x9')],_0x335a49[_0x2ce9('0x27')]));members[_0x335a49[_0x2ce9('0x9')]]=_['assign'](members[_0x335a49['interface']],{'data4':_0x335a49[_0x2ce9('0x27')],'uniqueid':_0x335a49[_0x2ce9('0x15')]});}}catch(_0x1b7424){utils[_0x2ce9('0x13')](util['format'](_0x2ce9('0x26'),_0x335a49[_0x2ce9('0x15')]),_0x1b7424);}};exports['cdr']=function(_0x4c8a7d){try{utils[_0x2ce9('0x18')](util[_0x2ce9('0x5')]('[%s][members][cdr]',_0x4c8a7d[_0x2ce9('0x15')]),_0x4c8a7d);if(_0x4c8a7d[_0x2ce9('0x6')]){var _0x265955=_0x4c8a7d[_0x2ce9('0x6')]['split']('-')[0x0];if(!_['isNil'](members[_0x265955])){members[_0x265955]=_[_0x2ce9('0x28')](members[_0x265955],{'data1':members[_0x265955][_0x2ce9('0x29')]||_0x4c8a7d[_0x2ce9('0x8')],'data2':members[_0x265955]['data2']||_0x4c8a7d[_0x2ce9('0x2a')],'data3':members[_0x265955]['data3']||_0x4c8a7d[_0x2ce9('0x2b')],'uniqueid':members[_0x265955]['uniqueid']||_0x4c8a7d[_0x2ce9('0x15')]});utils[_0x2ce9('0x4')](util[_0x2ce9('0x5')](_0x2ce9('0x2c'),_0x4c8a7d[_0x2ce9('0x15')],members[_0x265955][_0x2ce9('0x29')],members[_0x265955][_0x2ce9('0x2d')],members[_0x265955][_0x2ce9('0x2e')]));if(members[_0x265955][_0x2ce9('0x22')]){writeDB(members[_0x265955]);}}}if(_0x4c8a7d['destinationchannel']){var _0x20e61a=_0x4c8a7d[_0x2ce9('0x2f')]['split']('-')[0x0];if(!_[_0x2ce9('0x25')](members[_0x20e61a])){members[_0x20e61a]=_[_0x2ce9('0x28')](members[_0x20e61a],{'data1':members[_0x20e61a][_0x2ce9('0x29')]||_0x4c8a7d[_0x2ce9('0x8')],'data2':members[_0x20e61a]['data2']||_0x4c8a7d[_0x2ce9('0x2a')],'data3':members[_0x20e61a]['data3']||_0x4c8a7d['destination'],'uniqueid':members[_0x20e61a]['uniqueid']||_0x4c8a7d[_0x2ce9('0x15')]});utils[_0x2ce9('0x4')](util['format'](_0x2ce9('0x2c'),_0x4c8a7d[_0x2ce9('0x15')],members[_0x20e61a][_0x2ce9('0x29')],members[_0x20e61a][_0x2ce9('0x2d')],members[_0x20e61a][_0x2ce9('0x2e')]));if(members[_0x20e61a]['exitAt']){writeDB(members[_0x20e61a]);}}}}catch(_0x43bbe5){utils['error'](util[_0x2ce9('0x5')]('[%s][members][cdr]',_0x4c8a7d[_0x2ce9('0x15')]),_0x43bbe5);}};
\ No newline at end of file