Built motion from commit c116dc8b.|2.6.30
[motion2.git] / server / services / xdr / agents.controller.js
index 0cfaafc..8b0b0d7 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xd4f4=['holdtime','ringtime','talktime','push','queuecallerabandon','forIn','includes','[%s][agents][queuecallerabandon]','[%s][agents][queuecallerabandon]\x20agent:%s\x20destuniqueid:%s\x20lastevent:abandoned','abandoned','agentconnect','connectedlinename','answered_elsewhere','answeredelsewheredestinationuniqueid','[%s][agents][agentcomplete]\x20agent:%s\x20destuniqueid:%s\x20lastevent:complete','diffTime','agentcompleteAt','agentconnectAt','complete','[%s][agents][agentcomplete]','blindtransfer','transfereruniqueid','[%s][agents][blindtransfer]','[%s][agents][blindtransfer]\x20agent:%s\x20transferuniqueid:%s','blind','transferuniqueid','[%s][agents][attendedtransfer]','origtransfereruniqueid','origtransfererlinkedid','secondtransfereruniqueid','[%s][agents][attendedtransfer]\x20agent:%s','transfer','transfertype','transferexten','origtransfererexten','transfereeuniqueid','clone','calleridnum','calleridname','agententerreason','secondtransfererlinkedid','isNil','ATTENDED','transfertargetuniqueid','hangup','cause','rejected','[%s][agents][hangup]\x20agent:%s\x20reason:%s\x20lastevent:%s','indexOf','splice','agent','[%s][agents][hangup]','lodash','util','./utils','info','format','[%s][agents][writeDB]\x20channel:%s\x20queue:%s\x20agent:%s\x20interface:%s\x20calleridnum:%s\x20connectedlinenum:%s\x20lastevent:%s','uniqueid','channel','queue','connectedlinenum','lastevent','getVoiceQueueByName','then','type','agentacw','agentcomplete','acw','acwtime','acwTimeout','request','CreateVoiceAgentReport','agentcalled','[%s][agents][agentcalled]','destuniqueid','agentcalledAt','now','error','debug','[%s][agents][agentringnoanswer]','[%s][agents][agentringnoanswer]\x20agent:%s\x20destuniqueid:%s\x20lastevent:timeout','membername','agentringnoanswer','agentringnoanswerAt','reason','timeout'];(function(_0x5a95fa,_0x4a2fc9){var _0x1a61b8=function(_0x59f119){while(--_0x59f119){_0x5a95fa['push'](_0x5a95fa['shift']());}};_0x1a61b8(++_0x4a2fc9);}(_0xd4f4,0x8b));var _0x4d4f=function(_0x1c1457,_0x56eaa2){_0x1c1457=_0x1c1457-0x0;var _0x2a6ab7=_0xd4f4[_0x1c1457];return _0x2a6ab7;};'use strict';var _=require(_0x4d4f('0x0'));var util=require(_0x4d4f('0x1'));var utils=require(_0x4d4f('0x2'));var agents={};var transfers={};var unanswered=[];function writeDB(_0x3c9311,_0x2fc384){utils[_0x4d4f('0x3')](util[_0x4d4f('0x4')](_0x4d4f('0x5'),_0x3c9311[_0x4d4f('0x6')],_0x3c9311[_0x4d4f('0x7')],_0x3c9311[_0x4d4f('0x8')],_0x3c9311['membername'],_0x3c9311['interface'],_0x3c9311['calleridnum'],_0x3c9311[_0x4d4f('0x9')],_0x3c9311[_0x4d4f('0xa')]));if(_0x3c9311[_0x4d4f('0x8')]){utils[_0x4d4f('0xb')](_0x3c9311[_0x4d4f('0x8')])[_0x4d4f('0xc')](function(_0x1bd887){if(_0x1bd887){_0x3c9311[_0x4d4f('0xd')]=_0x1bd887[_0x4d4f('0xd')];_0x3c9311[_0x4d4f('0xe')]=_0x3c9311[_0x4d4f('0xf')]?_0x1bd887[_0x4d4f('0x10')]:![];_0x3c9311[_0x4d4f('0x11')]=_0x3c9311[_0x4d4f('0xe')]?_0x1bd887[_0x4d4f('0x12')]:0x0;}utils[_0x4d4f('0x13')](_0x4d4f('0x14'),_0x3c9311);});}else{utils[_0x4d4f('0x13')]('CreateVoiceAgentReport',_0x3c9311);}if(_0x2fc384){delete transfers[_0x3c9311['uniqueid']];}else{delete agents[_0x3c9311['destuniqueid']];}}exports[_0x4d4f('0x15')]=function(_0xe9b7a6){try{utils['debug'](util[_0x4d4f('0x4')](_0x4d4f('0x16'),_0xe9b7a6[_0x4d4f('0x6')]),_0xe9b7a6);agents[_0xe9b7a6['destuniqueid']]=_0xe9b7a6;agents[_0xe9b7a6[_0x4d4f('0x17')]][_0x4d4f('0x18')]=utils[_0x4d4f('0x19')]();agents[_0xe9b7a6['destuniqueid']][_0x4d4f('0xa')]='called';agents[_0xe9b7a6[_0x4d4f('0x17')]][_0x4d4f('0x9')]=null;agents[_0xe9b7a6[_0x4d4f('0x17')]]['connectedlinename']=null;utils[_0x4d4f('0x3')](util[_0x4d4f('0x4')]('[%s][agents][agentcalled]\x20agent:%s\x20destuniqueid:%s\x20lastevent:called',_0xe9b7a6['uniqueid'],agents[_0xe9b7a6['destuniqueid']]['membername'],_0xe9b7a6['destuniqueid']));}catch(_0x34429e){utils[_0x4d4f('0x1a')](util[_0x4d4f('0x4')](_0x4d4f('0x16'),_0xe9b7a6['uniqueid']),_0x34429e);}};exports['agentringnoanswer']=function(_0x1e1ae2){try{if(!_['isNil'](agents[_0x1e1ae2[_0x4d4f('0x17')]])){utils[_0x4d4f('0x1b')](util[_0x4d4f('0x4')](_0x4d4f('0x1c'),_0x1e1ae2[_0x4d4f('0x6')]),_0x1e1ae2);utils['info'](util['format'](_0x4d4f('0x1d'),_0x1e1ae2['uniqueid'],agents[_0x1e1ae2[_0x4d4f('0x17')]][_0x4d4f('0x1e')],_0x1e1ae2[_0x4d4f('0x17')]));agents[_0x1e1ae2[_0x4d4f('0x17')]][_0x4d4f('0x1f')]=!![];agents[_0x1e1ae2['destuniqueid']][_0x4d4f('0x20')]=utils[_0x4d4f('0x19')]();agents[_0x1e1ae2[_0x4d4f('0x17')]][_0x4d4f('0xa')]='timeout';agents[_0x1e1ae2['destuniqueid']][_0x4d4f('0x21')]=_0x4d4f('0x22');agents[_0x1e1ae2[_0x4d4f('0x17')]][_0x4d4f('0x23')]=_0x1e1ae2['ringtime']?parseInt(_0x1e1ae2[_0x4d4f('0x24')])/0x3e8:0x0;agents[_0x1e1ae2[_0x4d4f('0x17')]][_0x4d4f('0x25')]=0x0;unanswered[_0x4d4f('0x26')](_0x1e1ae2['destuniqueid']);}}catch(_0x338ba2){utils['error'](util[_0x4d4f('0x4')](_0x4d4f('0x1c'),_0x1e1ae2['uniqueid']),_0x338ba2);}};exports[_0x4d4f('0x27')]=function(_0x123383){try{_[_0x4d4f('0x28')](agents,function(_0x3d7f14,_0x19a502){if(_0x3d7f14[_0x4d4f('0x6')]==_0x123383['uniqueid']&&!_[_0x4d4f('0x29')](unanswered,_0x3d7f14[_0x4d4f('0x17')])){utils[_0x4d4f('0x1b')](util[_0x4d4f('0x4')](_0x4d4f('0x2a'),_0x123383['uniqueid']),_0x123383);utils[_0x4d4f('0x3')](util['format'](_0x4d4f('0x2b'),_0x123383['uniqueid'],_0x3d7f14['membername'],_0x3d7f14['destuniqueid']));_0x3d7f14[_0x4d4f('0x1f')]=!![];_0x3d7f14['agentringnoanswerAt']=utils[_0x4d4f('0x19')]();_0x3d7f14[_0x4d4f('0xa')]=_0x4d4f('0x2c');_0x3d7f14['reason']=_0x4d4f('0x2c');_0x3d7f14[_0x4d4f('0x23')]=_0x123383[_0x4d4f('0x23')];_0x3d7f14['talktime']=0x0;writeDB(_0x3d7f14);}});}catch(_0x6a30c4){utils['error'](util[_0x4d4f('0x4')](_0x4d4f('0x2a'),_0x123383[_0x4d4f('0x6')]),_0x6a30c4);}};exports[_0x4d4f('0x2d')]=function(_0x2448f3){try{if(agents[_0x2448f3[_0x4d4f('0x17')]]){utils[_0x4d4f('0x1b')](util[_0x4d4f('0x4')]('[%s][agents][agentconnect]',_0x2448f3['uniqueid']),_0x2448f3);utils[_0x4d4f('0x3')](util['format']('[%s][agents][agentconnect]\x20agent:%s\x20destuniqueid:%s\x20lastevent:connect',_0x2448f3[_0x4d4f('0x6')],agents[_0x2448f3[_0x4d4f('0x17')]][_0x4d4f('0x1e')],_0x2448f3[_0x4d4f('0x17')]));agents[_0x2448f3[_0x4d4f('0x17')]]['agentconnectAt']=utils[_0x4d4f('0x19')]();agents[_0x2448f3[_0x4d4f('0x17')]]['connectedlinenum']=_0x2448f3[_0x4d4f('0x9')];agents[_0x2448f3[_0x4d4f('0x17')]][_0x4d4f('0x2e')]=_0x2448f3[_0x4d4f('0x2e')];agents[_0x2448f3[_0x4d4f('0x17')]][_0x4d4f('0x23')]=_0x2448f3[_0x4d4f('0x24')];agents[_0x2448f3[_0x4d4f('0x17')]][_0x4d4f('0xa')]='connect';_['forIn'](agents,function(_0x1cb919,_0x324a3c){if(_0x1cb919[_0x4d4f('0x17')]!=_0x2448f3[_0x4d4f('0x17')]&&_0x1cb919['uniqueid']==_0x2448f3['uniqueid']){_0x1cb919[_0x4d4f('0x25')]=0x0;_0x1cb919[_0x4d4f('0x23')]=_0x2448f3['ringtime'];_0x1cb919['agentringnoanswer']=!![];_0x1cb919[_0x4d4f('0x20')]=utils[_0x4d4f('0x19')]();_0x1cb919['lastevent']=_0x4d4f('0x2f');_0x1cb919[_0x4d4f('0x21')]=_0x4d4f('0x2f');_0x1cb919[_0x4d4f('0x30')]=_0x2448f3[_0x4d4f('0x17')];_0x1cb919['answeredelsewheremembername']=_0x2448f3[_0x4d4f('0x1e')];writeDB(_0x1cb919);}});}}catch(_0x4c7c24){utils[_0x4d4f('0x1a')](util[_0x4d4f('0x4')]('[%s][agents][agentconnect]',_0x2448f3[_0x4d4f('0x6')]),_0x4c7c24);}};exports[_0x4d4f('0xf')]=function(_0x1f7169){try{if(!_['isNil'](agents[_0x1f7169[_0x4d4f('0x17')]])){utils['debug'](util[_0x4d4f('0x4')]('[%s][agents][agentcomplete]',_0x1f7169[_0x4d4f('0x6')]),_0x1f7169);utils[_0x4d4f('0x3')](util[_0x4d4f('0x4')](_0x4d4f('0x31'),_0x1f7169[_0x4d4f('0x6')],agents[_0x1f7169['destuniqueid']]['membername'],_0x1f7169[_0x4d4f('0x17')]));agents[_0x1f7169[_0x4d4f('0x17')]][_0x4d4f('0xf')]=!![];agents[_0x1f7169[_0x4d4f('0x17')]]['agentcompleteAt']=utils['now']();agents[_0x1f7169['destuniqueid']][_0x4d4f('0x25')]=utils[_0x4d4f('0x32')](agents[_0x1f7169[_0x4d4f('0x17')]][_0x4d4f('0x33')],agents[_0x1f7169[_0x4d4f('0x17')]][_0x4d4f('0x34')]);agents[_0x1f7169[_0x4d4f('0x17')]][_0x4d4f('0x21')]=_0x1f7169[_0x4d4f('0x21')];agents[_0x1f7169[_0x4d4f('0x17')]][_0x4d4f('0xa')]=_0x4d4f('0x35');writeDB(agents[_0x1f7169['destuniqueid']]);}}catch(_0xb0937d){utils[_0x4d4f('0x1a')](util['format'](_0x4d4f('0x36'),_0x1f7169['uniqueid']),_0xb0937d);}};exports[_0x4d4f('0x37')]=function(_0x401466){try{if(!_['isNil'](agents[_0x401466[_0x4d4f('0x38')]])){utils[_0x4d4f('0x1b')](util[_0x4d4f('0x4')](_0x4d4f('0x39'),_0x401466[_0x4d4f('0x6')]),_0x401466);utils[_0x4d4f('0x3')](util[_0x4d4f('0x4')](_0x4d4f('0x3a'),_0x401466[_0x4d4f('0x6')],agents[_0x401466[_0x4d4f('0x38')]][_0x4d4f('0x1e')],agents[_0x401466[_0x4d4f('0x38')]]['uniqueid']));agents[_0x401466[_0x4d4f('0x38')]]['transfer']=!![];agents[_0x401466['transfereruniqueid']]['transfertype']=_0x4d4f('0x3b');agents[_0x401466[_0x4d4f('0x38')]]['transferexten']=_0x401466['extension'];agents[_0x401466[_0x4d4f('0x38')]][_0x4d4f('0x3c')]=agents[_0x401466['transfereruniqueid']][_0x4d4f('0x6')];}}catch(_0x528573){utils[_0x4d4f('0x1a')](util[_0x4d4f('0x4')](_0x4d4f('0x39'),_0x401466[_0x4d4f('0x6')]),_0x528573);}};exports['attendedtransfer']=function(_0x224b83){try{utils[_0x4d4f('0x1b')](util[_0x4d4f('0x4')](_0x4d4f('0x3d'),_0x224b83[_0x4d4f('0x3e')]),_0x224b83);if(_0x224b83['origtransfereruniqueid']==_0x224b83[_0x4d4f('0x3f')]){if(!_['isNil'](agents[_0x224b83[_0x4d4f('0x40')]])){utils['info'](util[_0x4d4f('0x4')](_0x4d4f('0x41'),_0x224b83['origtransfereruniqueid'],agents[_0x224b83[_0x4d4f('0x40')]][_0x4d4f('0x1e')]));agents[_0x224b83['secondtransfereruniqueid']][_0x4d4f('0x42')]=!![];agents[_0x224b83['secondtransfereruniqueid']][_0x4d4f('0x43')]='ATTENDED';agents[_0x224b83['secondtransfereruniqueid']][_0x4d4f('0x44')]=_0x224b83[_0x4d4f('0x45')];agents[_0x224b83[_0x4d4f('0x40')]][_0x4d4f('0x3c')]=_0x224b83[_0x4d4f('0x3e')];}if(_0x224b83['transfereeuniqueid']&&agents[_0x224b83['transfereeuniqueid']]){agents[_0x224b83[_0x4d4f('0x46')]]['agententerreason']=0x1;transfers[_0x224b83[_0x4d4f('0x46')]]=_[_0x4d4f('0x47')](agents[_0x224b83[_0x4d4f('0x46')]]);transfers[_0x224b83[_0x4d4f('0x46')]][_0x4d4f('0x48')]=agents[_0x224b83[_0x4d4f('0x40')]]['calleridnum'];transfers[_0x224b83[_0x4d4f('0x46')]][_0x4d4f('0x49')]=agents[_0x224b83[_0x4d4f('0x40')]]['calleridname'];transfers[_0x224b83[_0x4d4f('0x46')]][_0x4d4f('0x18')]=utils[_0x4d4f('0x19')]();transfers[_0x224b83['transfereeuniqueid']][_0x4d4f('0x34')]=utils['now']();transfers[_0x224b83[_0x4d4f('0x46')]][_0x4d4f('0x23')]=0x0;transfers[_0x224b83[_0x4d4f('0x46')]][_0x4d4f('0x4a')]=0x2;}}else if(_0x224b83[_0x4d4f('0x40')]==_0x224b83[_0x4d4f('0x4b')]){if(!_[_0x4d4f('0x4c')](agents[_0x224b83[_0x4d4f('0x3e')]])){utils[_0x4d4f('0x3')](util['format'](_0x4d4f('0x41'),_0x224b83[_0x4d4f('0x3e')],agents[_0x224b83['origtransfereruniqueid']][_0x4d4f('0x1e')]));agents[_0x224b83[_0x4d4f('0x3e')]][_0x4d4f('0x42')]=!![];agents[_0x224b83[_0x4d4f('0x3e')]]['transfertype']=_0x4d4f('0x4d');agents[_0x224b83[_0x4d4f('0x3e')]]['transferexten']=_0x224b83['secondtransfererexten'];agents[_0x224b83[_0x4d4f('0x3e')]][_0x4d4f('0x3c')]=_0x224b83['secondtransfereruniqueid'];}if(_0x224b83['transfertargetuniqueid']&&agents[_0x224b83['transfertargetuniqueid']]){agents[_0x224b83[_0x4d4f('0x4e')]][_0x4d4f('0x4a')]=0x1;transfers[_0x224b83['transfertargetuniqueid']]=_[_0x4d4f('0x47')](agents[_0x224b83[_0x4d4f('0x4e')]]);transfers[_0x224b83[_0x4d4f('0x4e')]][_0x4d4f('0x48')]=agents[_0x224b83[_0x4d4f('0x3e')]][_0x4d4f('0x48')];transfers[_0x224b83[_0x4d4f('0x4e')]][_0x4d4f('0x49')]=agents[_0x224b83['origtransfereruniqueid']][_0x4d4f('0x49')];transfers[_0x224b83['transfertargetuniqueid']][_0x4d4f('0x18')]=utils[_0x4d4f('0x19')]();transfers[_0x224b83[_0x4d4f('0x4e')]]['agentconnectAt']=utils[_0x4d4f('0x19')]();transfers[_0x224b83[_0x4d4f('0x4e')]][_0x4d4f('0x23')]=0x0;transfers[_0x224b83[_0x4d4f('0x4e')]]['agententerreason']=0x2;}}}catch(_0x4184fa){utils['error'](util[_0x4d4f('0x4')]('[%s][agents][attendedtransfer]',_0x224b83['origtransfereruniqueid']),_0x4184fa);}};exports[_0x4d4f('0x4f')]=function(_0x2d99e4){try{utils['debug'](util[_0x4d4f('0x4')]('[%s][agents][hangup]',_0x2d99e4[_0x4d4f('0x6')]),_0x2d99e4);if(agents[_0x2d99e4[_0x4d4f('0x6')]]&&agents[_0x2d99e4[_0x4d4f('0x6')]][_0x4d4f('0x21')]==='timeout'){if(_0x2d99e4[_0x4d4f('0x50')]==='21'){agents[_0x2d99e4[_0x4d4f('0x6')]][_0x4d4f('0x21')]='rejected';agents[_0x2d99e4[_0x4d4f('0x6')]][_0x4d4f('0xa')]=_0x4d4f('0x51');}utils[_0x4d4f('0x3')](util[_0x4d4f('0x4')](_0x4d4f('0x52'),_0x2d99e4['uniqueid'],agents[_0x2d99e4['uniqueid']][_0x4d4f('0x1e')],agents[_0x2d99e4[_0x4d4f('0x6')]]['reason'],agents[_0x2d99e4[_0x4d4f('0x6')]][_0x4d4f('0xa')]));writeDB(agents[_0x2d99e4[_0x4d4f('0x6')]]);var _0x133fc5=unanswered[_0x4d4f('0x53')](_0x2d99e4[_0x4d4f('0x6')]);if(_0x133fc5>-0x1){unanswered[_0x4d4f('0x54')](_0x133fc5,0x1);}}if(transfers[_0x2d99e4[_0x4d4f('0x6')]]){transfers[_0x2d99e4[_0x4d4f('0x6')]][_0x4d4f('0xf')]=!![];transfers[_0x2d99e4[_0x4d4f('0x6')]][_0x4d4f('0x33')]=utils[_0x4d4f('0x19')]();transfers[_0x2d99e4[_0x4d4f('0x6')]][_0x4d4f('0x25')]=utils['diffTime'](transfers[_0x2d99e4[_0x4d4f('0x6')]][_0x4d4f('0x33')],transfers[_0x2d99e4[_0x4d4f('0x6')]][_0x4d4f('0x34')]);transfers[_0x2d99e4['uniqueid']]['reason']=_0x4d4f('0x55');transfers[_0x2d99e4[_0x4d4f('0x6')]][_0x4d4f('0xa')]=_0x4d4f('0x35');utils[_0x4d4f('0x3')](util[_0x4d4f('0x4')](_0x4d4f('0x52'),_0x2d99e4[_0x4d4f('0x6')],transfers[_0x2d99e4[_0x4d4f('0x6')]][_0x4d4f('0x1e')],transfers[_0x2d99e4['uniqueid']][_0x4d4f('0x21')],transfers[_0x2d99e4[_0x4d4f('0x6')]][_0x4d4f('0xa')]));writeDB(transfers[_0x2d99e4[_0x4d4f('0x6')]],!![]);}if(agents[_0x2d99e4['uniqueid']]&&agents[_0x2d99e4['uniqueid']]['agentconnectAt']){agents[_0x2d99e4[_0x4d4f('0x6')]]['agentcomplete']=!![];agents[_0x2d99e4[_0x4d4f('0x6')]][_0x4d4f('0x33')]=utils[_0x4d4f('0x19')]();agents[_0x2d99e4[_0x4d4f('0x6')]][_0x4d4f('0x25')]=utils[_0x4d4f('0x32')](agents[_0x2d99e4[_0x4d4f('0x6')]][_0x4d4f('0x33')],agents[_0x2d99e4['uniqueid']]['agentconnectAt']);agents[_0x2d99e4[_0x4d4f('0x6')]]['reason']=agents[_0x2d99e4[_0x4d4f('0x6')]][_0x4d4f('0x42')]?_0x4d4f('0x42'):'agent';agents[_0x2d99e4['uniqueid']]['lastevent']=_0x4d4f('0x35');utils['info'](util[_0x4d4f('0x4')]('[%s][agents][hangup]\x20agent:%s\x20reason:%s\x20lastevent:%s',_0x2d99e4[_0x4d4f('0x6')],agents[_0x2d99e4[_0x4d4f('0x6')]][_0x4d4f('0x1e')],agents[_0x2d99e4[_0x4d4f('0x6')]][_0x4d4f('0x21')],agents[_0x2d99e4[_0x4d4f('0x6')]]['lastevent']));writeDB(agents[_0x2d99e4[_0x4d4f('0x6')]]);}}catch(_0x3beacf){utils[_0x4d4f('0x1a')](util[_0x4d4f('0x4')](_0x4d4f('0x56'),_0x2d99e4['uniqueid']),_0x3beacf);}};
\ No newline at end of file
+var _0xb58b=['now','reason','timeout','holdtime','ringtime','talktime','push','queuecallerabandon','forIn','includes','[%s][agents][queuecallerabandon]','[%s][agents][queuecallerabandon]\x20agent:%s\x20destuniqueid:%s\x20lastevent:abandoned','[%s][agents][agentconnect]\x20agent:%s\x20destuniqueid:%s\x20lastevent:connect','agentconnectAt','connectedlinename','connect','answered_elsewhere','answeredelsewheredestinationuniqueid','answeredelsewheremembername','[%s][agents][agentconnect]','[%s][agents][agentcomplete]','[%s][agents][agentcomplete]\x20agent:%s\x20destuniqueid:%s\x20lastevent:complete','diffTime','agentcompleteAt','complete','blindtransfer','transfereruniqueid','[%s][agents][blindtransfer]','[%s][agents][blindtransfer]\x20agent:%s\x20transferuniqueid:%s','transfer','transfertype','blind','transferexten','extension','transferuniqueid','attendedtransfer','origtransfereruniqueid','origtransfererlinkedid','[%s][agents][attendedtransfer]\x20agent:%s','secondtransfereruniqueid','ATTENDED','origtransfererexten','transfereeuniqueid','agententerreason','clone','calleridnum','calleridname','secondtransfererlinkedid','secondtransfererexten','transfertargetuniqueid','[%s][agents][attendedtransfer]','hangup','rejected','indexOf','agent','[%s][agents][hangup]\x20agent:%s\x20reason:%s\x20lastevent:%s','[%s][agents][hangup]','util','./utils','info','format','uniqueid','queue','membername','interface','connectedlinenum','lastevent','getVoiceQueueByName','then','type','agentacw','agentcomplete','acwtime','acwTimeout','request','CreateVoiceAgentReport','destuniqueid','debug','[%s][agents][agentcalled]','agentcalledAt','called','[%s][agents][agentcalled]\x20agent:%s\x20destuniqueid:%s\x20lastevent:called','error','agentringnoanswer','isNil','[%s][agents][agentringnoanswer]','[%s][agents][agentringnoanswer]\x20agent:%s\x20destuniqueid:%s\x20lastevent:timeout','agentringnoanswerAt'];(function(_0x1c78de,_0x4c36ac){var _0x185db5=function(_0x3c953a){while(--_0x3c953a){_0x1c78de['push'](_0x1c78de['shift']());}};_0x185db5(++_0x4c36ac);}(_0xb58b,0x1f1));var _0xbb58=function(_0x28f43b,_0x3de923){_0x28f43b=_0x28f43b-0x0;var _0x5026d7=_0xb58b[_0x28f43b];return _0x5026d7;};'use strict';var _=require('lodash');var util=require(_0xbb58('0x0'));var utils=require(_0xbb58('0x1'));var agents={};var transfers={};var unanswered=[];function writeDB(_0x3fb85a,_0x4f5d42){utils[_0xbb58('0x2')](util[_0xbb58('0x3')]('[%s][agents][writeDB]\x20channel:%s\x20queue:%s\x20agent:%s\x20interface:%s\x20calleridnum:%s\x20connectedlinenum:%s\x20lastevent:%s',_0x3fb85a[_0xbb58('0x4')],_0x3fb85a['channel'],_0x3fb85a[_0xbb58('0x5')],_0x3fb85a[_0xbb58('0x6')],_0x3fb85a[_0xbb58('0x7')],_0x3fb85a['calleridnum'],_0x3fb85a[_0xbb58('0x8')],_0x3fb85a[_0xbb58('0x9')]));if(_0x3fb85a[_0xbb58('0x5')]){utils[_0xbb58('0xa')](_0x3fb85a[_0xbb58('0x5')])[_0xbb58('0xb')](function(_0xc9e5bc){if(_0xc9e5bc){_0x3fb85a[_0xbb58('0xc')]=_0xc9e5bc[_0xbb58('0xc')];_0x3fb85a[_0xbb58('0xd')]=_0x3fb85a[_0xbb58('0xe')]?_0xc9e5bc['acw']:![];_0x3fb85a[_0xbb58('0xf')]=_0x3fb85a['agentacw']?_0xc9e5bc[_0xbb58('0x10')]:0x0;}utils[_0xbb58('0x11')](_0xbb58('0x12'),_0x3fb85a);});}else{utils[_0xbb58('0x11')]('CreateVoiceAgentReport',_0x3fb85a);}if(_0x4f5d42){delete transfers[_0x3fb85a[_0xbb58('0x4')]];}else{delete agents[_0x3fb85a[_0xbb58('0x13')]];}}exports['agentcalled']=function(_0x132511){try{utils[_0xbb58('0x14')](util[_0xbb58('0x3')](_0xbb58('0x15'),_0x132511[_0xbb58('0x4')]),_0x132511);agents[_0x132511['destuniqueid']]=_0x132511;agents[_0x132511[_0xbb58('0x13')]][_0xbb58('0x16')]=utils['now']();agents[_0x132511['destuniqueid']][_0xbb58('0x9')]=_0xbb58('0x17');agents[_0x132511[_0xbb58('0x13')]]['connectedlinenum']=null;agents[_0x132511['destuniqueid']]['connectedlinename']=null;utils['info'](util[_0xbb58('0x3')](_0xbb58('0x18'),_0x132511['uniqueid'],agents[_0x132511[_0xbb58('0x13')]]['membername'],_0x132511[_0xbb58('0x13')]));}catch(_0xe0bd6c){utils[_0xbb58('0x19')](util[_0xbb58('0x3')](_0xbb58('0x15'),_0x132511[_0xbb58('0x4')]),_0xe0bd6c);}};exports[_0xbb58('0x1a')]=function(_0x497fd0){try{if(!_[_0xbb58('0x1b')](agents[_0x497fd0[_0xbb58('0x13')]])){utils[_0xbb58('0x14')](util[_0xbb58('0x3')](_0xbb58('0x1c'),_0x497fd0[_0xbb58('0x4')]),_0x497fd0);utils[_0xbb58('0x2')](util[_0xbb58('0x3')](_0xbb58('0x1d'),_0x497fd0['uniqueid'],agents[_0x497fd0[_0xbb58('0x13')]]['membername'],_0x497fd0[_0xbb58('0x13')]));agents[_0x497fd0[_0xbb58('0x13')]][_0xbb58('0x1a')]=!![];agents[_0x497fd0[_0xbb58('0x13')]][_0xbb58('0x1e')]=utils[_0xbb58('0x1f')]();agents[_0x497fd0[_0xbb58('0x13')]][_0xbb58('0x9')]='timeout';agents[_0x497fd0[_0xbb58('0x13')]][_0xbb58('0x20')]=_0xbb58('0x21');agents[_0x497fd0[_0xbb58('0x13')]][_0xbb58('0x22')]=_0x497fd0[_0xbb58('0x23')]?parseInt(_0x497fd0[_0xbb58('0x23')])/0x3e8:0x0;agents[_0x497fd0[_0xbb58('0x13')]][_0xbb58('0x24')]=0x0;unanswered[_0xbb58('0x25')](_0x497fd0[_0xbb58('0x13')]);}}catch(_0x28b3a3){utils[_0xbb58('0x19')](util[_0xbb58('0x3')](_0xbb58('0x1c'),_0x497fd0['uniqueid']),_0x28b3a3);}};exports[_0xbb58('0x26')]=function(_0xe46bc1){try{_[_0xbb58('0x27')](agents,function(_0x3c9cee,_0x3304b9){if(_0x3c9cee[_0xbb58('0x4')]==_0xe46bc1[_0xbb58('0x4')]&&!_[_0xbb58('0x28')](unanswered,_0x3c9cee[_0xbb58('0x13')])){utils['debug'](util[_0xbb58('0x3')](_0xbb58('0x29'),_0xe46bc1[_0xbb58('0x4')]),_0xe46bc1);utils[_0xbb58('0x2')](util[_0xbb58('0x3')](_0xbb58('0x2a'),_0xe46bc1[_0xbb58('0x4')],_0x3c9cee[_0xbb58('0x6')],_0x3c9cee[_0xbb58('0x13')]));_0x3c9cee[_0xbb58('0x1a')]=!![];_0x3c9cee[_0xbb58('0x1e')]=utils[_0xbb58('0x1f')]();_0x3c9cee[_0xbb58('0x9')]='abandoned';_0x3c9cee['reason']='abandoned';_0x3c9cee[_0xbb58('0x22')]=_0xe46bc1[_0xbb58('0x22')];_0x3c9cee[_0xbb58('0x24')]=0x0;writeDB(_0x3c9cee);}});}catch(_0x3c7627){utils[_0xbb58('0x19')](util[_0xbb58('0x3')](_0xbb58('0x29'),_0xe46bc1[_0xbb58('0x4')]),_0x3c7627);}};exports['agentconnect']=function(_0x2fbf90){try{if(agents[_0x2fbf90[_0xbb58('0x13')]]){utils['debug'](util[_0xbb58('0x3')]('[%s][agents][agentconnect]',_0x2fbf90[_0xbb58('0x4')]),_0x2fbf90);utils['info'](util[_0xbb58('0x3')](_0xbb58('0x2b'),_0x2fbf90['uniqueid'],agents[_0x2fbf90[_0xbb58('0x13')]][_0xbb58('0x6')],_0x2fbf90[_0xbb58('0x13')]));agents[_0x2fbf90[_0xbb58('0x13')]][_0xbb58('0x2c')]=utils[_0xbb58('0x1f')]();agents[_0x2fbf90[_0xbb58('0x13')]][_0xbb58('0x8')]=_0x2fbf90['connectedlinenum'];agents[_0x2fbf90[_0xbb58('0x13')]][_0xbb58('0x2d')]=_0x2fbf90[_0xbb58('0x2d')];agents[_0x2fbf90['destuniqueid']]['holdtime']=_0x2fbf90[_0xbb58('0x23')];agents[_0x2fbf90['destuniqueid']][_0xbb58('0x9')]=_0xbb58('0x2e');_[_0xbb58('0x27')](agents,function(_0x560911,_0x485830){if(_0x560911[_0xbb58('0x13')]!=_0x2fbf90[_0xbb58('0x13')]&&_0x560911[_0xbb58('0x4')]==_0x2fbf90[_0xbb58('0x4')]){_0x560911[_0xbb58('0x24')]=0x0;_0x560911[_0xbb58('0x22')]=_0x2fbf90['ringtime'];_0x560911[_0xbb58('0x1a')]=!![];_0x560911[_0xbb58('0x1e')]=utils[_0xbb58('0x1f')]();_0x560911[_0xbb58('0x9')]=_0xbb58('0x2f');_0x560911[_0xbb58('0x20')]='answered_elsewhere';_0x560911[_0xbb58('0x30')]=_0x2fbf90['destuniqueid'];_0x560911[_0xbb58('0x31')]=_0x2fbf90[_0xbb58('0x6')];writeDB(_0x560911);}});}}catch(_0x29fb1c){utils[_0xbb58('0x19')](util['format'](_0xbb58('0x32'),_0x2fbf90[_0xbb58('0x4')]),_0x29fb1c);}};exports[_0xbb58('0xe')]=function(_0x3a732c){try{if(!_['isNil'](agents[_0x3a732c[_0xbb58('0x13')]])){utils['debug'](util[_0xbb58('0x3')](_0xbb58('0x33'),_0x3a732c[_0xbb58('0x4')]),_0x3a732c);utils[_0xbb58('0x2')](util[_0xbb58('0x3')](_0xbb58('0x34'),_0x3a732c[_0xbb58('0x4')],agents[_0x3a732c[_0xbb58('0x13')]][_0xbb58('0x6')],_0x3a732c[_0xbb58('0x13')]));agents[_0x3a732c[_0xbb58('0x13')]][_0xbb58('0xe')]=!![];agents[_0x3a732c[_0xbb58('0x13')]]['agentcompleteAt']=utils[_0xbb58('0x1f')]();agents[_0x3a732c['destuniqueid']]['talktime']=utils[_0xbb58('0x35')](agents[_0x3a732c[_0xbb58('0x13')]][_0xbb58('0x36')],agents[_0x3a732c[_0xbb58('0x13')]][_0xbb58('0x2c')]);agents[_0x3a732c[_0xbb58('0x13')]][_0xbb58('0x20')]=_0x3a732c[_0xbb58('0x20')];agents[_0x3a732c[_0xbb58('0x13')]][_0xbb58('0x9')]=_0xbb58('0x37');writeDB(agents[_0x3a732c['destuniqueid']]);}}catch(_0x2ec9be){utils[_0xbb58('0x19')](util['format'](_0xbb58('0x33'),_0x3a732c[_0xbb58('0x4')]),_0x2ec9be);}};exports[_0xbb58('0x38')]=function(_0xdb0ff7){try{if(!_['isNil'](agents[_0xdb0ff7[_0xbb58('0x39')]])){utils['debug'](util[_0xbb58('0x3')](_0xbb58('0x3a'),_0xdb0ff7[_0xbb58('0x4')]),_0xdb0ff7);utils['info'](util[_0xbb58('0x3')](_0xbb58('0x3b'),_0xdb0ff7['uniqueid'],agents[_0xdb0ff7[_0xbb58('0x39')]]['membername'],agents[_0xdb0ff7[_0xbb58('0x39')]][_0xbb58('0x4')]));agents[_0xdb0ff7[_0xbb58('0x39')]][_0xbb58('0x3c')]=!![];agents[_0xdb0ff7[_0xbb58('0x39')]][_0xbb58('0x3d')]=_0xbb58('0x3e');agents[_0xdb0ff7['transfereruniqueid']][_0xbb58('0x3f')]=_0xdb0ff7[_0xbb58('0x40')];agents[_0xdb0ff7['transfereruniqueid']][_0xbb58('0x41')]=agents[_0xdb0ff7[_0xbb58('0x39')]]['uniqueid'];}}catch(_0x22802c){utils[_0xbb58('0x19')](util[_0xbb58('0x3')]('[%s][agents][blindtransfer]',_0xdb0ff7[_0xbb58('0x4')]),_0x22802c);}};exports[_0xbb58('0x42')]=function(_0x12999c){try{utils['debug'](util[_0xbb58('0x3')]('[%s][agents][attendedtransfer]',_0x12999c[_0xbb58('0x43')]),_0x12999c);if(_0x12999c[_0xbb58('0x43')]==_0x12999c[_0xbb58('0x44')]){if(!_['isNil'](agents[_0x12999c['secondtransfereruniqueid']])){utils[_0xbb58('0x2')](util[_0xbb58('0x3')](_0xbb58('0x45'),_0x12999c[_0xbb58('0x43')],agents[_0x12999c[_0xbb58('0x46')]]['membername']));agents[_0x12999c[_0xbb58('0x46')]][_0xbb58('0x3c')]=!![];agents[_0x12999c[_0xbb58('0x46')]]['transfertype']=_0xbb58('0x47');agents[_0x12999c[_0xbb58('0x46')]][_0xbb58('0x3f')]=_0x12999c[_0xbb58('0x48')];agents[_0x12999c[_0xbb58('0x46')]]['transferuniqueid']=_0x12999c[_0xbb58('0x43')];}if(_0x12999c[_0xbb58('0x49')]&&agents[_0x12999c[_0xbb58('0x49')]]){agents[_0x12999c[_0xbb58('0x49')]][_0xbb58('0x4a')]=0x1;transfers[_0x12999c[_0xbb58('0x49')]]=_[_0xbb58('0x4b')](agents[_0x12999c[_0xbb58('0x49')]]);transfers[_0x12999c['transfereeuniqueid']][_0xbb58('0x4c')]=agents[_0x12999c['secondtransfereruniqueid']][_0xbb58('0x4c')];transfers[_0x12999c[_0xbb58('0x49')]][_0xbb58('0x4d')]=agents[_0x12999c[_0xbb58('0x46')]][_0xbb58('0x4d')];transfers[_0x12999c[_0xbb58('0x49')]][_0xbb58('0x16')]=utils[_0xbb58('0x1f')]();transfers[_0x12999c[_0xbb58('0x49')]][_0xbb58('0x2c')]=utils[_0xbb58('0x1f')]();transfers[_0x12999c['transfereeuniqueid']][_0xbb58('0x22')]=0x0;transfers[_0x12999c[_0xbb58('0x49')]][_0xbb58('0x4a')]=0x2;}}else if(_0x12999c['secondtransfereruniqueid']==_0x12999c[_0xbb58('0x4e')]){if(!_['isNil'](agents[_0x12999c[_0xbb58('0x43')]])){utils[_0xbb58('0x2')](util['format'](_0xbb58('0x45'),_0x12999c[_0xbb58('0x43')],agents[_0x12999c[_0xbb58('0x43')]][_0xbb58('0x6')]));agents[_0x12999c[_0xbb58('0x43')]]['transfer']=!![];agents[_0x12999c['origtransfereruniqueid']][_0xbb58('0x3d')]=_0xbb58('0x47');agents[_0x12999c[_0xbb58('0x43')]]['transferexten']=_0x12999c[_0xbb58('0x4f')];agents[_0x12999c[_0xbb58('0x43')]]['transferuniqueid']=_0x12999c[_0xbb58('0x46')];}if(_0x12999c[_0xbb58('0x50')]&&agents[_0x12999c['transfertargetuniqueid']]){agents[_0x12999c[_0xbb58('0x50')]][_0xbb58('0x4a')]=0x1;transfers[_0x12999c[_0xbb58('0x50')]]=_[_0xbb58('0x4b')](agents[_0x12999c[_0xbb58('0x50')]]);transfers[_0x12999c['transfertargetuniqueid']][_0xbb58('0x4c')]=agents[_0x12999c[_0xbb58('0x43')]][_0xbb58('0x4c')];transfers[_0x12999c[_0xbb58('0x50')]][_0xbb58('0x4d')]=agents[_0x12999c['origtransfereruniqueid']]['calleridname'];transfers[_0x12999c[_0xbb58('0x50')]]['agentcalledAt']=utils[_0xbb58('0x1f')]();transfers[_0x12999c[_0xbb58('0x50')]][_0xbb58('0x2c')]=utils[_0xbb58('0x1f')]();transfers[_0x12999c[_0xbb58('0x50')]][_0xbb58('0x22')]=0x0;transfers[_0x12999c[_0xbb58('0x50')]][_0xbb58('0x4a')]=0x2;}}}catch(_0x1529cf){utils[_0xbb58('0x19')](util['format'](_0xbb58('0x51'),_0x12999c[_0xbb58('0x43')]),_0x1529cf);}};exports[_0xbb58('0x52')]=function(_0x5b6508){try{utils[_0xbb58('0x14')](util['format']('[%s][agents][hangup]',_0x5b6508[_0xbb58('0x4')]),_0x5b6508);if(agents[_0x5b6508[_0xbb58('0x4')]]&&agents[_0x5b6508[_0xbb58('0x4')]][_0xbb58('0x20')]==='timeout'){if(_0x5b6508['cause']==='21'){agents[_0x5b6508[_0xbb58('0x4')]][_0xbb58('0x20')]='rejected';agents[_0x5b6508[_0xbb58('0x4')]][_0xbb58('0x9')]=_0xbb58('0x53');}utils[_0xbb58('0x2')](util[_0xbb58('0x3')]('[%s][agents][hangup]\x20agent:%s\x20reason:%s\x20lastevent:%s',_0x5b6508[_0xbb58('0x4')],agents[_0x5b6508['uniqueid']]['membername'],agents[_0x5b6508[_0xbb58('0x4')]][_0xbb58('0x20')],agents[_0x5b6508[_0xbb58('0x4')]]['lastevent']));writeDB(agents[_0x5b6508[_0xbb58('0x4')]]);var _0x3d4750=unanswered[_0xbb58('0x54')](_0x5b6508[_0xbb58('0x4')]);if(_0x3d4750>-0x1){unanswered['splice'](_0x3d4750,0x1);}}if(transfers[_0x5b6508[_0xbb58('0x4')]]){transfers[_0x5b6508['uniqueid']]['agentcomplete']=!![];transfers[_0x5b6508[_0xbb58('0x4')]][_0xbb58('0x36')]=utils[_0xbb58('0x1f')]();transfers[_0x5b6508['uniqueid']]['talktime']=utils[_0xbb58('0x35')](transfers[_0x5b6508[_0xbb58('0x4')]][_0xbb58('0x36')],transfers[_0x5b6508[_0xbb58('0x4')]][_0xbb58('0x2c')]);transfers[_0x5b6508[_0xbb58('0x4')]][_0xbb58('0x20')]=_0xbb58('0x55');transfers[_0x5b6508[_0xbb58('0x4')]][_0xbb58('0x9')]=_0xbb58('0x37');utils['info'](util['format'](_0xbb58('0x56'),_0x5b6508[_0xbb58('0x4')],transfers[_0x5b6508[_0xbb58('0x4')]]['membername'],transfers[_0x5b6508[_0xbb58('0x4')]][_0xbb58('0x20')],transfers[_0x5b6508[_0xbb58('0x4')]]['lastevent']));writeDB(transfers[_0x5b6508[_0xbb58('0x4')]],!![]);}if(agents[_0x5b6508['uniqueid']]&&agents[_0x5b6508[_0xbb58('0x4')]]['agentconnectAt']){agents[_0x5b6508[_0xbb58('0x4')]][_0xbb58('0xe')]=!![];agents[_0x5b6508[_0xbb58('0x4')]][_0xbb58('0x36')]=utils[_0xbb58('0x1f')]();agents[_0x5b6508[_0xbb58('0x4')]]['talktime']=utils['diffTime'](agents[_0x5b6508[_0xbb58('0x4')]][_0xbb58('0x36')],agents[_0x5b6508['uniqueid']][_0xbb58('0x2c')]);agents[_0x5b6508[_0xbb58('0x4')]][_0xbb58('0x20')]=agents[_0x5b6508['uniqueid']][_0xbb58('0x3c')]?'transfer':_0xbb58('0x55');agents[_0x5b6508[_0xbb58('0x4')]][_0xbb58('0x9')]=_0xbb58('0x37');utils[_0xbb58('0x2')](util[_0xbb58('0x3')](_0xbb58('0x56'),_0x5b6508['uniqueid'],agents[_0x5b6508[_0xbb58('0x4')]][_0xbb58('0x6')],agents[_0x5b6508[_0xbb58('0x4')]]['reason'],agents[_0x5b6508[_0xbb58('0x4')]][_0xbb58('0x9')]));writeDB(agents[_0x5b6508['uniqueid']]);}}catch(_0x4cc297){utils[_0xbb58('0x19')](util[_0xbb58('0x3')](_0xbb58('0x57'),_0x5b6508['uniqueid']),_0x4cc297);}};
\ No newline at end of file