Built motion from commit 52c8a02d.|2.6.29
[motion2.git] / server / services / agi / scripts / tilde / asr / lib / api.js
index 1232537..5774713 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xa759=['send','EOS','Tilde\x20ASR\x20send\x20error','terminate','status','result','final','info','Tilde\x20ASR\x20hypoteses','hypotheses','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','Error\x20Tilde\x20ASR\x20socket','isNil','isObject','message','close','lodash','moment','../../../../../../config/logger','agi','exports','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','createHash','sha1','update','digest','hex','stringify','createReadStream','data'];(function(_0x424efb,_0x58e8ee){var _0x49ab3a=function(_0x4ace1d){while(--_0x4ace1d){_0x424efb['push'](_0x424efb['shift']());}};_0x49ab3a(++_0x58e8ee);}(_0xa759,0x1c5));var _0x9a75=function(_0x366776,_0x48f0bf){_0x366776=_0x366776-0x0;var _0x34e2ad=_0xa759[_0x366776];return _0x34e2ad;};'use strict';var BPromise=require('bluebird');var _=require(_0x9a75('0x0'));var fs=require('fs');var WebSocket=require('ws');var moment=require(_0x9a75('0x1'));var crypto=require('crypto');var logger=require(_0x9a75('0x2'))(_0x9a75('0x3'));module[_0x9a75('0x4')]=function(_0x74b803,_0x4840f3,_0x59bf6d,_0x4a7412){return new BPromise(function(_0x2a6dff,_0x4cc219){logger['info']('Tilde\x20URI',_0x4a7412||_0x9a75('0x5'));var _0x443ec6=new WebSocket(_0x4a7412||_0x9a75('0x5'),{'perMessageDeflate':![]});var _0x5df4c6='';var _0x2c3421='0';var _0x5bc296='1';var _0x1eaa23=_0x9a75('0x6');function _0x665a06(_0x5d8834){var _0x42d0b5=crypto[_0x9a75('0x7')](_0x9a75('0x8'));_0x42d0b5[_0x9a75('0x9')](_0x5d8834);return _0x42d0b5[_0x9a75('0xa')](_0x9a75('0xb'));}function _0x26eb8b(){try{logger['info']('Open\x20Tilde\x20ASR\x20socket');var _0x51f84a=moment()['unix']();var _0x4fb256=_0x665a06(_0x51f84a+_0x4840f3+_0x59bf6d);_0x443ec6['send'](JSON[_0x9a75('0xc')]({'appID':_0x4840f3,'timestamp':_0x51f84a,'appKey':_0x4fb256}));var _0x250225=fs[_0x9a75('0xd')](_0x74b803);_0x250225['on'](_0x9a75('0xe'),function(_0x2497a2){_0x443ec6[_0x9a75('0xf')](_0x2497a2);});_0x250225['on']('close',function(){_0x443ec6[_0x9a75('0xf')](_0x9a75('0x10'));});}catch(_0x1139f5){logger['error'](_0x9a75('0x11'),JSON[_0x9a75('0xc')](_0x1139f5));_0x443ec6[_0x9a75('0x12')]();}}function _0x2c23fb(_0x4215d2){try{if(_0x4215d2){var _0x4b67b3=JSON['parse'](_0x4215d2);switch(_0x4b67b3[_0x9a75('0x13')]){case 0x0:if(_0x4b67b3[_0x9a75('0x14')]){if(_0x4b67b3[_0x9a75('0x14')][_0x9a75('0x15')]){logger[_0x9a75('0x16')](_0x9a75('0x17'),JSON[_0x9a75('0xc')](_0x4b67b3[_0x9a75('0x14')][_0x9a75('0x18')]));_0x5df4c6=_0x4b67b3[_0x9a75('0x14')][_0x9a75('0x18')][0x0]['transcript'];_0x2c3421=_0x4b67b3[_0x9a75('0x14')]['hypotheses'][0x0][_0x9a75('0x19')];_0x5bc296='0';_0x1eaa23=_0x9a75('0x1a');_0x443ec6[_0x9a75('0x12')]();}}break;case 0x1:logger[_0x9a75('0x16')](_0x9a75('0x6'));_0x5bc296='1';_0x1eaa23=_0x9a75('0x6');break;case 0x2:logger[_0x9a75('0x16')]('Aborted.\x20Recognition\x20was\x20aborted\x20for\x20some\x20reason.');_0x5bc296='2';_0x1eaa23=_0x9a75('0x1b');break;case 0x9:logger[_0x9a75('0x16')](_0x9a75('0x1c'));_0x5bc296='9';_0x1eaa23=_0x9a75('0x1c');break;case 0xa:logger[_0x9a75('0x16')](_0x9a75('0x1d'));_0x5bc296='10';_0x1eaa23=_0x9a75('0x1d');break;case 0xb:logger[_0x9a75('0x16')](_0x9a75('0x1e'));_0x5bc296='11';_0x1eaa23=_0x9a75('0x1e');}}}catch(_0x469afb){logger['error'](_0x9a75('0x1f'),JSON[_0x9a75('0xc')](_0x469afb));_0x443ec6[_0x9a75('0x12')]();}}function _0x5b355b(){logger[_0x9a75('0x16')](_0x9a75('0x20'));_0x2a6dff({'transcript':_0x5df4c6,'confidence':_0x2c3421,'status':_0x5bc296,'status_message':_0x1eaa23});}function _0x1a0bb2(_0x8dc9a2){logger[_0x9a75('0x21')](_0x9a75('0x22'));if(!_[_0x9a75('0x23')](_0x8dc9a2)){logger[_0x9a75('0x21')](_[_0x9a75('0x24')](_0x8dc9a2)?JSON[_0x9a75('0xc')](_0x8dc9a2):_0x8dc9a2);}}_0x443ec6['on']('open',_0x26eb8b);_0x443ec6['on'](_0x9a75('0x25'),_0x2c23fb);_0x443ec6['on'](_0x9a75('0x26'),_0x5b355b);_0x443ec6['on'](_0x9a75('0x21'),_0x1a0bb2);});};
\ No newline at end of file
+var _0xe42d=['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','createHash','sha1','update','hex','info','Open\x20Tilde\x20ASR\x20socket','unix','send','createReadStream','data','close','EOS','stringify','terminate','parse','status','result','final','Tilde\x20ASR\x20hypoteses','hypotheses','transcript','likelihood','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.','error','Close\x20Tilde\x20ASR\x20socket','Error\x20Tilde\x20ASR\x20socket','isNil','isObject','open','message','lodash','crypto','../../../../../../config/logger','exports'];(function(_0x5493f7,_0x2210e2){var _0xd156fd=function(_0x4f97ca){while(--_0x4f97ca){_0x5493f7['push'](_0x5493f7['shift']());}};_0xd156fd(++_0x2210e2);}(_0xe42d,0xec));var _0xde42=function(_0xd6e5d8,_0x5e40e5){_0xd6e5d8=_0xd6e5d8-0x0;var _0x83e03a=_0xe42d[_0xd6e5d8];return _0x83e03a;};'use strict';var BPromise=require('bluebird');var _=require(_0xde42('0x0'));var fs=require('fs');var WebSocket=require('ws');var moment=require('moment');var crypto=require(_0xde42('0x1'));var logger=require(_0xde42('0x2'))('agi');module[_0xde42('0x3')]=function(_0x2060a7,_0x459aa5,_0xd13f16,_0x4ad993){return new BPromise(function(_0x40a8c4,_0x107812){logger['info'](_0xde42('0x4'),_0x4ad993||_0xde42('0x5'));var _0x3926f6=new WebSocket(_0x4ad993||_0xde42('0x5'),{'perMessageDeflate':![]});var _0x4d66fb='';var _0xebb081='0';var _0x168f6f='1';var _0x5e3b57=_0xde42('0x6');function _0x3c5719(_0x355849){var _0x156d97=crypto[_0xde42('0x7')](_0xde42('0x8'));_0x156d97[_0xde42('0x9')](_0x355849);return _0x156d97['digest'](_0xde42('0xa'));}function _0x5e1244(){try{logger[_0xde42('0xb')](_0xde42('0xc'));var _0x1d23e6=moment()[_0xde42('0xd')]();var _0x3d9756=_0x3c5719(_0x1d23e6+_0x459aa5+_0xd13f16);_0x3926f6[_0xde42('0xe')](JSON['stringify']({'appID':_0x459aa5,'timestamp':_0x1d23e6,'appKey':_0x3d9756}));var _0x6c4b0=fs[_0xde42('0xf')](_0x2060a7);_0x6c4b0['on'](_0xde42('0x10'),function(_0x3b2b40){_0x3926f6[_0xde42('0xe')](_0x3b2b40);});_0x6c4b0['on'](_0xde42('0x11'),function(){_0x3926f6[_0xde42('0xe')](_0xde42('0x12'));});}catch(_0x49d98a){logger['error']('Tilde\x20ASR\x20send\x20error',JSON[_0xde42('0x13')](_0x49d98a));_0x3926f6[_0xde42('0x14')]();}}function _0x2d7523(_0x52f200){try{if(_0x52f200){var _0x3c1bce=JSON[_0xde42('0x15')](_0x52f200);switch(_0x3c1bce[_0xde42('0x16')]){case 0x0:if(_0x3c1bce[_0xde42('0x17')]){if(_0x3c1bce['result'][_0xde42('0x18')]){logger[_0xde42('0xb')](_0xde42('0x19'),JSON[_0xde42('0x13')](_0x3c1bce[_0xde42('0x17')]['hypotheses']));_0x4d66fb=_0x3c1bce[_0xde42('0x17')][_0xde42('0x1a')][0x0][_0xde42('0x1b')];_0xebb081=_0x3c1bce[_0xde42('0x17')][_0xde42('0x1a')][0x0][_0xde42('0x1c')];_0x168f6f='0';_0x5e3b57='Success.';_0x3926f6[_0xde42('0x14')]();}}break;case 0x1:logger[_0xde42('0xb')](_0xde42('0x6'));_0x168f6f='1';_0x5e3b57='No\x20speech.\x20Sent\x20when\x20the\x20incoming\x20audio\x20contains\x20a\x20large\x20portion\x20of\x20silence\x20or\x20non-speech';break;case 0x2:logger[_0xde42('0xb')](_0xde42('0x1d'));_0x168f6f='2';_0x5e3b57='Aborted.\x20Recognition\x20was\x20aborted\x20for\x20some\x20reason.';break;case 0x9:logger['info']('Not\x20available.\x20Max\x20load\x20limit\x20reached.');_0x168f6f='9';_0x5e3b57=_0xde42('0x1e');break;case 0xa:logger['info']('Authentication\x20failed.');_0x168f6f='10';_0x5e3b57=_0xde42('0x1f');break;case 0xb:logger['info']('All\x20recognition\x20workers\x20are\x20currently\x20in\x20use\x20and\x20real-time\x20recognition\x20is\x20not\x20possible.');_0x168f6f='11';_0x5e3b57=_0xde42('0x20');}}}catch(_0x94a64b){logger[_0xde42('0x21')]('Tilde\x20ASR\x20parse\x20error',JSON['stringify'](_0x94a64b));_0x3926f6[_0xde42('0x14')]();}}function _0x2ec961(){logger[_0xde42('0xb')](_0xde42('0x22'));_0x40a8c4({'transcript':_0x4d66fb,'confidence':_0xebb081,'status':_0x168f6f,'status_message':_0x5e3b57});}function _0x5eceeb(_0x40a94b){logger['error'](_0xde42('0x23'));if(!_[_0xde42('0x24')](_0x40a94b)){logger[_0xde42('0x21')](_[_0xde42('0x25')](_0x40a94b)?JSON[_0xde42('0x13')](_0x40a94b):_0x40a94b);}}_0x3926f6['on'](_0xde42('0x26'),_0x5e1244);_0x3926f6['on'](_0xde42('0x27'),_0x2d7523);_0x3926f6['on'](_0xde42('0x11'),_0x2ec961);_0x3926f6['on'](_0xde42('0x21'),_0x5eceeb);});};
\ No newline at end of file