Cliente Python 🐍 para ToDus — la plataforma de mensajería instantánea cubana.
📖 LEER LA DOCUMENTACIÓN COMPLETA 📖
Es una librería moderna y poderosa para interactuar con la red de ToDus desde Python. Te permite crear:
- 🤖 Bots inteligentes - Responden a comandos y preguntas
- 📢 Notificadores - Envíos masivos con reintentos automáticos
- 💬 Chat bots - Integración con IA y LLMs
- 📊 Sistemas de reportes - Automatización de reportes
- 🔗 Integraciones - Sincroniza ToDus con tus sistemas
Cobertura del protocolo: ✅ 100% de las funciones de la app oficial
pip install todus-sdkfrom todus import ToDusClientWithQueue
# Crear cliente con cola persistente
client = ToDusClientWithQueue("5312345678", "tu_contraseña")
client.login()
# Enviar mensaje
msg_id = client.send_message_queued("5387654321", "¡Hola!")
# Escuchar mensajes
def on_message(msg):
print(f"{msg.get('from')}: {msg.get('body')}")
client.listen_messages(client.token, on_message)| 📖 Tema | 📝 Descripción |
|---|---|
| 🚀 Inicio Rápido | Tutorial paso a paso |
| 🔐 Autenticación | SMS vs Contraseña |
| 💬 Mensajería | API de mensajes |
| 👥 Grupos MUC | Administración de grupos |
| 💾 Cola Persistente | Entrega garantizada |
| 🔧 Solución de Problemas | Errores comunes |
| 💡 Ejemplos Avanzados | Patrones reales |
- Texto, imágenes, videos, stickers
- Ubicación, contactos, eventos
- Botones interactivos
- Ediciones y eliminaciones
- Confirmación de lectura
- Unirse/Salir de grupos MUC Light
- Administración de miembros
- Roles (Owner, Moderator, Participant)
- Eventos de grupo (join, leave, kick)
- Enlaces de invitación
- Cola de mensajes con SQLite
- Reintentos exponenciales automáticos
- Callbacks para eventos
- Estadísticas en tiempo real
- Canales públicos/privados
- Estados/Historias
- Proxies (HTTP, SOCKS4/5)
- Autenticación SMS
- Reconexión automática
def on_message(msg):
if msg.get('body', '').startswith('/'):
cmd = msg['body'][1:]
client.send_message_queued(
msg['from'].split('@')[0],
f"Ejecutaste: {cmd}"
)
client.listen_messages(client.token, on_message)phones = ["5351234567", "5387654321", "5362222222"]
for phone in phones:
client.send_message_queued(phone, "📰 Última noticia: ...")groups = client.groups
groups.join("id_grupo", nickname="AdminBot")
groups.send_message("id_grupo", "¡Hola grupo!")
members = groups.get_members("id_grupo")Ver más ejemplos en Ejemplos Avanzados
Las contribuciones son bienvenidas! Ver guía de contribución.
Pasos rápidos:
- Fork el repositorio
- Crea una rama:
git checkout -b feature/tu-feature - Commit cambios:
git commit -am 'Añade feature' - Push:
git push origin feature/tu-feature - Abre Pull Request
- Python >= 3.11
- pip (incluido en Python)
Este proyecto está bajo la licencia MIT. Ver LICENSE para más detalles.
Agradecemos a todos los que han contribuido:
- OrionWolf - Creador y mantenedor principal
- Comunidad toDus - Bug reports y sugerencias
¿Quieres aparecer aquí? ¡Contribuye!
Desarrollado con ❤️ por OrionWolf
Mantenido por la comunidad toDus