websockets-groups


Namewebsockets-groups JSON
Version 0.0.2a1 PyPI version JSON
download
home_page
Summary
upload_time2023-05-23 11:16:08
maintainer
docs_urlNone
authorirocshers
requires_python>=3.8,<4.0
license
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # WebSockets Groups

Модуль реализующих менеджер групп WebSocket подключений

Функционал:

- Регистрация / Удаление WS
- Создание / Удаление групп WS
- Подключение WS в группу
- Поддержка реестров: memory, redis

## Quick start

Установка:

```sh
pip install websockets-groups
```

Подключение:

```python
from fastapi import WebSocket
from websockets_groups import WSGroupsManager, MemoryStorage, BaseDispatcher

ws_groups_manager = WSGroupsManager(MemoryStorage())

class ChatDispatcher(BaseDispatcher):
    pass

@app.websocket('/chats/')
async def ws_view(webdocket: WebSocket, chat_name: str):
    await ws_groups_manager.register_ws(websocket, ChatDispatcher())
```

            

Raw data

            {
    "_id": null,
    "home_page": "",
    "name": "websockets-groups",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.8,<4.0",
    "maintainer_email": "",
    "keywords": "",
    "author": "irocshers",
    "author_email": "develop.iam@rocshers.com",
    "download_url": "https://files.pythonhosted.org/packages/68/3d/f841c559ee48033f80cf2d6be575a97017a9d7edb10e207cbb1757e13ee0/websockets_groups-0.0.2a1.tar.gz",
    "platform": null,
    "description": "# WebSockets Groups\n\n\u041c\u043e\u0434\u0443\u043b\u044c \u0440\u0435\u0430\u043b\u0438\u0437\u0443\u044e\u0449\u0438\u0445 \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440 \u0433\u0440\u0443\u043f\u043f WebSocket \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0439\n\n\u0424\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b:\n\n- \u0420\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u044f / \u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435 WS\n- \u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 / \u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u0433\u0440\u0443\u043f\u043f WS\n- \u041f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 WS \u0432 \u0433\u0440\u0443\u043f\u043f\u0443\n- \u041f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u0440\u0435\u0435\u0441\u0442\u0440\u043e\u0432: memory, redis\n\n## Quick start\n\n\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430:\n\n```sh\npip install websockets-groups\n```\n\n\u041f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435:\n\n```python\nfrom fastapi import WebSocket\nfrom websockets_groups import WSGroupsManager, MemoryStorage, BaseDispatcher\n\nws_groups_manager = WSGroupsManager(MemoryStorage())\n\nclass ChatDispatcher(BaseDispatcher):\n    pass\n\n@app.websocket('/chats/')\nasync def ws_view(webdocket: WebSocket, chat_name: str):\n    await ws_groups_manager.register_ws(websocket, ChatDispatcher())\n```\n",
    "bugtrack_url": null,
    "license": "",
    "summary": "",
    "version": "0.0.2a1",
    "project_urls": null,
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "f37ea4551a24e900d4e6b976199f0b80b01aab59f7d77a94e0d2e467527c207e",
                "md5": "4b78f41b7c73fa115655e53f9769ca43",
                "sha256": "b8ba8c613ddd4789978700d21cc2073cdb170fc5b54279373e1710e78bbe9f79"
            },
            "downloads": -1,
            "filename": "websockets_groups-0.0.2a1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "4b78f41b7c73fa115655e53f9769ca43",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8,<4.0",
            "size": 9329,
            "upload_time": "2023-05-23T11:16:06",
            "upload_time_iso_8601": "2023-05-23T11:16:06.609817Z",
            "url": "https://files.pythonhosted.org/packages/f3/7e/a4551a24e900d4e6b976199f0b80b01aab59f7d77a94e0d2e467527c207e/websockets_groups-0.0.2a1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "683df841c559ee48033f80cf2d6be575a97017a9d7edb10e207cbb1757e13ee0",
                "md5": "f725213fabb9523ae8bdb42cab4aea2e",
                "sha256": "71b321cb4414efc6e61b07a485e45c4a24ce204562791a3950ba01fd294c89c9"
            },
            "downloads": -1,
            "filename": "websockets_groups-0.0.2a1.tar.gz",
            "has_sig": false,
            "md5_digest": "f725213fabb9523ae8bdb42cab4aea2e",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8,<4.0",
            "size": 6476,
            "upload_time": "2023-05-23T11:16:08",
            "upload_time_iso_8601": "2023-05-23T11:16:08.562982Z",
            "url": "https://files.pythonhosted.org/packages/68/3d/f841c559ee48033f80cf2d6be575a97017a9d7edb10e207cbb1757e13ee0/websockets_groups-0.0.2a1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-05-23 11:16:08",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "websockets-groups"
}
        
Elapsed time: 0.43779s