EOSE works

This commit is contained in:
callebtc 2023-03-09 14:42:31 +01:00
parent 8a6adb4768
commit cba039d041
4 changed files with 54 additions and 10 deletions

View file

@ -129,10 +129,24 @@ class NostrClient:
break
time.sleep(0.1)
def subscribe(self, callback_func=None):
def subscribe(
self,
callback_events_func=None,
callback_notices_func=None,
callback_eosenotices_func=None,
):
while True:
while self.relay_manager.message_pool.has_events():
event_msg = self.relay_manager.message_pool.get_event()
if callback_func:
callback_func(event_msg)
if callback_events_func:
callback_events_func(event_msg)
while self.relay_manager.message_pool.has_notices():
event_msg = self.relay_manager.message_pool.has_notices()
if callback_notices_func:
callback_notices_func(event_msg)
while self.relay_manager.message_pool.has_eose_notices():
event_msg = self.relay_manager.message_pool.get_eose_notice()
if callback_eosenotices_func:
callback_eosenotices_func(event_msg)
time.sleep(0.1)