プッシュ API

シグナリングで使用している WebSocket や DataChannel を活用できる API です。 この機能を使うことでアプリケーション側でプッシュの仕組みを用意する必要がなくなります。

PushChannel

バージョン 2.6.0 で追加。

x-sora-target:

Sora_20160711.PushChannel

指定したチャネル全員にプッシュ通知を送ります。

キー

channel_id

string

data

object

data には全員に通知する値 (JSON object) を指定してください。 クライアントには data に指定した値 (JSON object) が送られます。

$ curl -sS \
    -X POST \
    http://127.0.0.1:3000/ \
    -H "x-sora-target: Sora_20160711.PushChannel" \
    --json '{"channel_id":"sora","data":{"spam":"egg"}}' \
    | jq .
{
    "data": {
        "spam": "egg"
    },
    "type": "push"
}

PushClient

バージョン 2.6.0 で追加。

x-sora-target:

Sora_20160711.PushClient

指定したチャネルのクライアントにプッシュ通知を送ります。

キー

channel_id

string

client_id

string

data

object

複数の接続に同一の client_id が指定されていた場合、複数の接続にプッシュ通知が送られます。

$ curl -sS \
    -X POST \
    http://127.0.0.1:3000/ \
    -H "x-sora-target: Sora_20160711.PushClient" \
    --json '{"channel_id":"sora","client_id":"C0YTCRZM715BKATBXWFPKTYGRM","data":{"spam":"egg"}}' \
    | jq .
{
    "data": {
        "spam": "egg"
    },
    "type": "push"
}

PushConnection

バージョン 2.6.0 で追加。

x-sora-target:

Sora_20160711.PushConnection

指定したチャネルの接続にプッシュ通知を送ります。

キー

channel_id

string

connection_id

string

data

object

$ curl -sS \
    -X POST \
    http://127.0.0.1:3000/ \
    -H "x-sora-target: Sora_20160711.PushConnection" \
    --json '{"channel_id":"sora","connection_id":"C0YTCRZM715BKATBXWFPKTYGRM","data":{"spam":"egg"}}' \
    | jq .
{
    "data": {
        "spam": "egg"
    },
    "type": "push"
}

PushChannelByRole

バージョン 2020.3 で追加。

x-sora-target:

Sora_20201120.PushChannelByRole

指定したチャネルの指定したロールにプッシュ通知を送ります。

キー

channel_id

string

role

string (sendrecv | sendonly | recvonly)

data

object

$ curl -sS \
    -X POST \
    http://127.0.0.1:3000/ \
    -H "x-sora-target: Sora_20201120.PushChannelByRole" \
    --json '{"channel_id":"sora","role":"sendrecv","data":{"spam":"egg"}}' \
    | jq .
    {
        "data": {
            "spam": "egg"
        },
        "type": "push"
    }