Beispiel #1
0
        private void seleccionarDisco(int numeroDisco)
        {
            if (this.listaArchivoAudio.Any(c => c.numero == numeroDisco))
            {
                this.discoSeleccionado = this.listaArchivoAudio.Where(c => c.numero == numeroDisco).FirstOrDefault();

                String cadena = $"El disco numero {discoSeleccionado.numero} se llama " + discoSeleccionado.nombre + ". Después del tono, para tocar el disco apriete play. Para seleccionar otro disco escriba el número del disco";
                this.reproducirTextoComoSonido(cadena);
            }
            else
            {
                this.reproducirTextoComoSonido($"No se encontró ningún disco con el número {numeroDisco}. Después del tono, escriba el número de un disco");
            }
        }
Beispiel #2
0
        private void Form1_KeyUp(object sender, KeyEventArgs e)
        {
            try
            {
                if (this.esta_el_sistema_hablando == false)
                {
                    if (this.ha_confirmado_el_usuario_que_escucha == false)  // Si el usuario confirma que esta escuchando
                    {
                        this.ha_confirmado_el_usuario_que_escucha = true;
                        this.iniciarCargaArchivosDeAudio();   // Carga los audios e informa al usuario sobre los discos que puede elegir
                        return;
                    }

                    if (e.KeyCode == Keys.Escape)  // Si se apreto escape           if (palabra == "apagar")
                    {
                        if (this.iniciar_proceso_apagar_pc == false)
                        {
                            if (this.salidaSonido != null)
                            {
                                this.salidaSonido.Pause();
                                this.sonidoPausado = true;
                            }

                            this.iniciar_proceso_apagar_pc = true;
                            this.reproducirTextoComoSonido("Después del tono, para apagar el computador apriete nuevamente la tecla escape. Para continuar usando el computador apriete cualquier otra tecla");
                        }
                        else  // Si se confirmo con la palabra apagar
                        {
                            SpeechSynthesizer vozApagar = new SpeechSynthesizer();

                            vozApagar.SelectVoice("Microsoft Helena Desktop");
                            vozApagar.Volume          = 100;
                            vozApagar.Rate            = 0;
                            vozApagar.SpeakCompleted += new EventHandler <SpeakCompletedEventArgs>(apagarComputador);
                            vozApagar.SpeakAsync("El computador comenzará a apagarse a la cuenta de tres. Uno, dos, tres");

                            // this.reproducirTextoComoSonido("El computador comenzará a apagarse a la cuenta de tres. Uno, dos, tres");
                            // System.Diagnostics.Process.Start("shutdown", "/f /s /t 0");
                        }

                        return;
                    }

                    this.iniciar_proceso_apagar_pc = false;   // Anula algun posible intento previo de apagar el pc

                    //if (this.existeDiscoSeleccionado == false && e.KeyCode != this.teclaPlay && this.numeroDiscoSeleccionado != "")
                    if (this.salidaSonido == null && e.KeyCode != this.teclaPlay && this.numeroDiscoSeleccionado != "")
                    {
                        //int numero = Utilidades.convertirTeclaPulsadaEnNumero(e);
                        int numero = int.Parse(this.numeroDiscoSeleccionado);   // Este valor es definido en el metodo keyDown

                        this.seleccionarDisco(numero);
                        this.existeDiscoSeleccionado = true;
                        this.numeroDiscoSeleccionado = "";  // Borra el numero para que no interfiera
                        return;
                    }

                    if (e.KeyCode == this.teclaPlay && this.existeDiscoSeleccionado == true)  // if (palabra == "play")
                    {
                        //this.reproducirTextoComoSonido("El disco se va a reproducir. Si desea detener el disco diga stop. Para salir de este disco diga exit");
                        //this.tocarSonido("C:/Users/josel/Downloads/Sonidos/probando.mp3");

                        this.tocarSonido(this.discoSeleccionado.ruta);
                        this.sonidoPausado = false;
                    }
                    if (this.salidaSonido != null)
                    {
                        if (e.KeyCode != this.teclaPlay && e.KeyCode != this.teclaStop && e.KeyCode == Keys.Left && e.KeyCode == Keys.Right)
                        {
                            this.reproducirTextoComoSonido("Cuando se reproduce un disco solo se permiten las teclas play y stop");
                        }

                        if (e.KeyCode == this.teclaStop)
                        {
                            if (this.sonidoPausado == false)  // if (palabra == "stop")
                            {
                                this.salidaSonido.Pause();
                                this.sonidoPausado = true;
                                this.reproducirTextoComoSonido("El disco se detuvo. Después del tono, para continuar escuchando apriete play. Para salir de este disco apriete nuevamente la tecla stop");
                                return;
                            }
                            if (this.sonidoPausado == true)
                            {
                                this.salidaSonido.Stop();
                                this.salidaSonido            = null;
                                this.existeDiscoSeleccionado = false;
                                this.orientarUsuarioSobreDiscosDisponibles($"Usted ha salido del disco {this.discoSeleccionado.nombre}.");
                                this.discoSeleccionado = null;
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                this.numeroDiscoSeleccionado = "";  // Borra el numero para que no interfiera

                string cadena = (ex is ArgumentException) ? ex.Message : "Se encontró un error";
                this.reproducirTextoComoSonido(cadena);
            }
        }