VideoChat - TakayukiHoshi1984/DeviceConnect-Spec GitHub Wiki
スマートデバイスが持つビデオチャットを操作する機能を提供するプロファイル。
| API | 概要 |
|---|---|
| GET /gotapi/videoChat/address | 接続先のアドレス一覧を取得する。 |
| POST /gotapi/videoChat/call | VideoChatの接続を行う。 |
| DELETE /gotapi/videoChat/call | 接続中の VideoChat の切断を行う。 |
| GET /gotapi/videoChat/onCall | 通話開始イベントを取得する。 |
| PUT /gotapi/videoChat/onCall | 通話開始イベントの受信を開始する。 |
| DELETE /gotapi/videoChat/onCall | 通話開始イベントの受信を停止する。 |
| GET /gotapi/videoChat/onHangup | VideoChatの切断イベントを取得する。 |
| PUT /gotapi/videoChat/onHangup | VideoChatの切断イベントの受信を開始する。 |
| DELETE /gotapi/videoChat/onHangup | VideoChatの切断イベントの受信を停止する。 |
| GET /gotapi/videoChat/onIncoming | 他デバイスからの着信イベントを取得する。 |
| PUT /gotapi/videoChat/onIncoming | 他デバイスからの着信イベントの通知を開始する。 |
| DELETE /gotapi/videoChat/onIncoming | 他デバイスからの着信イベントの通知を停止する。 |
| GET /gotapi/videoChat/profile | プロフィール情報を取得する。 |
| PUT /gotapi/videoChat/profile | プロフィールを更新する。 |
one-shot
接続先のアドレス一覧を取得する。
WebRTCサービスによって情報の内容が違ってくる。
| 物理名 | データ型 | 必須 | 説明 |
|---|---|---|---|
| serviceId | string | Yes | サービスID。 |
| addressId | string | No | アドレスID。指定しない場合は、接続できるすべてのアドレスを返却する。 指定した場合は、接続先アドレスに対応する情報のみ取得できる。 |
| config | string | No | コンフィグ。必要に応じてAPIキーなどを格納する任意の文字列。 |
| 論理名 | 物理名 | データ型 | 必須 | 説明 | |
|---|---|---|---|---|---|
| 処理結果 | result | integer | Yes | 0:正常応答 0以外:異常応答 |
|
| システム名 | product | string | Yes | DeviceConnectシステムの名前。 | |
| システムバージョン | version | string | Yes | DeviceConnectシステムのバージョン名。 | |
| 署名 | hmac | string | No | レスポンスに対する署名。 アプリケーション側から事前にHMACキーを共有されていた場合は必須。 |
|
| アドレス一覧 | addresses | array(object) | Yes | ||
| デバイス名 | name | string | Yes | 接続先のデバイス名。 | |
| アドレスID | addressId | string | Yes | 接続先のアドレスID。 | |
| 状態 | status | string | Yes | デバイスの状態
|
|
{
"product" : "Example System",
"version" : "1.0",
"result" : 0,
"addresses" : [ {
"name" : "Sample 1",
"addressId" : "xxxxxx",
"status" : "idle"
}, {
"name" : "Sample 2",
"addressId" : "xxxxx",
"status" : "calling"
}, {
"name" : "Sample 3",
"addressId" : "xxxxx",
"status" : "talking"
} ]
}
one-shot
VideoChatの接続を行う。
WebRTCサービスによって挙動が違ってくる。
| 物理名 | データ型 | 必須 | 説明 |
|---|---|---|---|
| serviceId | string | Yes | サービスID |
| addressId | string | Yes | 接続先のアドレス。 |
| video | string | No | 映像リソースURI。
省略された場合は、trueと同じ扱い。 |
| audio | string | No | 音声リソースURI。
省略された場合は、trueと同じ扱い。 |
| config | string | No | コンフィグ。必要に応じてAPIキーなどを格納する任意の文字列。 必要に応じてAPIキーなどを格納する任意の文字列。 |
| outputs | string | No | 出力設定。
ホストデバイスの画面上に表示する場合はhostを指定する。 省略された場合はhost指定として動作する。 アプリケーション等でURIを参照して表示する場合は、appを指定する。 |
| audioSampleRate | integer | No | サンプリング周波数。
サンプリング周波数を設定する。省略された場合は48000。 |
| audioBitDepth | string | No | 量子化ビット数。
量子化ビット数を設定する。省略された場合はPCM_FLOAT。 |
| audioChannel | string | No | チャンネル数。
チャンネル数を設定する。省略され場合は、Monaural。 |
| 論理名 | 物理名 | データ型 | 必須 | 説明 |
|---|---|---|---|---|
| 処理結果 | result | integer | Yes | 0:正常応答 0以外:異常応答 |
| システム名 | product | string | Yes | DeviceConnectシステムの名前。 |
| システムバージョン | version | string | Yes | DeviceConnectシステムのバージョン名。 |
| 署名 | hmac | string | No | レスポンスに対する署名。 アプリケーション側から事前にHMACキーを共有されていた場合は必須。 |
{
"product" : "Example System",
"version" : "1.0",
"result" : 0
}
one-shot
接続中の VideoChat の切断を行う。
WebRTCサービスによって挙動が違ってくる。
| 物理名 | データ型 | 必須 | 説明 |
|---|---|---|---|
| serviceId | string | Yes | サービスID。 |
| addressId | string | Yes | 接続先のアドレス。 |
| config | string | No | コンフィグ。必要に応じてAPIキーなどを格納する任意の文字列。 |
| 論理名 | 物理名 | データ型 | 必須 | 説明 |
|---|---|---|---|---|
| 処理結果 | result | integer | Yes | 0:正常応答 0以外:異常応答 |
| システム名 | product | string | Yes | DeviceConnectシステムの名前。 |
| システムバージョン | version | string | Yes | DeviceConnectシステムのバージョン名。 |
| 署名 | hmac | string | No | レスポンスに対する署名。 アプリケーション側から事前にHMACキーを共有されていた場合は必須。 |
{
"product" : "Example System",
"version" : "1.0",
"result" : 0
}
one-shot
通話開始イベントを取得する。
プラグイン側でキャッシュしている最新のイベントメッセージを1つ取得する。
| 物理名 | データ型 | 必須 | 説明 |
|---|---|---|---|
| serviceId | string | Yes | サービスID。 |
| config | string | No | コンフィグ。必要に応じてAPIキーなどを格納する任意の文字列。 |
| 論理名 | 物理名 | データ型 | 必須 | 説明 | |||
|---|---|---|---|---|---|---|---|
| 処理結果 | result | integer | Yes | 0:正常応答 0以外:異常応答 |
|||
| システム名 | product | string | Yes | DeviceConnectシステムの名前。 | |||
| システムバージョン | version | string | Yes | DeviceConnectシステムのバージョン名。 | |||
| 署名 | hmac | string | No | レスポンスに対する署名。 アプリケーション側から事前にHMACキーを共有されていた場合は必須。 |
|||
| 発信元情報 | oncall | object | Yes | ||||
| デバイス名 | name | string | Yes | 発信元のデバイス名。 | |||
| アドレスID | addressId | string | Yes | 発信元のアドレスID。 | |||
| 相手局リソース情報 | remote | object | No | 相手局リソース情報 | |||
| 映像関連情報 | video | object | No | 映像関連情報 | |||
| 映像リソースURI | uri | string | No | 映像のリソースURI。省略された場合は映像無し。 但し、videoとaudioの両方が省略されることは無い |
|||
| MIMEタイプ | mimeType | string | No | 映像リソースのMIMEタイプ。 | |||
| フレームレート | frameRate | float | No | 映像リソースのフレームレート。 | |||
| 幅 | width | integer | No | 通知時点での幅(可変) | |||
| 高さ | height | integer | No | 通知時点での高さ(可変) | |||
| 音声関連情報 | audio | object | No | 音声関連情報 | |||
| 音声リソースURI | uri | string | No | 音声のリソースURI。省略された場合は音声無し。 但し、videoとaudioの両方が省略されることは無い。 |
|||
| MIMEタイプ | mimeType | string | No | 音声リソースのMIMEタイプ。 | |||
| サンプルレート | sampleRate | integer | No | 音声リソースのサンプルレート。 | |||
| チャンネル数 | channels | integer | No | 音声リソースのチャンネル数。 | |||
| サンプルサイズ | sampleSize | integer | No | 音声リソースのサンプルサイズ。 | |||
| ブロックサイズ | blockSize | integer | No | 音声リソースのブロックサイズ。 | |||
| 自局リソース情報 | local | object | No | 自局リソース情報 | |||
| 映像関連情報 | video | object | No | 映像関連情報 | |||
| 映像リソースURI | uri | string | No | 映像のリソースURI。省略された場合は映像無し。 但し、videoとaudioの両方が省略されることは無い |
|||
| MIMEタイプ | mimeType | string | No | 映像リソースのMIMEタイプ。 | |||
| フレームレート | frameRate | float | No | 映像リソースのフレームレート。 | |||
| 幅 | width | integer | No | 通知時点での幅(可変) | |||
| 高さ | height | integer | No | 通知時点での高さ(可変) | |||
| 音声関連情報 | audio | object | No | 音声関連情報 | |||
| 音声リソースURI | uri | string | No | 音声のリソースURI。省略された場合は音声無し。 但し、videoとaudioの両方が省略されることは無い。 |
|||
| MIMEタイプ | mimeType | string | No | 音声リソースのMIMEタイプ。 | |||
| サンプルレート | sampleRate | integer | No | 音声リソースのサンプルレート。 | |||
| チャンネル数 | channels | integer | No | 音声リソースのチャンネル数。 | |||
| サンプルサイズ | sampleSize | integer | No | 音声リソースのサンプルサイズ。 | |||
| ブロックサイズ | blockSize | integer | No | 音声リソースのブロックサイズ。 | |||
{
"product" : "Example System",
"version" : "1.0",
"result" : 0,
"oncall" : [ {
"name" : "xxxx",
"addressId" : "xxxx"
} ]
}
event
通話開始イベントの受信を開始する。
スマートデバイスでサポートしていないパラメータがある場合には、 そのパラメータを省略する。
| 物理名 | データ型 | 必須 | 説明 |
|---|---|---|---|
| serviceId | string | Yes | サービスID。 |
| config | string | No | コンフィグ。必要に応じてAPIキーなどを格納する任意の文字列。 |
| interval | long | No | イベント受信間隔。単位:mSec |
| 論理名 | 物理名 | データ型 | 必須 | 説明 |
|---|---|---|---|---|
| 処理結果 | result | integer | Yes | 0:正常応答 0以外:異常応答 |
| システム名 | product | string | Yes | DeviceConnectシステムの名前。 |
| システムバージョン | version | string | Yes | DeviceConnectシステムのバージョン名。 |
| 署名 | hmac | string | No | レスポンスに対する署名。 アプリケーション側から事前にHMACキーを共有されていた場合は必須。 |
{
"product" : "Example System",
"version" : "1.0",
"result" : 0
}
| 論理名 | 物理名 | データ型 | 必須 | 説明 | |||
|---|---|---|---|---|---|---|---|
| サービスID | serviceId | string | Yes | イベントを送信したサービスのID | |||
| プロファイル名 | profile | string | Yes | プロファイル名。 | |||
| インターフェース名 | interface | string | Yes | インターフェース名。 | |||
| アトリビュート名 | attribute | string | Yes | アトリビュート名。 | |||
| 発信元情報 | oncall | object | Yes | ||||
| デバイス名 | name | string | Yes | 発信元のデバイス名。 | |||
| アドレスID | addressId | string | Yes | 発信元のアドレスID。 | |||
| 相手局リソース情報 | remote | object | No | 相手局リソース情報 | |||
| 映像関連情報 | video | object | No | 映像関連情報 | |||
| 映像リソースURI | uri | string | No | 映像のリソースURI。省略された場合は映像無し。 但し、videoとaudioの両方が省略されることは無い |
|||
| MIMEタイプ | mimeType | string | No | 映像リソースのMIMEタイプ。 | |||
| フレームレート | frameRate | float | No | 映像リソースのフレームレート。 | |||
| 幅 | width | integer | No | 通知時点での幅(可変) | |||
| 高さ | height | integer | No | 通知時点での高さ(可変) | |||
| 音声関連情報 | audio | object | No | 音声関連情報 | |||
| 音声リソースURI | uri | string | No | 音声のリソースURI。省略された場合は音声無し。 但し、videoとaudioの両方が省略されることは無い。 |
|||
| MIMEタイプ | mimeType | string | No | 音声リソースのMIMEタイプ。 | |||
| サンプルレート | sampleRate | integer | No | 音声リソースのサンプルレート。 | |||
| チャンネル数 | channels | integer | No | 音声リソースのチャンネル数。 | |||
| サンプルサイズ | sampleSize | integer | No | 音声リソースのサンプルサイズ。 | |||
| ブロックサイズ | blockSize | integer | No | 音声リソースのブロックサイズ。 | |||
| 自局リソース情報 | local | object | No | 自局リソース情報 | |||
| 映像関連情報 | video | object | No | 映像関連情報 | |||
| 映像リソースURI | uri | string | No | 映像のリソースURI。省略された場合は映像無し。 但し、videoとaudioの両方が省略されることは無い |
|||
| MIMEタイプ | mimeType | string | No | 映像リソースのMIMEタイプ。 | |||
| フレームレート | frameRate | float | No | 映像リソースのフレームレート。 | |||
| 幅 | width | integer | No | 通知時点での幅(可変) | |||
| 高さ | height | integer | No | 通知時点での高さ(可変) | |||
| 音声関連情報 | audio | object | No | 音声関連情報 | |||
| 音声リソースURI | uri | string | No | 音声のリソースURI。省略された場合は音声無し。 但し、videoとaudioの両方が省略されることは無い。 |
|||
| MIMEタイプ | mimeType | string | No | 音声リソースのMIMEタイプ。 | |||
| サンプルレート | sampleRate | integer | No | 音声リソースのサンプルレート。 | |||
| チャンネル数 | channels | integer | No | 音声リソースのチャンネル数。 | |||
| サンプルサイズ | sampleSize | integer | No | 音声リソースのサンプルサイズ。 | |||
| ブロックサイズ | blockSize | integer | No | 音声リソースのブロックサイズ。 | |||
{
"servieId" : "xxxxx",
"profile" : "videochat",
"attribute" : "oncall",
"oncall" : [ {
"name" : "xxxx",
"addressId" : "xxxx"
} ]
}
event
通話開始イベントの受信を停止する。
スマートデバイスでサポートしていないパラメータがある場合には、 そのパラメータを省略する。
| 物理名 | データ型 | 必須 | 説明 |
|---|---|---|---|
| serviceId | string | Yes | サービスID。 |
| 論理名 | 物理名 | データ型 | 必須 | 説明 |
|---|---|---|---|---|
| 処理結果 | result | integer | Yes | 0:正常応答 0以外:異常応答 |
| システム名 | product | string | Yes | DeviceConnectシステムの名前。 |
| システムバージョン | version | string | Yes | DeviceConnectシステムのバージョン名。 |
| 署名 | hmac | string | No | レスポンスに対する署名。 アプリケーション側から事前にHMACキーを共有されていた場合は必須。 |
{
"product" : "Example System",
"version" : "1.0",
"result" : 0
}
one-shot
VideoChatの切断イベントを取得する。
プラグイン側でキャッシュしている最新のイベントメッセージを1つ取得する。
| 物理名 | データ型 | 必須 | 説明 |
|---|---|---|---|
| serviceId | string | Yes | サービスID |
| config | string | No | コンフィグ。必要に応じてAPIキーなどを格納する任意の文字列。 |
| 論理名 | 物理名 | データ型 | 必須 | 説明 | |
|---|---|---|---|---|---|
| 処理結果 | result | integer | Yes | 0:正常応答 0以外:異常応答 |
|
| システム名 | product | string | Yes | DeviceConnectシステムの名前。 | |
| システムバージョン | version | string | Yes | DeviceConnectシステムのバージョン名。 | |
| 署名 | hmac | string | No | レスポンスに対する署名。 アプリケーション側から事前にHMACキーを共有されていた場合は必須。 |
|
| 接続先情報 | hangup | object | Yes | 接続先のデバイスの情報を格納したオブジェクト。 | |
| アドレス | addressId | string | Yes | 接続先のアドレスID。 | |
{
"product" : "Example System",
"version" : "1.0",
"result" : 0,
"hangup" : {
"addressId" : "xxxx"
}
}
event
VideoChatの切断イベントの受信を開始する。
スマートデバイスでサポートしていないパラメータがある場合には、 そのパラメータを省略する。
| 物理名 | データ型 | 必須 | 説明 |
|---|---|---|---|
| serviceId | string | Yes | サービスID。 |
| config | string | No | コンフィグ。必要に応じてAPIキーなどを格納する任意の文字列。 |
| interval | long | No | イベント受信間隔。単位:mSec |
| 論理名 | 物理名 | データ型 | 必須 | 説明 |
|---|---|---|---|---|
| 処理結果 | result | integer | Yes | 0:正常応答 0以外:異常応答 |
| システム名 | product | string | Yes | DeviceConnectシステムの名前。 |
| システムバージョン | version | string | Yes | DeviceConnectシステムのバージョン名。 |
| 署名 | hmac | string | No | レスポンスに対する署名。 アプリケーション側から事前にHMACキーを共有されていた場合は必須。 |
{
"product" : "Example System",
"version" : "1.0",
"result" : 0
}
| 論理名 | 物理名 | データ型 | 必須 | 説明 | |
|---|---|---|---|---|---|
| サービスID | serviceId | string | Yes | イベントを送信したサービスのID | |
| プロファイル名 | profile | string | Yes | プロファイル名。 | |
| インターフェース名 | interface | string | Yes | インターフェース名。 | |
| アトリビュート名 | attribute | string | Yes | アトリビュート名。 | |
| 接続先情報 | hangup | object | Yes | 接続先のデバイスの情報を格納したオブジェクト。 | |
| アドレス | addressId | string | Yes | 接続先のアドレスID。 | |
{
"servieId" : "xxxxx",
"profile" : "videochat",
"attribute" : "hangup",
"hangup" : {
"addressId" : "xxxx"
}
}
event
VideoChatの切断イベントの受信を停止する。
スマートデバイスでサポートしていないパラメータがある場合には、 そのパラメータを省略する。
| 物理名 | データ型 | 必須 | 説明 |
|---|---|---|---|
| serviceId | string | Yes | サービスID。 |
| 論理名 | 物理名 | データ型 | 必須 | 説明 |
|---|---|---|---|---|
| 処理結果 | result | integer | Yes | 0:正常応答 0以外:異常応答 |
| システム名 | product | string | Yes | DeviceConnectシステムの名前。 |
| システムバージョン | version | string | Yes | DeviceConnectシステムのバージョン名。 |
| 署名 | hmac | string | No | レスポンスに対する署名。 アプリケーション側から事前にHMACキーを共有されていた場合は必須。 |
{
"product" : "Example System",
"version" : "1.0",
"result" : 0
}
one-shot
他デバイスからの着信イベントを取得する。
プラグイン側でキャッシュしている最新のイベントメッセージを1つ取得する。
| 物理名 | データ型 | 必須 | 説明 |
|---|---|---|---|
| serviceId | string | Yes | サービスID。 |
| config | string | No | コンフィグ。必要に応じてAPIキーなどを格納する任意の文字列。 |
| 論理名 | 物理名 | データ型 | 必須 | 説明 | |
|---|---|---|---|---|---|
| 処理結果 | result | integer | Yes | 0:正常応答 0以外:異常応答 |
|
| システム名 | product | string | Yes | DeviceConnectシステムの名前。 | |
| システムバージョン | version | string | Yes | DeviceConnectシステムのバージョン名。 | |
| 署名 | hmac | string | No | レスポンスに対する署名。 アプリケーション側から事前にHMACキーを共有されていた場合は必須。 |
|
| 発信元情報 | incoming | object | Yes | 発信元デバイスの情報を格納したオブジェクト。 | |
| デバイス名 | name | string | Yes | 発信元のデバイス名。 | |
| アドレスID | addressId | string | Yes | 発信元のアドレスID。 | |
{
"product" : "Example System",
"version" : "1.0",
"result" : 0,
"incoming" : {
"name" : "xxxx",
"addressId" : "xxxx"
}
}
event
他デバイスからの着信イベントの通知を開始する。
スマートデバイスでサポートしていないパラメータがある場合には、 そのパラメータを省略する。
| 物理名 | データ型 | 必須 | 説明 |
|---|---|---|---|
| serviceId | string | Yes | サービスID。 |
| config | string | No | イベント受信間隔。単位:mSec |
| 論理名 | 物理名 | データ型 | 必須 | 説明 |
|---|---|---|---|---|
| 処理結果 | result | integer | Yes | 0:正常応答 0以外:異常応答 |
| システム名 | product | string | Yes | DeviceConnectシステムの名前。 |
| システムバージョン | version | string | Yes | DeviceConnectシステムのバージョン名。 |
| 署名 | hmac | string | No | レスポンスに対する署名。 アプリケーション側から事前にHMACキーを共有されていた場合は必須。 |
{
"product" : "Example System",
"version" : "1.0",
"result" : 0
}
| 論理名 | 物理名 | データ型 | 必須 | 説明 | |
|---|---|---|---|---|---|
| サービスID | serviceId | string | Yes | イベントを送信したサービスのID | |
| プロファイル名 | profile | string | Yes | プロファイル名。 | |
| インターフェース名 | interface | string | Yes | インターフェース名。 | |
| アトリビュート名 | attribute | string | Yes | アトリビュート名。 | |
| 発信元情報 | incoming | object | Yes | 発信元デバイスの情報を格納したオブジェクト。 | |
| デバイス名 | name | string | Yes | 発信元のデバイス名。 | |
| アドレスID | addressId | string | Yes | 発信元のアドレスID。 | |
{
"servieId" : "xxxxx",
"profile" : "videochat",
"attribute" : "incoming",
"incoming" : {
"name" : "xxxx",
"addressId" : "xxxx"
}
}
event
他デバイスからの着信イベントの通知を停止する。
スマートデバイスでサポートしていないパラメータがある場合には、 そのパラメータを省略する。
| 物理名 | データ型 | 必須 | 説明 |
|---|---|---|---|
| serviceId | string | Yes | サービスID。 |
| 論理名 | 物理名 | データ型 | 必須 | 説明 |
|---|---|---|---|---|
| 処理結果 | result | integer | Yes | 0:正常応答 0以外:異常応答 |
| システム名 | product | string | Yes | DeviceConnectシステムの名前。 |
| システムバージョン | version | string | Yes | DeviceConnectシステムのバージョン名。 |
| 署名 | hmac | string | No | レスポンスに対する署名。 アプリケーション側から事前にHMACキーを共有されていた場合は必須。 |
{
"product" : "Example System",
"version" : "1.0",
"result" : 0
}
one-shot
プロフィール情報を取得する。
WebRTCサービスによって情報の内容が違ってくる。
| 物理名 | データ型 | 必須 | 説明 |
|---|---|---|---|
| serviceId | string | Yes | サービスID。 |
| config | string | No | コンフィグ。必要に応じてAPIキーなどを格納する任意の文字列。 |
| 論理名 | 物理名 | データ型 | 必須 | 説明 |
|---|---|---|---|---|
| 処理結果 | result | integer | Yes | 0:正常応答 0以外:異常応答 |
| システム名 | product | string | Yes | DeviceConnectシステムの名前。 |
| システムバージョン | version | string | Yes | DeviceConnectシステムのバージョン名。 |
| 署名 | hmac | string | No | レスポンスに対する署名。 アプリケーション側から事前にHMACキーを共有されていた場合は必須。 |
| 名前 | name | string | Yes | デバイス自身の名前。 |
| アドレスID | addressId | string | Yes | デバイス自身のアドレスID。 |
{
"product" : "Example System",
"version" : "1.0",
"result" : 0,
"name" : "WebRTC Service",
"addressId" : "xxxxx"
}
one-shot
プロフィールを更新する。
WebRTCサービスによって情報の内容が違ってくる。
| 物理名 | データ型 | 必須 | 説明 |
|---|---|---|---|
| serviceId | string | Yes | サービスID。 |
| name | string | Yes | デバイスに付ける新規の名前 |
| config | string | No | コンフィグ。必要に応じてAPIキーなどを格納する任意の文字列 |
| 論理名 | 物理名 | データ型 | 必須 | 説明 |
|---|---|---|---|---|
| 処理結果 | result | integer | Yes | 0:正常応答 0以外:異常応答 |
| システム名 | product | string | Yes | DeviceConnectシステムの名前。 |
| システムバージョン | version | string | Yes | DeviceConnectシステムのバージョン名。 |
| 署名 | hmac | string | No | レスポンスに対する署名。 アプリケーション側から事前にHMACキーを共有されていた場合は必須。 |
{
"product" : "Example System",
"version" : "1.0",
"result" : 0
}