45 lines
1.5 KiB
Markdown
45 lines
1.5 KiB
Markdown
# etm-terrain
|
|
|
|
Bot Telegram terrain d'ETM-Schurig, conteneurisé : rapports des
|
|
techniciens, FAQ, SAV. Migré depuis le poste de développement.
|
|
|
|
C'est l'**unique** processus qui écoute Telegram (un seul `getUpdates`
|
|
par token). Les autres composants de la VM (le scheduler) ne font
|
|
qu'**envoyer** des notifications.
|
|
|
|
## Contenu du dépôt
|
|
|
|
Le code de l'application — `main.py`, `config.py`, `handlers/`,
|
|
`services/`, `models/`, `scripts/`, `utils/` — vit ici, à la racine.
|
|
|
|
Ce squelette fournit l'emballage Docker autour :
|
|
|
|
- `Dockerfile` — construction de l'image
|
|
- `.dockerignore` — ce qui n'entre pas dans l'image
|
|
- `.env.example` — gabarit des variables d'environnement
|
|
- `.gitignore`
|
|
|
|
## Données (volumes)
|
|
|
|
Deux dossiers sont des volumes montés — **jamais** dans l'image, **jamais**
|
|
dans Git :
|
|
|
|
- `data/` — index ChromaDB, base tickets, PDF source
|
|
- `sav_knowledge/` — index SAV
|
|
|
|
Les PDF source (documentation Victron) se placent dans
|
|
`data/docs/Doc_8_Victron/` sur la VM. L'index ChromaDB se **reconstruit**
|
|
à partir d'eux (script de réindexation) — il n'a pas à être migré.
|
|
|
|
## Lancement
|
|
|
|
Ce dépôt n'a pas de `docker-compose` propre : le bot est démarré par le
|
|
compose chapeau du dépôt `etm-infra`. Voir `etm-infra/README.md`.
|
|
|
|
## À savoir
|
|
|
|
- **Ollama** : en conteneur, `localhost` ne pointe pas vers la VM.
|
|
Renseigner `OLLAMA_URL` avec l'adresse réelle d'Ollama dans le `.env`.
|
|
- Le `.env` est injecté par le compose chapeau (`env_file`) ; les
|
|
variables sont donc disponibles même sans fichier `.env` dans l'image.
|