GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - jadolg/rocketchat_API: Python API wrapper for Rocket.Chat

BranchesTags
Open more actions menu

Latest commit

 

History

1,059 Commits
1,059 Commits

Folders and files

NameName
Last commit message
Last commit date
.github
.github
 
 
rocketchat_API
rocketchat_API
 
 
tests
tests
 
 
.coveragerc
.coveragerc
 
 
.deepsource.toml
.deepsource.toml
 
 
.editorconfig
.editorconfig
 
 
.gitignore
.gitignore
 
 
CONTRIBUTING.md
CONTRIBUTING.md
 
 
LICENSE.txt
LICENSE.txt
 
 
README.md
README.md
 
 
bandit.yml
bandit.yml
 
 
docker-compose.yml
docker-compose.yml
 
 
pyproject.toml
pyproject.toml
 
 
qodana.yaml
qodana.yaml
 
 

Repository files navigation

rocketchat_API

Python API wrapper for Rocket.Chat

Codacy Badge Test Test against latest Rocket.Chat version codecov PyPI

Installation

From PyPI (recommended):

pip install rocketchat_API

From source:

git clone https://github.com/jadolg/rocketchat_API.git
cd rocketchat_API
pip install .

Requirements

  • Python 3.11 or higher
  • requests

Compatibility

This library is tested against all supported versions of Python and Rocket.Chat. It is also continuously tested against the latest Rocket.Chat release to ensure compatibility with new versions.

We do not guarantee any compatibility outside of the tested versions.

See the Test GitHub Action to get the list of tested versions.

Usage

Basic Authentication

from rocketchat_API.rocketchat import RocketChat

rocket = RocketChat('user', 'pass', server_url='https://demo.rocket.chat')

# Get current user info
rocket.me()

# List all channels
for channel in rocket.channels_list():
    print(channel.get("name"))

# Post a message
rocket.chat_post_message('good news everyone!', channel='GENERAL', alias='Farnsworth')

# Get channel history
rocket.channels_history('GENERAL', max_count=5)

Token-Based Authentication

If you already have a user ID and authentication token, you can use them directly:

from rocketchat_API.rocketchat import RocketChat

rocket = RocketChat(
    user_id='WPXGmQ64S3BXdCRb6',
    auth_token='jvNyOYw2f0YKwtiFS06Fk21HBRBBuV7zI43HmkNzI_s',
    server_url='https://demo.rocket.chat'
)

rocket.me()

Method Parameters

Only required parameters are explicitly defined in the RocketChat class methods. However, you can pass any additional parameters supported by the Rocket.Chat API. For a complete list of available parameters, refer to the official Rocket.Chat API documentation.

Development

Setting Up the Development Environment

  1. Clone the repository:
git clone https://github.com/jadolg/rocketchat_API.git
cd rocketchat_API
  1. Install development dependencies:
pip install -e ".[test]"

Running Tests

Tests run against a Rocket.Chat instance in Docker. Make sure you have Docker and Docker Compose installed.

  1. Start the test server:
docker compose up -d
  1. Wait for Rocket.Chat to be ready:
until curl --silent http://localhost:3000/api/info/; do sleep 15; echo "waiting for Rocket.Chat server to start"; done
  1. Run the tests:
pytest
  1. To run tests with coverage:
pytest --cov=rocketchat_API
  1. When finished, stop the test server:
docker compose down

Code Style

This project uses black for code formatting. All code must be formatted with black before submitting a pull request.

To format your code:

black .

To check if your code is properly formatted:

black --check --diff .

The CI pipeline will automatically reject pull requests that are not properly formatted.

Contributing

See CONTRIBUTING.md for guidelines on how to contribute to this project.

License

This project is licensed under the MIT License. See LICENSE.txt for details.

About

Python API wrapper for Rocket.Chat

Topics

hacktoberfestpython-api-wrapperrocketchatrocketchat-apirocketchat-sdk

Resources

Readme
MIT license

Contributing

Contributing
Activity

Stars

294 stars

Watchers

9 watching

Forks

97 forks
Report repository

Releases

Packages

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.