Bienvenida

1

Celery ¿Qué es, para qué sirve, cómo se usa?

2

Repositorio del proyecto

3

Arquitecturas de software basadas en mensajería y colas de tareas

4

Brokers de tareas: Servidores de mensajería y formas de usarlos

5

¿Cuándo debemos usar Celery?

6

Reto: Casos de uso de Celery

Bot de Slack

7

¿Cómo funciona un bot?

8

Cómo funciona el API de Slack para programación de bots (y parecidos y diferencias con otros APIs)

9

¿Cómo crear un bot reactivo?

10

Reto: posibles aplicaciones de bots de Slack, buscar ejemplos y entender cómo se llevarían a cabo

11

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

12

¿Qué es un broker de mensajería y cuándo debe usarse?

13

Conceptos: mecanismos de publicación/suscripción. Canales. Intercambiadores

14

Brokers de mensajería open source

15

Python con RabbitMQ uso básico de la terminal

16

Comparación de diferentes brokers de mensajería para trabajar con Celery

17

Reto: Crear una pequeña aplicación cliente-servidor que use RabbitMQ desde Python

Celery y brokers de mensajería

18

Creando un entorno de desarrollo para Celery

19

Instalación y creación de un programa básico pub/sub

20

Cómo usar Celery para programar un robot de Slack: diseño y comienzo de la implementación

21

Monitorización de tareas

22

Solucionando problemas

23

Reto: implementación y despliegue básico de un bot de Slack

Enrutado de tareas

24

Conceptos: enrutado de tareas y por qué se necesita

25

Enrutado manual

26

Mensajería en Celery: uso de Kombu

27

Enrutado automático

28

Reto: diseño de mecanismos de enrutado para un bot de Slack

Integración y despliegue en la nube

29

Estructura de mensajes en Celery y resultados de tareas

30

Tareas periódicas con Celery

31

Configuración de sistemas en la nube

32

Contenedores

33

Despliegue en un PaaS: Heroku

34

Uso de Celery con Node.js

35

Reto: despliegue en la nube (usando cuentas gratuitas)

Conclusiones

36

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

Curso de Celery 4

Curso de Celery 4

Juan Julián Merelo

Juan Julián Merelo

¿Cómo crear un bot reactivo?

9/36
Recursos

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

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

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

  1. Abre una instancia de tu terminal, dirígete a donde quieras guardar tu proyecto y clona el repo usando git clone https://github.com/JJ/slack-bot-platzi.git
  2. Ingresa el repo usando cd slack-bot-platzi
  3. Crea un entorno virtual usando python3 -m venv .env
  4. Activa el entorno virtual con el comando source .env/bin/activate si usas windows replaza el bin por Script
  5. Usa pip para descargar las dependencias del proyecto pip3 install -r requirements.txt
    Listo🆒
    (No olvides que debes activar el entorno virtual cada vez que quieras trabajar en el proyecto para desactivarlo basta con ejecutar 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 bot

slack-sdk es el sucesor de slackclient (actualmente legacy).

🤙