Built motion from commit 85328c08.|2.5.50
[motion2.git] / server / services / xdr / members.controller.js
index 46fa099..e8faa5d 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xb9d8=['cdr','[%s][members][cdr]','data1','data2','source','data3','destinationchannel','type','[%s][members][cdr]\x20type:%s\x20source:%s\x20destination:%s','lodash','util','Local/_attended@transfer','Queue:','format','uniqueid','interface','channel','membername','getUserByInterface','name','internal','request','getUserByName','split','CreateMemberReport','[%s][members][writeDB]','startsWith','devicestatechange','debug','[%s][members][devicestatechange]','device','info','state','INUSE','voice','TALKING','now','agent','isNil','exitAt','duration','diffTime','error','agentcomplete','[%s][members][agentcomplete]','[%s][members][agentcomplete]\x20interface:%s\x20queue:%s','assign'];(function(_0x255031,_0x2ca18b){var _0x27e9f4=function(_0x37600e){while(--_0x37600e){_0x255031['push'](_0x255031['shift']());}};_0x27e9f4(++_0x2ca18b);}(_0xb9d8,0xf4));var _0x8b9d=function(_0x3dd15e,_0x1f0015){_0x3dd15e=_0x3dd15e-0x0;var _0x231fd0=_0xb9d8[_0x3dd15e];return _0x231fd0;};'use strict';var _=require(_0x8b9d('0x0'));var util=require(_0x8b9d('0x1'));var utils=require('./utils');var members={};var exclude=[_0x8b9d('0x2'),_0x8b9d('0x3')];function writeDB(_0x4de1a4){utils['info'](util[_0x8b9d('0x4')]('[%s][members][writeDB]\x20interface:%s\x20channel:%s\x20data2:%s\x20agent:%s\x20type:%s',_0x4de1a4[_0x8b9d('0x5')],_0x4de1a4[_0x8b9d('0x6')],_0x4de1a4[_0x8b9d('0x7')],_0x4de1a4['data2'],_0x4de1a4[_0x8b9d('0x8')],_0x4de1a4['type']));if(_0x4de1a4['interface']){utils[_0x8b9d('0x9')](_0x4de1a4[_0x8b9d('0x6')])['then'](function(_0x1efad4){if(_0x1efad4){_0x4de1a4['membername']=_0x1efad4[_0x8b9d('0xa')];_0x4de1a4['internal']=_0x1efad4[_0x8b9d('0xb')];utils[_0x8b9d('0xc')]('CreateMemberReport',_0x4de1a4);}else{utils[_0x8b9d('0xd')](_0x4de1a4[_0x8b9d('0x6')][_0x8b9d('0xe')]('/')[0x1])['then'](function(_0x6c4fb6){if(_0x6c4fb6){_0x4de1a4[_0x8b9d('0x8')]=_0x6c4fb6[_0x8b9d('0xa')];_0x4de1a4[_0x8b9d('0xb')]=_0x6c4fb6[_0x8b9d('0xb')];utils[_0x8b9d('0xc')](_0x8b9d('0xf'),_0x4de1a4);}});}})['catch'](function(_0x374087){utils['error'](util[_0x8b9d('0x4')](_0x8b9d('0x10'),_0x4de1a4[_0x8b9d('0x5')]),_0x374087);});}delete members[_0x4de1a4[_0x8b9d('0x6')]];}function startsWith(_0x40f9b1,_0x14a049){return _['some'](_0x40f9b1,function(_0x3cf246){return _[_0x8b9d('0x11')](_0x14a049,_0x3cf246);});}exports[_0x8b9d('0x12')]=function(_0xe8f97b){try{utils[_0x8b9d('0x13')](util[_0x8b9d('0x4')](_0x8b9d('0x14'),members[_0xe8f97b[_0x8b9d('0x15')]]?members[_0xe8f97b[_0x8b9d('0x15')]][_0x8b9d('0x5')]:_0xe8f97b[_0x8b9d('0x15')]),_0xe8f97b);utils[_0x8b9d('0x16')](util[_0x8b9d('0x4')]('[%s][members][devicestatechange]\x20state:%s\x20interface:%s',members[_0xe8f97b[_0x8b9d('0x15')]]?members[_0xe8f97b['device']][_0x8b9d('0x5')]:_0xe8f97b['device'],_0xe8f97b[_0x8b9d('0x17')],_0xe8f97b[_0x8b9d('0x15')]));switch(_0xe8f97b[_0x8b9d('0x17')]){case _0x8b9d('0x18'):case'BUSY':if(!startsWith(exclude,_0xe8f97b[_0x8b9d('0x15')])){members[_0xe8f97b[_0x8b9d('0x15')]]={'channel':_0x8b9d('0x19'),'interface':_0xe8f97b[_0x8b9d('0x15')],'type':_0x8b9d('0x1a'),'enterAt':utils[_0x8b9d('0x1b')](),'role':_0x8b9d('0x1c')};}break;case'NOT_INUSE':if(!_[_0x8b9d('0x1d')](members[_0xe8f97b['device']])){members[_0xe8f97b[_0x8b9d('0x15')]][_0x8b9d('0x1e')]=utils[_0x8b9d('0x1b')]();members[_0xe8f97b[_0x8b9d('0x15')]][_0x8b9d('0x1f')]=utils[_0x8b9d('0x20')](members[_0xe8f97b[_0x8b9d('0x15')]]['exitAt'],members[_0xe8f97b[_0x8b9d('0x15')]]['enterAt']);if(members[_0xe8f97b['device']][_0x8b9d('0x5')]){writeDB(members[_0xe8f97b[_0x8b9d('0x15')]]);}}break;default:break;}}catch(_0x43097d){utils[_0x8b9d('0x21')](util['format'](_0x8b9d('0x14'),members[_0xe8f97b[_0x8b9d('0x15')]]?members[_0xe8f97b['device']][_0x8b9d('0x5')]:_0xe8f97b[_0x8b9d('0x15')]),_0x43097d);}};exports[_0x8b9d('0x22')]=function(_0x4755a7){try{if(!_[_0x8b9d('0x1d')](members[_0x4755a7[_0x8b9d('0x6')]])){utils[_0x8b9d('0x13')](util['format'](_0x8b9d('0x23'),_0x4755a7['uniqueid']),_0x4755a7);utils[_0x8b9d('0x16')](util['format'](_0x8b9d('0x24'),_0x4755a7[_0x8b9d('0x5')],_0x4755a7['interface'],_0x4755a7['queue']));members[_0x4755a7[_0x8b9d('0x6')]]=_[_0x8b9d('0x25')](members[_0x4755a7['interface']],{'data4':_0x4755a7['queue'],'uniqueid':_0x4755a7[_0x8b9d('0x5')]});}}catch(_0x4f89ec){utils['error'](util[_0x8b9d('0x4')](_0x8b9d('0x23'),_0x4755a7[_0x8b9d('0x5')]),_0x4f89ec);}};exports[_0x8b9d('0x26')]=function(_0x5162a7){try{utils[_0x8b9d('0x13')](util[_0x8b9d('0x4')](_0x8b9d('0x27'),_0x5162a7[_0x8b9d('0x5')]),_0x5162a7);if(_0x5162a7[_0x8b9d('0x7')]){var _0x36285b=_0x5162a7['channel'][_0x8b9d('0xe')]('-')[0x0];if(!_[_0x8b9d('0x1d')](members[_0x36285b])){members[_0x36285b]=_[_0x8b9d('0x25')](members[_0x36285b],{'data1':members[_0x36285b][_0x8b9d('0x28')]||_0x5162a7['type'],'data2':members[_0x36285b][_0x8b9d('0x29')]||_0x5162a7[_0x8b9d('0x2a')],'data3':members[_0x36285b][_0x8b9d('0x2b')]||_0x5162a7['destination'],'uniqueid':members[_0x36285b][_0x8b9d('0x5')]||_0x5162a7[_0x8b9d('0x5')]});utils['info'](util[_0x8b9d('0x4')]('[%s][members][cdr]\x20type:%s\x20source:%s\x20destination:%s',_0x5162a7[_0x8b9d('0x5')],members[_0x36285b]['data1'],members[_0x36285b]['data2'],members[_0x36285b]['data3']));if(members[_0x36285b][_0x8b9d('0x1e')]){writeDB(members[_0x36285b]);}}}if(_0x5162a7[_0x8b9d('0x2c')]){var _0x3b258a=_0x5162a7[_0x8b9d('0x2c')][_0x8b9d('0xe')]('-')[0x0];if(!_[_0x8b9d('0x1d')](members[_0x3b258a])){members[_0x3b258a]=_['assign'](members[_0x3b258a],{'data1':members[_0x3b258a][_0x8b9d('0x28')]||_0x5162a7[_0x8b9d('0x2d')],'data2':members[_0x3b258a][_0x8b9d('0x29')]||_0x5162a7[_0x8b9d('0x2a')],'data3':members[_0x3b258a][_0x8b9d('0x2b')]||_0x5162a7['destination'],'uniqueid':members[_0x3b258a][_0x8b9d('0x5')]||_0x5162a7[_0x8b9d('0x5')]});utils[_0x8b9d('0x16')](util['format'](_0x8b9d('0x2e'),_0x5162a7[_0x8b9d('0x5')],members[_0x3b258a][_0x8b9d('0x28')],members[_0x3b258a][_0x8b9d('0x29')],members[_0x3b258a]['data3']));if(members[_0x3b258a][_0x8b9d('0x1e')]){writeDB(members[_0x3b258a]);}}}}catch(_0x59f80e){utils[_0x8b9d('0x21')](util[_0x8b9d('0x4')]('[%s][members][cdr]',_0x5162a7[_0x8b9d('0x5')]),_0x59f80e);}};
\ 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