mtwtkman / kokoro-io-py

Stay puri

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

What is this

This is a client for kokoro.io which is a chat service (maybe going to be) best ever.

I know that you want to join as soon as possible, please ask me or supermomonga-san about how to create account.

Requirements

  • Python3.6+
  • kokoro.io account(using your access token)

Install

$ pip install kokoroio

Configure

You must set an access token to sign in to kokoro.io by three way like follows.

  • Set environ path named KOKOROIO_ACCESS_TOKEN.
  • Set your access token to any file your choice and pass it's file name to Kokoroio constructor as env_path.
  • Pass directly Kokoroio constructor as access_token.

Usage

Once you create Kokoroio instance, you can request from two way syncronous or asyncronous.

from kokoroio import Kokoroio
client = Kokoroio(access_token='xxxxxxx')
client.channels.get()  # You received a response!

If an endpoint requires path parameters, you need to pass path parameters as arguments for request method.

# Assuming you want to post a message to channel whose channel_id is 'hogehoge'.
# In this case, url is `channels/hogehoge`.
o = client.channels.send_message(channle_id='hogehoge')
# So you can request with a payload.
o(message='hi')

And you can find every client's methods.

clients.channels.method_names
clients.channels.methods

Syncronous request

You will get requests's HttpResponse object.

If you want to know about response object, please refer requests doc.

Example

client.channels.get()

Asyncronous request

Different from syncronous version, request method has a prefix like channels.aget() and you don't need to create new event loop at every request.

You will get aiohttp's ClientResponse object because using aiohttp internally.

If you want to know about aiohttp, please refer aiohttp doc.

Example

client.channels.aget()

Test

Sorry now I have no testšŸ˜­

About kokoro.io's API detail

You can find all of current API detail from the official apidoc.

About

Stay puri


Languages

Language:Python 96.0%Language:Shell 4.0%