Consolidate Maria control into the shared Discord-bridge dashboard
Drop the standalone maria-dashboard.service — one common panel now controls both bridges, at the operator's request. discord-bridge's dashboard/api.py gains a Maria section (fixed-unit start/stop/restart for maria-whatsapp/maria-rag, WhatsApp status+QR proxy, document CRUD, reindex, Drive sync trigger, log tail) reached via subprocess/HTTP — no cross-module imports, to avoid colliding with discord-bridge's own `config` module name. index.html gets a matching "Maria — WhatsApp + RAG" section. maria-whatsapp-bridge loses its dashboard/ folder and DASHBOARD_* env keys; install.sh/README point at the shared panel. Co-Authored-By: Claude Agent <noreply@anthropic.com>
This commit is contained in:
@@ -2,8 +2,11 @@
|
||||
|
||||
Bot de suport ROA pe WhatsApp: puntea WhatsApp (Baileys) primeste mesajele,
|
||||
consumer-ul RAG raspunde folosind DOAR informatiile dintr-un depozit de
|
||||
documente indexat cu embeddings (Ollama), iar un dashboard web controleaza
|
||||
totul (start/stop/restart, documente, reindexare, sincronizare Google Drive).
|
||||
documente indexat cu embeddings (Ollama). Controlul (start/stop/restart,
|
||||
documente, reindexare, sincronizare Google Drive) se face din **dashboard-ul
|
||||
puntii Discord** (`../discord-bridge/dashboard/`), sectiunea "Maria — WhatsApp
|
||||
+ RAG" — un singur panou comun pentru ambele punti de pe acest container, nu
|
||||
un dashboard separat per serviciu.
|
||||
|
||||
Continua prototipul descris in
|
||||
`claude-agent/docs/maria-whatsapp-rag-prototype.md` (construit initial in
|
||||
@@ -31,9 +34,9 @@ rag/store.py -- depozit documente (.txt/.md) in ~/.maria-bridge/documents/
|
||||
rag/indexer.py -- chunking + embeddings Ollama -> rag_index.json
|
||||
rag/sync.py -- rclone pull din Google Drive + reindexare conditionata
|
||||
|
||||
dashboard/api.py -- panou web (stdlib, fara dependinte), :18792
|
||||
controleaza maria-whatsapp.service + maria-rag.service,
|
||||
gestioneaza documentele si declanseaza sincronizare/reindexare
|
||||
../discord-bridge/dashboard/api.py -- panou comun; sectiunea Maria controleaza
|
||||
maria-whatsapp.service + maria-rag.service, gestioneaza
|
||||
documentele si declanseaza sincronizare/reindexare
|
||||
```
|
||||
|
||||
Servicii `systemctl --user` (vezi `ops/`):
|
||||
@@ -43,7 +46,6 @@ Servicii `systemctl --user` (vezi `ops/`):
|
||||
| `maria-whatsapp.service` | Puntea Baileys (Node), port 8099 |
|
||||
| `maria-rag.service` | Consumer RAG (Python), polling + raspunsuri |
|
||||
| `maria-sync.service` + `.timer` | Sincronizare Drive + reindexare, la 10 min |
|
||||
| `maria-dashboard.service` | Panou de control, port 18792 |
|
||||
|
||||
## Instalare
|
||||
|
||||
@@ -61,32 +63,26 @@ Bridge-ul WhatsApp NU porneste automat la instalare — cere scanarea unui cod Q
|
||||
|
||||
```bash
|
||||
./ops/install.sh --start
|
||||
# apoi deschide dashboard-ul (tunel SSH catre 127.0.0.1:18792) si scaneaza
|
||||
# codul QR din cardul "Conectare WhatsApp"
|
||||
# apoi deschide dashboard-ul puntii Discord si scaneaza codul QR din
|
||||
# sectiunea "Maria — WhatsApp + RAG" -> cardul "Conectare WhatsApp"
|
||||
```
|
||||
|
||||
## Dashboard
|
||||
## Dashboard (comun cu puntea Discord)
|
||||
|
||||
```bash
|
||||
ssh -L 18792:127.0.0.1:18792 -N claude@10.0.20.171 &
|
||||
# apoi: http://localhost:18792
|
||||
```
|
||||
|
||||
Autentificare cu `DASHBOARD_TOKEN` din `~/.maria-bridge/env` (generat automat
|
||||
de `install.sh`). `DASHBOARD_AUTH=off` in env dezactiveaza login-ul — foloseste
|
||||
DOAR daca panoul ramane strict pe 127.0.0.1/tunel SSH.
|
||||
|
||||
Ce poti face din panou:
|
||||
Nu exista un dashboard separat pentru Maria. Controlul se face din dashboard-ul
|
||||
puntii Discord — vezi `../discord-bridge/README.md` pentru URL si autentificare
|
||||
(`DASHBOARD_TOKEN` din `~/.claude-discord/env`, tunel SSH sau Tailscale la
|
||||
`/claude`). Acolo, sectiunea "Maria — WhatsApp + RAG":
|
||||
- start/stop/restart pentru puntea WhatsApp si consumer-ul RAG
|
||||
- vezi starea conexiunii WhatsApp si codul QR de asociere (cand nu e conectat)
|
||||
- listezi, adaugi si stergi documente din depozitul RAG
|
||||
- reconstruiesti indexul manual, sau declansezi o sincronizare Drive imediata
|
||||
- citesti ultimele linii din logurile fiecarui serviciu
|
||||
- starea conexiunii WhatsApp si codul QR de asociere (cand nu e conectat)
|
||||
- listare, adaugare si stergere documente din depozitul RAG
|
||||
- reconstruire index manual, sau sincronizare Drive imediata
|
||||
- ultimele linii din logurile fiecarui serviciu Maria (`whatsapp.log`/`rag.log`)
|
||||
|
||||
## Depozitul de documente
|
||||
|
||||
Fisiere `.txt`/`.md` in `~/.maria-bridge/documents/`. Se pot administra:
|
||||
1. **manual din dashboard** (adaugare/stergere text, reindexare automata la salvare);
|
||||
1. **manual din dashboard-ul comun** (adaugare/stergere text, reindexare automata la salvare);
|
||||
2. **prin sincronizare Google Drive** — vezi mai jos.
|
||||
|
||||
## Sincronizare cu Google Drive
|
||||
|
||||
Reference in New Issue
Block a user