チュートリアル

概要

Sora Cloud は WebRTC SFU Sora のクラウド版です。

用語

組織 (Org)

Sora Cloud を契約する法人または団体に割り当てられる Sora Cloud を利用する際の単位です

メンバー

組織の中でアカウントを登録する個人です

アカウント

メンバーのメールアドレス 1 つに対して 1 つのアカウントが作成されます

1 つの組織で最大 5 つのアカウントが登録できます

API キー

Sora に接続する際に利用する JWT を作成するために必要なキーです

プロジェクト (Project)

複数の異なるサービスや検証環境など、利用状況を分けて管理する際の単位です

1 つの組織で最大 5 つのプロジェクトを作成できます

プロジェクト ID

Sora に接続する際に利用するプロジェクト単位のユニークな ID です

HTTP クライアント

HTTPiecurl などの CLI から利用可能なツールです

Sora 開発ツール

https://sora-devtools.shiguredo.jp/

Sora Cloud を利用する準備をする

プロジェクトを作成する

管理コンソールから Projects タブをクリックし、 Create project ボタンを押し、プロジェクトを作成してください。

https://i.gyazo.com/06a5f0458669ea2509080f55c87c2716.png

プロジェクト名に好きな文字列を入力してください。ここでは HamHamHam としています。

https://i.gyazo.com/5e02672eb083b55ac7f783cf81ccc60a.png

Sora へ繋いでみる

前提

ブラウザは最新のブラウザを利用してください。 Chrome や Edge をお勧めします。

Sora 開発ツールを使った動作確認

プロジェクトの ... をクリックして Create Access Token をクリックしてください。

https://i.gyazo.com/f98ab2e1baba285bdae6b9e4663a9909.png

チャネル名に好きな文字列を入力してください。ここでは sora-devtools としています。

https://i.gyazo.com/896bdfcb147e168ac8686ee5e7fc8839.png

文字列を入力したら Create Access Token をクリックしてください。

https://i.gyazo.com/9504b4257a7c9573ed24b92042b2bc70.png

Sora DevTools の URL をクリップボードにコピーしたら、ブラウザに貼り付けてください。

https://i.gyazo.com/a832740c092f2a173c0129740e43caa8.png

後は、connect を押すことで接続されます。もう一つタブを開いて同じように connect を押してみてください。 それぞれの音声や映像が配信されたら成功です。

同時接続数を確認する

3 つの接続を繋いだまま Sora Cloud の API で今どのくらいの同時接続数があるか確認してみます。

API キーはプロジェクトから ... をクリックして Edit Project をクリックしてください。

https://i.gyazo.com/76acd683ffc648815b04454dc2f17bce.png

Security の API Key (Primary API Key) からクリップポードにコピーして利用してください。

https://i.gyazo.com/edc43949da40807a5291e676539dec9c.png
$ https -A bearer -a <API-KEY> \
    POST api.sora-cloud.shiguredo.app/orgs/get-total-live-concurrent-connections
HTTP/1.1 200 OK
Connection: keep-alive
Keep-Alive: timeout=5
content-length: 224
content-type: application/json; charset=UTF-8
date: Sat, 16 Apr 2022 11:28:42 GMT

3

Sora Cloud で利用できる様々な API は Sora Cloud API にありますのでご確認ください。

Sora の API を利用してみる

$ https -A bearer -a <API-KEY> \
    POST api.sora-cloud.shiguredo.app/sora-api \
    x-sora-target:'Sora_20201013.ListChannelConnections' \
    channel_id='sora-cloud@25PO5TGFD26VB62G7C7DFAAYGA4J3CJN'

HTTP/1.1 200 OK
CF-Cache-Status: DYNAMIC
CF-Ray: 70db04327e3fefb2-NRT
Connection: keep-alive
Content-Encoding: gzip
Content-Type: applicaution/json
Date: Thu, 19 May 2022 07:11:04 GMT
Server: cloudflare
Transfer-Encoding: chunked
Vary: Accept-Encoding
alt-svc: h3=":443"; ma=86400, h3-29=":443"; ma=86400

[
    {
        "audio": {
            "codec_type": "OPUS"
        },
        "bundle_id": "TP8RRG5SN54DD7VBMHZDB0SJW0",
        "channel_id": "sora-cloud@25PO5TGFD26VB62G7C7DFAAYGA4J3CJN",
        "client_id": "TP8RRG5SN54DD7VBMHZDB0SJW0",
        "connection_id": "TP8RRG5SN54DD7VBMHZDB0SJW0",
        "created_time": 1652944257911575,
        "created_timestamp": "2022-05-19T07:10:57.911575Z",
        "event_metadata": "REDACTED",
        "multistream": true,
        "role": "sendrecv",
        "session_id": "47Q2QVK9DD7DHCZ8W37NPJNADM",
        "simulcast": false,
        "spotlight": false,
        "video": {
            "bit_rate": 500,
            "codec_type": "VP9"
        }
    },
    {
        "audio": {
            "codec_type": "OPUS"
        },
        "bundle_id": "MHJ8PB68MD2FFB188AR8VT0S2M",
        "channel_id": "sora-cloud@25PO5TGFD26VB62G7C7DFAAYGA4J3CJN",
        "client_id": "MHJ8PB68MD2FFB188AR8VT0S2M",
        "connection_id": "MHJ8PB68MD2FFB188AR8VT0S2M",
        "created_time": 1652944261045734,
        "created_timestamp": "2022-05-19T07:11:01.045734Z",
        "event_metadata": "REDACTED",
        "multistream": true,
        "role": "sendrecv",
        "session_id": "47Q2QVK9DD7DHCZ8W37NPJNADM",
        "simulcast": false,
        "spotlight": false,
        "video": {
            "bit_rate": 500,
            "codec_type": "VP9"
        }
    }
]

アプリケーション連携

Sora のドキュメントにアプリケーション連携チュートリアルがありますので、こちらをご確認ください。

https://sora-doc.shiguredo.jp/APP_INTEGRATE_TUTORIAL

ウェブフック署名

Sora Cloud のウェブフックには署名が付与されています。 署名をチェックすることで Sora Cloud からのリクエストであることを確認することができます。

署名 をご確認ください。

© Copyright 2024, Shiguredo Inc. Created using Sphinx 8.0.2