Built motion from commit b0a9a629.|2.6.33
[motion2.git] / server / services / agi / project.js
index 49706f8..0990400 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x463a=['addVertex','omit','mxCell','isArray','length','source','target','addEdge','value','mxGraphModel','root','inspect','production','stringify','joinAt','format','info','[START\x20TRAVERSE]\x20%s\x20project:\x20from\x20\x22%s\x22\x20<%s>\x20to\x20extension\x20%s\x20with\x20uniqueid\x20%s','calleridname','callerid','dnid','uniqueid','traverseBFS','start','clear','debug','gotoc\x20block\x20stop\x20traverse\x20BFS','context','extension','priority','response','evtHangup','isUndefined','result','toString','agicommand\x20not\x20found','finally','[FINALLY\x20TRAVERSE]\x20%s\x20project:\x20from\x20\x22%s\x22\x20<%s>\x20to\x20extension\x20%s\x20with\x20uniqueid\x20%s','arg_1','vertex','[END]\x20%s\x20project:\x20from\x20\x22%s\x22\x20<%s>\x20to\x20extension\x20%s\x20with\x20uniqueid\x20%s','[GOTO]\x20context:\x20%s\x20extension:\x20%s\x20priority:\x20%s','continueAt','close','Project\x20%s\x20not\x20found','exports','lodash','moment','util','./rpc','./mailRpc','./graph','./vertices','error','stack','agicommand','hasOwnProperty','retry','maxRetry'];(function(_0x457b64,_0x49a219){var _0x437111=function(_0x3dad3d){while(--_0x3dad3d){_0x457b64['push'](_0x457b64['shift']());}};_0x437111(++_0x49a219);}(_0x463a,0x1cb));var _0xa463=function(_0x31cb5f,_0x2df766){_0x31cb5f=_0x31cb5f-0x0;var _0x586042=_0x463a[_0x31cb5f];return _0x586042;};'use strict';var _=require(_0xa463('0x0'));var moment=require(_0xa463('0x1'));var parser=require('xml2json');var util=require(_0xa463('0x2'));var logger=require('../../config/logger')('agi');var rpc=require(_0xa463('0x3'));var mailRpc=require(_0xa463('0x4'));var Graph=require(_0xa463('0x5'));var Vertices=require(_0xa463('0x6'));var AGI_CODE_SUCCESS=0xc8;var AGI_RESULT_ERROR=-0x1;function getAll(){return rpc['getSquareProjects']()['catch'](function(_0x40d9a1){logger[_0xa463('0x7')]('Unable\x20to\x20download\x20CallySquare\x20projects',_0x40d9a1[_0xa463('0x8')]);return[];});}function addVertex(_0xcaf14d,_0x2be30c,_0x1fbdec){_0x2be30c[_0xa463('0x9')]=_0x1fbdec;if(_0x2be30c[_0xa463('0xa')](_0xa463('0xb'))){_0x2be30c[_0xa463('0xc')]=parseInt(_0x2be30c[_0xa463('0xb')],0xa);}_0xcaf14d[_0xa463('0xd')](_[_0xa463('0xe')](_0x2be30c,_0xa463('0xf')));}function initGraph(_0x3eebc6,_0x4bd451){var _0x4ee196=new Graph();for(var _0x28e219 in _0x3eebc6){if(_0x3eebc6[_0xa463('0xa')](_0x28e219)){if(_[_0xa463('0x10')](_0x3eebc6[_0x28e219])){for(var _0x5cd692=0x0;_0x5cd692<_0x3eebc6[_0x28e219][_0xa463('0x11')];_0x5cd692+=0x1){addVertex(_0x4ee196,_0x3eebc6[_0x28e219][_0x5cd692],_0x28e219);}}else{addVertex(_0x4ee196,_0x3eebc6[_0x28e219],_0x28e219);}}}for(var _0x75948e=0x0;_0x75948e<_0x4bd451[_0xa463('0x11')];_0x75948e+=0x1){if(_0x4bd451[_0x75948e][_0xa463('0x12')]&&_0x4bd451[_0x75948e][_0xa463('0x13')]){_0x4ee196[_0xa463('0x14')](_0x4bd451[_0x75948e]['source'],_0x4bd451[_0x75948e][_0xa463('0x13')],_0x4bd451[_0x75948e][_0xa463('0x15')]);}}return _0x4ee196;}function getRoot(_0x29bb73){return parser['toJson'](_0x29bb73,{'object':!![]})[_0xa463('0x16')][_0xa463('0x17')];}function inspect(_0xbd422b){return util[_0xa463('0x18')](_0xbd422b,{'showHidden':![],'depth':null});}function initialize(_0x24253f,_0x45d405){var _0x20e257=getRoot(_0x24253f[_0xa463('0x19')]);if(!_0x20e257||!_0x20e257['start'])return;var _0x1e3f30,_0x1911f6,_0x3325b0;logger['debug'](_0xa463('0x17'),JSON[_0xa463('0x1a')](_0x20e257,null,0x2));_0x45d405[_0xa463('0x1b')]=moment()[_0xa463('0x1c')]('YYYY-MM-DD\x20HH:mm:ss');_0x1e3f30=initGraph(_[_0xa463('0xe')](_0x20e257,_0xa463('0xf')),_0x20e257[_0xa463('0xf')]);_0x1911f6=new Vertices(_0x45d405,rpc,mailRpc);logger[_0xa463('0x1d')](util[_0xa463('0x1c')](_0xa463('0x1e'),_0x45d405['arg_1'],_0x45d405[_0xa463('0x1f')],_0x45d405[_0xa463('0x20')],_0x45d405[_0xa463('0x21')],_0x45d405[_0xa463('0x22')]));_0x1e3f30[_0xa463('0x23')](_0x20e257[_0xa463('0x24')]['id'],function(_0xaf7a70){try{_0xaf7a70=_0x1911f6[_0xa463('0x25')](_0xaf7a70);logger[_0xa463('0x26')]('vertex',JSON['stringify'](_0xaf7a70,null,0x2));if(_0xaf7a70[_0xa463('0x9')]==='gotoc'){logger[_0xa463('0x1d')](_0xa463('0x27'));_0x45d405[_0xa463('0x28')]=_0xaf7a70[_0xa463('0x28')]||_0x45d405['context'];_0x45d405[_0xa463('0x29')]=_0xaf7a70[_0xa463('0x29')];_0x45d405[_0xa463('0x2a')]=_0xaf7a70[_0xa463('0x2a')]?_0xaf7a70['priority']-0x1:0x1;return null;}else if(_0xaf7a70&&_0x1911f6[_0xaf7a70[_0xa463('0x9')]]){_0x3325b0=_0x1911f6[_0xaf7a70['agicommand']](_0xaf7a70);logger[_0xa463('0x1d')](_0xa463('0x2b'),JSON['stringify'](_0x3325b0,null,0x2));if(_0x3325b0&&_0x3325b0['code']===AGI_CODE_SUCCESS&&_0x3325b0['result']!==AGI_RESULT_ERROR&&!_0x45d405[_0xa463('0x2c')]){logger[_0xa463('0x26')](_0xa463('0x2b'),inspect(_0x3325b0));return _[_0xa463('0x2d')](_0x3325b0[_0xa463('0x2e')])?null:_0x3325b0[_0xa463('0x2e')][_0xa463('0x2f')]();}else{logger[_0xa463('0x7')]('response',inspect(_0x3325b0));return null;}}else{logger['error'](_0xa463('0x30'));return null;}}catch(_0x9f7001){logger[_0xa463('0x7')](_0x9f7001[_0xa463('0x8')]);return null;}});if(_0x20e257[_0xa463('0x31')]){logger['info'](util[_0xa463('0x1c')](_0xa463('0x32'),_0x45d405[_0xa463('0x33')],_0x45d405[_0xa463('0x1f')],_0x45d405['callerid'],_0x45d405[_0xa463('0x21')],_0x45d405['uniqueid']));_0x1e3f30[_0xa463('0x23')](_0x20e257[_0xa463('0x31')]['id'],function(_0x505028){try{_0x505028=_0x1911f6[_0xa463('0x25')](_0x505028);logger[_0xa463('0x26')](_0xa463('0x34'),JSON[_0xa463('0x1a')](_0x505028,null,0x2));if(_0x505028&&_0x1911f6[_0x505028[_0xa463('0x9')]]){_0x3325b0=_0x1911f6[_0x505028['agicommand']](_0x505028);if(_0x3325b0){logger[_0xa463('0x26')](_0xa463('0x2b'),inspect(_0x3325b0));return _['isUndefined'](_0x3325b0[_0xa463('0x2e')])?null:_0x3325b0[_0xa463('0x2e')]['toString']();}else{logger[_0xa463('0x7')](_0xa463('0x2b'),inspect(_0x3325b0));return null;}}else{logger[_0xa463('0x7')](_0xa463('0x30'));return null;}}catch(_0x29307f){logger[_0xa463('0x7')](_0x29307f[_0xa463('0x8')]);return null;}});}logger[_0xa463('0x1d')](util[_0xa463('0x1c')](_0xa463('0x35'),_0x45d405['arg_1'],_0x45d405['calleridname'],_0x45d405[_0xa463('0x20')],_0x45d405[_0xa463('0x21')],_0x45d405[_0xa463('0x22')]));logger[_0xa463('0x1d')](util[_0xa463('0x1c')](_0xa463('0x36'),_0x45d405[_0xa463('0x28')],_0x45d405[_0xa463('0x29')],parseInt(_0x45d405[_0xa463('0x2a')],0xa)+0x1));_0x45d405[_0xa463('0x37')](_0x45d405['context'],_0x45d405[_0xa463('0x29')],parseInt(_0x45d405[_0xa463('0x2a')],0xa)+0x1);_0x45d405[_0xa463('0x38')]();}function handleNotFound(_0x40d4ca){logger[_0xa463('0x7')](util[_0xa463('0x1c')](_0xa463('0x39'),_0x40d4ca['arg_1']));_0x40d4ca['continueAt'](_0x40d4ca['context'],_0x40d4ca[_0xa463('0x29')],parseInt(_0x40d4ca[_0xa463('0x2a')],0xa)+0x1);_0x40d4ca[_0xa463('0x38')]();}function handleUnpublished(_0x1f2426){logger[_0xa463('0x7')](util['format']('Project\x20%s\x20not\x20published',_0x1f2426[_0xa463('0x33')]));_0x1f2426['continueAt'](_0x1f2426[_0xa463('0x28')],_0x1f2426[_0xa463('0x29')],parseInt(_0x1f2426['priority'],0xa)+0x1);_0x1f2426['close']();}module[_0xa463('0x3a')]={'getAll':getAll,'handleNotFound':handleNotFound,'handleUnpublished':handleUnpublished,'initialize':initialize};
\ No newline at end of file
+var _0x6c5a=['YYYY-MM-DD\x20HH:mm:ss','omit','info','[START\x20TRAVERSE]\x20%s\x20project:\x20from\x20\x22%s\x22\x20<%s>\x20to\x20extension\x20%s\x20with\x20uniqueid\x20%s','arg_1','calleridname','callerid','dnid','uniqueid','traverseBFS','agicommand','gotoc','gotoc\x20block\x20stop\x20traverse\x20BFS','context','extension','priority','response','code','result','evtHangup','isUndefined','toString','agicommand\x20not\x20found','finally','[FINALLY\x20TRAVERSE]\x20%s\x20project:\x20from\x20\x22%s\x22\x20<%s>\x20to\x20extension\x20%s\x20with\x20uniqueid\x20%s','clear','[END]\x20%s\x20project:\x20from\x20\x22%s\x22\x20<%s>\x20to\x20extension\x20%s\x20with\x20uniqueid\x20%s','continueAt','Project\x20%s\x20not\x20found','close','Project\x20%s\x20not\x20published','lodash','moment','xml2json','util','agi','./mailRpc','./graph','./vertices','getSquareProjects','catch','error','stack','hasOwnProperty','retry','addVertex','mxCell','length','source','target','value','inspect','start','debug','root','stringify','joinAt','format'];(function(_0x23e202,_0x4762da){var _0xdbeddc=function(_0x388e74){while(--_0x388e74){_0x23e202['push'](_0x23e202['shift']());}};_0xdbeddc(++_0x4762da);}(_0x6c5a,0x93));var _0xa6c5=function(_0x95f4e1,_0x5585bf){_0x95f4e1=_0x95f4e1-0x0;var _0xb2c148=_0x6c5a[_0x95f4e1];return _0xb2c148;};'use strict';var _=require(_0xa6c5('0x0'));var moment=require(_0xa6c5('0x1'));var parser=require(_0xa6c5('0x2'));var util=require(_0xa6c5('0x3'));var logger=require('../../config/logger')(_0xa6c5('0x4'));var rpc=require('./rpc');var mailRpc=require(_0xa6c5('0x5'));var Graph=require(_0xa6c5('0x6'));var Vertices=require(_0xa6c5('0x7'));var AGI_CODE_SUCCESS=0xc8;var AGI_RESULT_ERROR=-0x1;function getAll(){return rpc[_0xa6c5('0x8')]()[_0xa6c5('0x9')](function(_0x22a475){logger[_0xa6c5('0xa')]('Unable\x20to\x20download\x20CallySquare\x20projects',_0x22a475[_0xa6c5('0xb')]);return[];});}function addVertex(_0x78328a,_0x3677b3,_0x1ccc41){_0x3677b3['agicommand']=_0x1ccc41;if(_0x3677b3[_0xa6c5('0xc')](_0xa6c5('0xd'))){_0x3677b3['maxRetry']=parseInt(_0x3677b3['retry'],0xa);}_0x78328a[_0xa6c5('0xe')](_['omit'](_0x3677b3,_0xa6c5('0xf')));}function initGraph(_0x5ab408,_0x895df1){var _0x10c4aa=new Graph();for(var _0x175d82 in _0x5ab408){if(_0x5ab408[_0xa6c5('0xc')](_0x175d82)){if(_['isArray'](_0x5ab408[_0x175d82])){for(var _0x3ff095=0x0;_0x3ff095<_0x5ab408[_0x175d82][_0xa6c5('0x10')];_0x3ff095+=0x1){addVertex(_0x10c4aa,_0x5ab408[_0x175d82][_0x3ff095],_0x175d82);}}else{addVertex(_0x10c4aa,_0x5ab408[_0x175d82],_0x175d82);}}}for(var _0x57f725=0x0;_0x57f725<_0x895df1[_0xa6c5('0x10')];_0x57f725+=0x1){if(_0x895df1[_0x57f725][_0xa6c5('0x11')]&&_0x895df1[_0x57f725]['target']){_0x10c4aa['addEdge'](_0x895df1[_0x57f725][_0xa6c5('0x11')],_0x895df1[_0x57f725][_0xa6c5('0x12')],_0x895df1[_0x57f725][_0xa6c5('0x13')]);}}return _0x10c4aa;}function getRoot(_0x385774){return parser['toJson'](_0x385774,{'object':!![]})['mxGraphModel']['root'];}function inspect(_0x662390){return util[_0xa6c5('0x14')](_0x662390,{'showHidden':![],'depth':null});}function initialize(_0x43bf96,_0x2f61d7){var _0x3b5a2a=getRoot(_0x43bf96['production']);if(!_0x3b5a2a||!_0x3b5a2a[_0xa6c5('0x15')])return;var _0x5ec786,_0x18dd14,_0x5d4f71;logger[_0xa6c5('0x16')](_0xa6c5('0x17'),JSON[_0xa6c5('0x18')](_0x3b5a2a,null,0x2));_0x2f61d7[_0xa6c5('0x19')]=moment()[_0xa6c5('0x1a')](_0xa6c5('0x1b'));_0x5ec786=initGraph(_[_0xa6c5('0x1c')](_0x3b5a2a,_0xa6c5('0xf')),_0x3b5a2a[_0xa6c5('0xf')]);_0x18dd14=new Vertices(_0x2f61d7,rpc,mailRpc);logger[_0xa6c5('0x1d')](util['format'](_0xa6c5('0x1e'),_0x2f61d7[_0xa6c5('0x1f')],_0x2f61d7[_0xa6c5('0x20')],_0x2f61d7[_0xa6c5('0x21')],_0x2f61d7[_0xa6c5('0x22')],_0x2f61d7[_0xa6c5('0x23')]));_0x5ec786[_0xa6c5('0x24')](_0x3b5a2a[_0xa6c5('0x15')]['id'],function(_0x30c396){try{_0x30c396=_0x18dd14['clear'](_0x30c396);logger['debug']('vertex',JSON[_0xa6c5('0x18')](_0x30c396,null,0x2));if(_0x30c396[_0xa6c5('0x25')]===_0xa6c5('0x26')){logger['info'](_0xa6c5('0x27'));_0x2f61d7[_0xa6c5('0x28')]=_0x30c396['context']||_0x2f61d7['context'];_0x2f61d7[_0xa6c5('0x29')]=_0x30c396['extension'];_0x2f61d7[_0xa6c5('0x2a')]=_0x30c396['priority']?_0x30c396[_0xa6c5('0x2a')]-0x1:0x1;return null;}else if(_0x30c396&&_0x18dd14[_0x30c396[_0xa6c5('0x25')]]){_0x5d4f71=_0x18dd14[_0x30c396['agicommand']](_0x30c396);logger['info'](_0xa6c5('0x2b'),JSON['stringify'](_0x5d4f71,null,0x2));if(_0x5d4f71&&_0x5d4f71[_0xa6c5('0x2c')]===AGI_CODE_SUCCESS&&_0x5d4f71[_0xa6c5('0x2d')]!==AGI_RESULT_ERROR&&!_0x2f61d7[_0xa6c5('0x2e')]){logger[_0xa6c5('0x16')]('response',inspect(_0x5d4f71));return _[_0xa6c5('0x2f')](_0x5d4f71[_0xa6c5('0x2d')])?null:_0x5d4f71[_0xa6c5('0x2d')][_0xa6c5('0x30')]();}else{logger[_0xa6c5('0xa')]('response',inspect(_0x5d4f71));return null;}}else{logger[_0xa6c5('0xa')](_0xa6c5('0x31'));return null;}}catch(_0xf4fa59){logger['error'](_0xf4fa59[_0xa6c5('0xb')]);return null;}});if(_0x3b5a2a[_0xa6c5('0x32')]){logger[_0xa6c5('0x1d')](util['format'](_0xa6c5('0x33'),_0x2f61d7[_0xa6c5('0x1f')],_0x2f61d7['calleridname'],_0x2f61d7[_0xa6c5('0x21')],_0x2f61d7[_0xa6c5('0x22')],_0x2f61d7['uniqueid']));_0x5ec786[_0xa6c5('0x24')](_0x3b5a2a[_0xa6c5('0x32')]['id'],function(_0x24e945){try{_0x24e945=_0x18dd14[_0xa6c5('0x34')](_0x24e945);logger[_0xa6c5('0x16')]('vertex',JSON[_0xa6c5('0x18')](_0x24e945,null,0x2));if(_0x24e945&&_0x18dd14[_0x24e945[_0xa6c5('0x25')]]){_0x5d4f71=_0x18dd14[_0x24e945[_0xa6c5('0x25')]](_0x24e945);if(_0x5d4f71){logger['debug'](_0xa6c5('0x2b'),inspect(_0x5d4f71));return _[_0xa6c5('0x2f')](_0x5d4f71[_0xa6c5('0x2d')])?null:_0x5d4f71[_0xa6c5('0x2d')][_0xa6c5('0x30')]();}else{logger['error']('response',inspect(_0x5d4f71));return null;}}else{logger['error'](_0xa6c5('0x31'));return null;}}catch(_0x57ed56){logger[_0xa6c5('0xa')](_0x57ed56[_0xa6c5('0xb')]);return null;}});}logger[_0xa6c5('0x1d')](util[_0xa6c5('0x1a')](_0xa6c5('0x35'),_0x2f61d7[_0xa6c5('0x1f')],_0x2f61d7[_0xa6c5('0x20')],_0x2f61d7[_0xa6c5('0x21')],_0x2f61d7[_0xa6c5('0x22')],_0x2f61d7[_0xa6c5('0x23')]));logger['info'](util[_0xa6c5('0x1a')]('[GOTO]\x20context:\x20%s\x20extension:\x20%s\x20priority:\x20%s',_0x2f61d7[_0xa6c5('0x28')],_0x2f61d7['extension'],parseInt(_0x2f61d7['priority'],0xa)+0x1));_0x2f61d7[_0xa6c5('0x36')](_0x2f61d7[_0xa6c5('0x28')],_0x2f61d7[_0xa6c5('0x29')],parseInt(_0x2f61d7['priority'],0xa)+0x1);_0x2f61d7['close']();}function handleNotFound(_0x2845c5){logger[_0xa6c5('0xa')](util['format'](_0xa6c5('0x37'),_0x2845c5[_0xa6c5('0x1f')]));_0x2845c5['continueAt'](_0x2845c5[_0xa6c5('0x28')],_0x2845c5[_0xa6c5('0x29')],parseInt(_0x2845c5[_0xa6c5('0x2a')],0xa)+0x1);_0x2845c5[_0xa6c5('0x38')]();}function handleUnpublished(_0x1ba10d){logger['error'](util[_0xa6c5('0x1a')](_0xa6c5('0x39'),_0x1ba10d[_0xa6c5('0x1f')]));_0x1ba10d[_0xa6c5('0x36')](_0x1ba10d[_0xa6c5('0x28')],_0x1ba10d['extension'],parseInt(_0x1ba10d[_0xa6c5('0x2a')],0xa)+0x1);_0x1ba10d[_0xa6c5('0x38')]();}module['exports']={'getAll':getAll,'handleNotFound':handleNotFound,'handleUnpublished':handleUnpublished,'initialize':initialize};
\ No newline at end of file