refactor: extract method _send_msg()

This commit is contained in:
Vlad Stan 2023-02-08 11:56:03 +02:00
parent 7215d37fe9
commit 423364a5c6

View file

@ -97,14 +97,14 @@ class NostrClientConnection:
resp = await self._handle_message(data) resp = await self._handle_message(data)
for r in resp: for r in resp:
await self.websocket.send_text(json.dumps(r)) await self._send_msg(r)
except Exception as e: except Exception as e:
logger.warning(e) logger.warning(e)
async def stop(self, reason: Optional[str]): async def stop(self, reason: Optional[str]):
message = reason if reason else "Server closed webocket" message = reason if reason else "Server closed webocket"
try: try:
await self.websocket.send_text(json.dumps(["NOTICE", message])) await self._send_msg(["NOTICE", message])
except: except:
pass pass
@ -117,7 +117,7 @@ class NostrClientConnection:
for filter in self.filters: for filter in self.filters:
if filter.matches(event): if filter.matches(event):
resp = event.serialize_response(filter.subscription_id) resp = event.serialize_response(filter.subscription_id)
await self.websocket.send_text(json.dumps(resp)) await self._send_msg(resp)
return True return True
return False return False
@ -147,14 +147,14 @@ class NostrClientConnection:
if not self.client_config.is_author_allowed(e.pubkey): if not self.client_config.is_author_allowed(e.pubkey):
resp_nip20 += [False, f"Public key '{e.pubkey}' is not allowed in relay '{self.relay_id}'!"] resp_nip20 += [False, f"Public key '{e.pubkey}' is not allowed in relay '{self.relay_id}'!"]
await self.websocket.send_text(json.dumps(resp_nip20)) await self._send_msg(resp_nip20)
return None return None
try: try:
e.check_signature() e.check_signature()
except ValueError as ex: except ValueError as ex:
resp_nip20 += [False, "invalid: wrong event `id` or `sig`"] resp_nip20 += [False, "invalid: wrong event `id` or `sig`"]
await self.websocket.send_text(json.dumps(resp_nip20)) await self._send_msg(resp_nip20)
return None return None
try: try:
@ -175,7 +175,7 @@ class NostrClientConnection:
message = "error: failed to create event" message = "error: failed to create event"
resp_nip20 += [event != None, message] resp_nip20 += [event != None, message]
await self.websocket.send_text(json.dumps(resp_nip20)) await self._send_msg(resp_nip20)
@property @property
def client_config(self) -> ClientConfig: def client_config(self) -> ClientConfig:
@ -183,6 +183,9 @@ class NostrClientConnection:
raise Exception("Client not ready!") raise Exception("Client not ready!")
return self.get_client_config() return self.get_client_config()
async def _send_msg(self, data: List):
await self.websocket.send_text(json.dumps(data))
async def _handle_delete_event(self, event: NostrEvent): async def _handle_delete_event(self, event: NostrEvent):
# NIP 09 # NIP 09
filter = NostrFilter(authors=[event.pubkey]) filter = NostrFilter(authors=[event.pubkey])