mirror of
https://github.com/logos-messaging/logos-messaging-go-bindings.git
synced 2026-07-03 17:29:29 +00:00
Implement the high-level, idiomatic Go Messaging API mirroring the Nim MessagingClient, on top of the internal/ffi/liblogosdelivery bridge. - MessagingClient: New/Start/Stop/Close, Subscribe/Unsubscribe, Send -> RequestID. (Named to match the Nim MessagingClient.) - Unified Events() <-chan Event with a sealed Event interface (MessageReceived/Sent/Propagated/Error, ConnectionStatus). Events are dropped (never block) if a consumer falls behind. - Event decoding handles liblogosdelivery's std/json wire format: received payload/meta arrive as JSON byte-int arrays (not base64), with base64 + null fallbacks; connectionStatus as an enum-name string. Unit-tested. - Config aliases the kernel WakuNodeConf. - examples/messaging: runnable demo. Part of #106 (Store + kernel accessors follow after logos-delivery#3851). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
10 lines
460 B
Go
10 lines
460 B
Go
// Package messaging is the high-level, idiomatic Go binding for the
|
|
// logos-delivery Messaging API (an opinionated layer over the kernel protocols
|
|
// that owns reliability, re-subscriptions, store-based catch-up and the
|
|
// Messaging event surface).
|
|
//
|
|
// It exposes a MessagingClient (create/start/stop, send/subscribe/unsubscribe) and a
|
|
// unified Events channel, backed by cgo calls into liblogosdelivery via the
|
|
// internal/ffi package.
|
|
package messaging
|