Robin.io-py is a Python SDK built to communicate with the Robinapp API. Now you can integrate Robin.io with minimal effort and quickly setup a real-time messaging platform in your Web application.
Project description
Robin.io-py
Table of contents
Table of Contents
Introduction
Robin.io-py is a Python SDK built to communicate with the Robinapp API. Now you can integrate Robin.io with minimal effort and quickly setup a real-time messaging platform in your Web application.
Prerequisites
The following packages are required to use the sdk: Requests Websocket-Client
Getting started
Step 1: Create a Robinapp account
A Robinapp account comprises everything required in a chat service including users, message, and api-keys. To create an application:
- Go to the Robinapp Dashboard and enter your email and password, and create a new account.
- Navigate to Api Config and copy your
API key
Note: All the data is limited to the scope of a single user account, thus the users in different Robinapp accounts are unable to chat with each other.
Step 2: Install the Chat SDK
## PIP
pip3 install robin.io-py
Sending your first message
Follow the step-by-step instructions below to authenticate and send your first message.
Authentication
To use the features of the Chat SDK in your client app, a robin instance must be initiated in each client app before user authentication with Robin server. These instances communicate and interact with the server based on an authenticated user account, allowing for the client app to use the Chat SDK features.
Step 1: Initialize the Chat SDK
You need to initialize a robin instance before authentication. Initialization binds the Chat SDK to Javascript’s context which allows the Chat SDK to respond to connection, state changes and also enables client apps to use the Chat SDK features.
To initialize a Robin instance, pass the API key as the first argument to in the new Robin() method, You can find your API key in the API Configuration tab in your Robin Account.
Then true or false for as the second parameter as it tells the sdk whether to load with ssl or not. As the new Robin() can only be a single instance, call it only a single time across your Javascript client app. Typically, initialization is implemented in the user login screen.
Note: It is recommended to initialize the Chat SDK at the top of your Javascript file.
const robin = new Robin('<api_key>', true);
Step 2: Connect to Robin server
You'll need a USER_TOKEN to connect to the Robin server.
A. Create User Token
Create user token
const response = await robin.createUserToken({
meta_data: {
username: 'elvis',
},
});
Connect to the Robin server using the USER_TOKEN you just created.
robin.connect(USER_TOKEN);
Step 3: Channels
All messages sent via Robin are sent through channels, you can consider channels as tunnels that relay messages to all connected clients.
Step 4: Create a conversation
Before we can send a message to a channel we first need to create a converstion.
const response = await robin.createConversation({
sender_name: string,
sender_token: string,
receiver_token: string,
receiver_name: string
})
Step 5: Send a message to a conversation
Finally, send a message to a conversation.
robin.sendMessageToConversation(msg: object, conn: WebSocket, channel:string,conversation_id: string, senderToken?: string);
Options
The following are general attributes used in Robin:
| Attribute | Type | Default | Description |
|---|---|---|---|
| Conn | WebSocket | null | Websocket opbject returned after calling robin.connect() |
| sender_name | String | '' | Name of the person sending the message |
| sender_token | String | '' | USER_TOKEN of the person sending the message |
| receiver_name | String | '' | Name of the person receiving the message |
| receiver_token | String | '' | USER_TOKEN of the person receiving the message |
| msg | Object | {} | Json serializable object containing the message |
If you have any comments or questions regarding bugs and feature requests, visit Robinapp community.
License
Distributed under the MIT License. See LICENSE for more information.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file robin.io_py-0.0.1-py3-none-any.whl.
File metadata
- Download URL: robin.io_py-0.0.1-py3-none-any.whl
- Upload date:
- Size: 5.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0984903090f5fc42668e189170f6364cf048ed5b1c83e0e473f0c0f56c03b725
|
|
| MD5 |
c9166eca6341a9a8c7e7c0af688c3910
|
|
| BLAKE2b-256 |
d1a189f18fa2097ada4355d09021da674aaa8e8113dac9a4badbd53ce2d06ab8
|