admin check and thread as daemon

This commit is contained in:
callebtc 2023-02-17 16:13:06 +01:00
parent dfe15f6673
commit d504146f91
4 changed files with 18 additions and 14 deletions

View file

@ -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):

View file

@ -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()

View file

@ -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) {

View file

@ -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)