mirror of
https://github.com/logos-messaging/js-waku.git
synced 2026-01-05 15:23:12 +00:00
* introduce `MessageId` type # Conflicts: # packages/sds/src/message_channel/message_channel.ts * fix: own messages are not used for ack * fix: own messages are not used for ack * doc: long term solution is SDS protocol change * SDS: renaming to match message function * SDS: introduce `Message` class for easier encoding/decoding # Conflicts: # packages/sds/src/message_channel/events.ts # packages/sds/src/message_channel/message_channel.ts * SDS Message is a class now * SDS: it's "possibly" not "partially" acknowledged. * SDS: TODO * SDS: fix tests * SDS: make logs start with `waku` * SDS: add bloom filter test # Conflicts: # packages/sds/src/message_channel/events.spec.ts * SDS: improve naming * SDS: improve naming Messages are not "sent" or received, but pushed for processing in local queues. * SDS: sync message should not be delivered * SDS: renaming from earlier * SDS: remove useless variable * SDS: Fix comment * SDS: sync messages do not get "delivered" * SDS: acks * SDS: simplify delivered event * SDS: improve event naming * SDS: fix comment * SDS: make task error an official event * SDS: Mark messages that are irretrievably lost * SDS: remove default for irretrievable and simplify config * SDS: typo on sync event * SDS: add and user sender id * SDS: resent message never get ack'd * SDS: fix cylic dependencies * SDS: helpful logs * SDS: avoid duplicate history entries * SDS: export options
17 lines
1015 B
Protocol Buffer
17 lines
1015 B
Protocol Buffer
syntax = "proto3";
|
|
|
|
message HistoryEntry {
|
|
string message_id = 1; // Unique identifier of the SDS message, as defined in `Message`
|
|
optional bytes retrieval_hint = 2; // Optional information to help remote parties retrieve this SDS message; For example, A Waku deterministic message hash or routing payload hash
|
|
}
|
|
|
|
message SdsMessage {
|
|
string sender_id = 1; // Participant ID of the message sender
|
|
string message_id = 2; // Unique identifier of the message
|
|
string channel_id = 3; // Identifier of the channel to which the message belongs
|
|
optional int32 lamport_timestamp = 10; // Logical timestamp for causal ordering in channel
|
|
repeated HistoryEntry causal_history = 11; // List of preceding message IDs that this message causally depends on. Generally 2 or 3 message IDs are included.
|
|
optional bytes bloom_filter = 12; // Bloom filter representing received message IDs in channel
|
|
optional bytes content = 20; // Actual content of the message
|
|
}
|