Logo
Explore Help
Sign In
logos-messaging/logos-messaging-go-bindings
1
0
Fork 0
You've already forked logos-messaging-go-bindings
mirror of https://github.com/logos-messaging/logos-messaging-go-bindings.git synced 2026-07-06 18:59:44 +00:00
Code Issues Packages Projects Releases Wiki Activity
logos-messaging-go-bindings/pkg/messaging/envelope.go

18 lines
475 B
Go
Raw Normal View History

feat: add Messaging API (pkg/messaging) The high-level, idiomatic MessagingClient mirroring the Nim MessagingClient, on top of the internal/ffi/liblogosdelivery bridge (single library). - MessagingClient: New/Start/Stop/Close, Subscribe/Unsubscribe, Send -> RequestID. - 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. Stacked on the single-library migration. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-03 17:30:07 +01:00
package messaging
// ContentTopic is an application-level message category, e.g.
// "/my-app/1/chat/proto".
type ContentTopic = string
// RequestID correlates a Send call with its later MessageSentEvent /
// MessagePropagatedEvent / MessageErrorEvent.
type RequestID string
// Envelope is an outgoing Messaging API message.
type Envelope struct {
ContentTopic ContentTopic
Payload []byte
// Ephemeral marks the message as transient (not stored).
Ephemeral bool
}
Reference in New Issue Copy Permalink
Powered by Gitea Version: 1.23.0 Page: 39ms Template: 2ms
English
Bahasa Indonesia Deutsch English Español Français Gaeilge Italiano Latviešu Magyar nyelv Nederlands Polski Português de Portugal Português do Brasil Suomi Svenska Türkçe Čeština Ελληνικά Български Русский Українська فارسی മലയാളം 日本語 简体中文 繁體中文(台灣) 繁體中文(香港) 한국어
Licenses API