Built motion from commit 85328c08.|2.5.50
[motion2.git] / server / services / agi / scripts / tilde / asr / lib / api.js
index 245cd65..2e30166 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xf633=['error','Tilde\x20ASR\x20send\x20error','terminate','parse','result','final','Tilde\x20ASR\x20hypoteses','stringify','hypotheses','likelihood','Success.','No\x20speech.\x20Sent\x20when\x20the\x20incoming\x20audio\x20contains\x20a\x20large\x20portion\x20of\x20silence\x20or\x20non-speech','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','isObject','message','lodash','moment','../../../../../../config/logger','agi','exports','info','Tilde\x20URI','wss://runa.tilde.lv/client/ws/speech/LVASR-ONLINE','createHash','sha1','update','digest','unix','createReadStream','data','send','close','EOS'];(function(_0x2641f9,_0x26715f){var _0x585741=function(_0x2d1462){while(--_0x2d1462){_0x2641f9['push'](_0x2641f9['shift']());}};_0x585741(++_0x26715f);}(_0xf633,0x14d));var _0x3f63=function(_0x504dbb,_0x3b7737){_0x504dbb=_0x504dbb-0x0;var _0x3c4b19=_0xf633[_0x504dbb];return _0x3c4b19;};'use strict';var BPromise=require('bluebird');var _=require(_0x3f63('0x0'));var fs=require('fs');var WebSocket=require('ws');var moment=require(_0x3f63('0x1'));var crypto=require('crypto');var logger=require(_0x3f63('0x2'))(_0x3f63('0x3'));module[_0x3f63('0x4')]=function(_0xeedee7,_0x9e71b9,_0x32d412,_0xb0d9e5){return new BPromise(function(_0x184435,_0x47643a){logger[_0x3f63('0x5')](_0x3f63('0x6'),_0xb0d9e5||_0x3f63('0x7'));var _0x50e7bc=new WebSocket(_0xb0d9e5||_0x3f63('0x7'),{'perMessageDeflate':![]});var _0x482bec='';var _0x5b304c='0';var _0x198fd3='1';var _0x56367b='No\x20speech.\x20Sent\x20when\x20the\x20incoming\x20audio\x20contains\x20a\x20large\x20portion\x20of\x20silence\x20or\x20non-speech';function _0x4cdf5a(_0x597d6b){var _0x3c2584=crypto[_0x3f63('0x8')](_0x3f63('0x9'));_0x3c2584[_0x3f63('0xa')](_0x597d6b);return _0x3c2584[_0x3f63('0xb')]('hex');}function _0x2d7ba4(){try{logger[_0x3f63('0x5')]('Open\x20Tilde\x20ASR\x20socket');var _0x37b4a9=moment()[_0x3f63('0xc')]();var _0x2415f3=_0x4cdf5a(_0x37b4a9+_0x9e71b9+_0x32d412);_0x50e7bc['send'](JSON['stringify']({'appID':_0x9e71b9,'timestamp':_0x37b4a9,'appKey':_0x2415f3}));var _0x40b0d6=fs[_0x3f63('0xd')](_0xeedee7);_0x40b0d6['on'](_0x3f63('0xe'),function(_0x219210){_0x50e7bc[_0x3f63('0xf')](_0x219210);});_0x40b0d6['on'](_0x3f63('0x10'),function(){_0x50e7bc[_0x3f63('0xf')](_0x3f63('0x11'));});}catch(_0x5030ef){logger[_0x3f63('0x12')](_0x3f63('0x13'),JSON['stringify'](_0x5030ef));_0x50e7bc[_0x3f63('0x14')]();}}function _0x45eb55(_0x3c49e2){try{if(_0x3c49e2){var _0x3cc39f=JSON[_0x3f63('0x15')](_0x3c49e2);switch(_0x3cc39f['status']){case 0x0:if(_0x3cc39f[_0x3f63('0x16')]){if(_0x3cc39f[_0x3f63('0x16')][_0x3f63('0x17')]){logger[_0x3f63('0x5')](_0x3f63('0x18'),JSON[_0x3f63('0x19')](_0x3cc39f[_0x3f63('0x16')][_0x3f63('0x1a')]));_0x482bec=_0x3cc39f['result'][_0x3f63('0x1a')][0x0]['transcript'];_0x5b304c=_0x3cc39f[_0x3f63('0x16')][_0x3f63('0x1a')][0x0][_0x3f63('0x1b')];_0x198fd3='0';_0x56367b=_0x3f63('0x1c');_0x50e7bc['terminate']();}}break;case 0x1:logger['info'](_0x3f63('0x1d'));_0x198fd3='1';_0x56367b=_0x3f63('0x1d');break;case 0x2:logger['info']('Aborted.\x20Recognition\x20was\x20aborted\x20for\x20some\x20reason.');_0x198fd3='2';_0x56367b=_0x3f63('0x1e');break;case 0x9:logger[_0x3f63('0x5')](_0x3f63('0x1f'));_0x198fd3='9';_0x56367b=_0x3f63('0x1f');break;case 0xa:logger[_0x3f63('0x5')](_0x3f63('0x20'));_0x198fd3='10';_0x56367b=_0x3f63('0x20');break;case 0xb:logger['info']('All\x20recognition\x20workers\x20are\x20currently\x20in\x20use\x20and\x20real-time\x20recognition\x20is\x20not\x20possible.');_0x198fd3='11';_0x56367b=_0x3f63('0x21');}}}catch(_0x54d2d8){logger['error'](_0x3f63('0x22'),JSON['stringify'](_0x54d2d8));_0x50e7bc[_0x3f63('0x14')]();}}function _0xa5a929(){logger[_0x3f63('0x5')](_0x3f63('0x23'));_0x184435({'transcript':_0x482bec,'confidence':_0x5b304c,'status':_0x198fd3,'status_message':_0x56367b});}function _0x5cce4a(_0x409d87){logger['error'](_0x3f63('0x24'));if(!_['isNil'](_0x409d87)){logger[_0x3f63('0x12')](_[_0x3f63('0x25')](_0x409d87)?JSON[_0x3f63('0x19')](_0x409d87):_0x409d87);}}_0x50e7bc['on']('open',_0x2d7ba4);_0x50e7bc['on'](_0x3f63('0x26'),_0x45eb55);_0x50e7bc['on'](_0x3f63('0x10'),_0xa5a929);_0x50e7bc['on']('error',_0x5cce4a);});};
\ No newline at end of file
+var _0x5d7e=['createReadStream','close','EOS','error','Tilde\x20ASR\x20send\x20error','stringify','terminate','status','result','final','hypotheses','transcript','likelihood','Success.','Aborted.\x20Recognition\x20was\x20aborted\x20for\x20some\x20reason.','Not\x20available.\x20Max\x20load\x20limit\x20reached.','All\x20recognition\x20workers\x20are\x20currently\x20in\x20use\x20and\x20real-time\x20recognition\x20is\x20not\x20possible.','Close\x20Tilde\x20ASR\x20socket','Error\x20Tilde\x20ASR\x20socket','isNil','open','message','moment','../../../../../../config/logger','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','update','hex','Open\x20Tilde\x20ASR\x20socket','unix','send'];(function(_0x3f5584,_0x3edcf1){var _0x179661=function(_0x2d29e7){while(--_0x2d29e7){_0x3f5584['push'](_0x3f5584['shift']());}};_0x179661(++_0x3edcf1);}(_0x5d7e,0x13f));var _0xe5d7=function(_0x2e3107,_0x25f970){_0x2e3107=_0x2e3107-0x0;var _0x833d69=_0x5d7e[_0x2e3107];return _0x833d69;};'use strict';var BPromise=require('bluebird');var _=require('lodash');var fs=require('fs');var WebSocket=require('ws');var moment=require(_0xe5d7('0x0'));var crypto=require('crypto');var logger=require(_0xe5d7('0x1'))('agi');module[_0xe5d7('0x2')]=function(_0x3c272d,_0xbdff7a,_0x1a157d,_0x2c5ad8){return new BPromise(function(_0x4a7439,_0x446218){logger[_0xe5d7('0x3')]('Tilde\x20URI',_0x2c5ad8||_0xe5d7('0x4'));var _0x4cd1a6=new WebSocket(_0x2c5ad8||'wss://runa.tilde.lv/client/ws/speech/LVASR-ONLINE',{'perMessageDeflate':![]});var _0x5cfc7f='';var _0x4b84a9='0';var _0x1c899d='1';var _0x4c875a=_0xe5d7('0x5');function _0x2fdef0(_0x50442d){var _0x31631b=crypto['createHash']('sha1');_0x31631b[_0xe5d7('0x6')](_0x50442d);return _0x31631b['digest'](_0xe5d7('0x7'));}function _0x323bfd(){try{logger[_0xe5d7('0x3')](_0xe5d7('0x8'));var _0x4711ee=moment()[_0xe5d7('0x9')]();var _0x2ef7e8=_0x2fdef0(_0x4711ee+_0xbdff7a+_0x1a157d);_0x4cd1a6[_0xe5d7('0xa')](JSON['stringify']({'appID':_0xbdff7a,'timestamp':_0x4711ee,'appKey':_0x2ef7e8}));var _0x39d00e=fs[_0xe5d7('0xb')](_0x3c272d);_0x39d00e['on']('data',function(_0x3c15c4){_0x4cd1a6[_0xe5d7('0xa')](_0x3c15c4);});_0x39d00e['on'](_0xe5d7('0xc'),function(){_0x4cd1a6[_0xe5d7('0xa')](_0xe5d7('0xd'));});}catch(_0x136d7d){logger[_0xe5d7('0xe')](_0xe5d7('0xf'),JSON[_0xe5d7('0x10')](_0x136d7d));_0x4cd1a6[_0xe5d7('0x11')]();}}function _0x11f6d3(_0x3cd0a2){try{if(_0x3cd0a2){var _0x63112c=JSON['parse'](_0x3cd0a2);switch(_0x63112c[_0xe5d7('0x12')]){case 0x0:if(_0x63112c[_0xe5d7('0x13')]){if(_0x63112c[_0xe5d7('0x13')][_0xe5d7('0x14')]){logger[_0xe5d7('0x3')]('Tilde\x20ASR\x20hypoteses',JSON[_0xe5d7('0x10')](_0x63112c[_0xe5d7('0x13')][_0xe5d7('0x15')]));_0x5cfc7f=_0x63112c[_0xe5d7('0x13')][_0xe5d7('0x15')][0x0][_0xe5d7('0x16')];_0x4b84a9=_0x63112c[_0xe5d7('0x13')][_0xe5d7('0x15')][0x0][_0xe5d7('0x17')];_0x1c899d='0';_0x4c875a=_0xe5d7('0x18');_0x4cd1a6[_0xe5d7('0x11')]();}}break;case 0x1:logger[_0xe5d7('0x3')]('No\x20speech.\x20Sent\x20when\x20the\x20incoming\x20audio\x20contains\x20a\x20large\x20portion\x20of\x20silence\x20or\x20non-speech');_0x1c899d='1';_0x4c875a='No\x20speech.\x20Sent\x20when\x20the\x20incoming\x20audio\x20contains\x20a\x20large\x20portion\x20of\x20silence\x20or\x20non-speech';break;case 0x2:logger[_0xe5d7('0x3')]('Aborted.\x20Recognition\x20was\x20aborted\x20for\x20some\x20reason.');_0x1c899d='2';_0x4c875a=_0xe5d7('0x19');break;case 0x9:logger[_0xe5d7('0x3')](_0xe5d7('0x1a'));_0x1c899d='9';_0x4c875a=_0xe5d7('0x1a');break;case 0xa:logger[_0xe5d7('0x3')]('Authentication\x20failed.');_0x1c899d='10';_0x4c875a='Authentication\x20failed.';break;case 0xb:logger['info'](_0xe5d7('0x1b'));_0x1c899d='11';_0x4c875a=_0xe5d7('0x1b');}}}catch(_0x4f685e){logger['error']('Tilde\x20ASR\x20parse\x20error',JSON['stringify'](_0x4f685e));_0x4cd1a6['terminate']();}}function _0x945fdc(){logger['info'](_0xe5d7('0x1c'));_0x4a7439({'transcript':_0x5cfc7f,'confidence':_0x4b84a9,'status':_0x1c899d,'status_message':_0x4c875a});}function _0xe9c8f9(_0x71114a){logger['error'](_0xe5d7('0x1d'));if(!_[_0xe5d7('0x1e')](_0x71114a)){logger['error'](_['isObject'](_0x71114a)?JSON[_0xe5d7('0x10')](_0x71114a):_0x71114a);}}_0x4cd1a6['on'](_0xe5d7('0x1f'),_0x323bfd);_0x4cd1a6['on'](_0xe5d7('0x20'),_0x11f6d3);_0x4cd1a6['on']('close',_0x945fdc);_0x4cd1a6['on'](_0xe5d7('0xe'),_0xe9c8f9);});};
\ No newline at end of file