예제 #1
0
 protected void Application_Start()
 {
     AreaRegistration.RegisterAllAreas();
     GlobalConfiguration.Configure(WebApiConfig.Register);
     FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
     RouteConfig.RegisterRoutes(RouteTable.Routes);
     BundleConfig.RegisterBundles(BundleTable.Bundles);
     NabaztagConnection.TtsFilePathSettings = Server.MapPath(TtsController.TtsConfigFile);
     NabaztagConnection.InitializeConnection();
 }
예제 #2
0
        public static (bool status, string error) Recognize(string ttsText, string ttsConfigPath, string ttsFilePath)
        {
            try
            {
                var            ttsSetting = LoadTtsSetting(ttsConfigPath);
                Authentication auth       = new Authentication(ttsSetting.EndPoint, ttsSetting.Key);
                var            region     = ttsSetting.EndPoint.Substring(8, ttsSetting.EndPoint.IndexOf('.') - 8);
                string         host       = $"https://{region}.tts.speech.microsoft.com/cognitiveservices/v1";
                SaveTextToSpeechFile(host, auth, ttsText, ttsSetting.PrefferedVoice, ttsFilePath).Wait();

                return(NabaztagConnection.Speak($"../../../../{ttsSetting.ApplicationPath}/{TtsFileName}"));
                //var nabaztag = new Nabaztag.Net.Nabaztag(ttsSetting.NabaztagAddress, ttsSetting.NabaztagPort);

                //var signature = new Sequence() { AudioList = new string[] { "nabweatherd/signature.mp3" } };
                //var body = new Sequence[] { new Sequence() { AudioList = new string[] { $"../../../../{ttsSetting.ApplicationPath}/{TtsFileName}" } } };
                //var resp = nabaztag.Message(signature, body, DateTime.MinValue);
                //return (resp.Status == Status.Ok, "");
            }
            catch (Exception ex)
            {
                return(false, $"Exception: {ex}");
            }
        }