
Mensaje de introducción al curso y recomendaciones.
Veamos rápidamente qué es lo que vamos a necesitar en el curso.
En este curso descargamos los recursos necesarios para iniciar con el desarrollo de nuestra aplicación.
Veamos en esta lección como crear nuestra primera aplicación Python y así mismo como ejecutar este proyecto web localmente.
Veamos cómo publicar nuestra aplicación Python, para que esté disponible online y de forma pública para todos.
En esta lección creamos una app en Facebook y la asociamos con nuestro Webhook siguiendo unos pasos de verificación.
En esta lección empezamos a capturar mensajes que nos envía Facebook Messenger, y los mostramos a través de logs.
Facebook Messenger envía información a nuestro webhook. Veamos cómo obtener de forma específica el mensaje escrito por el usuario.
Veamos cómo enviar mensajes de respuesta a los usuarios que escriben a nuestra fanpage, a través de peticiones POST.
Veamos cómo enviar botones como alternativas que puede escoger el usuario, además de un texto (hacia Facebook Messenger).
Veamos qué limitaciones presentan los botones de tipo postback, y así mismo, una introducción al árbol que vamos a usar para delimitar la comunicación con nuestro chatbot.
Veamos cómo definir, importar e instanciar una clase en Python. En este caso de forma específica una clase que va a representar la lógica de nuestro Bot.
Veamos cómo leer el contenido de un archivo YAML y cómo mapear su contenido hacia un diccionario Python.
En esta lección empezamos a planificar la lógica de nuestro bot. ¿Cómo va a operar para responder a los usuarios que le escriben a través de Facebook Messenger?
Veamos cómo responder desde la clase Bot, enviando un primer mensaje y posibles respuestas (postback buttons) a los usuarios.
En esta lección definimos un historial de mensajes constante, y creamos una lógica base para iterar sobre este historial, de modo que el bot conozca qué le corresponde responder, según el tree definido. También vemos cómo imprimir el tipo de dato de las variables.
Hagamos que ahora el bot reconozca un nivel más de profundidad. La lógica de forma general debería permitir un reconocimiento de N niveles, según lo que estipule el árbol.
Veamos rápidamente cómo podemos hacer uso de Python NDB para definir modelos en nuestra aplicación, que nos permitirán registrar y recuperar datos fácilmente usando Google Datastore.
En esta lección vemos cómo podemos registrar datos en Google Datastore, y así mismo cómo leer información que hemos registrado previamente.
Veamos cómo podemos ordenar los datos que obtenemos de Google Datastore, y así mismo cómo eliminar registros.
Ahora vamos a reemplazar el historial de mensajes constante por eventos que van a ser leídos desde Datastore. Para que esto funcione vamos a empezar a usar nuestro DAO, tanto para la lectura como para el registro de eventos (mensajes enviados, ya sea por un usuario o por el bot).
Veamos cómo configurar un mensaje inicial para nuestro bot, y así mismo un mensaje y alternativas por defecto, en caso que el usuario escriba algo que el bot no entiende.
Veamos cómo reiniciar la conversación del bot con un usuario determinado, a petición del mismo.
¿Cansado de escribir? Es hora de habilitar los botones postback. Nuestro webhook (chatbot) será ahora capaz de reconocerlos.
¿Qué sucede si de pronto un administrador quiere conversar con el usuario? ¿Cómo le pedimos al bot que guarde silencio sin que se ofenda?
¿Qué son los mensajes de eco y para qué sirven? ¿Cómo suscribimos nuestro Webhook a mensajes de este tipo?
Veamos finalmente cómo desactivar el bot, registrando y detectando los mensajes escritos por un administrador.
Veamos cómo publicar nuestro Bot en la plataforma de Facebook Messenger.
Veamos cómo definir botones de tipo url, y cuál es la diferencia entre los distintos tipos de plantilla (entre ellos, plantilla de botones, open graph y lista).
Subamos nuestro proyecto a Github. Si no tienes conocimientos sobre Git o Github, no te preocupes (esta lección de 9 minutos resume los conceptos principales).
De pronto el usuario no quiere reiniciar la conversación, pero el bot sigue insistendo. ¿Cómo es esto posible?
El presente curso tiene un objetivo bastante claro:
Aprenderás a desarrollar tu primer Chatbot para Facebook Messenger, y además
Reforzarás (o aprenderás) los conceptos principales de Python, como lenguaje de programación
Pero eso no es todo, porque también aprenderás a usar Google Cloud Platform, a través de 2 servicios que ofrece:
Google App Engine (como hosting, para publicar nuestro Chatbot)
Google DataStore (para guardar un historial de las conversaciones)
En resumen:
Aprenderás muchos conceptos importantes, todos relacionados con las tecnologías antes mencionadas.
Y lo mejor es que al final del curso podrás publicar tu propia versión. Un chatbot creado por ti de principio a fin.
Nota:
El curso te aportará ideas y una buena base para el desarrollo de Chatbots.
Sin embargo, debes tener en cuenta que actualmente presenta ciertas diferencias con los servicios que ofrece Google.
De todas formas, ante cualquier duda, podrás siempre consultarme.
¿Cómo es posible el funcionamiento de un Chatbot?
Básicamente, cuando un usuario escribe un mensaje a través de Messenger.
Messenger notifica de ello a tu aplicación, a través de un Webhook.
El Webhook debe responder entonces con la respuesta del Chatbot.
Esta respuesta puede contener un mensaje simple, o bien ofrecer opciones.
Todo este flujo lo revisamos e implementamos durante el curso!