Built motion from commit 37e1ed56.|2.6.29
[motion2.git] / server / services / agi / index.js
index 971d28e..967bc04 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xb946=['./project','EventEmitter','defaults','127.0.0.1','projectUpdate','nextTick','stack','findIndex','deleted','splice','log','Cally\x20Square\x20server\x20listening\x20on\x20port\x20%d!','port','info','format','[LISTENING]\x20Cally\x20Square\x20listening\x20%s:%d','name','error','[%s]\x20%s','message','[CLOSE]\x20%s\x20project:\x20from\x20\x22%s\x22\x20<%s>\x20to\x20extension\x20%s\x20with\x20uniqueid\x20%s','calleridname','callerid','dnid','uniqueid','[TIMEOUT]\x20%s\x20project:\x20from\x20\x22%s\x22\x20<%s>\x20to\x20extension\x20%s\x20with\x20uniqueid\x20%s','arg_1','[HANGUP]\x20%s\x20project:\x20from\x20\x22%s\x22\x20<%s>\x20to\x20extension\x20%s\x20with\x20uniqueid\x20%s','evtHangup','createSquareReport','then','catch','hasOwnProperty','agi_','substring','stringify','close','timeout','hangup','handleNotFound','production','handleUnpublished','initialize','getLicense','callysquare','[LICENSE]\x20CHANNELS:\x20%s','[LICENSE]\x20CHANNELS:\x20UNLIMITED','getAll','./server','listening','connection','lodash','syncho','../../config/environment','../../config/logger','agi','../../config/license/util','./rpc'];(function(_0x58c56a,_0x40d9e4){var _0x4f83d0=function(_0x16d682){while(--_0x16d682){_0x58c56a['push'](_0x58c56a['shift']());}};_0x4f83d0(++_0x40d9e4);}(_0xb946,0x6d));var _0x6b94=function(_0x1eda20,_0x1149f4){_0x1eda20=_0x1eda20-0x0;var _0x31b953=_0xb946[_0x1eda20];return _0x31b953;};'use strict';var _=require(_0x6b94('0x0'));var syncho=require(_0x6b94('0x1'));var util=require('util');var config=require(_0x6b94('0x2'));var logger=require(_0x6b94('0x3'))(_0x6b94('0x4'));var utilLicense=require(_0x6b94('0x5'));var rpc=require(_0x6b94('0x6'));var Project=require(_0x6b94('0x7'));var AGIEmitter=require('./events')[_0x6b94('0x8')];var projects=[];config[_0x6b94('0x4')]=_[_0x6b94('0x9')](config[_0x6b94('0x4')],{'ip':_0x6b94('0xa'),'port':0x11dd});AGIEmitter['on'](_0x6b94('0xb'),projectUpdateHandler);function connectionHandler(_0x57c169){process[_0x6b94('0xc')](function(){syncho(function(){try{setChannelVariables(_0x57c169);agiHandler(_0x57c169);}catch(_0x3592ba){logger['error'](_0x3592ba[_0x6b94('0xd')]);}});});}function projectUpdateHandler(_0x5de5bd){try{var _0x2a1f0e=_[_0x6b94('0xe')](projects,['id',_0x5de5bd['id']]);if(_0x2a1f0e>-0x1){if(_0x5de5bd[_0x6b94('0xf')]===!![]){projects[_0x6b94('0x10')](_0x2a1f0e,0x1);}else{projects[_0x2a1f0e]=_0x5de5bd;}}else{projects['push'](_0x5de5bd);}}catch(_0x275f3f){logger['error'](_0x275f3f[_0x6b94('0xd')]);}}function listeningHandler(){console[_0x6b94('0x11')](_0x6b94('0x12'),config[_0x6b94('0x4')][_0x6b94('0x13')]);logger[_0x6b94('0x14')](util[_0x6b94('0x15')](_0x6b94('0x16'),config[_0x6b94('0x4')]['ip'],config[_0x6b94('0x4')][_0x6b94('0x13')]));}function errorHandler(_0x4e97d6){if(_0x4e97d6&&_0x4e97d6[_0x6b94('0x17')]&&_0x4e97d6['message']){logger[_0x6b94('0x18')](util[_0x6b94('0x15')](_0x6b94('0x19'),_0x4e97d6[_0x6b94('0x17')],_0x4e97d6[_0x6b94('0x1a')]));}else{logger['error'](util['format']('[ERROR]\x20%s',_0x4e97d6[_0x6b94('0xd')]));}}function closeHandler(){logger[_0x6b94('0x14')](util[_0x6b94('0x15')](_0x6b94('0x1b'),this['arg_1'],this[_0x6b94('0x1c')],this[_0x6b94('0x1d')],this[_0x6b94('0x1e')],this[_0x6b94('0x1f')]));try{createSquareReport(this);}catch(_0x5cb956){logger[_0x6b94('0x18')](_0x5cb956[_0x6b94('0xd')]);}}function timeoutHandler(){logger['info'](util[_0x6b94('0x15')](_0x6b94('0x20'),this[_0x6b94('0x21')],this[_0x6b94('0x1c')],this[_0x6b94('0x1d')],this[_0x6b94('0x1e')],this[_0x6b94('0x1f')]));}function hangupHandler(){logger['info'](util[_0x6b94('0x15')](_0x6b94('0x22'),this['arg_1'],this[_0x6b94('0x1c')],this[_0x6b94('0x1d')],this[_0x6b94('0x1e')],this[_0x6b94('0x1f')]));this[_0x6b94('0x23')]=!![];}function createSquareReport(_0x36cf3d,_0x1a331a){rpc[_0x6b94('0x24')](_0x36cf3d)[_0x6b94('0x25')](function(_0x38c877){if(_0x1a331a){_0x1a331a(null,_0x38c877);}})[_0x6b94('0x26')](function(_0x1b315a){if(_0x1a331a){_0x1a331a(null,_0x1b315a);}});}function setChannelVariables(_0x5183ae){for(var _0x8be9e5 in _0x5183ae){if(_0x5183ae[_0x6b94('0x27')](_0x8be9e5)){if(_0x8be9e5['indexOf'](_0x6b94('0x28'))===0x0){_0x5183ae[_0x8be9e5[_0x6b94('0x29')](0x4)]=_0x5183ae[_0x8be9e5];delete _0x5183ae[_0x8be9e5];}}}}function agiHandler(_0x103661){logger['debug']('variables',JSON[_0x6b94('0x2a')](_0x103661,null,0x2));logger[_0x6b94('0x14')](util[_0x6b94('0x15')]('[START]\x20%s\x20project:\x20from\x20\x22%s\x22\x20<%s>\x20to\x20extension\x20%s\x20with\x20uniqueid\x20%s',_0x103661[_0x6b94('0x21')],_0x103661[_0x6b94('0x1c')],_0x103661['callerid'],_0x103661[_0x6b94('0x1e')],_0x103661[_0x6b94('0x1f')]));_0x103661['on'](_0x6b94('0x18'),errorHandler);_0x103661['on'](_0x6b94('0x2b'),closeHandler);_0x103661['on'](_0x6b94('0x2c'),timeoutHandler);_0x103661[_0x6b94('0x23')]=![];_0x103661['on'](_0x6b94('0x2d'),hangupHandler);var _0x95b0e9=_['find'](projects,[_0x6b94('0x17'),_0x103661[_0x6b94('0x21')]]);if(!_0x95b0e9)return Project[_0x6b94('0x2e')](_0x103661);if(!_0x95b0e9[_0x6b94('0x2f')])return Project[_0x6b94('0x30')](_0x103661);return Project[_0x6b94('0x31')](_0x95b0e9,_0x103661);}function main(){var _0x3911d7;return utilLicense[_0x6b94('0x32')]()['then'](function(_0x8466fe){if(!_0x8466fe)return;if(_0x8466fe['voice']){if(_0x8466fe[_0x6b94('0x33')]&&_0x8466fe[_0x6b94('0x33')]>0x0){logger[_0x6b94('0x14')](util[_0x6b94('0x15')](_0x6b94('0x34'),_0x8466fe[_0x6b94('0x33')]));_0x3911d7=_0x8466fe[_0x6b94('0x33')];}else{logger[_0x6b94('0x14')](_0x6b94('0x35'));}}else{logger[_0x6b94('0x14')]('[LICENSE]\x20VOICE\x20IS\x20DISABLED');_0x3911d7=-0x1;}})[_0x6b94('0x25')](function(){return Project[_0x6b94('0x36')]();})[_0x6b94('0x25')](function(_0x182186){projects=_0x182186;return;})[_0x6b94('0x26')](function(_0x36ace4){logger[_0x6b94('0x18')]('[LICENSE]',_0x36ace4[_0x6b94('0xd')]);})['finally'](function(){var _0x2e2b71=require(_0x6b94('0x37'))(config[_0x6b94('0x4')][_0x6b94('0x13')],config['agi']['ip'],_0x3911d7);_0x2e2b71['on']('error',errorHandler);_0x2e2b71['on'](_0x6b94('0x38'),listeningHandler);_0x2e2b71['on'](_0x6b94('0x39'),connectionHandler);_0x2e2b71['on'](_0x6b94('0x2b'),closeHandler);});}main();
\ No newline at end of file
+var _0x2bdd=['push','stack','log','Cally\x20Square\x20server\x20listening\x20on\x20port\x20%d!','port','info','format','message','[%s]\x20%s','[ERROR]\x20%s','[CLOSE]\x20%s\x20project:\x20from\x20\x22%s\x22\x20<%s>\x20to\x20extension\x20%s\x20with\x20uniqueid\x20%s','arg_1','calleridname','uniqueid','[TIMEOUT]\x20%s\x20project:\x20from\x20\x22%s\x22\x20<%s>\x20to\x20extension\x20%s\x20with\x20uniqueid\x20%s','callerid','[HANGUP]\x20%s\x20project:\x20from\x20\x22%s\x22\x20<%s>\x20to\x20extension\x20%s\x20with\x20uniqueid\x20%s','dnid','createSquareReport','then','catch','hasOwnProperty','agi_','substring','variables','stringify','[START]\x20%s\x20project:\x20from\x20\x22%s\x22\x20<%s>\x20to\x20extension\x20%s\x20with\x20uniqueid\x20%s','timeout','evtHangup','hangup','find','name','handleNotFound','initialize','getLicense','voice','callysquare','[LICENSE]\x20CHANNELS:\x20%s','[LICENSE]\x20CHANNELS:\x20UNLIMITED','[LICENSE]\x20VOICE\x20IS\x20DISABLED','getAll','[LICENSE]','finally','listening','connection','close','lodash','util','../../config/environment','../../config/logger','agi','../../config/license/util','./rpc','./events','EventEmitter','defaults','127.0.0.1','projectUpdate','nextTick','error','findIndex','deleted','splice'];(function(_0x8662b6,_0x46f877){var _0x52eb14=function(_0x45ed60){while(--_0x45ed60){_0x8662b6['push'](_0x8662b6['shift']());}};_0x52eb14(++_0x46f877);}(_0x2bdd,0x6d));var _0xd2bd=function(_0xd39959,_0x302d09){_0xd39959=_0xd39959-0x0;var _0x1ff69c=_0x2bdd[_0xd39959];return _0x1ff69c;};'use strict';var _=require(_0xd2bd('0x0'));var syncho=require('syncho');var util=require(_0xd2bd('0x1'));var config=require(_0xd2bd('0x2'));var logger=require(_0xd2bd('0x3'))(_0xd2bd('0x4'));var utilLicense=require(_0xd2bd('0x5'));var rpc=require(_0xd2bd('0x6'));var Project=require('./project');var AGIEmitter=require(_0xd2bd('0x7'))[_0xd2bd('0x8')];var projects=[];config[_0xd2bd('0x4')]=_[_0xd2bd('0x9')](config['agi'],{'ip':_0xd2bd('0xa'),'port':0x11dd});AGIEmitter['on'](_0xd2bd('0xb'),projectUpdateHandler);function connectionHandler(_0x54e262){process[_0xd2bd('0xc')](function(){syncho(function(){try{setChannelVariables(_0x54e262);agiHandler(_0x54e262);}catch(_0x4b806d){logger[_0xd2bd('0xd')](_0x4b806d['stack']);}});});}function projectUpdateHandler(_0x60a1f6){try{var _0x79042c=_[_0xd2bd('0xe')](projects,['id',_0x60a1f6['id']]);if(_0x79042c>-0x1){if(_0x60a1f6[_0xd2bd('0xf')]===!![]){projects[_0xd2bd('0x10')](_0x79042c,0x1);}else{projects[_0x79042c]=_0x60a1f6;}}else{projects[_0xd2bd('0x11')](_0x60a1f6);}}catch(_0x3f13cd){logger[_0xd2bd('0xd')](_0x3f13cd[_0xd2bd('0x12')]);}}function listeningHandler(){console[_0xd2bd('0x13')](_0xd2bd('0x14'),config[_0xd2bd('0x4')][_0xd2bd('0x15')]);logger[_0xd2bd('0x16')](util[_0xd2bd('0x17')]('[LISTENING]\x20Cally\x20Square\x20listening\x20%s:%d',config[_0xd2bd('0x4')]['ip'],config[_0xd2bd('0x4')][_0xd2bd('0x15')]));}function errorHandler(_0x22445d){if(_0x22445d&&_0x22445d['name']&&_0x22445d[_0xd2bd('0x18')]){logger['error'](util[_0xd2bd('0x17')](_0xd2bd('0x19'),_0x22445d['name'],_0x22445d[_0xd2bd('0x18')]));}else{logger[_0xd2bd('0xd')](util[_0xd2bd('0x17')](_0xd2bd('0x1a'),_0x22445d[_0xd2bd('0x12')]));}}function closeHandler(){logger[_0xd2bd('0x16')](util['format'](_0xd2bd('0x1b'),this[_0xd2bd('0x1c')],this[_0xd2bd('0x1d')],this['callerid'],this['dnid'],this[_0xd2bd('0x1e')]));try{createSquareReport(this);}catch(_0xd66342){logger['error'](_0xd66342['stack']);}}function timeoutHandler(){logger['info'](util[_0xd2bd('0x17')](_0xd2bd('0x1f'),this[_0xd2bd('0x1c')],this['calleridname'],this[_0xd2bd('0x20')],this['dnid'],this['uniqueid']));}function hangupHandler(){logger[_0xd2bd('0x16')](util[_0xd2bd('0x17')](_0xd2bd('0x21'),this['arg_1'],this[_0xd2bd('0x1d')],this[_0xd2bd('0x20')],this[_0xd2bd('0x22')],this['uniqueid']));this['evtHangup']=!![];}function createSquareReport(_0x3c5a86,_0x324d40){rpc[_0xd2bd('0x23')](_0x3c5a86)[_0xd2bd('0x24')](function(_0x4e1bad){if(_0x324d40){_0x324d40(null,_0x4e1bad);}})[_0xd2bd('0x25')](function(_0x29edc9){if(_0x324d40){_0x324d40(null,_0x29edc9);}});}function setChannelVariables(_0x5626ee){for(var _0x1177ac in _0x5626ee){if(_0x5626ee[_0xd2bd('0x26')](_0x1177ac)){if(_0x1177ac['indexOf'](_0xd2bd('0x27'))===0x0){_0x5626ee[_0x1177ac[_0xd2bd('0x28')](0x4)]=_0x5626ee[_0x1177ac];delete _0x5626ee[_0x1177ac];}}}}function agiHandler(_0x5a0ea3){logger['debug'](_0xd2bd('0x29'),JSON[_0xd2bd('0x2a')](_0x5a0ea3,null,0x2));logger['info'](util[_0xd2bd('0x17')](_0xd2bd('0x2b'),_0x5a0ea3[_0xd2bd('0x1c')],_0x5a0ea3[_0xd2bd('0x1d')],_0x5a0ea3['callerid'],_0x5a0ea3[_0xd2bd('0x22')],_0x5a0ea3[_0xd2bd('0x1e')]));_0x5a0ea3['on'](_0xd2bd('0xd'),errorHandler);_0x5a0ea3['on']('close',closeHandler);_0x5a0ea3['on'](_0xd2bd('0x2c'),timeoutHandler);_0x5a0ea3[_0xd2bd('0x2d')]=![];_0x5a0ea3['on'](_0xd2bd('0x2e'),hangupHandler);var _0x5e7d20=_[_0xd2bd('0x2f')](projects,[_0xd2bd('0x30'),_0x5a0ea3[_0xd2bd('0x1c')]]);if(!_0x5e7d20)return Project[_0xd2bd('0x31')](_0x5a0ea3);if(!_0x5e7d20['production'])return Project['handleUnpublished'](_0x5a0ea3);return Project[_0xd2bd('0x32')](_0x5e7d20,_0x5a0ea3);}function main(){var _0x2fc8f3;return utilLicense[_0xd2bd('0x33')]()[_0xd2bd('0x24')](function(_0x1997d1){if(!_0x1997d1)return;if(_0x1997d1[_0xd2bd('0x34')]){if(_0x1997d1[_0xd2bd('0x35')]&&_0x1997d1[_0xd2bd('0x35')]>0x0){logger['info'](util[_0xd2bd('0x17')](_0xd2bd('0x36'),_0x1997d1['callysquare']));_0x2fc8f3=_0x1997d1[_0xd2bd('0x35')];}else{logger[_0xd2bd('0x16')](_0xd2bd('0x37'));}}else{logger[_0xd2bd('0x16')](_0xd2bd('0x38'));_0x2fc8f3=-0x1;}})[_0xd2bd('0x24')](function(){return Project[_0xd2bd('0x39')]();})[_0xd2bd('0x24')](function(_0x6e3c9b){projects=_0x6e3c9b;return;})[_0xd2bd('0x25')](function(_0x2ebc69){logger[_0xd2bd('0xd')](_0xd2bd('0x3a'),_0x2ebc69[_0xd2bd('0x12')]);})[_0xd2bd('0x3b')](function(){var _0x3bf0e9=require('./server')(config[_0xd2bd('0x4')][_0xd2bd('0x15')],config[_0xd2bd('0x4')]['ip'],_0x2fc8f3);_0x3bf0e9['on'](_0xd2bd('0xd'),errorHandler);_0x3bf0e9['on'](_0xd2bd('0x3c'),listeningHandler);_0x3bf0e9['on'](_0xd2bd('0x3d'),connectionHandler);_0x3bf0e9['on'](_0xd2bd('0x3e'),closeHandler);});}main();
\ No newline at end of file