Built motion from commit 639a1a7f.|2.6.19
[motion2.git] / server / services / agi / scripts / tilde / asr / lib / api.js
index 5087218..f6d7fa2 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xf760=['close','error','Tilde\x20ASR\x20send\x20error','terminate','parse','status','result','final','Tilde\x20ASR\x20hypoteses','hypotheses','transcript','likelihood','Success.','Aborted.\x20Recognition\x20was\x20aborted\x20for\x20some\x20reason.','Not\x20available.\x20Max\x20load\x20limit\x20reached.','Authentication\x20failed.','All\x20recognition\x20workers\x20are\x20currently\x20in\x20use\x20and\x20real-time\x20recognition\x20is\x20not\x20possible.','Tilde\x20ASR\x20parse\x20error','Close\x20Tilde\x20ASR\x20socket','Error\x20Tilde\x20ASR\x20socket','isNil','isObject','message','bluebird','lodash','moment','crypto','../../../../../../config/logger','exports','info','Tilde\x20URI','wss://runa.tilde.lv/client/ws/speech/LVASR-ONLINE','No\x20speech.\x20Sent\x20when\x20the\x20incoming\x20audio\x20contains\x20a\x20large\x20portion\x20of\x20silence\x20or\x20non-speech','sha1','update','digest','hex','Open\x20Tilde\x20ASR\x20socket','unix','send','stringify','createReadStream','data'];(function(_0x370632,_0x35794a){var _0x44eac4=function(_0x21d215){while(--_0x21d215){_0x370632['push'](_0x370632['shift']());}};_0x44eac4(++_0x35794a);}(_0xf760,0x144));var _0x0f76=function(_0x56eb5d,_0x40b985){_0x56eb5d=_0x56eb5d-0x0;var _0x59db3f=_0xf760[_0x56eb5d];return _0x59db3f;};'use strict';var BPromise=require(_0x0f76('0x0'));var _=require(_0x0f76('0x1'));var fs=require('fs');var WebSocket=require('ws');var moment=require(_0x0f76('0x2'));var crypto=require(_0x0f76('0x3'));var logger=require(_0x0f76('0x4'))('agi');module[_0x0f76('0x5')]=function(_0x2f4c3b,_0x14d9bb,_0x536833,_0x303129){return new BPromise(function(_0x1287e2,_0x495c6b){logger[_0x0f76('0x6')](_0x0f76('0x7'),_0x303129||_0x0f76('0x8'));var _0x1946c5=new WebSocket(_0x303129||_0x0f76('0x8'),{'perMessageDeflate':![]});var _0x5ac3f6='';var _0x36bdb8='0';var _0x41dad8='1';var _0xa46fd5=_0x0f76('0x9');function _0x2a476e(_0x4e2fdc){var _0x187c26=crypto['createHash'](_0x0f76('0xa'));_0x187c26[_0x0f76('0xb')](_0x4e2fdc);return _0x187c26[_0x0f76('0xc')](_0x0f76('0xd'));}function _0x57a9e1(){try{logger[_0x0f76('0x6')](_0x0f76('0xe'));var _0xddf0c9=moment()[_0x0f76('0xf')]();var _0x16458d=_0x2a476e(_0xddf0c9+_0x14d9bb+_0x536833);_0x1946c5[_0x0f76('0x10')](JSON[_0x0f76('0x11')]({'appID':_0x14d9bb,'timestamp':_0xddf0c9,'appKey':_0x16458d}));var _0x172ab3=fs[_0x0f76('0x12')](_0x2f4c3b);_0x172ab3['on'](_0x0f76('0x13'),function(_0x57ef49){_0x1946c5[_0x0f76('0x10')](_0x57ef49);});_0x172ab3['on'](_0x0f76('0x14'),function(){_0x1946c5[_0x0f76('0x10')]('EOS');});}catch(_0x22b750){logger[_0x0f76('0x15')](_0x0f76('0x16'),JSON[_0x0f76('0x11')](_0x22b750));_0x1946c5[_0x0f76('0x17')]();}}function _0x1b436a(_0x419afb){try{if(_0x419afb){var _0x4654ff=JSON[_0x0f76('0x18')](_0x419afb);switch(_0x4654ff[_0x0f76('0x19')]){case 0x0:if(_0x4654ff[_0x0f76('0x1a')]){if(_0x4654ff[_0x0f76('0x1a')][_0x0f76('0x1b')]){logger[_0x0f76('0x6')](_0x0f76('0x1c'),JSON['stringify'](_0x4654ff[_0x0f76('0x1a')][_0x0f76('0x1d')]));_0x5ac3f6=_0x4654ff[_0x0f76('0x1a')]['hypotheses'][0x0][_0x0f76('0x1e')];_0x36bdb8=_0x4654ff[_0x0f76('0x1a')]['hypotheses'][0x0][_0x0f76('0x1f')];_0x41dad8='0';_0xa46fd5=_0x0f76('0x20');_0x1946c5[_0x0f76('0x17')]();}}break;case 0x1:logger[_0x0f76('0x6')](_0x0f76('0x9'));_0x41dad8='1';_0xa46fd5='No\x20speech.\x20Sent\x20when\x20the\x20incoming\x20audio\x20contains\x20a\x20large\x20portion\x20of\x20silence\x20or\x20non-speech';break;case 0x2:logger[_0x0f76('0x6')](_0x0f76('0x21'));_0x41dad8='2';_0xa46fd5=_0x0f76('0x21');break;case 0x9:logger[_0x0f76('0x6')](_0x0f76('0x22'));_0x41dad8='9';_0xa46fd5=_0x0f76('0x22');break;case 0xa:logger['info']('Authentication\x20failed.');_0x41dad8='10';_0xa46fd5=_0x0f76('0x23');break;case 0xb:logger['info']('All\x20recognition\x20workers\x20are\x20currently\x20in\x20use\x20and\x20real-time\x20recognition\x20is\x20not\x20possible.');_0x41dad8='11';_0xa46fd5=_0x0f76('0x24');}}}catch(_0x430413){logger[_0x0f76('0x15')](_0x0f76('0x25'),JSON[_0x0f76('0x11')](_0x430413));_0x1946c5[_0x0f76('0x17')]();}}function _0xd847f6(){logger[_0x0f76('0x6')](_0x0f76('0x26'));_0x1287e2({'transcript':_0x5ac3f6,'confidence':_0x36bdb8,'status':_0x41dad8,'status_message':_0xa46fd5});}function _0x2a1c46(_0x4fe11d){logger[_0x0f76('0x15')](_0x0f76('0x27'));if(!_[_0x0f76('0x28')](_0x4fe11d)){logger[_0x0f76('0x15')](_[_0x0f76('0x29')](_0x4fe11d)?JSON[_0x0f76('0x11')](_0x4fe11d):_0x4fe11d);}}_0x1946c5['on']('open',_0x57a9e1);_0x1946c5['on'](_0x0f76('0x2a'),_0x1b436a);_0x1946c5['on'](_0x0f76('0x14'),_0xd847f6);_0x1946c5['on'](_0x0f76('0x15'),_0x2a1c46);});};
\ No newline at end of file
+var _0x9104=['crypto','../../../../../../config/logger','agi','exports','info','wss://runa.tilde.lv/client/ws/speech/LVASR-ONLINE','No\x20speech.\x20Sent\x20when\x20the\x20incoming\x20audio\x20contains\x20a\x20large\x20portion\x20of\x20silence\x20or\x20non-speech','hex','unix','createReadStream','data','send','close','EOS','error','Tilde\x20ASR\x20send\x20error','stringify','status','result','final','Tilde\x20ASR\x20hypoteses','hypotheses','transcript','likelihood','Success.','Aborted.\x20Recognition\x20was\x20aborted\x20for\x20some\x20reason.','Not\x20available.\x20Max\x20load\x20limit\x20reached.','Authentication\x20failed.','All\x20recognition\x20workers\x20are\x20currently\x20in\x20use\x20and\x20real-time\x20recognition\x20is\x20not\x20possible.','Tilde\x20ASR\x20parse\x20error','terminate','Close\x20Tilde\x20ASR\x20socket','Error\x20Tilde\x20ASR\x20socket','isNil','isObject','open','message'];(function(_0x50f392,_0x1d8441){var _0x5926f2=function(_0x17df32){while(--_0x17df32){_0x50f392['push'](_0x50f392['shift']());}};_0x5926f2(++_0x1d8441);}(_0x9104,0x6f));var _0x4910=function(_0x2a3dd8,_0x5bd5f0){_0x2a3dd8=_0x2a3dd8-0x0;var _0x51703d=_0x9104[_0x2a3dd8];return _0x51703d;};'use strict';var BPromise=require('bluebird');var _=require('lodash');var fs=require('fs');var WebSocket=require('ws');var moment=require('moment');var crypto=require(_0x4910('0x0'));var logger=require(_0x4910('0x1'))(_0x4910('0x2'));module[_0x4910('0x3')]=function(_0x34b08e,_0x1518a6,_0x3684f8,_0x27bc61){return new BPromise(function(_0xbefbbd,_0x216287){logger[_0x4910('0x4')]('Tilde\x20URI',_0x27bc61||_0x4910('0x5'));var _0x5c37c1=new WebSocket(_0x27bc61||_0x4910('0x5'),{'perMessageDeflate':![]});var _0x5272e2='';var _0x35e3bb='0';var _0x438a82='1';var _0x34f9b3=_0x4910('0x6');function _0x3eebdd(_0x37f922){var _0x356dfb=crypto['createHash']('sha1');_0x356dfb['update'](_0x37f922);return _0x356dfb['digest'](_0x4910('0x7'));}function _0x185cb6(){try{logger['info']('Open\x20Tilde\x20ASR\x20socket');var _0x22ad6d=moment()[_0x4910('0x8')]();var _0x2084ba=_0x3eebdd(_0x22ad6d+_0x1518a6+_0x3684f8);_0x5c37c1['send'](JSON['stringify']({'appID':_0x1518a6,'timestamp':_0x22ad6d,'appKey':_0x2084ba}));var _0x56dd0d=fs[_0x4910('0x9')](_0x34b08e);_0x56dd0d['on'](_0x4910('0xa'),function(_0x5abccd){_0x5c37c1[_0x4910('0xb')](_0x5abccd);});_0x56dd0d['on'](_0x4910('0xc'),function(){_0x5c37c1['send'](_0x4910('0xd'));});}catch(_0x52c191){logger[_0x4910('0xe')](_0x4910('0xf'),JSON[_0x4910('0x10')](_0x52c191));_0x5c37c1['terminate']();}}function _0x3d1167(_0x40b470){try{if(_0x40b470){var _0xcaabe7=JSON['parse'](_0x40b470);switch(_0xcaabe7[_0x4910('0x11')]){case 0x0:if(_0xcaabe7['result']){if(_0xcaabe7[_0x4910('0x12')][_0x4910('0x13')]){logger[_0x4910('0x4')](_0x4910('0x14'),JSON[_0x4910('0x10')](_0xcaabe7[_0x4910('0x12')][_0x4910('0x15')]));_0x5272e2=_0xcaabe7[_0x4910('0x12')]['hypotheses'][0x0][_0x4910('0x16')];_0x35e3bb=_0xcaabe7[_0x4910('0x12')][_0x4910('0x15')][0x0][_0x4910('0x17')];_0x438a82='0';_0x34f9b3=_0x4910('0x18');_0x5c37c1['terminate']();}}break;case 0x1:logger['info'](_0x4910('0x6'));_0x438a82='1';_0x34f9b3=_0x4910('0x6');break;case 0x2:logger['info']('Aborted.\x20Recognition\x20was\x20aborted\x20for\x20some\x20reason.');_0x438a82='2';_0x34f9b3=_0x4910('0x19');break;case 0x9:logger['info'](_0x4910('0x1a'));_0x438a82='9';_0x34f9b3=_0x4910('0x1a');break;case 0xa:logger['info']('Authentication\x20failed.');_0x438a82='10';_0x34f9b3=_0x4910('0x1b');break;case 0xb:logger[_0x4910('0x4')](_0x4910('0x1c'));_0x438a82='11';_0x34f9b3=_0x4910('0x1c');}}}catch(_0x413b1c){logger[_0x4910('0xe')](_0x4910('0x1d'),JSON[_0x4910('0x10')](_0x413b1c));_0x5c37c1[_0x4910('0x1e')]();}}function _0x182f6a(){logger[_0x4910('0x4')](_0x4910('0x1f'));_0xbefbbd({'transcript':_0x5272e2,'confidence':_0x35e3bb,'status':_0x438a82,'status_message':_0x34f9b3});}function _0x8874fc(_0x19fc2b){logger[_0x4910('0xe')](_0x4910('0x20'));if(!_[_0x4910('0x21')](_0x19fc2b)){logger['error'](_[_0x4910('0x22')](_0x19fc2b)?JSON['stringify'](_0x19fc2b):_0x19fc2b);}}_0x5c37c1['on'](_0x4910('0x23'),_0x185cb6);_0x5c37c1['on'](_0x4910('0x24'),_0x3d1167);_0x5c37c1['on']('close',_0x182f6a);_0x5c37c1['on']('error',_0x8874fc);});};
\ No newline at end of file