diff --git a/nostr/relay_manager.py b/nostr/relay_manager.py index 6bcbee4..5b92d8d 100644 --- a/nostr/relay_manager.py +++ b/nostr/relay_manager.py @@ -41,11 +41,11 @@ class RelayManager: target=relay.connect, args=(ssl_options, proxy), name=f"{relay.url}-thread", + daemon=True, ).start() threading.Thread( - target=relay.queue_worker, - name=f"{relay.url}-queue", + target=relay.queue_worker, name=f"{relay.url}-queue", daemon=True ).start() def close_connections(self): diff --git a/tasks.py b/tasks.py index 083c234..0855bb3 100644 --- a/tasks.py +++ b/tasks.py @@ -76,12 +76,13 @@ async def subscribe_events(): await asyncio.sleep(2) def callback(event: Event): - print(f"From {event.public_key[:3]}..{event.public_key[-3:]}: {event.content}") + # print(f"From {event.public_key[:3]}..{event.public_key[-3:]}: {event.content}") asyncio.run(received_event_queue.put(event)) t = threading.Thread( target=client.subscribe, args=(callback,), name="Nostr-event-subscription", + daemon=True, ) t.start() diff --git a/templates/nostrclient/index.html b/templates/nostrclient/index.html index 5e271cb..1edaed9 100644 --- a/templates/nostrclient/index.html +++ b/templates/nostrclient/index.html @@ -187,8 +187,8 @@ LNbits.api .request( 'GET', - '/nostrclient/api/v1/relays', - self.g.user.wallets[0].adminkey + '/nostrclient/api/v1/relays?usr=' + this.g.user.id, + this.g.user.wallets[0].adminkey ) .then(function (response) { if (response.data) { @@ -202,7 +202,7 @@ LNbits.utils.notifyApiError(error) }) }, - addRelay: function () { + addRelay() { if (!this.relayToAdd.startsWith("wss://")) { this.relayToAdd = "" this.$q.notify({ @@ -218,8 +218,8 @@ LNbits.api .request( 'POST', - '/nostrclient/api/v1/relay', - self.g.user.wallets[0].adminkey, + '/nostrclient/api/v1/relay?usr=' + this.g.user.id, + this.g.user.wallets[0].adminkey, {url:this.relayToAdd}, ) .then(function (response) { @@ -235,14 +235,13 @@ }) location.reload(); }, - deleteRelay: function (url) { + deleteRelay(url) { console.log("DELETE RELAY " + url) - var self = this LNbits.api .request( 'DELETE', - '/nostrclient/api/v1/relay', - self.g.user.wallets[0].adminkey, + '/nostrclient/api/v1/relay?usr=' + this.g.user.id, + this.g.user.wallets[0].adminkey, {url:url}, ) .then(function (response) { diff --git a/views_api.py b/views_api.py index 27b3bad..6ecb02a 100644 --- a/views_api.py +++ b/views_api.py @@ -57,7 +57,9 @@ async def api_get_relays(): # type: ignore return relays -@nostrclient_ext.post("/api/v1/relay") +@nostrclient_ext.post( + "/api/v1/relay", status_code=HTTPStatus.OK, dependencies=[Depends(check_admin)] +) async def api_add_relay(relay: Relay): # type: ignore assert relay.url, "no URL" if relay.url in client.relay_manager.relays: @@ -67,7 +69,9 @@ async def api_add_relay(relay: Relay): # type: ignore await init_relays() -@nostrclient_ext.delete("/api/v1/relay") +@nostrclient_ext.delete( + "/api/v1/relay", status_code=HTTPStatus.OK, dependencies=[Depends(check_admin)] +) async def api_delete_relay(relay: Relay): # type: ignore assert relay.url client.relay_manager.remove_relay(relay.url)