예제 #1
0
 /// <summary>
 /// Trata um objeto validateEndOfSpeech vindo do servidor
 /// </summary>
 /// <param name="arrValue"></param>
 private void ValidateEndOfSpeech(string[] arrValue)
 {
     try
     {
         System.Diagnostics.Debug.WriteLine("Parou de receber audio");
         //É necessário chamar este item, para validar as informações que chegou
         OfSpeech objOfSpeech = PrepareOfSpeech(arrValue);
         SendOnEndOfSpeak();
     }
     catch (Exception)
     {
         SendOnError("Incompatible ASR server state", "4024");
     }
 }
예제 #2
0
        /// <summary>
        /// Converte o array fornecido em um objeto to Tipo OfSpeech(start ou end), que é um dos tipos possíveis de reposta do servidor descrita pelo Protocolo
        /// </summary>
        /// <param name="arrValues"></param>
        /// <returns></returns>
        private OfSpeech PrepareOfSpeech(string[] arrValues)
        {
            var objOfSpeech = new OfSpeech();

            foreach (string value in arrValues)
            {
                if (value.IndexOf("Handle: ") != -1)
                {
                    objOfSpeech.Handle = value.Replace("Handle: ", "");
                }
                if (value.IndexOf("Session-Status: ") != -1)
                {
                    objOfSpeech.SessionStatus = value.Replace("Session-Status: ", "").ToEnum <SESSION_STATUS>();
                }
            }
            ;
            return(objOfSpeech);
        }