Built motion from commit d1eab355.|2.6.28
[motion2.git] / server / services / agi / scripts / index.js
index 5c4926c..d3df1d0 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x236a=['allRequiredParamsPresent','diagnosticInfo','fields','end_conversation','intent','displayName','isFallback','queryText','responseId','fulfillmentText','tildeASR','Tilde\x20ASR\x20confidence','awsPolly','polly','awsLex','lex','%s?apikey=%s&action=convert&text=%s&voice=%s&speed=%s&format=mp3','%s?apikey=%s&action=recognize&locale=%s&content-type=audio/x-wav&audio=%s&%s','model=%s','freeform=3','sestekNDA','nda','channelData','CustomAction','CustomActionData','AudioFromTts','audiofile','dirName','bluebird','dialogflow','https','querystring','request-promise','randomstring','sox','parse','./google','./sestek','./tilde','../../../config/logger','agi','https://api.ispeech.org/api/rest','protocol','https:','host','path','WHAT_EVER','statusCode','request\x20to\x20','statusMessage','\x20failed,\x20status\x20code\x20=\x20','createWriteStream','finish','info','error','unlink','pipe','get','data','end','transcode','wav','error\x20convert','finish\x20to\x20convert','resolve','tmp','.wav','writeFileSync','base64','then','chmodSync','777','readFileSync','toString','googleCloudTTS','https://texttospeech.googleapis.com/v1/','?key=','input','text:synthesize','POST','generate','.mp3','from','audioContent','writeFile','googleCloudTTS\x20path','split','googleTTS','application/x-www-form-urlencoded','f.req=','jQ1olc','stringify','generic','slice','parse\x20response\x20failed:\x0a','text\x20length\x20limit\x20reached','\x22\x20might\x20not\x20exist','googleASR','asr','results','map','alternatives','transcript','join','confidence','googleASR\x20transcription','googleASR\x20confidence','catch','name','message','textRequest','result','resolvedQuery','actionIncomplete','fulfillment','speech','status','code','endConversation','isFallbackIntent','googleDialogflowV2','replace','sessionPath','detectIntent','length','Dialogflow\x20V2\x20response:','queryResult'];(function(_0x47e03f,_0xe9ef14){var _0x26575b=function(_0x5cc580){while(--_0x5cc580){_0x47e03f['push'](_0x47e03f['shift']());}};_0x26575b(++_0xe9ef14);}(_0x236a,0x11a));var _0xa236=function(_0x159d53,_0x57fdfd){_0x159d53=_0x159d53-0x0;var _0x2895b7=_0x236a[_0x159d53];return _0x2895b7;};'use strict';var apiai=require('apiai-promise');var BPromise=require(_0xa236('0x0'));var dialogflow=require(_0xa236('0x1'));var fs=require('fs');var http=require('http');var https=require(_0xa236('0x2'));var md5=require('md5');var path=require('path');var querystring=require(_0xa236('0x3'));var rp=require(_0xa236('0x4'));var rs=require(_0xa236('0x5'));var sox=require(_0xa236('0x6'));var tts=require('google-tts-api');var urlParse=require('url')[_0xa236('0x7')];var util=require('util');var aws=require('./aws');var google=require(_0xa236('0x8'));var sestek=require(_0xa236('0x9'));var tilde=require(_0xa236('0xa'));var logger=require(_0xa236('0xb'))(_0xa236('0xc'));var ISPEECH_API=_0xa236('0xd');function downloadFile(_0x1a9fdc,_0x35721d){return new BPromise(function(_0x3da635,_0x3be6f5){var _0x25d0f3=urlParse(_0x1a9fdc);var _0x9240f6=_0x25d0f3[_0xa236('0xe')]===_0xa236('0xf')?https:http;var _0x5d5e34={'host':_0x25d0f3[_0xa236('0x10')],'path':_0x25d0f3[_0xa236('0x11')],'headers':{'user-agent':_0xa236('0x12')}};_0x9240f6['get'](_0x5d5e34,function(_0x1308c3){if(_0x1308c3[_0xa236('0x13')]!==0xc8){logger['error'](_0xa236('0x14')+_0x1a9fdc+'\x20failed,\x20status\x20code\x20=\x20'+_0x1308c3[_0xa236('0x13')]+'\x20('+_0x1308c3[_0xa236('0x15')]+')');_0x3be6f5(new Error('request\x20to\x20'+_0x1a9fdc+_0xa236('0x16')+_0x1308c3[_0xa236('0x13')]+'\x20('+_0x1308c3[_0xa236('0x15')]+')'));return;}var _0x147678=fs[_0xa236('0x17')](_0x35721d);_0x147678['on'](_0xa236('0x18'),function(){logger[_0xa236('0x19')]('finish\x20download\x20file');_0x147678['close'](_0x3da635);});_0x147678['on'](_0xa236('0x1a'),function(_0x35d306){fs[_0xa236('0x1b')](_0x35721d);logger['error']('download\x20error',_0x35d306);_0x3be6f5(_0x35d306);});_0x1308c3[_0xa236('0x1c')](_0x147678);})['on']('error',function(_0x30bfb2){logger[_0xa236('0x1a')](_0x30bfb2);_0x3be6f5(_0x30bfb2);})['end']();});}function uploadFile(_0x93df5d){return new BPromise(function(_0x31e821,_0x568c0f){var _0x10abcf=urlParse(_0x93df5d);var _0x375340=_0x10abcf[_0xa236('0xe')]===_0xa236('0xf')?https:http;var _0x131008={'host':_0x10abcf[_0xa236('0x10')],'path':_0x10abcf[_0xa236('0x11')],'headers':{'user-agent':_0xa236('0x12')}};_0x375340[_0xa236('0x1d')](_0x131008,function(_0x20949c){if(_0x20949c[_0xa236('0x13')]!==0xc8){_0x568c0f(new Error(_0xa236('0x14')+_0x93df5d+_0xa236('0x16')+_0x20949c[_0xa236('0x13')]+'\x20('+_0x20949c[_0xa236('0x15')]+')'));return;}var _0x520af4='';_0x20949c['on'](_0xa236('0x1e'),function(_0x53bedf){_0x520af4+=_0x53bedf;});_0x20949c['on'](_0xa236('0x1f'),function(){_0x31e821(_0x520af4);});})['on'](_0xa236('0x1a'),function(_0x4f4898){_0x568c0f(_0x4f4898);})[_0xa236('0x1f')]();});}function convertFile(_0x1b46b2,_0x2663b6){return new BPromise(function(_0x5854c0,_0x21ea2c){var _0x43be40=sox[_0xa236('0x20')](_0x1b46b2,_0x2663b6,{'sampleRate':0x1f40,'format':_0xa236('0x21'),'channelCount':0x1,'bitRate':0xc0*0x400,'compressionQuality':0x5});_0x43be40['on'](_0xa236('0x1a'),function(_0x367e2b){logger[_0xa236('0x1a')](_0xa236('0x22'),_0x367e2b);_0x21ea2c(_0x367e2b);});_0x43be40['on']('end',function(){logger[_0xa236('0x19')](_0xa236('0x23'));_0x5854c0();});_0x43be40['start']();});}function base64Decode(_0x260e30,_0x48e45d){var _0x5ee4df=path[_0xa236('0x24')](__dirname,_0xa236('0x25'),rs['generate'](0x4)+_0xa236('0x26'));fs[_0xa236('0x27')](_0x5ee4df,_0x260e30,_0xa236('0x28'));return convertFile(_0x5ee4df,_0x48e45d)[_0xa236('0x29')](function(){try{fs[_0xa236('0x1b')](_0x5ee4df);fs[_0xa236('0x2a')](_0x48e45d,_0xa236('0x2b'));}catch(_0x35ffd9){logger[_0xa236('0x1a')](_0x35ffd9);}return _0x48e45d['split']('.')[0x0];});}function base64Encode(_0x267bf1){var _0x2156d9=fs[_0xa236('0x2c')](_0x267bf1);return new Buffer(_0x2156d9)[_0xa236('0x2d')](_0xa236('0x28'));}exports[_0xa236('0x2e')]=function(_0xe69d9b,_0x47722e,_0xe0bee6,_0x1efb4f,_0x1ffafb,_0x1b0365){var _0x1b1d73,_0x17e77e;var _0x159915=_0xa236('0x2f');var _0x4f2464=_0xa236('0x30')+_0xe69d9b;var _0x3e2c3a={};if(_0x47722e==='ssml'){_0x3e2c3a[_0xa236('0x31')]={'ssml':_0xe0bee6};}else{_0x3e2c3a['input']={'text':_0xe0bee6};};_0x3e2c3a['voice']={'languageCode':_0x1efb4f,'ssmlGender':_0x1ffafb};_0x3e2c3a['audioConfig']={'audioEncoding':'MP3','sampleRateHertz':0x1f40};var _0x1087d0={'url':_0x159915+_0xa236('0x32')+_0x4f2464,'method':_0xa236('0x33'),'json':!![],'body':_0x3e2c3a};return rp(_0x1087d0)[_0xa236('0x29')](function(_0x41f3bf){return new BPromise(function(_0x461fbc,_0x154205){_0x1b1d73=path[_0xa236('0x24')](__dirname,_0xa236('0x25'),rs[_0xa236('0x34')](0x4)+_0xa236('0x35'));var _0x36639a=Buffer[_0xa236('0x36')](_0x41f3bf[_0xa236('0x37')],_0xa236('0x28'));return fs[_0xa236('0x38')](_0x1b1d73,_0x36639a,function(_0x1a7c5a){_0x154205(_0x1a7c5a);},function(_0x295328){fs[_0xa236('0x2a')](_0x1b1d73,_0xa236('0x2b'));_0x461fbc(_0x295328);});});})[_0xa236('0x29')](function(_0x11d51d){_0x17e77e=path['resolve'](__dirname,_0xa236('0x25'),rs[_0xa236('0x34')](0x4)+'.wav');return convertFile(_0x1b1d73,_0x17e77e);})['then'](function(){try{fs[_0xa236('0x1b')](_0x1b1d73);fs[_0xa236('0x2a')](_0x17e77e,_0xa236('0x2b'));}catch(_0xd5f0ca){logger[_0xa236('0x1a')](_0xd5f0ca);}logger[_0xa236('0x19')](_0xa236('0x39'),_0x17e77e[_0xa236('0x3a')]('.')[0x0]);return _0x17e77e[_0xa236('0x3a')]('.')[0x0];});};exports[_0xa236('0x3b')]=function(_0x7aa177,_0x52ed25){var _0x57037a='https://translate.google.com/_/TranslateWebserverUi/data/batchexecute';var _0x1287fa,_0x51c58c;var _0x158462;var _0x372ebb={'encoding':'utf8','method':'POST','timeout':0x2710,'url':_0x57037a,'headers':{'Content-Type':_0xa236('0x3c')},'body':_0xa236('0x3d')+encodeURIComponent(JSON['stringify']([[[_0xa236('0x3e'),JSON[_0xa236('0x3f')]([_0x7aa177,_0x52ed25||'en',![],'null']),null,_0xa236('0x40')]]]))};return rp(_0x372ebb)[_0xa236('0x29')](function(_0x3657cc){try{_0x158462=eval(_0x3657cc[_0xa236('0x41')](0x5))[0x0][0x2];}catch(_0x33acb2){throw new Error(_0xa236('0x42')+_0x3657cc[_0xa236('0x1e')]);}if(!_0x158462){if(_0x7aa177['length']>0xc8){throw new Error(_0xa236('0x43'));}else{throw new Error('lang\x20\x22'+_0x52ed25+_0xa236('0x44'));}}try{_0x158462=eval(_0x158462)[0x0];}catch(_0x173db6){throw new Error('parse\x20response\x20failed:\x0a'+res['data']);}const _0x1bcb7a=_0x158462;_0x1287fa=path[_0xa236('0x24')](__dirname,_0xa236('0x25'),rs[_0xa236('0x34')](0x4)+_0xa236('0x35'));fs[_0xa236('0x27')](_0x1287fa,_0x158462,{'encoding':_0xa236('0x28')});_0x51c58c=path[_0xa236('0x24')](__dirname,_0xa236('0x25'),rs[_0xa236('0x34')](0x4)+'.wav');return convertFile(_0x1287fa,_0x51c58c);})[_0xa236('0x29')](function(){try{fs['unlink'](_0x1287fa);fs['chmodSync'](_0x51c58c,_0xa236('0x2b'));}catch(_0x1b81f4){logger[_0xa236('0x1a')](_0x1b81f4);}logger[_0xa236('0x19')]('goggleTTS\x20path',_0x51c58c['split']('.')[0x0]);return _0x51c58c[_0xa236('0x3a')]('.')[0x0];});};exports[_0xa236('0x45')]=function(_0xa83a28,_0x570d20,_0xadb438){return google[_0xa236('0x46')](_0xa83a28,_0x570d20,_0xadb438)[_0xa236('0x29')](function(_0x1c5c89){logger['info'](_0x1c5c89['uri']);return rp(_0x1c5c89);})['then'](function(_0x4598b8){var _0x1db54b='';var _0x24befd=0x0;try{fs[_0xa236('0x1b')](_0xa83a28);}catch(_0x1a268c){logger[_0xa236('0x1a')](_0x1a268c);}if(_0x4598b8&&_0x4598b8[_0xa236('0x47')]){_0x1db54b=_0x4598b8['results'][_0xa236('0x48')](function(_0x3748ea){return _0x3748ea&&_0x3748ea[_0xa236('0x49')][0x0]&&_0x3748ea[_0xa236('0x49')][0x0][_0xa236('0x4a')]?_0x3748ea[_0xa236('0x49')][0x0][_0xa236('0x4a')]:'';})[_0xa236('0x4b')]('\x0a');_0x24befd=_0x4598b8[_0xa236('0x47')][_0xa236('0x48')](function(_0x4e3bea){return _0x4e3bea&&_0x4e3bea[_0xa236('0x49')][0x0]&&_0x4e3bea[_0xa236('0x49')][0x0]['confidence']?_0x4e3bea['alternatives'][0x0][_0xa236('0x4c')]:0x0;})['join']('\x0a');}logger[_0xa236('0x19')](_0xa236('0x4d'),_0x1db54b);logger[_0xa236('0x19')](_0xa236('0x4e'),_0x24befd);return{'transcript':_0x1db54b,'confidence':_0x24befd};})[_0xa236('0x4f')](function(_0x27873b){logger[_0xa236('0x1a')]('[%s]\x20%s:%s',_0x27873b[_0xa236('0x13')],_0x27873b[_0xa236('0x50')],_0x27873b[_0xa236('0x51')]);});};exports['googleDialogflow']=function(_0x51923d,_0x18e34c,_0x1b2f1d,_0x323ede){var _0x4c73a9=apiai(_0x18e34c,{'language':_0x323ede||'en'});return _0x4c73a9[_0xa236('0x52')](_0x1b2f1d,{'sessionId':md5(_0x51923d)})[_0xa236('0x29')](function(_0x26ed48){logger[_0xa236('0x19')](JSON['stringify'](_0x26ed48));return{'source':_0x26ed48[_0xa236('0x53')]['source'],'resolvedQuery':_0x26ed48[_0xa236('0x53')][_0xa236('0x54')],'action':_0x26ed48['result']['action'],'actionIncomplete':_0x26ed48[_0xa236('0x53')][_0xa236('0x55')],'speech':_0x26ed48[_0xa236('0x53')][_0xa236('0x56')][_0xa236('0x57')],'score':_0x26ed48[_0xa236('0x53')]['score'],'statusCode':_0x26ed48[_0xa236('0x58')][_0xa236('0x59')],'endConversation':_0x26ed48[_0xa236('0x53')]['metadata'][_0xa236('0x5a')]||![],'isFallbackIntent':_0x26ed48[_0xa236('0x53')]['metadata'][_0xa236('0x5b')]};});};exports[_0xa236('0x5c')]=function(_0x32bfcb,_0x580872,_0x811678,_0x5d28fb,_0x48292a,_0x4874c6){var _0xeafac7=_0x5d28fb[_0xa236('0x5d')](/\\n/g,'\x0a');var _0x36afe8={'credentials':{'private_key':_0xeafac7,'client_email':_0x811678}};var _0x4d1393=new dialogflow['SessionsClient'](_0x36afe8);var _0x5b2e04=_0x4d1393[_0xa236('0x5e')](_0x580872,md5(_0x32bfcb));var _0xb2b47f={'session':_0x5b2e04,'queryInput':{'text':{'text':_0x48292a,'languageCode':_0x4874c6}}};return _0x4d1393[_0xa236('0x5f')](_0xb2b47f)[_0xa236('0x29')](function(_0x5e7956){if(_0x5e7956&&_0x5e7956[_0xa236('0x60')]){logger['info'](_0xa236('0x61'),JSON['stringify'](_0x5e7956));var _0xefe5be=_0x5e7956[0x0];if(_0xefe5be){var _0x465097={'action':_0xefe5be[_0xa236('0x62')]['action'],'allRequiredParamsPresent':_0xefe5be[_0xa236('0x62')][_0xa236('0x63')],'endConversation':_0xefe5be['queryResult'][_0xa236('0x64')]&&_0xefe5be[_0xa236('0x62')][_0xa236('0x64')][_0xa236('0x65')]?_0xefe5be['queryResult'][_0xa236('0x64')][_0xa236('0x65')][_0xa236('0x66')]['boolValue']:![],'fulfillmentText':_0xefe5be[_0xa236('0x62')]['fulfillmentText'],'intentName':_0xefe5be[_0xa236('0x62')][_0xa236('0x67')][_0xa236('0x50')],'intentDisplayName':_0xefe5be['queryResult'][_0xa236('0x67')][_0xa236('0x68')],'isFallbackIntent':_0xefe5be[_0xa236('0x62')]['intent'][_0xa236('0x69')],'languageCode':_0xefe5be['queryResult']['languageCode'],'queryText':_0xefe5be[_0xa236('0x62')][_0xa236('0x6a')],'responseId':_0xefe5be[_0xa236('0x6b')],'score':_0xefe5be[_0xa236('0x62')]['intentDetectionConfidence'],'speech':_0xefe5be['queryResult'][_0xa236('0x6c')],'providerResponse':JSON[_0xa236('0x3f')](_0x5e7956)};return _0x465097;}}});};exports[_0xa236('0x6d')]=function(_0x1a1cde,_0x2c5a41,_0x550883,_0x22a5a7){return tilde[_0xa236('0x46')](_0x1a1cde,_0x2c5a41,_0x550883,_0x22a5a7)[_0xa236('0x29')](function(_0x3a8d){try{fs[_0xa236('0x1b')](_0x1a1cde);}catch(_0x535a9d){logger[_0xa236('0x1a')](_0x535a9d);}logger['info']('Tilde\x20ASR\x20transcription',_0x3a8d['transcript']);logger[_0xa236('0x19')](_0xa236('0x6e'),_0x3a8d[_0xa236('0x4c')]);return _0x3a8d;});};exports[_0xa236('0x6f')]=function(_0x2d7165,_0x164b5d,_0x141c3b,_0x19b5c0,_0x3c3f26,_0x49a6b7){var _0x4bfcc5=path['resolve'](__dirname,'tmp',rs['generate'](0x4)+_0xa236('0x35'));var _0x5d2103;return aws[_0xa236('0x70')](_0x2d7165,_0x164b5d,_0x141c3b,_0x19b5c0,_0x3c3f26,_0x49a6b7,_0x4bfcc5)[_0xa236('0x29')](function(){_0x5d2103=path['resolve'](__dirname,_0xa236('0x25'),rs[_0xa236('0x34')](0x4)+'.wav');return convertFile(_0x4bfcc5,_0x5d2103);})[_0xa236('0x29')](function(){try{fs[_0xa236('0x1b')](_0x4bfcc5);fs[_0xa236('0x2a')](_0x5d2103,_0xa236('0x2b'));}catch(_0x198c97){logger['error'](_0x198c97);}return _0x5d2103['split']('.')[0x0];});};exports[_0xa236('0x71')]=function(_0x34b0c4,_0x187d78,_0x5bf142,_0x48db63,_0x3168a8,_0xff1a13){return aws[_0xa236('0x72')](_0x34b0c4,_0x187d78,_0x5bf142,_0x48db63,_0x3168a8,_0xff1a13)[_0xa236('0x29')](function(_0x2228ad){logger['info'](JSON[_0xa236('0x3f')](_0x2228ad));return _0x2228ad;});};exports['ispeechTTS']=function(_0x54a23b,_0x417c2d,_0xfff0e5,_0x9fee43){var _0x104d55=util['format'](_0xa236('0x73'),ISPEECH_API,_0x54a23b,encodeURIComponent(_0x417c2d),_0xfff0e5,_0x9fee43);var _0x2ef901=path[_0xa236('0x24')](__dirname,_0xa236('0x25'),rs[_0xa236('0x34')](0x4)+_0xa236('0x35'));var _0x293ebf;return downloadFile(_0x104d55,_0x2ef901)[_0xa236('0x29')](function(){_0x293ebf=path['resolve'](__dirname,'tmp',rs[_0xa236('0x34')](0x4)+'.wav');return convertFile(_0x2ef901,_0x293ebf);})[_0xa236('0x29')](function(){try{fs['unlink'](_0x2ef901);fs[_0xa236('0x2a')](_0x293ebf,_0xa236('0x2b'));}catch(_0x18d60f){logger[_0xa236('0x1a')](_0x18d60f);}return _0x293ebf[_0xa236('0x3a')]('.')[0x0];});};exports['ispeechASR']=function(_0x2d7bbe,_0x236e9e,_0x4521dd,_0x3458fc){var _0x32f0b8=util['format'](_0xa236('0x74'),ISPEECH_API,_0x236e9e,_0x4521dd,base64Encode(_0x2d7bbe),_0x3458fc?util['format'](_0xa236('0x75'),encodeURIComponent(_0x3458fc)):_0xa236('0x76'));return uploadFile(_0x32f0b8)[_0xa236('0x29')](function(_0x3ca4f7){return querystring[_0xa236('0x7')](_0x3ca4f7);});};exports[_0xa236('0x77')]=function(_0x2b4835,_0x2ddde9){return sestek[_0xa236('0x78')](_0x2b4835,_0x2ddde9)[_0xa236('0x29')](function(_0x5c946b){logger[_0xa236('0x19')](JSON[_0xa236('0x3f')](_0x5c946b));var _0x205f14={'speech':_0x5c946b['text'],'action':_0x5c946b[_0xa236('0x79')]?_0x5c946b[_0xa236('0x79')][_0xa236('0x7a')]:undefined,'actiondata':_0x5c946b[_0xa236('0x79')]?_0x5c946b[_0xa236('0x79')][_0xa236('0x7b')]:undefined};if(_0x5c946b['channelData']&&_0x5c946b[_0xa236('0x79')][_0xa236('0x7c')]){return base64Decode(_0x5c946b['channelData']['AudioFromTts']['Data'],path['resolve'](__dirname,_0xa236('0x25'),rs[_0xa236('0x34')](0x4)+_0xa236('0x26')))[_0xa236('0x29')](function(_0x1b8db6){_0x205f14[_0xa236('0x7d')]=_0x1b8db6;return _0x205f14;});}return _0x205f14;});};exports[_0xa236('0x7e')]=function(){return __dirname;};
\ No newline at end of file
+var _0x66e3=['protocol','host','WHAT_EVER','statusCode','error','\x20failed,\x20status\x20code\x20=\x20','statusMessage','request\x20to\x20','createWriteStream','finish','info','finish\x20download\x20file','close','unlink','end','https:','get','data','transcode','wav','error\x20convert','finish\x20to\x20convert','start','resolve','tmp','generate','.wav','writeFileSync','base64','then','chmodSync','777','split','readFileSync','toString','googleCloudTTS','https://texttospeech.googleapis.com/v1/','?key=','ssml','input','audioConfig','MP3','text:synthesize','POST','.mp3','from','audioContent','googleCloudTTS\x20path','https://translate.google.com/_/TranslateWebserverUi/data/batchexecute','application/x-www-form-urlencoded','null','parse\x20response\x20failed:\x0a','lang\x20\x22','goggleTTS\x20path','googleASR','results','map','alternatives','join','confidence','googleASR\x20transcription','googleASR\x20confidence','catch','[%s]\x20%s:%s','name','message','googleDialogflow','textRequest','stringify','result','fulfillment','speech','score','status','endConversation','isFallbackIntent','googleDialogflowV2','replace','SessionsClient','sessionPath','detectIntent','length','Dialogflow\x20V2\x20response:','queryResult','allRequiredParamsPresent','diagnosticInfo','fields','end_conversation','boolValue','fulfillmentText','displayName','intent','isFallback','queryText','responseId','intentDetectionConfidence','tildeASR','asr','transcript','Tilde\x20ASR\x20confidence','awsPolly','polly','awsLex','lex','ispeechTTS','format','%s?apikey=%s&action=recognize&locale=%s&content-type=audio/x-wav&audio=%s&%s','model=%s','freeform=3','sestekNDA','nda','text','channelData','CustomAction','AudioFromTts','Data','audiofile','dirName','apiai-promise','dialogflow','http','https','path','request-promise','randomstring','sox','google-tts-api','url','parse','util','./aws','./google','./sestek','agi','https://api.ispeech.org/api/rest'];(function(_0x751470,_0x54aeab){var _0x59a78b=function(_0x23034d){while(--_0x23034d){_0x751470['push'](_0x751470['shift']());}};_0x59a78b(++_0x54aeab);}(_0x66e3,0x184));var _0x366e=function(_0x2e38fd,_0x5ff983){_0x2e38fd=_0x2e38fd-0x0;var _0x440247=_0x66e3[_0x2e38fd];return _0x440247;};'use strict';var apiai=require(_0x366e('0x0'));var BPromise=require('bluebird');var dialogflow=require(_0x366e('0x1'));var fs=require('fs');var http=require(_0x366e('0x2'));var https=require(_0x366e('0x3'));var md5=require('md5');var path=require(_0x366e('0x4'));var querystring=require('querystring');var rp=require(_0x366e('0x5'));var rs=require(_0x366e('0x6'));var sox=require(_0x366e('0x7'));var tts=require(_0x366e('0x8'));var urlParse=require(_0x366e('0x9'))[_0x366e('0xa')];var util=require(_0x366e('0xb'));var aws=require(_0x366e('0xc'));var google=require(_0x366e('0xd'));var sestek=require(_0x366e('0xe'));var tilde=require('./tilde');var logger=require('../../../config/logger')(_0x366e('0xf'));var ISPEECH_API=_0x366e('0x10');function downloadFile(_0x269d30,_0x2eb878){return new BPromise(function(_0x4df175,_0x599f67){var _0x19062e=urlParse(_0x269d30);var _0x302fd4=_0x19062e[_0x366e('0x11')]==='https:'?https:http;var _0x1a86db={'host':_0x19062e[_0x366e('0x12')],'path':_0x19062e[_0x366e('0x4')],'headers':{'user-agent':_0x366e('0x13')}};_0x302fd4['get'](_0x1a86db,function(_0x51f3b6){if(_0x51f3b6[_0x366e('0x14')]!==0xc8){logger[_0x366e('0x15')]('request\x20to\x20'+_0x269d30+_0x366e('0x16')+_0x51f3b6['statusCode']+'\x20('+_0x51f3b6[_0x366e('0x17')]+')');_0x599f67(new Error(_0x366e('0x18')+_0x269d30+_0x366e('0x16')+_0x51f3b6[_0x366e('0x14')]+'\x20('+_0x51f3b6[_0x366e('0x17')]+')'));return;}var _0x1b530a=fs[_0x366e('0x19')](_0x2eb878);_0x1b530a['on'](_0x366e('0x1a'),function(){logger[_0x366e('0x1b')](_0x366e('0x1c'));_0x1b530a[_0x366e('0x1d')](_0x4df175);});_0x1b530a['on']('error',function(_0x41261f){fs[_0x366e('0x1e')](_0x2eb878);logger[_0x366e('0x15')]('download\x20error',_0x41261f);_0x599f67(_0x41261f);});_0x51f3b6['pipe'](_0x1b530a);})['on'](_0x366e('0x15'),function(_0x92f22b){logger[_0x366e('0x15')](_0x92f22b);_0x599f67(_0x92f22b);})[_0x366e('0x1f')]();});}function uploadFile(_0xedd6f){return new BPromise(function(_0x4d7ed5,_0x362722){var _0x5a4488=urlParse(_0xedd6f);var _0x284c56=_0x5a4488[_0x366e('0x11')]===_0x366e('0x20')?https:http;var _0x3ce9eb={'host':_0x5a4488[_0x366e('0x12')],'path':_0x5a4488[_0x366e('0x4')],'headers':{'user-agent':_0x366e('0x13')}};_0x284c56[_0x366e('0x21')](_0x3ce9eb,function(_0x5b5227){if(_0x5b5227['statusCode']!==0xc8){_0x362722(new Error(_0x366e('0x18')+_0xedd6f+_0x366e('0x16')+_0x5b5227[_0x366e('0x14')]+'\x20('+_0x5b5227[_0x366e('0x17')]+')'));return;}var _0x50c2f6='';_0x5b5227['on'](_0x366e('0x22'),function(_0x32e1f4){_0x50c2f6+=_0x32e1f4;});_0x5b5227['on'](_0x366e('0x1f'),function(){_0x4d7ed5(_0x50c2f6);});})['on'](_0x366e('0x15'),function(_0x29375b){_0x362722(_0x29375b);})[_0x366e('0x1f')]();});}function convertFile(_0x450a20,_0x48d26f){return new BPromise(function(_0x194ce6,_0x5d96f1){var _0x16a7b5=sox[_0x366e('0x23')](_0x450a20,_0x48d26f,{'sampleRate':0x1f40,'format':_0x366e('0x24'),'channelCount':0x1,'bitRate':0xc0*0x400,'compressionQuality':0x5});_0x16a7b5['on'](_0x366e('0x15'),function(_0x2c3457){logger['error'](_0x366e('0x25'),_0x2c3457);_0x5d96f1(_0x2c3457);});_0x16a7b5['on']('end',function(){logger[_0x366e('0x1b')](_0x366e('0x26'));_0x194ce6();});_0x16a7b5[_0x366e('0x27')]();});}function base64Decode(_0x568505,_0x3852a4){var _0x515a0b=path[_0x366e('0x28')](__dirname,_0x366e('0x29'),rs[_0x366e('0x2a')](0x4)+_0x366e('0x2b'));fs[_0x366e('0x2c')](_0x515a0b,_0x568505,_0x366e('0x2d'));return convertFile(_0x515a0b,_0x3852a4)[_0x366e('0x2e')](function(){try{fs[_0x366e('0x1e')](_0x515a0b);fs[_0x366e('0x2f')](_0x3852a4,_0x366e('0x30'));}catch(_0xa70d9b){logger[_0x366e('0x15')](_0xa70d9b);}return _0x3852a4[_0x366e('0x31')]('.')[0x0];});}function base64Encode(_0x572362){var _0x353a56=fs[_0x366e('0x32')](_0x572362);return new Buffer(_0x353a56)[_0x366e('0x33')](_0x366e('0x2d'));}exports[_0x366e('0x34')]=function(_0x200731,_0x12a223,_0x155d55,_0x113cd3,_0x11dba8,_0xf88913){var _0x2cc515,_0x379bc9;var _0x277a11=_0x366e('0x35');var _0x3b733e=_0x366e('0x36')+_0x200731;var _0x220b0c={};if(_0x12a223===_0x366e('0x37')){_0x220b0c[_0x366e('0x38')]={'ssml':_0x155d55};}else{_0x220b0c[_0x366e('0x38')]={'text':_0x155d55};};_0x220b0c['voice']={'languageCode':_0x113cd3,'ssmlGender':_0x11dba8};_0x220b0c[_0x366e('0x39')]={'audioEncoding':_0x366e('0x3a'),'sampleRateHertz':0x1f40};var _0x268870={'url':_0x277a11+_0x366e('0x3b')+_0x3b733e,'method':_0x366e('0x3c'),'json':!![],'body':_0x220b0c};return rp(_0x268870)[_0x366e('0x2e')](function(_0x20fade){return new BPromise(function(_0x5c2418,_0x465000){_0x2cc515=path['resolve'](__dirname,_0x366e('0x29'),rs[_0x366e('0x2a')](0x4)+_0x366e('0x3d'));var _0x81611f=Buffer[_0x366e('0x3e')](_0x20fade[_0x366e('0x3f')],_0x366e('0x2d'));return fs['writeFile'](_0x2cc515,_0x81611f,function(_0x203baf){_0x465000(_0x203baf);},function(_0x4a0241){fs['chmodSync'](_0x2cc515,'777');_0x5c2418(_0x4a0241);});});})['then'](function(_0xdc4e72){_0x379bc9=path['resolve'](__dirname,'tmp',rs[_0x366e('0x2a')](0x4)+_0x366e('0x2b'));return convertFile(_0x2cc515,_0x379bc9);})['then'](function(){try{fs[_0x366e('0x1e')](_0x2cc515);fs[_0x366e('0x2f')](_0x379bc9,_0x366e('0x30'));}catch(_0x1385ef){logger[_0x366e('0x15')](_0x1385ef);}logger['info'](_0x366e('0x40'),_0x379bc9[_0x366e('0x31')]('.')[0x0]);return _0x379bc9[_0x366e('0x31')]('.')[0x0];});};exports['googleTTS']=function(_0x343275,_0x38b7a4){var _0x579323=_0x366e('0x41');var _0x4805fe,_0x59a233;var _0x2a9ca8;var _0xcca32b={'encoding':'utf8','method':_0x366e('0x3c'),'timeout':0x2710,'url':_0x579323,'headers':{'Content-Type':_0x366e('0x42')},'body':'f.req='+encodeURIComponent(JSON['stringify']([[['jQ1olc',JSON['stringify']([_0x343275,_0x38b7a4||'en',![],_0x366e('0x43')]),null,'generic']]]))};return rp(_0xcca32b)['then'](function(_0x13f679){try{_0x2a9ca8=eval(_0x13f679['slice'](0x5))[0x0][0x2];}catch(_0x31ccc1){throw new Error(_0x366e('0x44')+_0x13f679[_0x366e('0x22')]);}if(!_0x2a9ca8){if(_0x343275['length']>0xc8){throw new Error('text\x20length\x20limit\x20reached');}else{throw new Error(_0x366e('0x45')+_0x38b7a4+'\x22\x20might\x20not\x20exist');}}try{_0x2a9ca8=eval(_0x2a9ca8)[0x0];}catch(_0x4a4cfe){throw new Error(_0x366e('0x44')+res[_0x366e('0x22')]);}const _0x3668a0=_0x2a9ca8;_0x4805fe=path[_0x366e('0x28')](__dirname,'tmp',rs[_0x366e('0x2a')](0x4)+'.mp3');fs[_0x366e('0x2c')](_0x4805fe,_0x2a9ca8,{'encoding':_0x366e('0x2d')});_0x59a233=path[_0x366e('0x28')](__dirname,_0x366e('0x29'),rs[_0x366e('0x2a')](0x4)+_0x366e('0x2b'));return convertFile(_0x4805fe,_0x59a233);})[_0x366e('0x2e')](function(){try{fs['unlink'](_0x4805fe);fs[_0x366e('0x2f')](_0x59a233,'777');}catch(_0x2e6edd){logger['error'](_0x2e6edd);}logger[_0x366e('0x1b')](_0x366e('0x46'),_0x59a233[_0x366e('0x31')]('.')[0x0]);return _0x59a233['split']('.')[0x0];});};exports[_0x366e('0x47')]=function(_0x50f45e,_0x773a51,_0x45f622){return google['asr'](_0x50f45e,_0x773a51,_0x45f622)[_0x366e('0x2e')](function(_0x1efc11){logger[_0x366e('0x1b')](_0x1efc11['uri']);return rp(_0x1efc11);})[_0x366e('0x2e')](function(_0x2f8819){var _0x4212e6='';var _0x29e6f8=0x0;try{fs[_0x366e('0x1e')](_0x50f45e);}catch(_0x1d4b69){logger[_0x366e('0x15')](_0x1d4b69);}if(_0x2f8819&&_0x2f8819[_0x366e('0x48')]){_0x4212e6=_0x2f8819[_0x366e('0x48')][_0x366e('0x49')](function(_0x220c2e){return _0x220c2e&&_0x220c2e[_0x366e('0x4a')][0x0]&&_0x220c2e['alternatives'][0x0]['transcript']?_0x220c2e[_0x366e('0x4a')][0x0]['transcript']:'';})[_0x366e('0x4b')]('\x0a');_0x29e6f8=_0x2f8819[_0x366e('0x48')][_0x366e('0x49')](function(_0x116cdd){return _0x116cdd&&_0x116cdd[_0x366e('0x4a')][0x0]&&_0x116cdd[_0x366e('0x4a')][0x0][_0x366e('0x4c')]?_0x116cdd[_0x366e('0x4a')][0x0][_0x366e('0x4c')]:0x0;})['join']('\x0a');}logger['info'](_0x366e('0x4d'),_0x4212e6);logger[_0x366e('0x1b')](_0x366e('0x4e'),_0x29e6f8);return{'transcript':_0x4212e6,'confidence':_0x29e6f8};})[_0x366e('0x4f')](function(_0xb5f2ca){logger[_0x366e('0x15')](_0x366e('0x50'),_0xb5f2ca['statusCode'],_0xb5f2ca[_0x366e('0x51')],_0xb5f2ca[_0x366e('0x52')]);});};exports[_0x366e('0x53')]=function(_0x3573ff,_0x4ca42f,_0x5959c1,_0x596483){var _0x4d3456=apiai(_0x4ca42f,{'language':_0x596483||'en'});return _0x4d3456[_0x366e('0x54')](_0x5959c1,{'sessionId':md5(_0x3573ff)})[_0x366e('0x2e')](function(_0xd9656b){logger[_0x366e('0x1b')](JSON[_0x366e('0x55')](_0xd9656b));return{'source':_0xd9656b[_0x366e('0x56')]['source'],'resolvedQuery':_0xd9656b['result']['resolvedQuery'],'action':_0xd9656b[_0x366e('0x56')]['action'],'actionIncomplete':_0xd9656b[_0x366e('0x56')]['actionIncomplete'],'speech':_0xd9656b['result'][_0x366e('0x57')][_0x366e('0x58')],'score':_0xd9656b[_0x366e('0x56')][_0x366e('0x59')],'statusCode':_0xd9656b[_0x366e('0x5a')]['code'],'endConversation':_0xd9656b[_0x366e('0x56')]['metadata'][_0x366e('0x5b')]||![],'isFallbackIntent':_0xd9656b['result']['metadata'][_0x366e('0x5c')]};});};exports[_0x366e('0x5d')]=function(_0x1dc450,_0x539298,_0x3bfa58,_0x4e9420,_0x94b158,_0x3163c1){var _0x4aebd8=_0x4e9420[_0x366e('0x5e')](/\\n/g,'\x0a');var _0x12cf53={'credentials':{'private_key':_0x4aebd8,'client_email':_0x3bfa58}};var _0x44b998=new dialogflow[(_0x366e('0x5f'))](_0x12cf53);var _0x46ac44=_0x44b998[_0x366e('0x60')](_0x539298,md5(_0x1dc450));var _0x8a6ebb={'session':_0x46ac44,'queryInput':{'text':{'text':_0x94b158,'languageCode':_0x3163c1}}};return _0x44b998[_0x366e('0x61')](_0x8a6ebb)[_0x366e('0x2e')](function(_0x2bb496){if(_0x2bb496&&_0x2bb496[_0x366e('0x62')]){logger['info'](_0x366e('0x63'),JSON[_0x366e('0x55')](_0x2bb496));var _0x7336e2=_0x2bb496[0x0];if(_0x7336e2){var _0x39942a={'action':_0x7336e2[_0x366e('0x64')]['action'],'allRequiredParamsPresent':_0x7336e2[_0x366e('0x64')][_0x366e('0x65')],'endConversation':_0x7336e2[_0x366e('0x64')][_0x366e('0x66')]&&_0x7336e2[_0x366e('0x64')][_0x366e('0x66')][_0x366e('0x67')]?_0x7336e2['queryResult']['diagnosticInfo'][_0x366e('0x67')][_0x366e('0x68')][_0x366e('0x69')]:![],'fulfillmentText':_0x7336e2['queryResult'][_0x366e('0x6a')],'intentName':_0x7336e2[_0x366e('0x64')]['intent'][_0x366e('0x51')],'intentDisplayName':_0x7336e2[_0x366e('0x64')]['intent'][_0x366e('0x6b')],'isFallbackIntent':_0x7336e2[_0x366e('0x64')][_0x366e('0x6c')][_0x366e('0x6d')],'languageCode':_0x7336e2['queryResult']['languageCode'],'queryText':_0x7336e2[_0x366e('0x64')][_0x366e('0x6e')],'responseId':_0x7336e2[_0x366e('0x6f')],'score':_0x7336e2[_0x366e('0x64')][_0x366e('0x70')],'speech':_0x7336e2[_0x366e('0x64')][_0x366e('0x6a')],'providerResponse':JSON[_0x366e('0x55')](_0x2bb496)};return _0x39942a;}}});};exports[_0x366e('0x71')]=function(_0x377cde,_0x2e094e,_0x33e4c9,_0x30a289){return tilde[_0x366e('0x72')](_0x377cde,_0x2e094e,_0x33e4c9,_0x30a289)['then'](function(_0x46b2e5){try{fs[_0x366e('0x1e')](_0x377cde);}catch(_0x19f591){logger[_0x366e('0x15')](_0x19f591);}logger[_0x366e('0x1b')]('Tilde\x20ASR\x20transcription',_0x46b2e5[_0x366e('0x73')]);logger[_0x366e('0x1b')](_0x366e('0x74'),_0x46b2e5['confidence']);return _0x46b2e5;});};exports[_0x366e('0x75')]=function(_0x285d90,_0x5d5e34,_0x28bd88,_0x496136,_0x5f2d2a,_0x331182){var _0x46f097=path['resolve'](__dirname,_0x366e('0x29'),rs[_0x366e('0x2a')](0x4)+_0x366e('0x3d'));var _0x3f676d;return aws[_0x366e('0x76')](_0x285d90,_0x5d5e34,_0x28bd88,_0x496136,_0x5f2d2a,_0x331182,_0x46f097)[_0x366e('0x2e')](function(){_0x3f676d=path[_0x366e('0x28')](__dirname,_0x366e('0x29'),rs['generate'](0x4)+_0x366e('0x2b'));return convertFile(_0x46f097,_0x3f676d);})[_0x366e('0x2e')](function(){try{fs['unlink'](_0x46f097);fs[_0x366e('0x2f')](_0x3f676d,'777');}catch(_0x41608c){logger[_0x366e('0x15')](_0x41608c);}return _0x3f676d[_0x366e('0x31')]('.')[0x0];});};exports[_0x366e('0x77')]=function(_0x5977a3,_0x1c6229,_0x583c2a,_0xb81b28,_0x165891,_0xe3e77d){return aws[_0x366e('0x78')](_0x5977a3,_0x1c6229,_0x583c2a,_0xb81b28,_0x165891,_0xe3e77d)['then'](function(_0x233061){logger['info'](JSON[_0x366e('0x55')](_0x233061));return _0x233061;});};exports[_0x366e('0x79')]=function(_0x213d6d,_0x5e7b7f,_0x250dc6,_0x1bef99){var _0x5dad52=util[_0x366e('0x7a')]('%s?apikey=%s&action=convert&text=%s&voice=%s&speed=%s&format=mp3',ISPEECH_API,_0x213d6d,encodeURIComponent(_0x5e7b7f),_0x250dc6,_0x1bef99);var _0x26f994=path[_0x366e('0x28')](__dirname,_0x366e('0x29'),rs['generate'](0x4)+_0x366e('0x3d'));var _0x5101ce;return downloadFile(_0x5dad52,_0x26f994)[_0x366e('0x2e')](function(){_0x5101ce=path[_0x366e('0x28')](__dirname,_0x366e('0x29'),rs[_0x366e('0x2a')](0x4)+'.wav');return convertFile(_0x26f994,_0x5101ce);})[_0x366e('0x2e')](function(){try{fs[_0x366e('0x1e')](_0x26f994);fs[_0x366e('0x2f')](_0x5101ce,'777');}catch(_0x1aa63a){logger[_0x366e('0x15')](_0x1aa63a);}return _0x5101ce[_0x366e('0x31')]('.')[0x0];});};exports['ispeechASR']=function(_0x262d2a,_0x5df060,_0x12f07c,_0x4e1381){var _0x11f5dd=util[_0x366e('0x7a')](_0x366e('0x7b'),ISPEECH_API,_0x5df060,_0x12f07c,base64Encode(_0x262d2a),_0x4e1381?util['format'](_0x366e('0x7c'),encodeURIComponent(_0x4e1381)):_0x366e('0x7d'));return uploadFile(_0x11f5dd)[_0x366e('0x2e')](function(_0xba6388){return querystring[_0x366e('0xa')](_0xba6388);});};exports[_0x366e('0x7e')]=function(_0x36e185,_0x266ecf){return sestek[_0x366e('0x7f')](_0x36e185,_0x266ecf)[_0x366e('0x2e')](function(_0x1f204c){logger['info'](JSON[_0x366e('0x55')](_0x1f204c));var _0x4b0874={'speech':_0x1f204c[_0x366e('0x80')],'action':_0x1f204c[_0x366e('0x81')]?_0x1f204c[_0x366e('0x81')][_0x366e('0x82')]:undefined,'actiondata':_0x1f204c['channelData']?_0x1f204c[_0x366e('0x81')]['CustomActionData']:undefined};if(_0x1f204c[_0x366e('0x81')]&&_0x1f204c[_0x366e('0x81')]['AudioFromTts']){return base64Decode(_0x1f204c[_0x366e('0x81')][_0x366e('0x83')][_0x366e('0x84')],path[_0x366e('0x28')](__dirname,'tmp',rs[_0x366e('0x2a')](0x4)+'.wav'))[_0x366e('0x2e')](function(_0x1ce9ae){_0x4b0874[_0x366e('0x85')]=_0x1ce9ae;return _0x4b0874;});}return _0x4b0874;});};exports[_0x366e('0x86')]=function(){return __dirname;};
\ No newline at end of file