Built motion from commit 00bf23f6.|2.6.16
[motion2.git] / server / services / xdr / members.controller.js
index f5bccd1..7848bbb 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x119b=['voice','TALKING','agent','isNil','exitAt','duration','diffTime','enterAt','uniqueid','agentcomplete','queue','cdr','split','assign','data1','destination','destinationchannel','source','data3','lodash','util','./utils','Local/_attended@transfer','Queue:','info','format','MEMBER|%s|%s|%s|%s|%s|%s','interface','channel','data2','type','then','name','internal','request','CreateMemberReport','error','some','devicestatechange','state','BUSY','device'];(function(_0x3b2349,_0x5b473c){var _0x3ef29f=function(_0x40df5e){while(--_0x40df5e){_0x3b2349['push'](_0x3b2349['shift']());}};_0x3ef29f(++_0x5b473c);}(_0x119b,0x1e1));var _0xb119=function(_0x5b3b9b,_0x1c71b0){_0x5b3b9b=_0x5b3b9b-0x0;var _0x47c1d7=_0x119b[_0x5b3b9b];return _0x47c1d7;};'use strict';var _=require(_0xb119('0x0'));var util=require(_0xb119('0x1'));var utils=require(_0xb119('0x2'));var members={};var exclude=[_0xb119('0x3'),_0xb119('0x4')];function writeDB(_0xd620e6){utils[_0xb119('0x5')](util[_0xb119('0x6')](_0xb119('0x7'),_0xd620e6['uniqueid'],_0xd620e6[_0xb119('0x8')],_0xd620e6[_0xb119('0x9')],_0xd620e6[_0xb119('0xa')],_0xd620e6['membername'],_0xd620e6[_0xb119('0xb')]));if(_0xd620e6['interface']){utils['getUserByInterface'](_0xd620e6[_0xb119('0x8')])[_0xb119('0xc')](function(_0x543db2){if(_0x543db2){_0xd620e6['membername']=_0x543db2[_0xb119('0xd')];_0xd620e6[_0xb119('0xe')]=_0x543db2[_0xb119('0xe')];utils[_0xb119('0xf')](_0xb119('0x10'),_0xd620e6);}else{utils['getUserByName'](_0xd620e6[_0xb119('0x8')]['split']('/')[0x1])[_0xb119('0xc')](function(_0x107c3b){if(_0x107c3b){_0xd620e6['membername']=_0x107c3b[_0xb119('0xd')];_0xd620e6[_0xb119('0xe')]=_0x107c3b[_0xb119('0xe')];utils[_0xb119('0xf')](_0xb119('0x10'),_0xd620e6);}});}})['catch'](function(_0x46e082){utils[_0xb119('0x11')](_0x46e082);});}delete members[_0xd620e6['interface']];}function startsWith(_0x131229,_0x2be5c0){return _[_0xb119('0x12')](_0x131229,function(_0x46af29){return _['startsWith'](_0x2be5c0,_0x46af29);});}exports[_0xb119('0x13')]=function(_0x4d441c){switch(_0x4d441c[_0xb119('0x14')]){case'INUSE':case _0xb119('0x15'):if(!startsWith(exclude,_0x4d441c[_0xb119('0x16')])){members[_0x4d441c[_0xb119('0x16')]]={'channel':_0xb119('0x17'),'interface':_0x4d441c['device'],'type':_0xb119('0x18'),'enterAt':utils['now'](),'role':_0xb119('0x19')};}break;case'NOT_INUSE':if(!_[_0xb119('0x1a')](members[_0x4d441c[_0xb119('0x16')]])){members[_0x4d441c[_0xb119('0x16')]][_0xb119('0x1b')]=utils['now']();members[_0x4d441c['device']][_0xb119('0x1c')]=utils[_0xb119('0x1d')](members[_0x4d441c[_0xb119('0x16')]][_0xb119('0x1b')],members[_0x4d441c[_0xb119('0x16')]][_0xb119('0x1e')]);if(members[_0x4d441c[_0xb119('0x16')]][_0xb119('0x1f')]){writeDB(members[_0x4d441c[_0xb119('0x16')]]);}}default:break;}};exports[_0xb119('0x20')]=function(_0xa04d4e){if(!_[_0xb119('0x1a')](members[_0xa04d4e[_0xb119('0x8')]])){members[_0xa04d4e[_0xb119('0x8')]]=_['assign'](members[_0xa04d4e[_0xb119('0x8')]],{'data4':_0xa04d4e[_0xb119('0x21')],'uniqueid':_0xa04d4e[_0xb119('0x1f')]});}};exports[_0xb119('0x22')]=function(_0x482eb9){if(_0x482eb9['channel']){var _0x36e5cd=_0x482eb9[_0xb119('0x9')][_0xb119('0x23')]('-')[0x0];if(!_[_0xb119('0x1a')](members[_0x36e5cd])){members[_0x36e5cd]=_[_0xb119('0x24')](members[_0x36e5cd],{'data1':members[_0x36e5cd][_0xb119('0x25')]||_0x482eb9[_0xb119('0xb')],'data2':members[_0x36e5cd][_0xb119('0xa')]||_0x482eb9['source'],'data3':members[_0x36e5cd]['data3']||_0x482eb9[_0xb119('0x26')],'uniqueid':members[_0x36e5cd][_0xb119('0x1f')]||_0x482eb9[_0xb119('0x1f')]});if(members[_0x36e5cd][_0xb119('0x1b')]){writeDB(members[_0x36e5cd]);}}}if(_0x482eb9[_0xb119('0x27')]){var _0x24a52f=_0x482eb9['destinationchannel'][_0xb119('0x23')]('-')[0x0];if(!_['isNil'](members[_0x24a52f])){members[_0x24a52f]=_[_0xb119('0x24')](members[_0x24a52f],{'data1':members[_0x24a52f][_0xb119('0x25')]||_0x482eb9[_0xb119('0xb')],'data2':members[_0x24a52f][_0xb119('0xa')]||_0x482eb9[_0xb119('0x28')],'data3':members[_0x24a52f][_0xb119('0x29')]||_0x482eb9[_0xb119('0x26')],'uniqueid':members[_0x24a52f][_0xb119('0x1f')]||_0x482eb9[_0xb119('0x1f')]});if(members[_0x24a52f][_0xb119('0x1b')]){writeDB(members[_0x24a52f]);}}}};
\ No newline at end of file
+var _0x8ec1=['INUSE','BUSY','voice','now','agent','NOT_INUSE','isNil','diffTime','exitAt','enterAt','agentcomplete','[%s][members][agentcomplete]\x20interface:%s\x20queue:%s','queue','[%s][members][agentcomplete]','cdr','[%s][members][cdr]','assign','data2','data3','destination','[%s][members][cdr]\x20type:%s\x20source:%s\x20destination:%s','data1','destinationchannel','source','util','./utils','Local/_attended@transfer','Queue:','info','uniqueid','interface','channel','membername','type','getUserByInterface','then','name','internal','request','CreateMemberReport','split','error','format','[%s][members][writeDB]','startsWith','devicestatechange','debug','[%s][members][devicestatechange]','device','[%s][members][devicestatechange]\x20state:%s\x20interface:%s','state'];(function(_0x38f34e,_0x287825){var _0x3f3adf=function(_0x40c089){while(--_0x40c089){_0x38f34e['push'](_0x38f34e['shift']());}};_0x3f3adf(++_0x287825);}(_0x8ec1,0x1e3));var _0x18ec=function(_0x27ac32,_0x42771f){_0x27ac32=_0x27ac32-0x0;var _0x20c811=_0x8ec1[_0x27ac32];return _0x20c811;};'use strict';var _=require('lodash');var util=require(_0x18ec('0x0'));var utils=require(_0x18ec('0x1'));var members={};var exclude=[_0x18ec('0x2'),_0x18ec('0x3')];function writeDB(_0x3cf2ab){utils[_0x18ec('0x4')](util['format']('[%s][members][writeDB]\x20interface:%s\x20channel:%s\x20data2:%s\x20agent:%s\x20type:%s',_0x3cf2ab[_0x18ec('0x5')],_0x3cf2ab[_0x18ec('0x6')],_0x3cf2ab[_0x18ec('0x7')],_0x3cf2ab['data2'],_0x3cf2ab[_0x18ec('0x8')],_0x3cf2ab[_0x18ec('0x9')]));if(_0x3cf2ab[_0x18ec('0x6')]){utils[_0x18ec('0xa')](_0x3cf2ab[_0x18ec('0x6')])[_0x18ec('0xb')](function(_0x3134e5){if(_0x3134e5){_0x3cf2ab['membername']=_0x3134e5[_0x18ec('0xc')];_0x3cf2ab[_0x18ec('0xd')]=_0x3134e5[_0x18ec('0xd')];utils[_0x18ec('0xe')](_0x18ec('0xf'),_0x3cf2ab);}else{utils['getUserByName'](_0x3cf2ab['interface'][_0x18ec('0x10')]('/')[0x1])[_0x18ec('0xb')](function(_0x3de3b1){if(_0x3de3b1){_0x3cf2ab['membername']=_0x3de3b1[_0x18ec('0xc')];_0x3cf2ab['internal']=_0x3de3b1[_0x18ec('0xd')];utils['request']('CreateMemberReport',_0x3cf2ab);}});}})['catch'](function(_0x3f912f){utils[_0x18ec('0x11')](util[_0x18ec('0x12')](_0x18ec('0x13'),_0x3cf2ab[_0x18ec('0x5')]),_0x3f912f);});}delete members[_0x3cf2ab[_0x18ec('0x6')]];}function startsWith(_0x564265,_0x58ed94){return _['some'](_0x564265,function(_0x2a5119){return _[_0x18ec('0x14')](_0x58ed94,_0x2a5119);});}exports[_0x18ec('0x15')]=function(_0x5d872e){try{utils[_0x18ec('0x16')](util[_0x18ec('0x12')](_0x18ec('0x17'),members[_0x5d872e['device']]?members[_0x5d872e[_0x18ec('0x18')]]['uniqueid']:_0x5d872e[_0x18ec('0x18')]),_0x5d872e);utils[_0x18ec('0x4')](util[_0x18ec('0x12')](_0x18ec('0x19'),members[_0x5d872e[_0x18ec('0x18')]]?members[_0x5d872e[_0x18ec('0x18')]][_0x18ec('0x5')]:_0x5d872e[_0x18ec('0x18')],_0x5d872e['state'],_0x5d872e[_0x18ec('0x18')]));switch(_0x5d872e[_0x18ec('0x1a')]){case _0x18ec('0x1b'):case _0x18ec('0x1c'):if(!startsWith(exclude,_0x5d872e[_0x18ec('0x18')])){members[_0x5d872e[_0x18ec('0x18')]]={'channel':_0x18ec('0x1d'),'interface':_0x5d872e['device'],'type':'TALKING','enterAt':utils[_0x18ec('0x1e')](),'role':_0x18ec('0x1f')};}break;case _0x18ec('0x20'):if(!_[_0x18ec('0x21')](members[_0x5d872e['device']])){members[_0x5d872e[_0x18ec('0x18')]]['exitAt']=utils[_0x18ec('0x1e')]();members[_0x5d872e[_0x18ec('0x18')]]['duration']=utils[_0x18ec('0x22')](members[_0x5d872e[_0x18ec('0x18')]][_0x18ec('0x23')],members[_0x5d872e[_0x18ec('0x18')]][_0x18ec('0x24')]);if(members[_0x5d872e[_0x18ec('0x18')]][_0x18ec('0x5')]){writeDB(members[_0x5d872e['device']]);}}break;default:break;}}catch(_0x1c4d31){utils['error'](util[_0x18ec('0x12')](_0x18ec('0x17'),members[_0x5d872e[_0x18ec('0x18')]]?members[_0x5d872e[_0x18ec('0x18')]][_0x18ec('0x5')]:_0x5d872e[_0x18ec('0x18')]),_0x1c4d31);}};exports[_0x18ec('0x25')]=function(_0xd237ab){try{if(!_['isNil'](members[_0xd237ab[_0x18ec('0x6')]])){utils[_0x18ec('0x16')](util[_0x18ec('0x12')]('[%s][members][agentcomplete]',_0xd237ab['uniqueid']),_0xd237ab);utils['info'](util[_0x18ec('0x12')](_0x18ec('0x26'),_0xd237ab[_0x18ec('0x5')],_0xd237ab['interface'],_0xd237ab[_0x18ec('0x27')]));members[_0xd237ab['interface']]=_['assign'](members[_0xd237ab[_0x18ec('0x6')]],{'data4':_0xd237ab[_0x18ec('0x27')],'uniqueid':_0xd237ab[_0x18ec('0x5')]});}}catch(_0x86cd0a){utils[_0x18ec('0x11')](util['format'](_0x18ec('0x28'),_0xd237ab[_0x18ec('0x5')]),_0x86cd0a);}};exports[_0x18ec('0x29')]=function(_0x31ba0d){try{utils[_0x18ec('0x16')](util[_0x18ec('0x12')](_0x18ec('0x2a'),_0x31ba0d[_0x18ec('0x5')]),_0x31ba0d);if(_0x31ba0d[_0x18ec('0x7')]){var _0xd1cdd=_0x31ba0d[_0x18ec('0x7')][_0x18ec('0x10')]('-')[0x0];if(!_[_0x18ec('0x21')](members[_0xd1cdd])){members[_0xd1cdd]=_[_0x18ec('0x2b')](members[_0xd1cdd],{'data1':members[_0xd1cdd]['data1']||_0x31ba0d[_0x18ec('0x9')],'data2':members[_0xd1cdd][_0x18ec('0x2c')]||_0x31ba0d['source'],'data3':members[_0xd1cdd][_0x18ec('0x2d')]||_0x31ba0d[_0x18ec('0x2e')],'uniqueid':members[_0xd1cdd][_0x18ec('0x5')]||_0x31ba0d['uniqueid']});utils[_0x18ec('0x4')](util[_0x18ec('0x12')](_0x18ec('0x2f'),_0x31ba0d[_0x18ec('0x5')],members[_0xd1cdd][_0x18ec('0x30')],members[_0xd1cdd][_0x18ec('0x2c')],members[_0xd1cdd][_0x18ec('0x2d')]));if(members[_0xd1cdd][_0x18ec('0x23')]){writeDB(members[_0xd1cdd]);}}}if(_0x31ba0d[_0x18ec('0x31')]){var _0x287feb=_0x31ba0d[_0x18ec('0x31')][_0x18ec('0x10')]('-')[0x0];if(!_[_0x18ec('0x21')](members[_0x287feb])){members[_0x287feb]=_['assign'](members[_0x287feb],{'data1':members[_0x287feb]['data1']||_0x31ba0d['type'],'data2':members[_0x287feb][_0x18ec('0x2c')]||_0x31ba0d[_0x18ec('0x32')],'data3':members[_0x287feb]['data3']||_0x31ba0d[_0x18ec('0x2e')],'uniqueid':members[_0x287feb][_0x18ec('0x5')]||_0x31ba0d[_0x18ec('0x5')]});utils[_0x18ec('0x4')](util[_0x18ec('0x12')]('[%s][members][cdr]\x20type:%s\x20source:%s\x20destination:%s',_0x31ba0d['uniqueid'],members[_0x287feb][_0x18ec('0x30')],members[_0x287feb][_0x18ec('0x2c')],members[_0x287feb][_0x18ec('0x2d')]));if(members[_0x287feb][_0x18ec('0x23')]){writeDB(members[_0x287feb]);}}}}catch(_0x5cf5fa){utils[_0x18ec('0x11')](util[_0x18ec('0x12')]('[%s][members][cdr]',_0x31ba0d[_0x18ec('0x5')]),_0x5cf5fa);}};
\ No newline at end of file