126 lines
3.3 KiB
Markdown
126 lines
3.3 KiB
Markdown
# Hermes_rocket.chat_Plugin
|
|
|
|
> Nützliches Add-on für [Hermes Agent](https://hermes-agent.nousresearch.com/)
|
|
> um Rocket.Chat als Messaging-Plattform zu nutzen.
|
|
|
|
Stellt einen nativen Chatclient für das Hermes Agent Gateway bereit — mit Echtzeit-Nachrichten via WebSocket/DDP und REST-API für ausgehende Antworten.
|
|
|
|
---
|
|
|
|
## Schnellstart (für Neulinge)
|
|
|
|
### 1. Voraussetzungen
|
|
|
|
```bash
|
|
sudo apt update && sudo apt install -y curl git python3 bash
|
|
```
|
|
|
|
### 2. Plugin herunterladen
|
|
|
|
```bash
|
|
cd /tmp
|
|
git clone https://gitea.thomander.de/andreas/Hermes_rocket.chat_Plugin.git
|
|
cd Hermes_rocket.chat_Plugin
|
|
```
|
|
|
|
### 3. Installation starten
|
|
|
|
```bash
|
|
./install.sh
|
|
```
|
|
|
|
Das Script führt dich Schritt für Schritt durch:
|
|
- 🔵 Prüfe Voraussetzungen (curl, git, python3)
|
|
- 🔵 Erstelle Plugin-Verzeichnis
|
|
- 🔵 Kopiere alle Dateien
|
|
- 🔵 Frage deine Rocket.Chat-Daten ab
|
|
- 🔵 Teste die Verbindung
|
|
- 🔵 Schreibe Konfiguration in `~/.hermes/.env`
|
|
|
|
Am Ende ist das Plugin einsatzbereit — einfach `hermes gateway start`.
|
|
|
|
---
|
|
|
|
## Manuelle Installation (Experten)
|
|
|
|
Wer das Setup lieber von Hand macht:
|
|
|
|
```bash
|
|
# Plugin-Verzeichnis anlegen
|
|
mkdir -p ~/.hermes/hermes-agent/plugins/platforms/rocketchat
|
|
|
|
# Dateien hineinkopieren
|
|
cp plugin.yaml ~/.hermes/hermes-agent/plugins/platforms/rocketchat/
|
|
cp __init__.py ~/.hermes/hermes-agent/plugins/platforms/rocketchat/
|
|
cp adapter.py ~/.hermes/hermes-agent/plugins/platforms/rocketchat/
|
|
```
|
|
|
|
### Konfiguration über Umgebungsvariablen
|
|
|
|
```bash
|
|
export ROCKETCHAT_BASE_URL="https://rocketchat.example.com"
|
|
export ROCKETCHAT_USER="bernd"
|
|
export ROCKETCHAT_PASSWORD="dein-passwort"
|
|
export ROCKETCHAT_ROOM_ID="J3jvMyrKTMzKvKHSh" # optional
|
|
export ROCKETCHAT_ALLOWED_USERS="andreas,max" # optional
|
|
export ROCKETCHAT_ALLOW_ALL_USERS="false" # default
|
|
```
|
|
|
|
### Konfiguration über `config.yaml`
|
|
|
|
```yaml
|
|
plugins:
|
|
platforms:
|
|
rocketchat:
|
|
enabled: true
|
|
base_url: "https://rocketchat.example.com"
|
|
user: "bernd"
|
|
password: "dein-passwort"
|
|
room_id: "J3jvMyrKTMzKvKHSh"
|
|
allowed_users: ["andreas", "max"]
|
|
allow_all_users: false
|
|
```
|
|
|
|
---
|
|
|
|
## Features
|
|
|
|
| Feature | Beschreibung |
|
|
|---------|-------------|
|
|
| 🚀 Echtzeit-Streaming | DDP/WebSocket für sofortige eingehende Nachrichten |
|
|
| 🟢 Präsenz | Grüner Online-Status im Rocket.Chat |
|
|
| ✍️ Markdown | Fett, kursiv, `Code`, Blöcke, Links |
|
|
| 🔘 Interaktive Buttons | Ja/Nein, Bestätigen/Abbrechen, Mehrfachauswahl |
|
|
| 📢 Räume | Kanäle, private Gruppen, Direktnachrichten |
|
|
| 🔒 Allowlist | Steuerung, wer den Bot nutzen darf |
|
|
| 📦 Zero-Dependency | Nur Python-Standardbibliothek |
|
|
|
|
---
|
|
|
|
## Was ist im Paket?
|
|
|
|
```
|
|
Hermes_rocket.chat_Plugin/
|
|
├── install.sh ← Interaktives Setup für neue Benutzer
|
|
├── README.md ← Diese Datei
|
|
├── COMMUNITY_POST.md ← Fertige Vorlage für Foren/Reddit
|
|
├── plugin.yaml ← Plugin-Metadaten
|
|
├── __init__.py ← Plugin-Einstieg, Button-Templates
|
|
├── adapter.py ← DDP/WebSocket + REST Adapter
|
|
└── LICENSE ← Unlicense (Public Domain)
|
|
```
|
|
|
|
---
|
|
|
|
## Hilfe & Support
|
|
|
|
- **Hermes Agent Docs**: https://hermes-agent.nousresearch.com/
|
|
- **Rocket.Chat**: https://www.rocket.chat/
|
|
- **Dieses Repo**: https://gitea.thomander.de/andreas/Hermes_rocket.chat_Plugin
|
|
|
|
---
|
|
|
|
## Lizenz
|
|
|
|
[Unlicense](LICENSE) — Public Domain
|