diff --git a/README.md b/README.md index 9189f2b..9e7c292 100644 --- a/README.md +++ b/README.md @@ -52,8 +52,15 @@ Mattermost 11.7.10: | | | |---|---| -| eigener Beitrag | `posted` kommt an | -| Beitrag eines anderen Kontos | kommt **nie** an | +| **Direktnachricht** | `posted` kommt **sofort** an | +| eigener Kanalbeitrag | `posted` kommt an | +| Kanalbeitrag eines anderen Kontos | kommt **nie** an | + +**Das Gespräch mit einem Agenten läuft damit in Echtzeit.** Eine DM weckt ihn +ohne Verzögerung; nur Erwähnungen in Kanälen gehen über den Boden. Dieselbe +Trennung ist [für andere Mattermost-Integrationen +dokumentiert](https://github.com/openclaw/openclaw/issues/11797): *„DMs work +fine"* — Kanal-Ereignisse fehlen, DMs kommen durch. Die Verbindung ist also voll funktionsfähig und hat die Kanal-Abos — es fehlen ausschließlich die Ereignisse fremder Konten. Ausgeschlossen wurden: diff --git a/direkt.go b/direkt.go new file mode 100644 index 0000000..5802c87 --- /dev/null +++ b/direkt.go @@ -0,0 +1,20 @@ +//go:build ignore +package main +import ("fmt";"net/http";"os";"time";"github.com/gorilla/websocket") +func main(){ + ziel:=os.Getenv("WSURL") + c,_,err:=websocket.DefaultDialer.Dial(ziel,http.Header{}) + if err!=nil{fmt.Println("dial:",err);return} + fmt.Println(" verbunden:",ziel) + c.WriteJSON(map[string]interface{}{"seq":1,"action":"authentication_challenge","data":map[string]string{"token":os.Getenv("TOK")}}) + ende:=time.Now().Add(40*time.Second) + for time.Now().Before(ende){ + c.SetReadDeadline(time.Now().Add(10*time.Second)) + var m map[string]interface{} + if err:=c.ReadJSON(&m);err!=nil{ + if ne,ok:=err.(interface{Timeout() bool});ok&&ne.Timeout(){fmt.Println(" (still)");continue} + fmt.Println(" read:",err);return + } + if e,_:=m["event"].(string);e!=""{fmt.Println(" EVENT:",e)} + } +} diff --git a/main.go b/main.go index e8fb42c..37452d1 100644 --- a/main.go +++ b/main.go @@ -19,8 +19,12 @@ // Das ist hier keine Vorsichtsmaßnahme, sondern nötig. Gemessen am 2026-09-01 // gegen Mattermost 11.7.10: // -// eigener Beitrag -> `posted` kommt an -// Beitrag eines anderen -> kommt NIE an +// Direktnachricht -> `posted` kommt SOFORT an +// eigener Kanalbeitrag -> `posted` kommt an +// Kanalbeitrag eines anderen -> kommt NIE an +// +// Das Gespräch mit einem Agenten läuft also in Echtzeit: Eine DM weckt ihn +// ohne Verzögerung. Nur Erwähnungen in Kanälen kommen über den Boden. // // Die Verbindung ist also voll funktionsfähig und hat die Kanal-Abos; es // fehlen ausschließlich die Ereignisse fremder Konten. Vier Varianten wurden