=====================
PyAMS_chat WS package
=====================

.. contents::


What is PyAMS?
==============

PyAMS (Pyramid Application Management Suite) is a small suite of packages written for applications
and content management with the Pyramid framework.

**PyAMS** is actually mainly used to manage web sites through content management applications (CMS,
see PyAMS_content package), but many features are generic and can be used inside any kind of web
application.

All PyAMS documentation is available on `ReadTheDocs <https://pyams.readthedocs.io>`_; source code
is available on `Gitlab <https://gitlab.com/pyams>`_ and pushed to `Github
<https://github.com/py-ams>`_. Doctests are available in the *doctests* source folder.


What is PyAMS chat WS?
======================

PyAMS_chat_WS is an async WebSocket server based on Starlette, which can be deployed using GUnicorn
and Uvicorn.

It relies on a Redis server's channel to which it subscribes to get messages which are dispatched
against WebSockets clients; authentication is done using JWT tokens which are generated by a
REST API using PyAMS_auth_JWT package.

Messages are sent by applications using PyAMS_chat package.
