mirror of
https://github.com/logos-messaging/nim-sds.git
synced 2026-01-07 00:23:12 +00:00
31 lines
724 B
Nim
31 lines
724 B
Nim
import std/times
|
|
|
|
type
|
|
MessageID* = string
|
|
|
|
Message* = object
|
|
messageId*: MessageID
|
|
lamportTimestamp*: int64
|
|
causalHistory*: seq[MessageID]
|
|
channelId*: string
|
|
content*: seq[byte]
|
|
bloomFilter*: seq[byte]
|
|
|
|
UnacknowledgedMessage* = object
|
|
message*: Message
|
|
sendTime*: Time
|
|
resendAttempts*: int
|
|
|
|
TimestampedMessageID* = object
|
|
id*: MessageID
|
|
timestamp*: Time
|
|
|
|
const
|
|
DefaultMaxMessageHistory* = 1000
|
|
DefaultMaxCausalHistory* = 10
|
|
DefaultResendInterval* = initDuration(seconds = 60)
|
|
DefaultMaxResendAttempts* = 5
|
|
DefaultSyncMessageInterval* = initDuration(seconds = 30)
|
|
DefaultBufferSweepInterval* = initDuration(seconds = 60)
|
|
MaxMessageSize* = 1024 * 1024 # 1 MB
|