- 
                Notifications
    You must be signed in to change notification settings 
- Fork 114
Open
Description
I added pubnub.publish to the main function in examples/pubnub_asyncio_simple/main.py. After that, pressing Ctrl+C results in the following error output (ReadError). What could be the issue?
Python 3.13
import asyncio
import os
from pubnub.enums import PNStatusCategory
from pubnub.pnconfiguration import PNConfiguration
from pubnub.pubnub_asyncio import PubNubAsyncio, SubscribeCallback
class MySubscribeCallback(SubscribeCallback):
    def status(self, pubnub, status):
        if status.category == PNStatusCategory.PNUnexpectedDisconnectCategory:
            print("Disconnected")
        elif status.category == PNStatusCategory.PNConnectedCategory:
            print("Connected")
        elif status.category == PNStatusCategory.PNReconnectedCategory:
            print("Reconnected")
        elif status.category == PNStatusCategory.PNDecryptionErrorCategory:
            print("Decryption error")
    def message(self, pubnub, message):
        print(f"Received message: {message.message} on channel: {message.channel}")
    def presence(self, pubnub, presence):
        print(f"Presence event: {presence.event}")
async def main(pubnub):
    pubnub.subscribe().channels("my_channel").execute()
    # Added
    await asyncio.sleep(1)
    await pubnub.publish(
        channel="my_channel", message="Hello from PubNub Python SDK"
    ).future()
    print("Listening for messages...")
    while True:
        await asyncio.sleep(1)
if __name__ == "__main__":
    loop = asyncio.new_event_loop()
    asyncio.set_event_loop(loop)
    pnconfig = PNConfiguration()
    pnconfig.subscribe_key = os.getenv("PUBNUB_SUBSCRIBE_KEY") or "demo"
    pnconfig.publish_key = os.getenv("PUBNUB_PUBLISH_KEY") or "demo"
    pnconfig.user_id = "my_unique_user_id"  # Set a unique user ID
    pubnub = PubNubAsyncio(pnconfig)
    callback = MySubscribeCallback()
    pubnub.add_listener(callback)
    try:
        loop.run_until_complete(main(pubnub))
    except KeyboardInterrupt:
        print("Interrupted by user. Exiting...")
    finally:
        loop.run_until_complete(pubnub.stop())  # Assuming 'pubnub' is in scope
        loop.close()Connected
Listening for messages...
Received message: Hello from PubNub Python SDK on channel: my_channel
^CInterrupted by user. Exiting...
session.request exception: 
Recieve messages failed: {'information': '', 'exception': ReadError('')}
EventEngine is not enabledMetadata
Metadata
Assignees
Labels
No labels