ejecutamos linux
git clone https://github.com/JJ/slack-bot-platzi.git
cd slack-bot-platzi
sudo pip install -r requirements.txt
touch .env
Bienvenida
Celery ¿Qué es, para qué sirve, cómo se usa?
Repositorio del proyecto
Arquitecturas de software basadas en mensajería y colas de tareas
Brokers de tareas: Servidores de mensajería y formas de usarlos
¿Cuándo debemos usar Celery?
Reto: Casos de uso de Celery
Bot de Slack
¿Cómo funciona un bot?
Cómo funciona el API de Slack para programación de bots (y parecidos y diferencias con otros APIs)
¿Cómo crear un bot reactivo?
Reto: posibles aplicaciones de bots de Slack, buscar ejemplos y entender cómo se llevarían a cabo
Reto: modificar el bot básico y crear alguno que responda a a algún tipo de petición o muestre algo
Brokers de mensajería
¿Qué es un broker de mensajería y cuándo debe usarse?
Conceptos: mecanismos de publicación/suscripción. Canales. Intercambiadores
Brokers de mensajería open source
Python con RabbitMQ uso básico de la terminal
Comparación de diferentes brokers de mensajería para trabajar con Celery
Reto: Crear una pequeña aplicación cliente-servidor que use RabbitMQ desde Python
Celery y brokers de mensajería
Creando un entorno de desarrollo para Celery
Instalación y creación de un programa básico pub/sub
Cómo usar Celery para programar un robot de Slack: diseño y comienzo de la implementación
Monitorización de tareas
Solucionando problemas
Reto: implementación y despliegue básico de un bot de Slack
Enrutado de tareas
Conceptos: enrutado de tareas y por qué se necesita
Enrutado manual
Mensajería en Celery: uso de Kombu
Enrutado automático
Reto: diseño de mecanismos de enrutado para un bot de Slack
Integración y despliegue en la nube
Estructura de mensajes en Celery y resultados de tareas
Tareas periódicas con Celery
Configuración de sistemas en la nube
Contenedores
Despliegue en un PaaS: Heroku
Uso de Celery con Node.js
Reto: despliegue en la nube (usando cuentas gratuitas)
Conclusiones
Despedida, conclusiones y a dónde ir desde aquí
No tienes acceso a esta clase
¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera
Juan Julián Merelo
En esta clase el profesor JJ Merelo nos explica como crear un bot reactivo para Slack y todas los provechos que pueden sacarse junto con Celery.
Celery es una biblioteca en Python para gestionar colas de tareas distribuidas. Es software libre y está liberado con una licencia BSD. Cuenta con con más de diez mil commits en este momento en Github. Cuenta con algunas ventajas como escabilidad, eficiencia, orden de transacciones garantizado, resistencia a fallos, aguantar picos de mensajes
Aportes 8
Preguntas 1
ejecutamos linux
git clone https://github.com/JJ/slack-bot-platzi.git
cd slack-bot-platzi
sudo pip install -r requirements.txt
touch .env
Recomiendo antes crear un entorno virtual para no tocar nada de tu SO 😃
virtualenv -p python3 env
es una buena practica añadir el .venv.example con el esqueleto del .venv
Entonces .venv NUNCA estara en el repositorio y .venv.example seria algo así:
API_KEY=
REDIRECT_URL=
En el requirements.txt se debia haber puesto la version de slackclient que se utilizo ya que, ahora, en el 2021 y tras tantos cambios en la dependencia el proyecto se rompió -_-
👩💻Creación del entorno de trabajo
git clone https://github.com/JJ/slack-bot-platzi.git
cd slack-bot-platzi
python3 -m venv .env
source .env/bin/activate
si usas windows replaza el bin por Scriptpip3 install -r requirements.txt
deactivate
)El código con el cual se hizo el bot ya está deprecado. Sin embargo les recomiendo seguir este tutorial donde explican como hacer un bot con Slack, es la documentación oficial de Slack.
slack-sdk es el sucesor de slackclient (actualmente legacy).
🤙
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?