From bcfd98eb2aa9b871a935b3a3e9e0a24b4071ab65 Mon Sep 17 00:00:00 2001 From: Jazz Turner-Baggs <473256+jazzz@users.noreply.github.com> Date: Wed, 11 Feb 2026 09:59:10 -0800 Subject: [PATCH] Update library to work with Libchat --- src/chat/delivery/waku_client.nim | 6 +++--- src/chat/errors.nim | 1 + src/chat/identity.nim | 9 ++++++++- src/chat/utils.nim | 15 --------------- 4 files changed, 12 insertions(+), 19 deletions(-) diff --git a/src/chat/delivery/waku_client.nim b/src/chat/delivery/waku_client.nim index cb1f0dd..70f59a2 100644 --- a/src/chat/delivery/waku_client.nim +++ b/src/chat/delivery/waku_client.nim @@ -71,9 +71,9 @@ proc DefaultConfig*(): WakuConfig = shardId: @[shardId], pubsubTopic: &"/waku/2/rs/{clusterId}/{shardId}", staticPeers: @[]) -proc sendPayload*(client: WakuClient, contentTopic: string, - env: WapEnvelopeV1) {.async.} = - let bytes = encode(env) + +proc sendBytes*(client: WakuClient, contentTopic: string, + bytes: seq[byte]) {.async.} = let msg = WakuMessage(contentTopic: contentTopic, payload: bytes) let res = await client.node.publish(some(PubsubTopic(client.cfg.pubsubTopic)), msg) diff --git a/src/chat/errors.nim b/src/chat/errors.nim index c74b5b2..f5b93e3 100644 --- a/src/chat/errors.nim +++ b/src/chat/errors.nim @@ -9,6 +9,7 @@ type errTypeError errWrapped errTopic + errLibChat proc `$`*(x: ChatError): string = fmt"ChatError(code={$x.code}, context: {x.context})" diff --git a/src/chat/identity.nim b/src/chat/identity.nim index d624ffb..794fcc1 100644 --- a/src/chat/identity.nim +++ b/src/chat/identity.nim @@ -32,6 +32,13 @@ proc getPubkey*(self: Identity): PublicKey = proc getAddr*(self: Identity): string = result = get_addr(self.getPubKey()) - proc getName*(self: Identity): string = result = self.name + +proc toHex(key: PublicKey): string = + bytesToHex(key.bytes()) + +proc `$`*(key: PublicKey): string = + let byteStr = toHex(key) + fmt"{byteStr[0..3]}..{byteStr[^4 .. ^1]}" + diff --git a/src/chat/utils.nim b/src/chat/utils.nim index d6b3a26..9be2dcf 100644 --- a/src/chat/utils.nim +++ b/src/chat/utils.nim @@ -6,7 +6,6 @@ import strutils proc getCurrentTimestamp*(): Timestamp = result = waku_core.getNanosecondTime(getTime().toUnix()) - proc hash_func*(s: string | seq[byte]): string = # This should be Blake2s but it does not exist so substituting with Blake2b result = getBlake2b(s, 4, "") @@ -17,17 +16,3 @@ proc bytesToHex*[T](bytes: openarray[T], lowercase: bool = false): string = for b in bytes: let hex = b.toHex(2) result.add(if lowercase: hex.toLower() else: hex) - -proc toBytes*(s: string): seq[byte] = - result = cast[seq[byte]](s) - -proc toUtfString*(b: seq[byte]): string = - result = cast[string](b) - -macro panic*(reason: string): untyped = - result = quote do: - let pos = instantiationInfo() - echo `reason` & " ($1:$2)" % [ - pos.filename, $pos.line] - echo "traceback:\n", getStackTrace() - quit(1)