開発者向けドキュメント
ボットの追加・字幕の見方・応援して機能を強化など、プログラムを書かずに使う方法は使い方にあります。
あなたのプログラムは、公式の表示ページと同じ、話している人ごとのリアルタイムの発話を、API で受け取れます。
何が作れるか
| 作りたいもの | 使う API | ガイド |
|---|---|---|
| OBS の字幕・自作のオーバーレイ・配信画面 | WebSocket(Subscribe) | オーバーレイ |
| Discord・Slack などへの中継ボット、翻訳・要約ボット | WebSocket(Subscribe) | ボットへの中継 |
| 議事録の保存・書き出し・検索 | HTTP(書き出し)+ WebSocket | 記録と書き出し |
| 発言量・話者ごとの統計 | HTTP(書き出し)+ WebSocket | 分析 |
| Discord 以外の音声(マイク・録音・別の通話アプリ)の文字起こし | WebSocket(Ingest) | 音声を送る |
| 文字起こしが終わるたびの記録の書き出し・文字起こしの最初からの発言の購読 | Webhook + HTTP(書き出し)+ WebSocket | Webhook リファレンス |
公式の表示ページ・配信用オーバーレイの見た目を変えるだけなら、プログラムは要りません。見た目の変え方は表示ページの URL パラメータと CSSに、表示ページのリンクの OBS への貼り方は使い方の表示ページと OBSにあります。
始めるのに要るもの
| 資格情報 | 誰がどこで出すか | ブラウザ・OBS に置いてよいか |
|---|---|---|
API キー(mjk_live_…) |
ボットを入れた Discord サーバーの管理者が、管理画面で作る(手順) | 置かない。サーバー側のコードだけに置く(キーが漏れると、キーを手に入れた人が、その Discord サーバーの記録を読んだり消したりできる) |
| セッショントークン(使えるセッションも権限も 1 つだけで、期限がある) | Discord サーバーのメンバーが Discord で /link を実行すると、文字おこしくんが、トークンの入ったリンクを返答のボタンで渡す。API キーを持つあなたのサーバー側のコードも、トークンを発行できる |
置いてよい |
Webhook の署名のシークレット(whsec_…。Webhook を使うときだけ) |
ボットを入れた Discord サーバーの管理者が管理画面で Webhook の送信先を作ると、管理画面がシークレットを 1 回だけ表示する(送信先を登録する) | 置かない。Webhook を受け取るサーバー側のコードだけに置く(シークレットを手に入れた人は文字おこしくんからの知らせを装える) |
ブラウザからは、文字おこしくんの HTTP API を呼べません(文字おこしくんの HTTP API は CORS のヘッダーを返しません)。HTTP API は、あなたのサーバー側のコードから呼んでください。
次に読む: クイックスタート(字幕を受け取るまで)
仕様ファイルと参照実装
- 機械可読な仕様: openapi.yaml(HTTP と Webhook の本文〔
webhooks〕。OpenAPI 3.1)・asyncapi.yaml(WebSocket。AsyncAPI 3.1)・JSON Schema 2020-12(common・subscribe-client-message・subscribe-server-message・ingest-client-message・ingest-server-message)・errors.json - 参照実装(依存なし。そのままコピーして使える): WebSocket で受け取るもの mojiokoshi-subscribe.js・mojiokoshi_subscribe.py、HTTP API を呼ぶもの(サーバー側だけ) mojiokoshi-http.ts・mojiokoshi_http.py、Webhook の署名を確かめるもの(サーバー側だけ) mojiokoshi-webhook.ts・mojiokoshi_webhook.py
- 文字おこしくんは、TypeScript の SDK を npm にまだ公開していません。参照実装を使ってください。
コーディングエージェントにクライアントのコードを書かせるときは、llms.txt(全文は llms-full.txt)か Agent Skill、各ページの Markdown 版(同じパスの .md)をエージェントに渡してください。