Reconocimiento de voz para consultar una base de datos

El reconocimiento de voz es una característica fundamental cuando debemos consultar datos desde un dispositivo móvil o cuando no disponemos de un teclado cómodo para el ingreso de la pregunta.

El navegador Chrome provee desde hace varios años un módulo que nos permite el reconocimiento de voz, luego desde JavaScript podemos interacturar.

La clase fundamental del módulo se llama 'webkitSpeechRecognition'.

Implementaremos una aplicación que nos permita consultar la base de datos del problema del mini sistemas de 'facturacion'.

El objetivo fundamental es que podamos hacer preguntas en voz alta a la aplicación tales como:

listado de productos
listado de clientes
listado de facturas
listado de categorias
factura de (apellido y nombre)
facturas con importe menor a (importe)
facturas con importe mayor a (importe)
factura numero (numero)
mail de (apellido y nombre)
telefono de (apellido y nombre)
direccion de (apellido y nombre)
todos los datos de (apellido y nombre)
producto numero (numero)
precios de (nombre de cateroría)
que puedo preguntar

Las preguntas que responderá la aplicación es solo a modo de ejemplo y la cantidad de preguntas que podremos hacer podrá ir aumentando a medida que implementemos las consultas SQL en nuestra aplicación en PHP.

Para el desarrollo de nuestra aplicación de facturación nos vamos a valer de las siguientes tecnologías:

  1. PHP (Comunicarse con MySql para recuperar y enviar datos del sistema de facturación, responder a las peticiones del navegador web)

  2. MySql (Almacenamiento de productos, categorias, facturas y detalles de las facturas)

  3. HTML (Estructura de la página web donde se muestra la interfaz visual)

  4. CSS (Permitir mostrar los datos en forma legible)

  5. Bootstrap 4 (Librería de CSS que nos facilita implementar la interfaz visual de la aplicación y nos reduce el códico CSS a codificar)

  6. JavaScript (Interactuar con los datos en el navegador web)

  7. webkitSpeechRecognition (clase provista por Chrome que facilita la conversión a modo texto de una oración que dictamos en voz alta)

  8. JQuery (Acceder al DOM del navegador en forma sencilla)

  9. AJAX (Nos permitirá comunicarnos con el servidor para la recuperación y envío de datos, evitando tener que refrescar la página web)

  10. JSON (Será el formato de datos para enviar y recuperar datos de nuestro servidor)

  11. DataTables (plug-in de jQuery que implementar una interfaz muy rica para interacturar con los datos en el navegador)