Client for Stream Chat.
Project description
stream-chat-python
the official Python API client for Stream chat a service for building chat applications.
You can sign up for a Stream account at https://getstream.io/chat/get_started/.
You can use this library to access chat API endpoints server-side, for the client-side integrations (web and mobile) have a look at the Javascript, iOS and Android SDK libraries (https://getstream.io/chat/).
Installation
stream-chat-python supports:
- Python (3.4, 3.5, 3.6, 3.7)
Install from Pypi
pip install stream-chat
Documentation
How to build a chat app with Python tutorial
Chat with Python, Django and React
Supported features
- Chat channels
- Messages
- Chat channel types
- User management
- Moderation API
- Push configuration
- User devices
- User search
- Channel search
Quickstart
chat = StreamChat(api_key="STREAM_KEY", api_secret="STREAM_SECRET")
# add a user
chat.update_user({"id": "chuck", "name": "Chuck"})
# create a channel about kung-fu
channel = chat.channel("messaging", "kung-fu")
channel.create("chuck")
# add a first message to the channel
channel.send_message({"text": "AMA about kung-fu"})
Contributing
First, make sure you can run the test suite. Tests are run via py.test
STREAM_KEY=my_api_key STREAM_SECRET=my_api_secret py.test stream_chat/ -v
Install black and pycodestyle
pip install black
pip install pycodestyle
Releasing a new version
In order to release new version you need to be a maintainer on Pypi.
- Update CHANGELOG
- Make sure you have twine installed (pip install twine)
- Update the version on setup.py
- Commit and push to Github
- Create a new tag for the version (eg.
v2.9.0
) - Create a new dist with python
python setup.py sdist
- Upload the new distributable with wine
twine upload dist/stream-chat-VERSION-NAME.tar.gz
If unsure you can also test using the Pypi test servers twine upload --repository-url https://test.pypi.org/legacy/ dist/stream-chat-VERSION-NAME.tar.gz
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.