Rocket.Chat API Client
Project description
Cosmicray-Rocketchat
====================
-----------------------------------------
Implementation of Rocket.Chat restful api
-----------------------------------------
.. warning::
Cosmicray-Rocketchat is under development
Install
-------
.. code::
$ pip install cosmicray-rocketchat
Quick start
-----------
CLI
===
Cosmicray-Rocketchat ships with a simple commandline interface.
.. code::
$ rocketchat --help
Configuration: Credentials
==========================
Credentials are stored in a file called `~/.cosmicray/rocketchat/creds`. The following snippet of code creates it:
.. code:: python
>>> import rocketchat
>>> rocketchat.create_creds_file('myusername', 'mypassword')
Configuration: Domain and other settings
========================================
The following code will configure cosmicray-rocketchat client with the domain to use and save the configuration to file
.. code:: python
>>> import rocketchat
>>> rocketchat.configure(domain='http://myrocketchatdomain.com')
>>> rocketchat.store_config()
When importing cosmicray-rocketchat, the config will be automatically loaded. If you need to disable ssl verification
.. code:: python
>>> rocketchat.configure(
... monkey_patch=True,
... verify=False)
>>> rocketchat.store_config()
The `monkey_patch` flag disable SSL warnings.
Alternatively, the above configurations can be changed using the cli:
.. code::
$ rocketchat configure password --username myusername
Promp password:
$ rocketchat configure domain "http://myrocketchatdomain.com" --no-verify
Configuration: Debugging
========================
If there are any issues with making the requests, debugging can be enabled:
.. code:: python
>>> import rocketchat
>>> rocketchat.configure(config={'debug': True})
Or via command line:
.. code::
$ rocketchat configure domain --verbose
API
===
Cosmicray-Rocketchat defines endpoints from https://rocket.chat/docs/developer-guides/rest-api in `rocketchat.v1` module. For example, to get the server api version, you would make the following request:
.. code:: python
>>> import rocketchat
>>> rocketchat.v1.info().get()
The preferred way to interact with the Rocket.Chat api is to use models defined in `rocketchat.models` module.
.. code:: python
>>> rocketchat.models.User.me
<User(_id='CA9t5phAAaLcN9sdZ', type=None, status='offline', active=True, name='bot'...)>
>>> foo = rocketchat.models.User(username='foo').get()
>>> foo.send('Hello foo')
To list public, groups, direct message rooms
.. code:: python
>>> rooms = rocketchat.models.Channel.channels
>>> groups = rocketchat.models.Channel.groups
>>> direct = rocketchat.models.Channel.direct
For convenience, one could access users and rooms via mappings:
.. code:: python
>>> users = rocketchat.users()
>>> channels = rocketchat.channels()
>>> groups = rocketchat.groups()
>>> foo = users['foo']
>>> foo.send('Hello Foo!')
>>> messages = channels['mychannel'].messages.unread
>>> channels['mychannel'].send('Hey!')
To list/send messages for a channel (direct, group, or public/private channel):
.. code:: python
>>> myroom = rocketchat.channels()['myroom']
>>> print(myroom.messages.unread)
>>> messages = myroom.messages.by_daterange('2018-01-01', '2018-01-02').count(100).get()
>>> myroom.send('hello')
To update/delete messages:
.. code:: python
>>> message = myroom.messages.last[0]
>>> message.msg = 'changed message'
>>> message.update()
>>> message.pin()
>>> message.delete()
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
Built Distribution
File details
Details for the file cosmicray-rocketchat-0.0.3.tar.gz
.
File metadata
- Download URL: cosmicray-rocketchat-0.0.3.tar.gz
- Upload date:
- Size: 12.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b49af5c61105560150c0310b0dbb738dc5f49ce95b868e81b24d8fd6a9b11b67 |
|
MD5 | 7e88ccbbfd84f301c47e39f933392b40 |
|
BLAKE2b-256 | 02d629ec40b9bd366984529a0442da82fec3d1243d92cf9334ccf506fc58d2b6 |
File details
Details for the file cosmicray_rocketchat-0.0.3-py2.py3-none-any.whl
.
File metadata
- Download URL: cosmicray_rocketchat-0.0.3-py2.py3-none-any.whl
- Upload date:
- Size: 14.3 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ca96d1826bf82ae67cf5a18291986da497824e249e3d1c58a286465e50e27d61 |
|
MD5 | b3ed8ebb835e54fd07d3a7b88e6936c5 |
|
BLAKE2b-256 | 6e6cf731c3b89bfab69802f95359ac14aa93c4eb233e068377796e96b80f8b4c |