No description
- Python 100%
| conf | ||
| bot.py | ||
| caldav_handler.py | ||
| README.md | ||
| requirements.py | ||
| run.py | ||
| settings.py | ||
🤖 CalDAV XMPP Bot
Um bot para XMPP (Jabber) que se integra com servidores CalDAV para enviar lembretes de eventos e agenda diretamente no seu chat.
✨ Funcionalidades
- 🔄 Sincronização com CalDAV - Busca eventos de calendários NextCloud, Baikal, Radicale, etc.
- 🔔 Lembretes automáticos - Envia notificações baseadas nos alarmes configurados
- 💬 Comandos interativos - Controle o bot via comandos no chat
- 🏠 Suporte a salas MUC - Funciona em conversas privadas e salas em grupo
- 📅 Agenda formatada - Visualização amigável dos próximos eventos
- ⏰ Fuso horário configurável - Adapta os horários ao seu timezone
📋 Comandos
| Comando | Descrição |
|---|---|
!agenda |
Mostra os próximos eventos |
!events |
Mesmo que !agenda |
!help |
Exibe mensagem de ajuda |
!ping |
Verifica se o bot está online |
!about |
Informações sobre o bot |
🚀 Instalação
1. Clone o repositório
git clone https://seu-repositorio/caldav-xmpp-bot.git
cd caldav-xmpp-bot
### 2. Crie um ambiente virtual e instale as dependências
```bash
python -m venv venv
source venv/bin/activate
pip install -r requirements.txt
3. Configure o arquivo .env
Crie um arquivo .env baseado no exemplo:
cp conf/env-example .env
Edite o arquivo com suas configurações: env
XMPP Configuration
XMPP_JID=seu_bot@xmpp.server.com XMPP_PASSWORD=sua_senha XMPP_ROOM=sala@conference.xmpp.server.com # Opcional XMPP_NICK=CalendarBot
CalDAV Configuration
CALDAV_URL=https://seu.caldav.server.com CALDAV_USERNAME=seu_usuario CALDAV_PASSWORD=sua_senha CALENDAR_IDS=id1,id2 # IDs dos calendários
Bot Configuration
FETCH_EVENT_WINDOW_IN_DAYS=30 CHECK_INTERVAL_MINUTES=15 TIMEZONE=America/Sao_Paulo
4. Execute o bot
python run.py