emo_platform package
emo_platform.api module
- class emo_platform.api.Client(endpoint_url: Optional[str] = None, tokens: Optional[emo_platform.models.Tokens] = None, token_file_path: Optional[str] = None, use_cached_credentials: bool = False)
Bases:
object
各種apiを呼び出す同期版のclient(Personal版)
- Parameters
endpoint_url (str, default https://platform-api.bocco.me) – BOCCO emo platform apiにアクセスするためのendpoint
tokens (Tokens, default None) –
refresh token及びaccess tokenを指定します。
指定しない場合は、環境変数に設定されているあるいはこのpkg内のファイル(emo-platform-api.json)に保存されているトークンが使用されます。
token_file_path (Optional[str], default None) –
refresh token及びaccess tokenを保存するファイルのパス。 指定した場合には指定したパスに、指定しない場合はこのpkg内のディレクトリに、以下の2種類のファイルが生成されます。
- emo-platform-api.json
最新のトークンを保存するファイル。
- emo-platform-api_previous.json
前回、引数として指定されたトークンと環境変数として設定されていたトークンが記録されたファイル。
アクセストークンあるいはリフレッシュトークンの指定が変更された場合(BOCCOアカウントの切り替えを行いたい場合など)に、前回から更新があったかを確認するのに使用されます。
更新があった場合は、emo-platform-api.jsonに保存されているトークンが上書きされます。
use_cached_credentials (bool, default False) –
Trueにした場合、上述した2つのファイルにrefresh token及びaccess tokenを保存しなくなります。
この時、引数tokensにトークン情報を与えるようにしてください。(与えない場合は、例外が出されます。)
この引数をTrueにするのは、サーバーサイドのwebアプリにこのライブラリを使用する際などを想定しています。
- Raises
TokenError – refresh tokenあるいはaccess tokenが環境変数として設定されていない場合。 引数tokensにトークンを指定している時は出ません。
Note
- 各メソッドの実行時にaccess tokenの期限が切れていた場合
emo-platform-api.jsonに保存されているrefresh tokenを使用して自動的にaccess tokenが更新されます。 その際にAPI呼び出しが1回行われます。
- Business版をお使いの方へ
このクラスは使用せずに、継承先である
BizBasicClient
あるいはBizAdvancedClient
をお使いください。
- get_access_token(refresh_token: str) emo_platform.response.EmoTokens
トークンの取得
refresh_tokenを用いて、refresh tokenとaccess tokenを取得します。
- Parameters
refresh_token (str) – refresh tokenとaccess tokenを取得するのに用いるrefresh token。
- Returns
emo_tokens
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#post-/oauth/token/refresh
- API呼び出し回数
1回
- get_account_info() emo_platform.response.EmoAccountInfo
アカウント情報の取得
- Returns
account_info
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- delete_account_info() emo_platform.response.EmoAccountInfo
アカウントの削除
紐づくWebhook等の設定も全て削除されます。
- Returns
account_info
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#delete-/v1/me
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- get_rooms_list() emo_platform.response.EmoRoomInfo
ユーザが参加している部屋の一覧の取得
- Returns
rooms_list
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#get-/v1/rooms
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- get_rooms_id() List[str]
ユーザーが参加している全ての部屋のidの取得
- Returns
rooms_id – 取得した部屋のidのリスト
- Return type
List[str]
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合 あるいは、ユーザーが参加している部屋が1つもなかった場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#get-/v1/rooms
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- create_room_client(room_id: str)
部屋固有の各種apiを呼び出すclientの作成
部屋のidは、
get_rooms_id()
を使用することで、取得できます。- Parameters
room_id (str) – 部屋のid
- Returns
room_client – 部屋のclient
- Return type
Note
- API呼び出し回数
0回
- get_stamps_list() emo_platform.response.EmoStampsInfo
利用可能なスタンプ一覧の取得
- Returns
stamps_info
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#get-/v1/stamps
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- get_motions_list() emo_platform.response.EmoMotionsInfo
利用可能なプリセットモーション一覧の取得
- Returns
motions_info
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#get-/v1/motions
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- get_webhook_setting() emo_platform.response.EmoWebhookInfo
現在設定されているWebhookの情報の取得
- Returns
webhook_info
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。 (BOCCO emoにWebhookの設定がされていない場合を含む)
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#get-/v1/webhook
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- change_webhook_setting(webhook: emo_platform.models.WebHook) emo_platform.response.EmoWebhookInfo
Webhookの設定の変更
- Parameters
webhook (WebHook) – 適用するWebhookの設定。
- Returns
webhook_info – 変更後のWebhookの設定
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。 (BOCCO emoにWebhookの設定がされていない場合を含む)
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#put-/v1/webhook
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- register_webhook_event(events: List[str]) emo_platform.response.EmoWebhookInfo
Webhook通知するイベントの指定
eventの種類は、 こちらのページ から確認できます。
- Parameters
events (List[str]) – 指定するWebhook event。
- Returns
webhook_info – 設定したWebhookの情報
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。 (BOCCO emoにWebhookの設定がされていない場合を含む)
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#put-/v1/webhook/events
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- create_webhook_setting(webhook: emo_platform.models.WebHook) emo_platform.response.EmoWebhookInfo
Webhookの設定の作成
- Parameters
webhook (WebHook) – 作成するWebhookの設定。
- Returns
webhook_info – 作成したWebhookの設定。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#post-/v1/webhook
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- delete_webhook_setting() emo_platform.response.EmoWebhookInfo
現在設定されているWebhookの情報の削除
- Returns
webhook_info – 削除したWebhookの情報。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合 (BOCCO emoにWebhookの設定がされていない場合を含む)
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#delete-/v1/webhook
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- event(event: str, room_id_list: List[str] = ['']) Callable
Webhookの指定のeventが通知されたときに呼び出す関数の登録
Example
呼び出したい関数にdecorateして登録します:
import emo_platform client = emo_platform.Client() @client.event("message.received") def test_event_callback(body): print(body)
- Parameters
event (str) –
指定するWebhook event。
eventの種類は、こちらのページ から確認できます。
room_id_list (List[str], default [""]) –
指定したWebhook eventの通知を監視する部屋をidで指定できます。
引数なしだと、全ての部屋を監視します。
Note
- API呼び出し回数
0回
- start_webhook_event() str
BOCCO emoのWebhookのイベント通知の開始
event()
で指定したイベントの通知が開始されます。使用する際は、以下の手順を踏んでください。
ngrokなどを用いて、ローカルサーバーにForwardingするURLを発行
create_webhook_setting()
で、1で発行したURLをBOCCO emoに設定event()
で通知したいeventとそれに対応するcallback関数を設定この関数を実行
ローカルサーバーを起動し、
get_cb_func()
を利用して、webhook通知があった際に対応するcallback関数を実行
- Returns
secret_key – BOCCO emoのWebhookリクエストのHTTP Headerに含まれるX-Platform-Api-Secretの値と一致する文字列です。
第三者からの、予期せぬリクエストを防ぐため、この文字列を利用した認証を実装してください。
- Return type
str
- Raises
EmoPlatformError – 関数内部で呼び出している
register_webhook_event()
が例外を出した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#put-/v1/webhook/events
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- get_cb_func(body: dict) Tuple[Callable, emo_platform.response.EmoWebhookBody]
受信したwebhookイベントに対応するcallback関数及びパースされたボディの取得
使用する際は、以下の手順を踏んでください。
ngrokなどを用いて、ローカルサーバーにForwardingするURLを発行
create_webhook_setting()
で、1で発行したURLをBOCCO emoに設定event()
で通知したいeventとそれに対応するcallback関数を設定start_webhook_event()
でwebhook通知を開始ローカルサーバーを起動し、この関数を利用して、webhook通知があった際に対応するcallback関数を実行
Example
python標準ライブラリを使用してローカルサーバーを立てた例:
import emo_platform, json, http.server client = emo_platform.Client() client.create_webhook_setting(emo_platform.WebHook("WEBHOOK URL")) @client.event("message.received") def test_event_callback(body): print(body) secret_key = client.start_webhook_event() class Handler(http.server.BaseHTTPRequestHandler): def _send_status(self, status): self.send_response(status) self.send_header('Content-type', 'text/plain; charset=utf-8') self.end_headers() def do_POST(self): # check secret_key if not secret_key == self.headers["X-Platform-Api-Secret"]: self._send_status(401) content_len = int(self.headers['content-length']) request_body = json.loads(self.rfile.read(content_len).decode('utf-8')) try: cb_func, emo_webhook_body = client.get_cb_func(request_body) except emo_platform.EmoPlatformError: self._send_status(501) return cb_func(emo_webhook_body) self._send_status(200) with http.server.HTTPServer(('', 8000), Handler) as httpd: httpd.serve_forever()
- Parameters
body (dict) – 受信したwebhookリクエストのボディのJSONペイロード
- Returns
cb_func, emo_webhook_body
- Return type
Tuple[Callable, EmoWebhookBody]
- Raises
EmoPlatformError – 受信したwebhookイベントに対応するcallback関数が登録されていない場合。
Note
- API呼び出し回数
0回
- class emo_platform.api.BizClient(endpoint_url: Optional[str] = None, tokens: Optional[emo_platform.models.Tokens] = None, token_file_path: Optional[str] = None, use_cached_credentials: bool = False)
Bases:
emo_platform.api.Client
各種apiを呼び出す同期版のclient(Business版)
Note
- 使用上の注意
このクラスは使用せずに、継承先である
BizBasicClient
あるいはBizAdvancedClient
をお使いください。
- get_account_info() emo_platform.response.EmoBizAccountInfo
アカウント情報の取得
- Returns
account_info
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- Personal版とBusiness版での違い
返り値の型が異なるので注意してください。
- 呼び出しているAPI
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- delete_account_info() NoReturn
アカウント情報の取得
Business版では使用できないメソッドです。
- Raises
UnavailableError – この関数を呼び出した場合。
Note
- Personal版とBusiness版での違い
Business版では使用できません。
- change_account_info(acount: emo_platform.models.AccountInfo) emo_platform.response.EmoBizAccountInfo
アカウント情報の編集
- Parameters
account (AccountInfo) – 新たなアカウント情報。
- Returns
account_info – 編集後のアカウント情報。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- get_rooms_list(api_key: str) emo_platform.response.EmoRoomInfo
ユーザが参加している部屋の一覧の取得
- Parameters
api_key (str) –
法人向けAPIキー
法人アカウントでログインした時の ダッシュボード から確認することができます。
- Returns
rooms_list
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#get-/v1/rooms
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- get_rooms_id(api_key: str) List[str]
ユーザーが参加している全ての部屋のidの取得
- Parameters
api_key (str) –
法人向けAPIキー
法人アカウントでログインした時の ダッシュボード から確認することができます。
- Returns
rooms_id – 取得した部屋のidのリスト
- Return type
List[str]
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合 あるいは、ユーザーが参加している部屋が1つもなかった場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#get-/v1/rooms
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- get_stamps_list(api_key: str) emo_platform.response.EmoStampsInfo
利用可能なスタンプ一覧の取得
- Parameters
api_key (str) –
法人向けAPIキー
法人アカウントでログインした時の ダッシュボード から確認することができます。
- Returns
stamps_info
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#get-/v1/stamps
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- get_broadcast_msgs_list() emo_platform.response.EmoBroadcastInfoList
配信メッセージの一覧の取得
- Returns
broadcast_info_list – 配信メッセージの一覧。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#get-/v1/broadcast_messages
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- get_broadcast_msg_details(message_id: int) emo_platform.response.EmoBroadcastInfo
配信メッセージの詳細の取得
- Parameters
message_id (int) – 詳細を取得したい配信メッセージのid
- Returns
broadcast_info_list – 配信メッセージの詳細。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#get-/v1/broadcast_messages/-broadcast_message_id-
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- create_broadcast_msg(api_key: str, message: emo_platform.models.BroadcastMsg) emo_platform.response.EmoBroadcastMessage
配信メッセージの新規作成
- Parameters
api_key (str) –
法人向けAPIキー
法人アカウントでログインした時の ダッシュボード から確認することができます。
message (BroadcastMsg) – 新規に作成する配信メッセージ。
- Returns
broadcast_msg – 新規に作成した配信メッセージの内容。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#post-/v1/broadcast_messages
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- class emo_platform.api.BizBasicClient(endpoint_url: Optional[str] = None, tokens: Optional[emo_platform.models.Tokens] = None, token_file_path: Optional[str] = None, use_cached_credentials: bool = False)
Bases:
emo_platform.api.BizClient
各種apiを呼び出す同期版のclient(Business Basic版)
- Parameters
endpoint_url (str, default https://platform-api.bocco.me) – BOCCO emo platform apiにアクセスするためのendpoint
tokens (Tokens, default None) –
refresh token及びaccess tokenを指定します。
指定しない場合は、環境変数に設定されているあるいはこのpkg内のファイル(emo-platform-api.json)に保存されているトークンが使用されます。
token_file_path (Optional[str], default None) –
refresh token及びaccess tokenを保存するファイルのパス。
指定しない場合は、このpkg内のディレクトリに保存されます。 指定したパスには、以下の2種類のファイルが生成されます。
- emo-platform-api.json
最新のトークンを保存するファイル。
- emo-platform-api_previous.json
前回、引数として指定されたトークンと環境変数として設定されていたトークンが記録されたファイル。
アクセストークンあるいはリフレッシュトークンの指定が変更された場合(BOCCOアカウントの切り替えを行いたい場合など)に、前回から更新があったかを確認するのに使用されます。
更新があった場合は、emo-platform-api.jsonに保存されているトークンが上書きされます。
- Raises
TokenError – refresh tokenあるいはaccess tokenが環境変数として設定されていない場合。 引数tokensにトークンを指定している時は出ません。
Note
- 各メソッドの実行時にaccess tokenの期限が切れていた場合
emo-platform-api.jsonに保存されているrefresh tokenを使用して自動的にaccess tokenが更新されます。 その際にAPI呼び出しが1回行われます。
- create_room_client(api_key: str, room_id: str)
部屋固有の各種apiを呼び出すclientの作成
部屋のidは、
get_rooms_id()
を使用することで、取得できます。- Parameters
api_key (str) –
法人向けAPIキー
法人アカウントでログインした時の ダッシュボード から確認することができます。
room_id (str) – 部屋のid
- Returns
room_client – 部屋のclient
- Return type
Note
- API呼び出し回数
0回
- get_motions_list() NoReturn
利用可能なプリセットモーション一覧の取得
Business Basic版では使用できないメソッドです。
- Raises
UnavailableError – この関数を呼び出した場合。
- get_webhook_setting(api_key: str) NoReturn
現在設定されているWebhookの情報の取得
Business Basic版では使用できないメソッドです。
- Raises
UnavailableError – この関数を呼び出した場合。
- change_webhook_setting(api_key: str, webhook: emo_platform.models.WebHook) NoReturn
Webhookの設定の変更
Business Basic版では使用できないメソッドです。
- Raises
UnavailableError – この関数を呼び出した場合。
- register_webhook_event(api_key: str, events: List[str]) NoReturn
Webhook通知するイベントの指定
Business Basic版では使用できないメソッドです。
- Raises
UnavailableError – この関数を呼び出した場合。
- create_webhook_setting(api_key: str, webhook: emo_platform.models.WebHook) NoReturn
Webhookの設定の作成
Business Basic版では使用できないメソッドです。
- Raises
UnavailableError – この関数を呼び出した場合。
- delete_webhook_setting(api_key: str) NoReturn
現在設定されているWebhookの情報の削除
Business Basic版では使用できないメソッドです。
- Raises
UnavailableError – この関数を呼び出した場合。
- event(event: str, room_id_list: List[str] = ['']) NoReturn
Webhookの指定のeventが通知されたときに呼び出す関数の登録
Business Basic版では使用できないメソッドです。
- Raises
UnavailableError – この関数を呼び出した場合。
- start_webhook_event() NoReturn
BOCCO emoのWebhookのイベント通知の開始
Business Basic版では使用できないメソッドです。
- Raises
UnavailableError – この関数を呼び出した場合。
- get_cb_func(body: dict) NoReturn
受信したwebhookイベントに対応するcallback関数及びパースされたボディの取得
Business Basic版では使用できないメソッドです。
- Raises
UnavailableError – この関数を呼び出した場合。
- class emo_platform.api.BizAdvancedClient(endpoint_url: Optional[str] = None, tokens: Optional[emo_platform.models.Tokens] = None, token_file_path: Optional[str] = None, use_cached_credentials: bool = False)
Bases:
emo_platform.api.BizClient
各種apiを呼び出す同期版のclient(Business Advanced版)
- Parameters
endpoint_url (str, default https://platform-api.bocco.me) – BOCCO emo platform apiにアクセスするためのendpoint
tokens (Tokens, default None) –
refresh token及びaccess tokenを指定します。
指定しない場合は、環境変数に設定されているあるいはこのpkg内のファイル(emo-platform-api.json)に保存されているトークンが使用されます。
token_file_path (Optional[str], default None) –
refresh token及びaccess tokenを保存するファイルのパス。
指定しない場合は、このpkg内のディレクトリに保存されます。 指定したパスには、以下の2種類のファイルが生成されます。
- emo-platform-api.json
最新のトークンを保存するファイル。
- emo-platform-api_previous.json
前回、引数として指定されたトークンと環境変数として設定されていたトークンが記録されたファイル。
アクセストークンあるいはリフレッシュトークンの指定が変更された場合(BOCCOアカウントの切り替えを行いたい場合など)に、前回から更新があったかを確認するのに使用されます。
更新があった場合は、emo-platform-api.jsonに保存されているトークンが上書きされます。
- Raises
TokenError – refresh tokenあるいはaccess tokenが環境変数として設定されていない場合。 引数tokensにトークンを指定している時は出ません。
Note
- 各メソッドの実行時にaccess tokenの期限が切れていた場合
emo-platform-api.jsonに保存されているrefresh tokenを使用して自動的にaccess tokenが更新されます。 その際にAPI呼び出しが1回行われます。
- create_room_client(api_key: str, room_id: str)
部屋固有の各種apiを呼び出すclientの作成
部屋のidは、
get_rooms_id()
を使用することで、取得できます。- Parameters
api_key (str) –
法人向けAPIキー
法人アカウントでログインした時の ダッシュボード から確認することができます。
room_id (str) – 部屋のid
- Returns
room_client – 部屋のclient
- Return type
Note
- API呼び出し回数
0回
- get_webhook_setting(api_key: str) emo_platform.response.EmoWebhookInfo
現在設定されているWebhookの情報の取得
- Parameters
api_key (str) –
法人向けAPIキー
法人アカウントでログインした時の ダッシュボード から確認することができます。
- Returns
webhook_info
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。 (BOCCO emoにWebhookの設定がされていない場合を含む)
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#get-/v1/webhook
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- change_webhook_setting(api_key: str, webhook: emo_platform.models.WebHook) emo_platform.response.EmoWebhookInfo
Webhookの設定の変更
- Parameters
- Returns
webhook_info – 変更後のWebhookの設定
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。 (BOCCO emoにWebhookの設定がされていない場合を含む)
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#put-/v1/webhook
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- register_webhook_event(api_key: str, events: List[str]) emo_platform.response.EmoWebhookInfo
Webhook通知するイベントの指定
eventの種類は、 こちらのページ から確認できます。
- Parameters
api_key (str) –
法人向けAPIキー
法人アカウントでログインした時の ダッシュボード から確認することができます。
events (List[str]) – 指定するWebhook event。
- Returns
webhook_info – 設定したWebhookの情報
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。 (BOCCO emoにWebhookの設定がされていない場合を含む)
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#put-/v1/webhook/events
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- create_webhook_setting(api_key: str, webhook: emo_platform.models.WebHook) emo_platform.response.EmoWebhookInfo
Webhookの設定の作成
- Parameters
- Returns
webhook_info – 作成したWebhookの設定。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#post-/v1/webhook
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- delete_webhook_setting(api_key: str) emo_platform.response.EmoWebhookInfo
現在設定されているWebhookの情報の削除
- Parameters
api_key (str) –
法人向けAPIキー
法人アカウントでログインした時の ダッシュボード から確認することができます。
- Returns
webhook_info – 削除したWebhookの情報。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合 (BOCCO emoにWebhookの設定がされていない場合を含む)
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#delete-/v1/webhook
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- start_webhook_event(api_key: str) str
BOCCO emoのWebhookのイベント通知の開始
event()
で指定したイベントの通知が開始されます。使用する際は、以下の手順を踏んでください。
ngrokなどを用いて、ローカルサーバーにForwardingするURLを発行
create_webhook_setting()
で、1で発行したURLをBOCCO emoに設定event()
で通知したいeventとそれに対応するcallback関数を設定この関数を実行
ローカルサーバーを起動し、
get_cb_func()
を利用して、webhook通知があった際に対応するcallback関数を実行
- Parameters
api_key (str) –
法人向けAPIキー
法人アカウントでログインした時の ダッシュボード から確認することができます。
- Returns
secret_key – BOCCO emoのWebhookリクエストのHTTP Headerに含まれるX-Platform-Api-Secretの値と一致する文字列です。
第三者からの、予期せぬリクエストを防ぐため、この文字列を利用した認証を実装してください。
- Return type
str
- Raises
EmoPlatformError – 関数内部で呼び出している
register_webhook_event()
が例外を出した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#put-/v1/webhook/events
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- class emo_platform.api.Room(base_client: emo_platform.api.Client, room_id: str)
Bases:
object
部屋固有の各種apiを呼び出す同期版のclient
- Parameters
base_client (Client) – このclientを作成しているclient。
room_id (str) – 部屋のuuid。
- get_msgs(ts: Optional[int] = None) emo_platform.response.EmoMsgsInfo
部屋に投稿されたメッセージの取得
- Parameters
ts (int or None) –
指定した場合は、その時刻以前のメッセージを取得できます。
指定方法:2021/07/01 12:30:45以前なら、20210701123045000
- Returns
response – 投稿されたメッセージの情報。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#get-/v1/rooms/-room_uuid-/messages
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- get_sensors_list() emo_platform.response.EmoSensorsInfo
BOCCO emoとペアリングされているセンサの一覧の取得
センサの種類は こちらのページ で確認できます。
- Returns
sensors_info – 取得した設定値。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#get-/v1/rooms/-room_uuid-/sensors
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- get_sensor_values(sensor_id: str) emo_platform.response.EmoRoomSensorInfo
部屋センサの送信値を取得
- Parameters
sensor_id (str) –
部屋センサのuuid。
各部屋センサのuuidは、
get_sensors_list()
で確認できます。- Returns
response – 部屋センサの送信値の情報。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。 (部屋センサ以外のBOCCOセンサ / 紐づいていない部屋センサ、のidを指定した場合も含みます)
Note
- 呼び出しているAPI
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- send_audio_msg(audio_data_path: str) emo_platform.response.EmoMessageInfo
音声ファイルの部屋への投稿
Attention
- 送信できるファイルの制限について
フォーマット: MP3, M4A
ファイルサイズ: 1MB
- Parameters
audio_data_path (str) – 投稿する音声ファイルの絶対パス。
- Returns
response – 音声ファイル投稿時の情報。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#post-/v1/rooms/-room_uuid-/messages/audio
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- send_image(image_data_path: str) emo_platform.response.EmoMessageInfo
画像ファイルの部屋への投稿
Attention
- 送信できるファイルの制限について
フォーマット: JPG, PNG
ファイルサイズ: 1MB
- Parameters
image_data_path (str) – 投稿する画像ファイルの絶対パス。
- Returns
response – 画像投稿時の情報。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#post-/v1/rooms/-room_uuid-/messages/image
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- send_msg(msg: str) emo_platform.response.EmoMessageInfo
テキストメッセージの部屋への投稿
- Parameters
msg (str) – 投稿するメッセージ。
- Returns
response – メッセージ投稿時の情報。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#post-/v1/rooms/-room_uuid-/messages/text
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- send_stamp(stamp_id: str, msg: Optional[str] = None) emo_platform.response.EmoMessageInfo
スタンプの部屋への投稿
- Parameters
stamp_id (str) –
スタンプのuuid。
各スタンプのuuidは、
Client.get_stamps_list()
で確認できます。msg (Optional[str], default None) –
スタンプ投稿時に、BOCCO emoが行うモーション再生と共に発話されるメッセージ。
引数なしの場合は、発話なしでモーションが再生されます。
- Returns
response – スタンプモーション送信時の情報。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#post-/v1/rooms/-room_uuid-/messages/stamp
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- send_original_motion(motion_data: Union[str, dict]) emo_platform.response.EmoMessageInfo
独自定義した、オリジナルのモーションをBOCCO emoに送信
詳しくは、 こちらのページ を参照してください。
- Parameters
motion_data (str or dict) –
モーションファイルを置いている絶対パス。
あるいは、モーションを記述した辞書オブジェクト。
- Returns
response – モーション送信時の情報。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。 (モーションのデータ形式が誤っている場合も含みます)
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#post-/v1/rooms/-room_uuid-/motions
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- change_led_color(color: emo_platform.models.Color) emo_platform.response.EmoMessageInfo
ほっぺたの色の変更
3秒間、ほっぺたの色を指定した色に変更します。
- Parameters
color (Color) – 送信するほっぺたの色。
- Returns
response – モーション送信時の情報。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#post-/v1/rooms/-room_uuid-/motions/led_color
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- move_to(head: emo_platform.models.Head) emo_platform.response.EmoMessageInfo
首の角度の変更
首の角度を変更するモーションをBOCCO emoに送信します。
- Parameters
head (Head) – 送信する首の角度。
- Returns
response – モーション送信時の情報。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#post-/v1/rooms/-room_uuid-/motions/move_to
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- send_motion(motion_id: str) emo_platform.response.EmoMessageInfo
プリセットモーションをBOCCO emoに送信
- Parameters
motion_id (str) –
プリセットモーションのuuid
各プリセットモーションのuuidは、
Client.get_motions_list()
で確認できます。- Returns
response – モーション送信時の情報。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#post-/v1/rooms/-room_uuid-/motions/preset
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- get_emo_settings() emo_platform.response.EmoSettingsInfo
現在のBOCCO emoの設定値を取得
- Returns
settings – 取得した設定値。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#get-/v1/rooms/-room_uuid-/emo/settings
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- class emo_platform.api.BizRoom(base_client: emo_platform.api.Client, room_id: str, api_key: str)
Bases:
emo_platform.api.Room
部屋固有の各種apiを呼び出す同期版のclient(Business版)
- Parameters
- get_msgs(ts: Optional[int] = None) emo_platform.response.EmoMsgsInfo
部屋に投稿されたメッセージの取得
- Parameters
ts (int or None) –
指定した場合は、その時刻以前のメッセージを取得できます。
指定方法:2021/07/01 12:30:45以前なら、20210701123045000
- Returns
response – 投稿されたメッセージの情報。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#get-/v1/rooms/-room_uuid-/messages
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- get_channel_msgs(ts: Optional[int] = None) emo_platform.response.EmoMsgsInfo
チャンネルから部屋に投稿されたメッセージの取得
- Parameters
ts (int or None) –
指定した場合は、その時刻以前のメッセージを取得できます。
指定方法:2021/07/01 12:30:45以前なら、20210701123045000
- Returns
response – 投稿されたメッセージの情報。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- get_sensors_list() emo_platform.response.EmoSensorsInfo
BOCCO emoとペアリングされているセンサの一覧の取得
センサの種類は こちらのページ で確認できます。
- Returns
sensors_info – 取得した設定値。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#get-/v1/rooms/-room_uuid-/sensors
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- send_audio_msg(audio_data_path: str) emo_platform.response.EmoMessageInfo
音声ファイルの部屋への投稿
Attention
- 送信できるファイルの制限について
フォーマット: MP3, M4A
ファイルサイズ: 1MB
- Parameters
audio_data_path (str) – 投稿する音声ファイルの絶対パス。
- Returns
response – 音声ファイル投稿時の情報。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#post-/v1/rooms/-room_uuid-/messages/audio
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- send_image(image_data_path: str) emo_platform.response.EmoMessageInfo
画像ファイルの部屋への投稿
Attention
- 送信できるファイルの制限について
フォーマット: JPG, PNG
ファイルサイズ: 1MB
- Parameters
image_data_path (str) – 投稿する画像ファイルの絶対パス。
- Returns
response – 画像投稿時の情報。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#post-/v1/rooms/-room_uuid-/messages/image
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- send_msg(msg: str) emo_platform.response.EmoMessageInfo
テキストメッセージの部屋への投稿
- Parameters
msg (str) – 投稿するメッセージ。
- Returns
response – メッセージ投稿時の情報。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#post-/v1/rooms/-room_uuid-/messages/text
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- send_stamp(stamp_id: str, msg: Optional[str] = None) emo_platform.response.EmoMessageInfo
スタンプの部屋への投稿
- Parameters
stamp_id (str) –
スタンプのuuid。
各スタンプのuuidは、
Client.get_stamps_list()
で確認できます。msg (Optional[str], default None) –
スタンプ投稿時に、BOCCO emoが行うモーション再生と共に発話されるメッセージ。
引数なしの場合は、発話なしでモーションが再生されます。
- Returns
response – スタンプモーション送信時の情報。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#post-/v1/rooms/-room_uuid-/messages/stamp
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- get_emo_settings() emo_platform.response.EmoSettingsInfo
現在のBOCCO emoの設定値を取得
- Returns
settings – 取得した設定値。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#get-/v1/rooms/-room_uuid-/emo/settings
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- class emo_platform.api.BizBasicRoom(base_client: emo_platform.api.Client, room_id: str, api_key: str)
Bases:
emo_platform.api.BizRoom
部屋固有の各種apiを呼び出す同期版のclient(Business Basic版)
- Parameters
base_client (BizBasicClient) – このclientを作成しているclient。
room_id (str) – 部屋のuuid。
api_key (str) –
法人向けAPIキー
法人アカウントでログインした時の ダッシュボード から確認することができます。
- get_sensor_values(sensor_id: str) NoReturn
部屋センサの送信値を取得
Business Basic版では使用できないメソッドです。
- Raises
UnavailableError – この関数を呼び出した場合。
- send_original_motion(motion_data: Union[str, dict]) NoReturn
独自定義した、オリジナルのモーションをBOCCO emoに送信
Business Basic版では使用できないメソッドです。
- Raises
UnavailableError – この関数を呼び出した場合。
- change_led_color(color: emo_platform.models.Color) NoReturn
ほっぺたの色の変更
Business Basic版では使用できないメソッドです。
- Raises
UnavailableError – この関数を呼び出した場合。
- move_to(head: emo_platform.models.Head) NoReturn
首の角度の変更
Business Basic版では使用できないメソッドです。
- Raises
UnavailableError – この関数を呼び出した場合。
- send_motion(motion_id: str) NoReturn
プリセットモーションをBOCCO emoに送信
Business Basic版では使用できないメソッドです。
- Raises
UnavailableError – この関数を呼び出した場合。
- class emo_platform.api.BizAdvancedRoom(base_client: emo_platform.api.Client, room_id: str, api_key: str)
Bases:
emo_platform.api.BizRoom
部屋固有の各種apiを呼び出す同期版のclient(Business Advanced版)
- Parameters
base_client (BizAdvancedClient) – このclientを作成しているclient。
room_id (str) – 部屋のuuid。
api_key (str) –
法人向けAPIキー
法人アカウントでログインした時の ダッシュボード から確認することができます。
- get_sensor_values(sensor_id: str) emo_platform.response.EmoRoomSensorInfo
部屋センサの送信値を取得
- Parameters
sensor_id (str) –
部屋センサのuuid。
各部屋センサのuuidは、
get_sensors_list()
で確認できます。- Returns
response – 部屋センサの送信値の情報。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。 (部屋センサ以外のBOCCOセンサ / 紐づいていない部屋センサ、のidを指定した場合も含みます)
Note
- 呼び出しているAPI
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- send_original_motion(motion_data: Union[str, dict]) emo_platform.response.EmoMessageInfo
独自定義した、オリジナルのモーションをBOCCO emoに送信
詳しくは、 こちらのページ を参照してください。
- Parameters
motion_data (str or dict) –
モーションファイルを置いている絶対パス。
あるいは、モーションを記述した辞書オブジェクト。
- Returns
response – モーション送信時の情報。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。 (モーションのデータ形式が誤っている場合も含みます)
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#post-/v1/rooms/-room_uuid-/motions
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- change_led_color(color: emo_platform.models.Color) emo_platform.response.EmoMessageInfo
ほっぺたの色の変更
3秒間、ほっぺたの色を指定した色に変更します。
- Parameters
color (Color) – 送信するほっぺたの色。
- Returns
response – モーション送信時の情報。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#post-/v1/rooms/-room_uuid-/motions/led_color
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- move_to(head: emo_platform.models.Head) emo_platform.response.EmoMessageInfo
首の角度の変更
首の角度を変更するモーションをBOCCO emoに送信します。
- Parameters
head (Head) – 送信する首の角度。
- Returns
response – モーション送信時の情報。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#post-/v1/rooms/-room_uuid-/motions/move_to
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- send_motion(motion_id: str) emo_platform.response.EmoMessageInfo
プリセットモーションをBOCCO emoに送信
- Parameters
motion_id (str) –
プリセットモーションのuuid
各プリセットモーションのuuidは、
Client.get_motions_list()
で確認できます。- Returns
response – モーション送信時の情報。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#post-/v1/rooms/-room_uuid-/motions/preset
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
emo_platform.api_async module
- class emo_platform.api_async.AsyncClient(endpoint_url: Optional[str] = None, tokens: Optional[emo_platform.models.Tokens] = None, token_file_path: Optional[str] = None, use_cached_credentials: bool = False)
Bases:
object
各種apiを呼び出す非同期版のclient(Personal版)
- Parameters
endpoint_url (str, default https://platform-api.bocco.me) – BOCCO emo platform apiにアクセスするためのendpoint
tokens (Tokens, default None) –
refresh token及びaccess tokenを指定します。
指定しない場合は、環境変数に設定されているあるいはこのpkg内のファイル(emo-platform-api.json)に保存されているトークンが使用されます。
token_file_path (Optional[str], default None) –
refresh token及びaccess tokenを保存するファイルのパス。 指定した場合には指定したパスに、指定しない場合はこのpkg内のディレクトリに、以下の2種類のファイルが生成されます。
- emo-platform-api.json
最新のトークンを保存するファイル。
- emo-platform-api_previous.json
前回、引数として指定されたトークンと環境変数として設定されていたトークンが記録されたファイル。
アクセストークンあるいはリフレッシュトークンの指定が変更された場合(BOCCOアカウントの切り替えを行いたい場合など)に、前回から更新があったかを確認するのに使用されます。
更新があった場合は、emo-platform-api.jsonに保存されているトークンが上書きされます。
use_cached_credentials (bool, default False) –
Trueにした場合、上述した2つのファイルにrefresh token及びaccess tokenを保存しなくなります。
この時、引数tokensにトークン情報を与えるようにしてください。(与えない場合は、例外が出されます。)
この引数をTrueにするのは、サーバーサイドのwebアプリにこのライブラリを使用する際などを想定しています。
- Raises
TokenError – refresh tokenあるいはaccess tokenが環境変数として設定されていない場合。 引数tokensにトークンを指定している時は出ません。
Note
- 各メソッドの実行時にaccess tokenの期限が切れていた場合
emo-platform-api.jsonに保存されているrefresh tokenを使用して自動的にaccess tokenが更新されます。 その際にAPI呼び出しが1回行われます。
- Business版をお使いの方へ
このクラスは使用せずに、継承先である
BizBasicAsyncClient
あるいはBizAdvancedAsyncClient
をお使いください。
- async get_access_token(refresh_token: str) emo_platform.response.EmoTokens
トークンの取得
refresh_tokenを用いて、refresh tokenとaccess tokenを取得します。
- Parameters
refresh_token (str) – refresh tokenとaccess tokenを取得するのに用いるrefresh token。
- Returns
emo_tokens
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#post-/oauth/token/refresh
- API呼び出し回数
1回
- async get_account_info() emo_platform.response.EmoAccountInfo
アカウント情報の取得
- Returns
account_info
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- async delete_account_info() emo_platform.response.EmoAccountInfo
アカウントの削除
紐づくWebhook等の設定も全て削除されます。
- Returns
account_info
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#delete-/v1/me
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- async get_rooms_list() emo_platform.response.EmoRoomInfo
ユーザが参加している部屋の一覧の取得
- Returns
rooms_list
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#get-/v1/rooms
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- async get_rooms_id() List[str]
ユーザーが参加している全ての部屋のidの取得
- Returns
rooms_id – 取得した部屋のidのリスト
- Return type
List[str]
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合 あるいは、ユーザーが参加している部屋が1つもなかった場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#get-/v1/rooms
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- create_room_client(room_id: str)
部屋固有の各種apiを呼び出すclientの作成
部屋のidは、
get_rooms_id()
を使用することで、取得できます。- Parameters
room_id (str) – 部屋のid
- Returns
room_client – 部屋のclient
- Return type
Note
- API呼び出し回数
0回
- async get_stamps_list() emo_platform.response.EmoStampsInfo
利用可能なスタンプ一覧の取得
- Returns
stamps_info
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#get-/v1/stamps
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- async get_motions_list() emo_platform.response.EmoMotionsInfo
利用可能なプリセットモーション一覧の取得
- Returns
motions_info
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#get-/v1/motions
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- async get_webhook_setting() emo_platform.response.EmoWebhookInfo
現在設定されているWebhookの情報の取得
- Returns
webhook_info
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。 (BOCCO emoにWebhookの設定がされていない場合を含む)
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#get-/v1/webhook
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- async change_webhook_setting(webhook: emo_platform.models.WebHook) emo_platform.response.EmoWebhookInfo
Webhookの設定の変更
- Parameters
webhook (WebHook) – 適用するWebhookの設定。
- Returns
webhook_info – 変更後のWebhookの設定
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。 (BOCCO emoにWebhookの設定がされていない場合を含む)
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#put-/v1/webhook
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- async register_webhook_event(events: List[str]) emo_platform.response.EmoWebhookInfo
Webhook通知するイベントの指定
eventの種類は、 こちらのページ から確認できます。
- Parameters
events (List[str]) – 指定するWebhook event。
- Returns
webhook_info – 設定したWebhookの情報
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。 (BOCCO emoにWebhookの設定がされていない場合を含む)
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#put-/v1/webhook/events
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- async create_webhook_setting(webhook: emo_platform.models.WebHook) emo_platform.response.EmoWebhookInfo
Webhookの設定の作成
- Parameters
webhook (WebHook) – 作成するWebhookの設定。
- Returns
webhook_info – 作成したWebhookの設定。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#post-/v1/webhook
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- async delete_webhook_setting() emo_platform.response.EmoWebhookInfo
現在設定されているWebhookの情報の削除
- Returns
webhook_info – 削除したWebhookの情報。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合 (BOCCO emoにWebhookの設定がされていない場合を含む)
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#delete-/v1/webhook
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- event(event: str, room_id_list: List[str] = ['']) Callable
Webhookの指定のeventが通知されたときに呼び出す関数の登録
Example
呼び出したい関数にdecorateして登録します:
import emo_platform client = emo_platform.AsyncClient() @client.event("message.received") async def test_event_callback(body): print(body)
- Parameters
event (str) –
指定するWebhook event。
eventの種類は、こちらのページ から確認できます。
room_id_list (List[str], default [""]) –
指定したWebhook eventの通知を監視する部屋をidで指定できます。
引数なしだと、全ての部屋を監視します。
Note
- API呼び出し回数
0回
- async start_webhook_event() str
BOCCO emoのWebhookのイベント通知の開始
event()
で指定したイベントの通知が開始されます。使用する際は、以下の手順を踏んでください。
ngrokなどを用いて、ローカルサーバーにForwardingするURLを発行
create_webhook_setting()
で、1で発行したURLをBOCCO emoに設定event()
で通知したいeventとそれに対応するcallback関数を設定この関数を実行
ローカルサーバーを起動し、
get_cb_func()
を利用して、webhook通知があった際に対応するcallback関数を実行
- Returns
secret_key – BOCCO emoのWebhookリクエストのHTTP Headerに含まれるX-Platform-Api-Secretの値と一致する文字列です。
第三者からの、予期せぬリクエストを防ぐため、この文字列を利用した認証を実装してください。
- Return type
str
- Raises
EmoPlatformError – 関数内部で呼んでいる
register_webhook_event()
が例外を出した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#put-/v1/webhook/events
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- get_cb_func(body: dict) Tuple[Callable, emo_platform.response.EmoWebhookBody]
受信したwebhookイベントに対応するcallback関数及びパースされたボディの取得
使用する際は、以下の手順を踏んでください。
ngrokなどを用いて、ローカルサーバーにForwardingするURLを発行
create_webhook_setting()
で、1で発行したURLをBOCCO emoに設定event()
で通知したいeventとそれに対応するcallback関数を設定start_webhook_event()
でwebhook通知を開始ローカルサーバーを起動し、この関数を利用して、webhook通知があった際に対応するcallback関数を実行
Example
aiohttpライブラリを使用してローカルサーバーを立てた例:
import asyncio from aiohttp import web from emo_platform import AsyncClient, WebHook, EmoPlatformError client = AsyncClient() async def print_queue(queue): while True: item = await queue.get() print("body:", item) print("data:", item.data) async def main(): # Please replace "YOUR WEBHOOK URL" with the URL forwarded to http://localhost:8000 await client.create_webhook_setting(WebHook("YOUR WEBHOOK URL")) queue = asyncio.Queue() @client.event("message.received") async def message_callback(body): await asyncio.sleep(1) # Do not use time.sleep in async def await queue.put(body) secret_key = await client.start_webhook_event() routes = web.RouteTableDef() @routes.post('/') async def emo_webhook(request): # check secret key if request.headers["X-Platform-Api-Secret"] == secret_key: body = await request.json() emo_webhook_body = parse_webhook_body(body) try: cb_func, emo_webhook_body = client.get_cb_func(body) except EmoPlatformError: return web.Response(status=501) asyncio.create_task(cb_func(emo_webhook_body)) return web.Response() else: return web.Response(status=401) app = web.Application() app.add_routes(routes) runner = web.AppRunner(app) await runner.setup() site = web.TCPSite(runner, 'localhost', 8000) await site.start() await print_queue(queue) asyncio.run(main())
- Parameters
body (dict) – 受信したwebhookリクエストのボディのJSONペイロード
- Returns
cb_func, emo_webhook_body
- Return type
Tuple[Callable, EmoWebhookBody]
- Raises
EmoPlatformError – 受信したwebhookイベントに対応するcallback関数が登録されていない場合。
Note
- API呼び出し回数
0回
- class emo_platform.api_async.BizAsyncClient(endpoint_url: Optional[str] = None, tokens: Optional[emo_platform.models.Tokens] = None, token_file_path: Optional[str] = None, use_cached_credentials: bool = False)
Bases:
emo_platform.api_async.AsyncClient
各種apiを呼び出す非同期版のclient(Business版)
Note
- 使用上の注意
このクラスは使用せずに、継承先である
BizBasicAsyncClient
あるいはBizAdvancedAsyncClient
をお使いください。
- async get_account_info() emo_platform.response.EmoBizAccountInfo
アカウント情報の取得
- Returns
account_info
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- Personal版とBusiness版での違い
返り値の型が異なるので注意してください。
- 呼び出しているAPI
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- async delete_account_info() NoReturn
アカウント情報の取得
Business版では使用できないメソッドです。
- Raises
UnavailableError – この関数を呼び出した場合。
Note
- Personal版とBusiness版での違い
Business版では使用できません。
- async change_account_info(acount: emo_platform.models.AccountInfo) emo_platform.response.EmoBizAccountInfo
アカウント情報の編集
- Parameters
account (AccountInfo) – 新たなアカウント情報。
- Returns
account_info – 編集後のアカウント情報。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- async get_rooms_list(api_key: str) emo_platform.response.EmoRoomInfo
ユーザが参加している部屋の一覧の取得
- Parameters
api_key (str) –
法人向けAPIキー
法人アカウントでログインした時の ダッシュボード から確認することができます。
- Returns
rooms_list
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#get-/v1/rooms
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- async get_rooms_id(api_key: str) List[str]
ユーザーが参加している全ての部屋のidの取得
- Parameters
api_key (str) –
法人向けAPIキー
法人アカウントでログインした時の ダッシュボード から確認することができます。
- Returns
rooms_id – 取得した部屋のidのリスト
- Return type
List[str]
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合 あるいは、ユーザーが参加している部屋が1つもなかった場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#get-/v1/rooms
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- async get_stamps_list(api_key: str) emo_platform.response.EmoStampsInfo
利用可能なスタンプ一覧の取得
- Parameters
api_key (str) –
法人向けAPIキー
法人アカウントでログインした時の ダッシュボード から確認することができます。
- Returns
stamps_info
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#get-/v1/stamps
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- async get_broadcast_msgs_list() emo_platform.response.EmoBroadcastInfoList
配信メッセージの一覧の取得
- Returns
broadcast_info_list – 配信メッセージの一覧。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#get-/v1/broadcast_messages
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- async get_broadcast_msg_details(message_id: int) emo_platform.response.EmoBroadcastInfo
配信メッセージの詳細の取得
- Parameters
message_id (int) – 詳細を取得したい配信メッセージのid
- Returns
broadcast_info_list – 配信メッセージの詳細。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#get-/v1/broadcast_messages/-broadcast_message_id-
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- async create_broadcast_msg(api_key: str, message: emo_platform.models.BroadcastMsg) emo_platform.response.EmoBroadcastMessage
配信メッセージの新規作成
- Parameters
api_key (str) –
法人向けAPIキー
法人アカウントでログインした時の ダッシュボード から確認することができます。
message (BroadcastMsg) – 新規に作成する配信メッセージ。
- Returns
broadcast_msg – 新規に作成した配信メッセージの内容。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#post-/v1/broadcast_messages
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- class emo_platform.api_async.BizBasicAsyncClient(endpoint_url: Optional[str] = None, tokens: Optional[emo_platform.models.Tokens] = None, token_file_path: Optional[str] = None, use_cached_credentials: bool = False)
Bases:
emo_platform.api_async.BizAsyncClient
各種apiを呼び出す非同期版のclient(Business Basic版)
- Parameters
endpoint_url (str, default https://platform-api.bocco.me) – BOCCO emo platform apiにアクセスするためのendpoint
tokens (Tokens, default None) –
refresh token及びaccess tokenを指定します。
指定しない場合は、環境変数に設定されているあるいはこのpkg内のファイル(emo-platform-api.json)に保存されているトークンが使用されます。
token_file_path (Optional[str], default None) –
refresh token及びaccess tokenを保存するファイルのパス。
指定しない場合は、このpkg内のディレクトリに保存されます。 指定したパスには、以下の2種類のファイルが生成されます。
- emo-platform-api.json
最新のトークンを保存するファイル。
- emo-platform-api_previous.json
前回、引数として指定されたトークンと環境変数として設定されていたトークンが記録されたファイル。
アクセストークンあるいはリフレッシュトークンの指定が変更された場合(BOCCOアカウントの切り替えを行いたい場合など)に、前回から更新があったかを確認するのに使用されます。
更新があった場合は、emo-platform-api.jsonに保存されているトークンが上書きされます。
- Raises
TokenError – refresh tokenあるいはaccess tokenが環境変数として設定されていない場合。 引数tokensにトークンを指定している時は出ません。
Note
- 各メソッドの実行時にaccess tokenの期限が切れていた場合
emo-platform-api.jsonに保存されているrefresh tokenを使用して自動的にaccess tokenが更新されます。 その際にAPI呼び出しが1回行われます。
- create_room_client(api_key: str, room_id: str)
部屋固有の各種apiを呼び出すclientの作成
部屋のidは、
get_rooms_id()
を使用することで、取得できます。- Parameters
api_key (str) –
法人向けAPIキー
法人アカウントでログインした時の ダッシュボード から確認することができます。
room_id (str) – 部屋のid
- Returns
room_client – 部屋のclient
- Return type
Note
- API呼び出し回数
0回
- async get_motions_list() NoReturn
利用可能なプリセットモーション一覧の取得
Business Basic版では使用できないメソッドです。
- Raises
UnavailableError – この関数を呼び出した場合。
- async get_webhook_setting(api_key: str) NoReturn
現在設定されているWebhookの情報の取得
Business Basic版では使用できないメソッドです。
- Raises
UnavailableError – この関数を呼び出した場合。
- async change_webhook_setting(api_key: str, webhook: emo_platform.models.WebHook) NoReturn
Webhookの設定の変更
Business Basic版では使用できないメソッドです。
- Raises
UnavailableError – この関数を呼び出した場合。
- async register_webhook_event(api_key: str, events: List[str]) NoReturn
Webhook通知するイベントの指定
Business Basic版では使用できないメソッドです。
- Raises
UnavailableError – この関数を呼び出した場合。
- async create_webhook_setting(api_key: str, webhook: emo_platform.models.WebHook) NoReturn
Webhookの設定の作成
Business Basic版では使用できないメソッドです。
- Raises
UnavailableError – この関数を呼び出した場合。
- async delete_webhook_setting(api_key: str) NoReturn
現在設定されているWebhookの情報の削除
Business Basic版では使用できないメソッドです。
- Raises
UnavailableError – この関数を呼び出した場合。
- event(event: str, room_id_list: List[str] = ['']) NoReturn
Webhookの指定のeventが通知されたときに呼び出す関数の登録
Business Basic版では使用できないメソッドです。
- Raises
UnavailableError – この関数を呼び出した場合。
- async start_webhook_event() NoReturn
BOCCO emoのWebhookのイベント通知の開始
Business Basic版では使用できないメソッドです。
- Raises
UnavailableError – この関数を呼び出した場合。
- get_cb_func(body: dict) NoReturn
受信したwebhookイベントに対応するcallback関数及びパースされたボディの取得
Business Basic版では使用できないメソッドです。
- Raises
UnavailableError – この関数を呼び出した場合。
- class emo_platform.api_async.BizAdvancedAsyncClient(endpoint_url: Optional[str] = None, tokens: Optional[emo_platform.models.Tokens] = None, token_file_path: Optional[str] = None, use_cached_credentials: bool = False)
Bases:
emo_platform.api_async.BizAsyncClient
各種apiを呼び出す非同期版のclient(Business Advanced版)
- Parameters
endpoint_url (str, default https://platform-api.bocco.me) – BOCCO emo platform apiにアクセスするためのendpoint
tokens (Tokens, default None) –
refresh token及びaccess tokenを指定します。
指定しない場合は、環境変数に設定されているあるいはこのpkg内のファイル(emo-platform-api.json)に保存されているトークンが使用されます。
token_file_path (Optional[str], default None) –
refresh token及びaccess tokenを保存するファイルのパス。
指定しない場合は、このpkg内のディレクトリに保存されます。 指定したパスには、以下の2種類のファイルが生成されます。
- emo-platform-api.json
最新のトークンを保存するファイル。
- emo-platform-api_previous.json
前回、引数として指定されたトークンと環境変数として設定されていたトークンが記録されたファイル。
アクセストークンあるいはリフレッシュトークンの指定が変更された場合(BOCCOアカウントの切り替えを行いたい場合など)に、前回から更新があったかを確認するのに使用されます。
更新があった場合は、emo-platform-api.jsonに保存されているトークンが上書きされます。
- Raises
TokenError – refresh tokenあるいはaccess tokenが環境変数として設定されていない場合。 引数tokensにトークンを指定している時は出ません。
Note
- 各メソッドの実行時にaccess tokenの期限が切れていた場合
emo-platform-api.jsonに保存されているrefresh tokenを使用して自動的にaccess tokenが更新されます。 その際にAPI呼び出しが1回行われます。
- create_room_client(api_key: str, room_id: str)
部屋固有の各種apiを呼び出すclientの作成
部屋のidは、
get_rooms_id()
を使用することで、取得できます。- Parameters
api_key (str) –
法人向けAPIキー
法人アカウントでログインした時の ダッシュボード から確認することができます。
room_id (str) – 部屋のid
- Returns
room_client – 部屋のclient
- Return type
Note
- API呼び出し回数
0回
- async get_webhook_setting(api_key: str) emo_platform.response.EmoWebhookInfo
現在設定されているWebhookの情報の取得
- Parameters
api_key (str) –
法人向けAPIキー
法人アカウントでログインした時の ダッシュボード から確認することができます。
- Returns
webhook_info
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。 (BOCCO emoにWebhookの設定がされていない場合を含む)
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#get-/v1/webhook
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- async change_webhook_setting(api_key: str, webhook: emo_platform.models.WebHook) emo_platform.response.EmoWebhookInfo
Webhookの設定の変更
- Parameters
- Returns
webhook_info – 変更後のWebhookの設定
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。 (BOCCO emoにWebhookの設定がされていない場合を含む)
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#put-/v1/webhook
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- async register_webhook_event(api_key: str, events: List[str]) emo_platform.response.EmoWebhookInfo
Webhook通知するイベントの指定
eventの種類は、 こちらのページ から確認できます。
- Parameters
api_key (str) –
法人向けAPIキー
法人アカウントでログインした時の ダッシュボード から確認することができます。
events (List[str]) – 指定するWebhook event。
- Returns
webhook_info – 設定したWebhookの情報
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。 (BOCCO emoにWebhookの設定がされていない場合を含む)
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#put-/v1/webhook/events
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- async create_webhook_setting(api_key: str, webhook: emo_platform.models.WebHook) emo_platform.response.EmoWebhookInfo
Webhookの設定の作成
- Parameters
- Returns
webhook_info – 作成したWebhookの設定。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#post-/v1/webhook
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- async delete_webhook_setting(api_key: str) emo_platform.response.EmoWebhookInfo
現在設定されているWebhookの情報の削除
- Parameters
api_key (str) –
法人向けAPIキー
法人アカウントでログインした時の ダッシュボード から確認することができます。
- Returns
webhook_info – 削除したWebhookの情報。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合 (BOCCO emoにWebhookの設定がされていない場合を含む)
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#delete-/v1/webhook
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- async start_webhook_event(api_key: str) str
BOCCO emoのWebhookのイベント通知の開始
event()
で指定したイベントの通知が開始されます。使用する際は、以下の手順を踏んでください。
ngrokなどを用いて、ローカルサーバーにForwardingするURLを発行
create_webhook_setting()
で、1で発行したURLをBOCCO emoに設定event()
で通知したいeventとそれに対応するcallback関数を設定この関数を実行
ローカルサーバーを起動し、
get_cb_func()
を利用して、webhook通知があった際に対応するcallback関数を実行
- Parameters
api_key (str) –
法人向けAPIキー
法人アカウントでログインした時の ダッシュボード から確認することができます。
- Returns
secret_key – BOCCO emoのWebhookリクエストのHTTP Headerに含まれるX-Platform-Api-Secretの値と一致する文字列です。
第三者からの、予期せぬリクエストを防ぐため、この文字列を利用した認証を実装してください。
- Return type
str
- Raises
EmoPlatformError – 関数内部で呼び出している
register_webhook_event()
が例外を出した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#put-/v1/webhook/events
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- class emo_platform.api_async.AsyncRoom(base_client: emo_platform.api_async.AsyncClient, room_id: str)
Bases:
object
部屋固有の各種apiを呼び出す非同期版のclient
- Parameters
base_client (AsyncClient) – このclientを作成しているclient。
room_id (str) – 部屋のuuid。
- async get_msgs(ts: Optional[int] = None) emo_platform.response.EmoMsgsInfo
部屋に投稿されたメッセージの取得
- Parameters
ts (int or None) –
指定した場合は、その時刻以前のメッセージを取得できます。
指定方法:2021/07/01 12:30:45以前なら、20210701123045000
- Returns
response – 投稿されたメッセージの情報。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#get-/v1/rooms/-room_uuid-/messages
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- async get_sensors_list() emo_platform.response.EmoSensorsInfo
BOCCO emoとペアリングされているセンサの一覧の取得
センサの種類は こちらのページ で確認できます。
- Returns
sensors_info – 取得した設定値。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#get-/v1/rooms/-room_uuid-/sensors
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- async get_sensor_values(sensor_id: str) emo_platform.response.EmoRoomSensorInfo
部屋センサの送信値を取得
- Parameters
sensor_id (str) –
部屋センサのuuid。
各部屋センサのuuidは、
get_sensors_list()
で確認できます。- Returns
response – 部屋センサの送信値の情報。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。 (部屋センサ以外のBOCCOセンサ / 紐づいていない部屋センサ、のidを指定した場合も含みます)
Note
- 呼び出しているAPI
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- async send_audio_msg(audio_data_path: str) emo_platform.response.EmoMessageInfo
音声ファイルの部屋への投稿
Attention
- 送信できるファイルの制限について
フォーマット: MP3, M4A
ファイルサイズ: 1MB
- Parameters
audio_data_path (str) – 投稿する音声ファイルの絶対パス。
- Returns
response – 音声ファイル投稿時の情報。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#post-/v1/rooms/-room_uuid-/messages/audio
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- async send_image(image_data_path: str) emo_platform.response.EmoMessageInfo
画像ファイルの部屋への投稿
Attention
- 送信できるファイルの制限について
フォーマット: JPG, PNG
ファイルサイズ: 1MB
- Parameters
image_data_path (str) – 投稿する画像ファイルの絶対パス。
- Returns
response – 画像投稿時の情報。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#post-/v1/rooms/-room_uuid-/messages/image
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- async send_msg(msg: str) emo_platform.response.EmoMessageInfo
テキストメッセージの部屋への投稿
- Parameters
msg (str) – 投稿するメッセージ。
- Returns
response – メッセージ投稿時の情報。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#post-/v1/rooms/-room_uuid-/messages/text
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- async send_stamp(stamp_id: str, msg: Optional[str] = None) emo_platform.response.EmoMessageInfo
スタンプの部屋への投稿
- Parameters
stamp_id (str) –
スタンプのuuid。
各スタンプのuuidは、
Client.get_stamps_list()
で確認できます。msg (Optional[str], default None) –
スタンプ投稿時に、BOCCO emoが行うモーション再生と共に発話されるメッセージ。
引数なしの場合は、発話なしでモーションが再生されます。
- Returns
response – スタンプモーション送信時の情報。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#post-/v1/rooms/-room_uuid-/messages/stamp
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- async send_original_motion(motion_data: Union[str, dict]) emo_platform.response.EmoMessageInfo
独自定義した、オリジナルのモーションをBOCCO emoに送信
詳しくは、 こちらのページ を参照してください。
- Parameters
file_path (str or dict) –
モーションファイルを置いている絶対パス。
あるいは、モーションを記述した辞書オブジェクト。
- Returns
response – モーション送信時の情報。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。 (モーションのデータ形式が誤っている場合も含みます)
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#post-/v1/rooms/-room_uuid-/motions
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- async change_led_color(color: emo_platform.models.Color) emo_platform.response.EmoMessageInfo
ほっぺたの色の変更
3秒間、ほっぺたの色を指定した色に変更します。
- Parameters
color (Color) – 送信するほっぺたの色。
- Returns
response – モーション送信時の情報。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#post-/v1/rooms/-room_uuid-/motions/led_color
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- async move_to(head: emo_platform.models.Head) emo_platform.response.EmoMessageInfo
首の角度の変更
首の角度を変更するモーションをBOCCO emoに送信します。
- Parameters
head (Head) – 送信する首の角度。
- Returns
response – モーション送信時の情報。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#post-/v1/rooms/-room_uuid-/motions/move_to
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- async send_motion(motion_id: str) emo_platform.response.EmoMessageInfo
プリセットモーションをBOCCO emoに送信
- Parameters
motion_id (str) –
プリセットモーションのuuid
各プリセットモーションのuuidは、
Client.get_motions_list()
で確認できます。- Returns
response – モーション送信時の情報。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#post-/v1/rooms/-room_uuid-/motions/preset
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- async get_emo_settings() emo_platform.response.EmoSettingsInfo
現在のBOCCO emoの設定値を取得
- Returns
settings – 取得した設定値。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#get-/v1/rooms/-room_uuid-/emo/settings
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- class emo_platform.api_async.BizAsyncRoom(base_client: emo_platform.api_async.BizAsyncClient, room_id: str, api_key: str)
Bases:
emo_platform.api_async.AsyncRoom
部屋固有の各種apiを呼び出す非同期版のclient(Business版)
- Parameters
base_client (BizAsyncClient) – このclientを作成しているclient。
room_id (str) – 部屋のuuid。
api_key (str) –
法人向けAPIキー
法人アカウントでログインした時の ダッシュボード から確認することができます。
- async get_msgs(ts: Optional[int] = None) emo_platform.response.EmoMsgsInfo
部屋に投稿されたメッセージの取得
- Parameters
ts (int or None) –
指定した場合は、その時刻以前のメッセージを取得できます。
指定方法:2021/07/01 12:30:45以前なら、20210701123045000
- Returns
response – 投稿されたメッセージの情報。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#get-/v1/rooms/-room_uuid-/messages
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- async get_channel_msgs(ts: Optional[int] = None) emo_platform.response.EmoMsgsInfo
チャンネルから部屋に投稿されたメッセージの取得
- Parameters
ts (int or None) –
指定した場合は、その時刻以前のメッセージを取得できます。
指定方法:2021/07/01 12:30:45以前なら、20210701123045000
- Returns
response – 投稿されたメッセージの情報。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- async get_sensors_list() emo_platform.response.EmoSensorsInfo
BOCCO emoとペアリングされているセンサの一覧の取得
センサの種類は こちらのページ で確認できます。
- Returns
sensors_info – 取得した設定値。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#get-/v1/rooms/-room_uuid-/sensors
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- async send_audio_msg(audio_data_path: str) emo_platform.response.EmoMessageInfo
音声ファイルの部屋への投稿
Attention
- 送信できるファイルの制限について
フォーマット: MP3, M4A
ファイルサイズ: 1MB
- Parameters
audio_data_path (str) – 投稿する音声ファイルの絶対パス。
- Returns
response – 音声ファイル投稿時の情報。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#post-/v1/rooms/-room_uuid-/messages/audio
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- async send_image(image_data_path: str) emo_platform.response.EmoMessageInfo
画像ファイルの部屋への投稿
Attention
- 送信できるファイルの制限について
フォーマット: JPG, PNG
ファイルサイズ: 1MB
- Parameters
image_data_path (str) – 投稿する画像ファイルの絶対パス。
- Returns
response – 画像投稿時の情報。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#post-/v1/rooms/-room_uuid-/messages/image
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- async send_msg(msg: str) emo_platform.response.EmoMessageInfo
テキストメッセージの部屋への投稿
- Parameters
msg (str) – 投稿するメッセージ。
- Returns
response – メッセージ投稿時の情報。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#post-/v1/rooms/-room_uuid-/messages/text
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- async send_stamp(stamp_id: str, msg: Optional[str] = None) emo_platform.response.EmoMessageInfo
スタンプの部屋への投稿
- Parameters
stamp_id (str) –
スタンプのuuid。
各スタンプのuuidは、
Client.get_stamps_list()
で確認できます。msg (Optional[str], default None) –
スタンプ投稿時に、BOCCO emoが行うモーション再生と共に発話されるメッセージ。
引数なしの場合は、発話なしでモーションが再生されます。
- Returns
response – スタンプモーション送信時の情報。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#post-/v1/rooms/-room_uuid-/messages/stamp
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- async get_emo_settings() emo_platform.response.EmoSettingsInfo
現在のBOCCO emoの設定値を取得
- Returns
settings – 取得した設定値。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#get-/v1/rooms/-room_uuid-/emo/settings
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- class emo_platform.api_async.BizBasicAsyncRoom(base_client: emo_platform.api_async.BizAsyncClient, room_id: str, api_key: str)
Bases:
emo_platform.api_async.BizAsyncRoom
部屋固有の各種apiを呼び出す非同期版のclient(Business Basic版)
- Parameters
base_client (BizBasicAsyncClient) – このclientを作成しているclient。
room_id (str) – 部屋のuuid。
api_key (str) –
法人向けAPIキー
法人アカウントでログインした時の ダッシュボード から確認することができます。
- async get_sensor_values(sensor_id: str) NoReturn
部屋センサの送信値を取得
Business Basic版では使用できないメソッドです。
- Raises
UnavailableError – この関数を呼び出した場合。
- async send_original_motion(motion_data: Union[str, dict]) NoReturn
独自定義した、オリジナルのモーションをBOCCO emoに送信
Business Basic版では使用できないメソッドです。
- Raises
UnavailableError – この関数を呼び出した場合。
- async change_led_color(color: emo_platform.models.Color) NoReturn
ほっぺたの色の変更
Business Basic版では使用できないメソッドです。
- Raises
UnavailableError – この関数を呼び出した場合。
- async move_to(head: emo_platform.models.Head) NoReturn
首の角度の変更
Business Basic版では使用できないメソッドです。
- Raises
UnavailableError – この関数を呼び出した場合。
- async send_motion(motion_id: str) NoReturn
プリセットモーションをBOCCO emoに送信
Business Basic版では使用できないメソッドです。
- Raises
UnavailableError – この関数を呼び出した場合。
- class emo_platform.api_async.BizAdvancedAsyncRoom(base_client: emo_platform.api_async.BizAsyncClient, room_id: str, api_key: str)
Bases:
emo_platform.api_async.BizAsyncRoom
部屋固有の各種apiを呼び出す非同期版のclient(Business Advanced版)
- Parameters
base_client (BizAdvancedAsyncClient) – このclientを作成しているclient。
room_id (str) – 部屋のuuid。
api_key (str) –
法人向けAPIキー
法人アカウントでログインした時の ダッシュボード から確認することができます。
- async get_sensor_values(sensor_id: str) emo_platform.response.EmoRoomSensorInfo
部屋センサの送信値を取得
- Parameters
sensor_id (str) –
部屋センサのuuid。
各部屋センサのuuidは、
get_sensors_list()
で確認できます。- Returns
response – 部屋センサの送信値の情報。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。 (部屋センサ以外のBOCCOセンサ / 紐づいていない部屋センサ、のidを指定した場合も含みます)
Note
- 呼び出しているAPI
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- async send_original_motion(motion_data: Union[str, dict]) emo_platform.response.EmoMessageInfo
独自定義した、オリジナルのモーションをBOCCO emoに送信
詳しくは、 こちらのページ を参照してください。
- Parameters
file_path (str or dict) –
モーションファイルを置いている絶対パス。
あるいは、モーションを記述した辞書オブジェクト。
- Returns
response – モーション送信時の情報。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。 (モーションのデータ形式が誤っている場合も含みます)
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#post-/v1/rooms/-room_uuid-/motions
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- async change_led_color(color: emo_platform.models.Color) emo_platform.response.EmoMessageInfo
ほっぺたの色の変更
3秒間、ほっぺたの色を指定した色に変更します。
- Parameters
color (Color) – 送信するほっぺたの色。
- Returns
response – モーション送信時の情報。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#post-/v1/rooms/-room_uuid-/motions/led_color
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- async move_to(head: emo_platform.models.Head) emo_platform.response.EmoMessageInfo
首の角度の変更
首の角度を変更するモーションをBOCCO emoに送信します。
- Parameters
head (Head) – 送信する首の角度。
- Returns
response – モーション送信時の情報。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#post-/v1/rooms/-room_uuid-/motions/move_to
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
- async send_motion(motion_id: str) emo_platform.response.EmoMessageInfo
プリセットモーションをBOCCO emoに送信
- Parameters
motion_id (str) –
プリセットモーションのuuid
各プリセットモーションのuuidは、
Client.get_motions_list()
で確認できます。- Returns
response – モーション送信時の情報。
- Return type
- Raises
EmoPlatformError – 関数内部で行っているAPI呼び出しが失敗した場合。
Note
- 呼び出しているAPI
https://platform-api.bocco.me/dashboard/api-docs#post-/v1/rooms/-room_uuid-/motions/preset
- API呼び出し回数
1回 + 1回(access tokenが切れていた場合)
emo_platform.exceptions module
- class emo_platform.exceptions.EmoRequestInfo(method: str, url: str, headers: dict)
Bases:
object
http requestしたデータ
- method: str
- url: str
- headers: dict
- exception emo_platform.exceptions.EmoPlatformError(message, status=None, request=None)
Bases:
Exception
BOCCO emo Platform API利用時のエラー
- exception emo_platform.exceptions.EmoHttpError(message, status=None, request=None)
Bases:
emo_platform.exceptions.EmoPlatformError
http request時のエラー
- exception emo_platform.exceptions.RateLimitError(message, status=None, request=None)
Bases:
emo_platform.exceptions.EmoHttpError
1分あたりのAPI利用回数を上回った場合に出るエラー
- exception emo_platform.exceptions.UnauthorizedError(message, status=None, request=None)
Bases:
emo_platform.exceptions.EmoHttpError
API利用に際しての認証エラー
- exception emo_platform.exceptions.NotFoundError(message, status=None, request=None)
Bases:
emo_platform.exceptions.EmoHttpError
指定したAPIのURLが存在しない場合に出るエラー
- exception emo_platform.exceptions.BadRequestError(message, status=None, request=None)
Bases:
emo_platform.exceptions.EmoHttpError
送るデータの形式が誤っている場合に出るエラー
- exception emo_platform.exceptions.UnknownError(message, status=None, request=None)
Bases:
emo_platform.exceptions.EmoHttpError
未定義のエラー
- exception emo_platform.exceptions.NoRoomError(message, status=None, request=None)
Bases:
emo_platform.exceptions.EmoPlatformError
BOCCOアカウントに紐づいた部屋がない場合に出るエラー
- exception emo_platform.exceptions.TokenError(message, status=None, request=None)
Bases:
emo_platform.exceptions.EmoPlatformError
トークンが正しく設定されてない場合に出るエラー
Bases:
emo_platform.exceptions.EmoPlatformError
現在のプランでは使用できない場合に出るエラー
- exception emo_platform.exceptions.WebhookCallbackError(message, status=None, request=None)
Bases:
emo_platform.exceptions.EmoPlatformError
webhookイベントに紐づいたcallback関数の呼び出しに失敗した時に出るエラー
- exception emo_platform.exceptions.WebhookRequestError(message, status=None, request=None)
Bases:
emo_platform.exceptions.EmoPlatformError
受信したwebhookリクエスト自体に関するエラー
emo_platform.models module
- class emo_platform.models.Tokens(access_token: str = '', refresh_token: str = '')
Bases:
object
API利用に必要なトークンの情報。
Note
トークンは ダッシュボード にログイン後に確認できます。
- access_token: str = ''
アクセストークン
- refresh_token: str = ''
リフレッシュトークン
- class emo_platform.models.Color(red: int = 0, green: int = 0, blue: int = 0)
Bases:
object
BOCCO emoのほっぺの色。
Note
範囲外の値を入れた際は、最小値と最大値のうち近い方の値になります。
- red: int = 0
赤の輝度(0~255)
- green: int = 0
緑の輝度(0~255)
- blue: int = 0
青の輝度(0~255)
- class emo_platform.models.Head(angle: float = 0, vertical_angle: float = 0)
Bases:
object
BOCCO emoの首の角度。
Note
範囲外の値を入れた際は、最小値と最大値のうち近い方の値になります。
- angle: float = 0
左右方向の首の角度(-45~45)
- vertical_angle: float = 0
上下方向の首の角度(-20~20)
- class emo_platform.models.WebHook(url: str, description: str = '')
Bases:
object
BOCCO emoに設定するWebhook。
- url: str
Webhookの通知先のurl
- description: str = ''
Webhookの設定に関する説明書き
- class emo_platform.models.AccountInfo(name: str, name_furigana: str, organization_name: str, organization_unit_name: str, phone_number: str)
Bases:
object
BOCCOアカウント情報。
- name: str
アカウント名(1~20文字)
- name_furigana: str
アカウント名のふりがな(平仮名表記)(1~20文字)
- organization_name: str
組織名(1~100文字)
- organization_unit_name: str
部署名(1~100文字)
- phone_number: str
電話番号(10~11文字のハイフンなし)
- class emo_platform.models.BroadcastMsg(title: str, text: str, executed_at: int = 0, immediate: bool = False)
Bases:
object
配信メッセージの情報。
- title: str
配信メッセージのタイトル
- text: str
配信するメッセージ
- executed_at: int = 0
配信予定時刻(UNIX Timestamp形式)
- immediate: bool = False
即時配信にするかどうか
Note
immediateをTrueにした場合、executed_atに書いた時刻は反映されず、即時配信となります。
emo_platform.response module
- class emo_platform.response.PrintModel
Bases:
pydantic.main.BaseModel
- class emo_platform.response.EmoAccountInfo(*, name: str, email: str, profile_image: str, uuid: str, plan: str)
Bases:
emo_platform.response.PrintModel
BOCCOアカウント情報(Personal版)。
- name: str
アカウント名
- email: str
アカウントのメールアドレス
- profile_image: str
アカウントのプロフィール画像のURL
- uuid: str
アカウントのid
- plan: str
アカウントのプラン
- class emo_platform.response.EmoBizAccountInfo(*, account_id: int, name: str, name_furigana: str, email: str, organization_name: str, organization_unit_name: str, phone_number: str, plan: str)
Bases:
emo_platform.response.PrintModel
BOCCOアカウント情報(Business版)。
- account_id: int
アカウントのid
- name: str
アカウント名
- name_furigana: str
アカウント名のふりがな
- email: str
アカウント名のメールアドレス
- organization_name: str
組織名
- organization_unit_name: str
部署名
- phone_number: str
電話番号
- plan: str
アカウントのプラン
- class emo_platform.response.EmoTokens(*, access_token: str, refresh_token: str)
Bases:
emo_platform.response.PrintModel
API利用に必要なトークンの情報。
- access_token: str
アクセストークン
- refresh_token: str
リフレッシュトークン
- class emo_platform.response.Listing(*, offset: Union[int, float], limit: Union[int, float], total: Union[int, float])
Bases:
emo_platform.response.PrintModel
- offset: Union[int, float]
- limit: Union[int, float]
- total: Union[int, float]
- class emo_platform.response.EmoRoomMember(*, uuid: str, user_type: str, nickname: str, profile_image: str)
Bases:
emo_platform.response.PrintModel
部屋に参加しているメンバーの情報
- uuid: str
メンバーのid
- user_type: str
メンバーの種別
- nickname: str
メンバーのニックネーム
- profile_image: str
メンバーのプロフィール画像のURL
- class emo_platform.response.RoomInfo(*, uuid: str, name: str, room_type: str, room_members: List[emo_platform.response.EmoRoomMember])
Bases:
emo_platform.response.PrintModel
部屋の情報
- uuid: str
部屋のid
- name: str
部屋の名前
- room_type: str
部屋の種類
- room_members: List[emo_platform.response.EmoRoomMember]
部屋に参加しているメンバーの一覧
- class emo_platform.response.EmoRoomInfo(*, listing: emo_platform.response.Listing, rooms: List[emo_platform.response.RoomInfo])
Bases:
emo_platform.response.PrintModel
ユーザーが参加している部屋の一覧情報
- listing: emo_platform.response.Listing
- rooms: List[emo_platform.response.RoomInfo]
ユーザーが参加している部屋の一覧
- class emo_platform.response.EmoMessage(*, ja: str)
Bases:
emo_platform.response.PrintModel
部屋に投稿されたテキストメッセージの内容
- ja: str
- class emo_platform.response.EmoMessageInfo(*, sequence: int, unique_id: str, user: emo_platform.response.EmoRoomMember, message: emo_platform.response.EmoMessage, media: str, audio_url: str, image_url: str, lang: str)
Bases:
emo_platform.response.PrintModel
部屋に投稿されたメッセージの情報
- unique_id: str
メッセージのid
- user: emo_platform.response.EmoRoomMember
メッセージを投稿したメンバーの情報
- message: emo_platform.response.EmoMessage
テキストメッセージの内容
- media: str
メッセージのタイプ
Note
- text
テキストメッセージ
- audio
音声メッセージ
- image
画像メッセージ
- stamp
スタンプメッセージ
- audio_url: str
送信された音声ファイルのURL
- image_url: str
送信された画像ファイルのURL
- lang: str
メッセージの言語
- class emo_platform.response.EmoMsgsInfo(*, messages: List[emo_platform.response.EmoMessageInfo])
Bases:
emo_platform.response.PrintModel
部屋に投稿されたメッセージの一覧情報
- messages: List[emo_platform.response.EmoMessageInfo]
部屋に投稿されたメッセージの一覧
- class emo_platform.response.EmoStamp(*, uuid: str, name: str, summary: str, image: str)
Bases:
emo_platform.response.PrintModel
スタンプの情報
- uuid: str
スタンプのid
- name: str
スタンプの名前
- summary: str
スタンプの内容説明
- image: str
スタンプ画像のURL
- class emo_platform.response.EmoStampsInfo(*, listing: emo_platform.response.Listing, stamps: List[emo_platform.response.EmoStamp])
Bases:
emo_platform.response.PrintModel
利用可能なスタンプの一覧情報
- listing: emo_platform.response.Listing
- stamps: List[emo_platform.response.EmoStamp]
スタンプの一覧
- class emo_platform.response.EmoMotion(*, uuid: str, name: str, preview: str)
Bases:
emo_platform.response.PrintModel
モーションの情報
- uuid: str
モーションのid
- name: str
モーションの名前
- preview: str
モーションの音声ファイルのURL
- class emo_platform.response.EmoMotionsInfo(*, listing: emo_platform.response.Listing, motions: List[emo_platform.response.EmoMotion])
Bases:
emo_platform.response.PrintModel
利用可能なモーションの一覧情報
- listing: emo_platform.response.Listing
- motions: List[emo_platform.response.EmoMotion]
モーションの一覧
- class emo_platform.response.EmoWebhookInfo(*, description: str, events: List[str], status: str, secret: str, url: str)
Bases:
emo_platform.response.PrintModel
現在設定されているWebhookの情報
- description: str
Webhookの設定に関する説明書き
- events: List[str]
Webhookを受け取る対象のイベントの一覧
- status: str
Webhookの設定状態
- secret: str
WebhookリクエストのHTTP Headerに含まれるX-Platform-API-Secretと同一の文字列。
この文字列とX-Platform-API-Secretの値が同一か確かめることで、第三者からの予期せぬリクエストを防ぐことができます。
- url: str
Webhookの送信先のURL
- class emo_platform.response.EmoSensor(*, uuid: str, sensor_type: str, nickname: str, signal_strength: int, battery: int)
Bases:
emo_platform.response.PrintModel
BOCCO emoとペアリングされているセンサ情報
- uuid: str
センサのid
- sensor_type: str
センサの種類
- nickname: str
センサのニックネーム
- signal_strength: int
センサの信号の強さ
- battery: int
センサの残りバッテリー
- class emo_platform.response.EmoSensorsInfo(*, sensors: List[emo_platform.response.EmoSensor])
Bases:
emo_platform.response.PrintModel
BOCCO emoとペアリングされているセンサ情報の一覧
- sensors: List[emo_platform.response.EmoSensor]
ベアリングされているセンサの一覧
- class emo_platform.response.EmoRoomSensorEvent(*, temperature: Union[int, float], humidity: Union[int, float], illuminance: Union[int, float])
Bases:
emo_platform.response.PrintModel
部屋センサの送信値
- temperature: Union[int, float]
温度
- humidity: Union[int, float]
湿度
- illuminance: Union[int, float]
照度
- class emo_platform.response.EmoRoomSensorInfo(*, sensor_type: str, uuid: str, nickname: str, events: List[emo_platform.response.EmoRoomSensorEvent])
Bases:
emo_platform.response.PrintModel
部屋センサの送信値の一覧
- sensor_type: str
センサの種類
- uuid: str
センサのid
- nickname: str
センサのニックネーム
- events: List[emo_platform.response.EmoRoomSensorEvent]
センサの送信値の一覧
- class emo_platform.response.EmoSettingsInfo(*, nickname: str, wakeword: str, volume: int, voice_pitch: int, voice_speed: int, lang: str, serial_number: str, timezone: str, zip_code: str)
Bases:
emo_platform.response.PrintModel
現在のBOCCO emoの設定値
- nickname: str
ニックネーム
- wakeword: str
ウェイクアップワード
- volume: int
音量
- voice_pitch: int
声の高さ
- voice_speed: int
話すスピード
- lang: str
言語設定
- serial_number: str
シリアルナンバー
- timezone: str
タイムゾーン
- zip_code: str
郵便番号
- class emo_platform.response.EmoBroadcastMessage(*, id: int, channel_uuid: str, title: str, text: str, executed_at: int, finished: bool, success: bool, failed: bool)
Bases:
emo_platform.response.PrintModel
配信メッセージの情報
- id: int
配信メッセージのid
- channel_uuid: str
チャンネルのid
- title: str
配信メッセージのタイトル
- text: str
配信メッセージの内容
- executed_at: int
配信時間
- finished: bool
配信済みか
- success: bool
配信に成功したか
- failed: bool
配信に失敗したか
- class emo_platform.response.EmoBroadcastInfoList(*, listing: emo_platform.response.Listing, messages: List[emo_platform.response.EmoBroadcastMessage])
Bases:
emo_platform.response.PrintModel
配信メッセージの一覧情報
- listing: emo_platform.response.Listing
- messages: List[emo_platform.response.EmoBroadcastMessage]
配信メッセージの一覧
- class emo_platform.response.EmoBroadcastMessageDetail(*, room_uuid: str, room_name: str, success: bool, status_code: int, description: str, executed_at: int)
Bases:
emo_platform.response.PrintModel
配信メッセージの詳細
- room_uuid: str
配信された部屋のid
- room_name: str
配信された部屋の名前
- success: bool
配信メッセージの詳細
- status_code: int
配信リクエストのステータスコード
- description: str
配信リクエストの結果
- executed_at: int
配信時間
- class emo_platform.response.EmoBroadcastInfo(*, message: emo_platform.response.EmoBroadcastMessage, details: List[emo_platform.response.EmoBroadcastMessageDetail])
Bases:
emo_platform.response.PrintModel
配信メッセージの詳細情報
- message: emo_platform.response.EmoBroadcastMessage
配信メッセージの情報
- details: List[emo_platform.response.EmoBroadcastMessageDetail]
配信メッセージの詳細
- class emo_platform.response.EmoKind(*, kind: str)
Bases:
emo_platform.response.PrintModel
様々な種別に関する情報
- kind: str
- class emo_platform.response.EmoWebhookTriggerWord(*, trigger_word: emo_platform.response.EmoKind)
Bases:
emo_platform.response.PrintModel
Webhookで受信したトリガーワードイベントに関する情報
- trigger_word: emo_platform.response.EmoKind
トリガーワードの種別の情報
- default_bocco
「ねえボッコ」の呼びかけに反応した場合
- default_emo
「エモちゃん」の呼びかけに反応した場合
- user_nickname
ニックネームでの呼びかけに反応した場合
- class emo_platform.response.EmoPerformedBy(*, performed_by: str)
Bases:
emo_platform.response.PrintModel
録音が実行されたきっかけに関する情報
- performed_by: str
録音が実行されたきっかけのアクションを示す値
- record_button
本体の録音ボタンが押された場合の値
- vui_command
音声コマンドでの録音命令が実施された場合の値
- class emo_platform.response.EmoWebhookRecording(*, recording: emo_platform.response.EmoPerformedBy)
Bases:
emo_platform.response.PrintModel
Webhookで受信した録音イベントに関する情報
- recording: emo_platform.response.EmoPerformedBy
録音が実行されたきっかけに関する情報
- class emo_platform.response.EmoMinutes(*, minutes: str)
Bases:
emo_platform.response.PrintModel
Webhookで受信した音声イベントコマンドのタイマーでセットした時間(分)に関する情報
- minutes: str
- class emo_platform.response.EmoTime(*, time: str)
Bases:
emo_platform.response.PrintModel
Webhookで受信した音声イベントコマンドのアラームのセット時刻に関する情報
- time: str
- class emo_platform.response.EmoArea(*, area: str)
Bases:
emo_platform.response.PrintModel
Webhookで受信した音声イベントコマンドの天気の場所に関する情報
- area: str
- class emo_platform.response.EmoVolume(*, volume: str)
Bases:
emo_platform.response.PrintModel
Webhookで受信した音声イベントコマンドの音量の値に関する情報
- volume: str
- class emo_platform.response.EmoVuiCommand(*, kind: str, parameters: Union[emo_platform.response.EmoMinutes, emo_platform.response.EmoTime, emo_platform.response.EmoArea, emo_platform.response.EmoVolume])
Bases:
emo_platform.response.PrintModel
音声コマンドに関する情報
- kind: str
音声コマンドの種別を示す値
- parameters: Union[emo_platform.response.EmoMinutes, emo_platform.response.EmoTime, emo_platform.response.EmoArea, emo_platform.response.EmoVolume]
「エモちゃん、10時にアラーム設定して」のように、パラメータ付きで実行されたVUIの詳細を示す値
「エモちゃん、しゃべって」のように、パラメータを持たない音声コマンドが実行された場合はparametersの値は付与されません。
- class emo_platform.response.EmoWebhookVuiCommand(*, vui_command: Union[emo_platform.response.EmoVuiCommand, emo_platform.response.EmoKind])
Bases:
emo_platform.response.PrintModel
Webhookで受信した音声コマンドイベントに関する情報
- vui_command: Union[emo_platform.response.EmoVuiCommand, emo_platform.response.EmoKind]
音声コマンドとトリガワードの種類に関する情報
- class emo_platform.response.EmoWebhookMotion(*, motion: emo_platform.response.EmoKind)
Bases:
emo_platform.response.PrintModel
Webhookで受信したモーション実行完了イベントに関する情報
- motion: emo_platform.response.EmoKind
実行されたモーションの種別を示す値
- class emo_platform.response.EmoTalk(*, talk: str)
Bases:
emo_platform.response.PrintModel
BOCCO emoが発話した内容に関する情報
- talk: str
発話した内容を示すテキスト
- class emo_platform.response.EmoWebhookEmoTalk(*, emo_talk: emo_platform.response.EmoTalk)
Bases:
emo_platform.response.PrintModel
Webhookで受信した発話完了イベントに関する情報
- emo_talk: emo_platform.response.EmoTalk
BOCCO emoが発話した内容に関する情報
- class emo_platform.response.EmoWebhookAccel(*, accel: emo_platform.response.EmoKind)
Bases:
emo_platform.response.PrintModel
Webhookで受信した内蔵加速度センサイベントに関する情報
- accel: emo_platform.response.EmoKind
レーダセンサが検知したイベントを示す値
- normal
直立静止している状態に移行した場合の値
- upside_down
逆さまの状態に移行した場合の値
- lying_down
横倒しの状態に移行した場合の値
- shaken
揺さぶられた状態に移行した場合の値
- beaten
つつかれた状態に移行した場合の値
- dropped
落とされた状態に移行した場合の値
- lift
持ち上げられた状態に移行した場合の値
- class emo_platform.response.EmoWebhookIlluminance(*, illuminance: emo_platform.response.EmoKind)
Bases:
emo_platform.response.PrintModel
Webhookで受信した内蔵照度センサイベントに関する情報
- illuminance: emo_platform.response.EmoKind
照度センサが検知したイベントを示す値
- brighter
明るくなった時の値
- darker
暗くなった時の値
- class emo_platform.response.EmoRadar(*, begin: bool, end: bool, near_begin: bool, near_end: bool)
Bases:
emo_platform.response.PrintModel
レーダセンサが検知したイベントの情報
- begin: bool
BOCCO emoの近くに人がいる時に、true が設定されます。
- end: bool
BOCCO emoの近くから人が立ち去った時に、true が設定されます。
- near_begin: bool
BOCCO emoのすぐ近くに人がいる時に、true が設定されます。
- near_end: bool
BOCCO emoのすぐ近くから人が立ち去った時に、true が設定されます。
- class emo_platform.response.EmoWebhookRadar(*, radar: emo_platform.response.EmoRadar)
Bases:
emo_platform.response.PrintModel
Webhookで受信した内蔵レーダーセンサイベントに関する情報
- radar: emo_platform.response.EmoRadar
レーダセンサが検知したイベントの情報
- class emo_platform.response.EmoWebhookMessage(*, message: emo_platform.response.EmoMessageInfo)
Bases:
emo_platform.response.PrintModel
Webhookで受信した新規メッセージ受信イベントに関する情報
- message: emo_platform.response.EmoMessageInfo
BOCCO emoが受信したメッセージを示す値
- class emo_platform.response.EmoWebhookSensorMessage(*, sequence: int, unique_id: str, user: emo_platform.response.EmoRoomMember, message_type: str, sensor_action: str, lang: str)
Bases:
emo_platform.response.PrintModel
センサの通知内容
- unique_id: str
センサ通知のid
- user: emo_platform.response.EmoRoomMember
センサのメンバー情報
- message_type: str
メッセージの種類
sensor固定です。
- sensor_action: str
センサ通知の種別
- lang: str
言語設定
- class emo_platform.response.EmoWebhookMovementSensor(*, movement_sensor: emo_platform.response.EmoWebhookSensorMessage)
Bases:
emo_platform.response.PrintModel
Webhookで受信した振動センサ反応イベントに関する情報
- movement_sensor: emo_platform.response.EmoWebhookSensorMessage
振動センサの通知内容
- class emo_platform.response.EmoWebhookLockSensor(*, lock_sensor: emo_platform.response.EmoWebhookSensorMessage)
Bases:
emo_platform.response.PrintModel
Webhookで受信した鍵センサ反応イベントに関する情報
- lock_sensor: emo_platform.response.EmoWebhookSensorMessage
鍵センサの通知内容
- class emo_platform.response.EmoWebhookHumanSensor(*, human_sensor: emo_platform.response.EmoWebhookSensorMessage)
Bases:
emo_platform.response.PrintModel
Webhookで受信した人感センサ反応イベントに関する情報
- human_sensor: emo_platform.response.EmoWebhookSensorMessage
人感センサの通知内容
- class emo_platform.response.EmoWebhookRoomSensor(*, room_sensor: emo_platform.response.EmoWebhookSensorMessage)
Bases:
emo_platform.response.PrintModel
Webhookで受信した部屋センサ反応イベントに関する情報
- room_sensor: emo_platform.response.EmoWebhookSensorMessage
部屋センサの通知内容
- class emo_platform.response.EmoWebhookBody(*, request_id: str, uuid: str, serial_number: str, nickname: str, timestamp: int, event: str, data: Union[emo_platform.response.EmoWebhookTriggerWord, emo_platform.response.EmoWebhookRecording, emo_platform.response.EmoWebhookVuiCommand, emo_platform.response.EmoWebhookMotion, emo_platform.response.EmoWebhookEmoTalk, emo_platform.response.EmoWebhookAccel, emo_platform.response.EmoWebhookIlluminance, emo_platform.response.EmoWebhookRadar, emo_platform.response.EmoWebhookMessage, emo_platform.response.EmoWebhookMovementSensor, emo_platform.response.EmoWebhookLockSensor, emo_platform.response.EmoWebhookHumanSensor, emo_platform.response.EmoWebhookRoomSensor, dict], receiver: str)
Bases:
emo_platform.response.PrintModel
受信したWebhookの内容
- request_id: str
リクエストの同一性を示す、一意の文字列
- uuid: str
BOCCO emoを識別する一意なID
- serial_number: str
BOCCO emoの製造番号
- nickname: str
BOCCO emoに設定されているニックネーム
- timestamp: int
イベントが発生した時刻を示すUNIX Timestamp
- data: Union[emo_platform.response.EmoWebhookTriggerWord, emo_platform.response.EmoWebhookRecording, emo_platform.response.EmoWebhookVuiCommand, emo_platform.response.EmoWebhookMotion, emo_platform.response.EmoWebhookEmoTalk, emo_platform.response.EmoWebhookAccel, emo_platform.response.EmoWebhookIlluminance, emo_platform.response.EmoWebhookRadar, emo_platform.response.EmoWebhookMessage, emo_platform.response.EmoWebhookMovementSensor, emo_platform.response.EmoWebhookLockSensor, emo_platform.response.EmoWebhookHumanSensor, emo_platform.response.EmoWebhookRoomSensor, dict]
発生したイベントの詳細を示すオブジェクト
イベントの種類に応じてデータ構造が変わります。
Attention
eventの種類がfunction_button.pressedの時、dataは空の辞書 {} となります。
- emo_platform.response.parse_webhook_body(body: dict) emo_platform.response.EmoWebhookBody
受信したwebhookリクエストのボディのJSONペイロードのパース
- Parameters
body (dict) – 受信したwebhookリクエストのボディのJSONペイロード
- Returns
emo_webhook_body – パースされたボディ
- Return type