From 7dda553918705277c7fa5b903c6a40e4b4a0aa8d Mon Sep 17 00:00:00 2001 From: DanConwayDev Date: Fri, 21 Nov 2025 04:44:40 +0000 Subject: add nip11 --- grasp-audit/src/client.rs | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'grasp-audit/src/client.rs') diff --git a/grasp-audit/src/client.rs b/grasp-audit/src/client.rs index 019f4cb..35aaccd 100644 --- a/grasp-audit/src/client.rs +++ b/grasp-audit/src/client.rs @@ -84,6 +84,25 @@ impl AuditClient { self.keys.public_key() } + /// Get the relay URL + pub async fn relay_url(&self) -> Result { + let relays = self.client.relays().await; + let relay = relays.values().next() + .ok_or_else(|| anyhow!("No relays configured"))?; + Ok(relay.url().to_string()) + } + + /// Convert WebSocket URL to HTTP(S) URL for NIP-11 requests + pub fn ws_to_http_url(ws_url: &str) -> Result { + if ws_url.starts_with("ws://") { + Ok(ws_url.replace("ws://", "http://")) + } else if ws_url.starts_with("wss://") { + Ok(ws_url.replace("wss://", "https://")) + } else { + Err(anyhow!("Invalid WebSocket URL: {}", ws_url)) + } + } + /// Check if connected to relay pub async fn is_connected(&self) -> bool { // Check if we have any connected relays -- cgit v1.2.3