Skip to main content

Python API wrapper for Rocket.Chat

Project description

rocketchat_API

Python API wrapper for Rocket.Chat

Codacy Badge Test and publish codecov PyPI Say Thanks!

Installation

  • From pypi: pip3 install rocketchat_API
  • From GitHub: Clone our repository and python3 setup.py install

Requirements

Usage

from pprint import pprint
from rocketchat_API.rocketchat import RocketChat

proxy_dict = {
    "http"  : "http://127.0.0.1:3128",
    "https" : "https://127.0.0.1:3128",
}

rocket = RocketChat('user', 'pass', server_url='https://demo.rocket.chat', proxies=proxy_dict)
pprint(rocket.me().json())
pprint(rocket.channels_list().json())
pprint(rocket.chat_post_message('good news everyone!', channel='GENERAL', alias='Farnsworth').json())
pprint(rocket.channels_history('GENERAL', count=5).json())

note: every method returns a requests Response object.

Connection pooling

If you are going to make a couple of request, you can user connection pooling provided by requests. This will save significant time by avoiding re-negotiation of TLS (SSL) with the chat server on each call.

from requests import sessions
from pprint import pprint
from rocketchat_API.rocketchat import RocketChat

with sessions.Session() as session:
    rocket = RocketChat('user', 'pass', server_url='https://demo.rocket.chat', session=session)
    pprint(rocket.me().json())
    pprint(rocket.channels_list().json())
    pprint(rocket.chat_post_message('good news everyone!', channel='GENERAL', alias='Farnsworth').json())
    pprint(rocket.channels_history('GENERAL', count=5).json())

Method parameters

Only required parameters are explicit on the RocketChat class but you can still use all other parameters. For a detailed parameters list check the Rocket chat API

API coverage

Most of the API methods are already implemented. If you are interested in a specific call just open an issue or open a pull request.

Tests

We are actively testing :)

Tests run on a Rocket.Chat Docker container so install Docker and docker-compose. To start test server do docker-compose -f docker-compose-test-server.yml up and to take test server down docker-compose -f docker-compose-test-server.yml down

Contributing

You can contribute by doing Pull Requests. (It may take a while to merge your code but if it's good it will be merged). Please, try to implement tests for all your code and use a PEP8 compliant code style.

Reporting bugs and asking for features is also contributing ;) Feel free to help us grow by registering issues.

We hang out here if you want to talk.

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.

Source Distribution

rocketchat_API-1.14.0.tar.gz (11.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

rocketchat_API-1.14.0-py3-none-any.whl (17.1 kB view details)

Uploaded Python 3

File details

Details for the file rocketchat_API-1.14.0.tar.gz.

File metadata

  • Download URL: rocketchat_API-1.14.0.tar.gz
  • Upload date:
  • Size: 11.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.8.6

File hashes

Hashes for rocketchat_API-1.14.0.tar.gz
Algorithm Hash digest
SHA256 bf425edafee523226a3dcf72c4deee155b2988ce90507d54903678ecd838aae8
MD5 8a8bdaf2468d7f61a36bb046d11af193
BLAKE2b-256 f86b4b6fdc5b532dc7c6e3df6fbbf11e278eeffcd3afe71d2e982891ba67d93e

See more details on using hashes here.

File details

Details for the file rocketchat_API-1.14.0-py3-none-any.whl.

File metadata

  • Download URL: rocketchat_API-1.14.0-py3-none-any.whl
  • Upload date:
  • Size: 17.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.8.6

File hashes

Hashes for rocketchat_API-1.14.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a3c505480aa24052d9406924a823e2a1a26bed3470bcb731c70167f9c8dfddbc
MD5 c9585480ab69d7fae2caaf5a69cd88a2
BLAKE2b-256 b5fe30a3114cfee0aac95c09f739380697f4c99d69aa02d55c64b08d34a57c47

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page