Tijani-Dia / yrouter-websockets

A URL routing package for the websockets library.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Yrouter-websockets

yrouter-websockets is a URL routing package for the websockets library. It's built on top of yrouter.

Example

import asyncio

import websockets

from yrouter import route
from yrouter_websockets import router


async def home(ws):
    await ws.send("In home")


async def hello_user(ws, username):
    await ws.send(f"Hello {username}")


async def channel(ws, channel_id):
    # Do some stuff with channel_id


routes = (
    route("/", home),
    route("hello/<str:username>/", hello_user),
    route("channels/<int:channel_id>", channel),
)


async def main():
    async with websockets.serve(router(routes), "localhost", 8765):
        await asyncio.Future()


if __name__ == "__main__":
    asyncio.run(main())

Installation

yrouter-websockets requires Python>=3.9. You can install it from Pypi:

pip install yrouter-websockets

About

A URL routing package for the websockets library.

License:BSD 3-Clause "New" or "Revised" License


Languages

Language:Python 91.5%Language:Makefile 8.5%