tgpy
safariii
FREEOP

a year ago

https://railway.app/project/561b89c1-c887-4420-9afc-b80d3f79cdc9/service/5d6acff7-796f-4abb-ac7b-7277c9e6a7cf/settings

I have a Web socket app I made in python and I'm trying to expose the socket. It works locally but it doesn't work once I put it up on real way railway knows the port that it's exposed on but I can't access that through railway url.

Without exposing everything here is a bit of my code
```py
import asyncio

import aiohttp

import websockets

from io import BytesIO

# Broadcast to WebSocket clients

message_data = {

'chat_id': chat_id,

'chat_title': chat_title,

'message_text': message_text,

'sender_id': sender_id,

'sender_username': sender_username,

'sender_name': sender_name

}

await broadcast_to_websockets(json.dumps(message_data))

async def broadcast_to_websockets(message):

if connected_websockets:

await asyncio.wait([asyncio.create_task(ws.send(message)) for ws in connected_websockets])

async def websocket_handler(websocket, path):

connected_websockets.add(websocket)

try:

async for message in websocket:

# print(f"Received message: {message}")

pass

finally:

connected_websockets.remove(websocket)

async def main():

await client.start()

print('Listening for new messages')

# Start WebSocket server

websocket_server = websockets.serve(websocket_handler, "0.0.0.0", 8765)

print('WebSocket server is ready and listening on ws://0.0.0.0:8765')

await asyncio.gather(

client.run_until_disconnected(),

websocket_server

)

with client:

client.loop.run_until_complete(main())
```

0 Replies

Loading...