VideoChat - masaru-takano/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 | 当該イベントの通知を停止する。 |
GET /gotapi/videoChat/onIncoming | 他デバイスからの着信イベントを取得する。 |
PUT /gotapi/videoChat/onIncoming | 他デバイスからの着信イベントの受信を開始する。 |
DELETE /gotapi/videoChat/onIncoming | 当該イベントの通知を停止する。 |
GET /gotapi/videoChat/profile | プロフィール情報を取得する。 |
PUT /gotapi/videoChat/profile | プロフィールを更新する。 |
one-shot
接続先のアドレス一覧を取得する。
物理名 | データ型 | 必須 | 説明 |
---|---|---|---|
serviceId | string | Yes | サービスID。 |
addressId | string | No | アドレスID。指定しない場合は、接続できるすべてのアドレスを返却する。指定した場合は、接続先アドレスに対応する情報のみ取得できる。 |
config | string | No | コンフィグ。必要に応じてAPIキーなどを格納する任意の文字列。 |
物理名 | データ型 | 必須 | 説明 | |
---|---|---|---|---|
result | integer | Yes | 0:正常応答 0以外:異常応答 |
|
product | string | Yes | DeviceConnectシステムの名前。 | |
addresses | array(object) | Yes | ||
name | string | Yes | デバイス名 | |
addressId | string | Yes | 接続先のアドレス | |
status | string | Yes | デバイスの状態
|
|
version | string | Yes | DeviceConnectシステムのバージョン名。 | |
hmac | string | No | レスポンスに対する署名。アプリケーション側から事前にHMACキーを共有されていた場合は必須。 |
{ "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の接続を行う。
物理名 | データ型 | 必須 | 説明 |
---|---|---|---|
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 の切断を行う。
物理名 | データ型 | 必須 | 説明 |
---|---|---|---|
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システムの名前。 | |||
oncall | object | Yes | ||||
name | string | Yes | 発信元のデバイスの名前。 | |||
addressId | string | Yes | 発信元のデバイスのアドレス。 | |||
remote | object | No | 相手局リソース情報 | |||
video | object | No | 映像関連情報 | |||
uri | string | No | 映像のリソースURI。省略された場合は映像無し。但し、videoとaudioの両方が省略されることは無い | |||
mimeType | string | No | 映像リソースのMIMEタイプ。 | |||
frameRate | float | No | 映像リソースのフレームレート。 | |||
width | integer | No | 通知時点での幅(可変) | |||
height | integer | No | 通知時点での高さ(可変) | |||
audio | object | No | 音声関連情報 | |||
uri | string | No | 音声のリソースURI。省略された場合は音声無し。但し、videoとaudioの両方が省略されることは無い。 | |||
mimeType | string | No | 音声リソースのMIMEタイプ。 | |||
sampleRate | integer | No | 音声リソースのサンプルレート。 | |||
channels | integer | No | 音声リソースのチャンネル数。 | |||
sampleSize | integer | No | 音声リソースのサンプルサイズ。 | |||
blockSize | integer | No | 音声リソースのブロックサイズ。 | |||
local | object | No | 自局リソース情報 | |||
video | object | No | 映像関連情報 | |||
uri | string | No | 映像のリソースURI。省略された場合は映像無し。但し、videoとaudioの両方が省略されることは無い | |||
mimeType | string | No | 映像リソースのMIMEタイプ。 | |||
frameRate | float | No | 映像リソースのフレームレート。 | |||
width | integer | No | 通知時点での幅(可変) | |||
height | integer | No | 通知時点での高さ(可変) | |||
audio | object | No | 音声関連情報 | |||
uri | string | No | 音声のリソースURI。省略された場合は音声無し。但し、videoとaudioの両方が省略されることは無い。 | |||
mimeType | string | No | 音声リソースのMIMEタイプ。 | |||
sampleRate | integer | No | 音声リソースのサンプルレート。 | |||
channels | integer | No | 音声リソースのチャンネル数。 | |||
sampleSize | integer | No | 音声リソースのサンプルサイズ。 | |||
blockSize | integer | No | 音声リソースのブロックサイズ。 | |||
version | string | Yes | DeviceConnectシステムのバージョン名。 | |||
hmac | string | No | レスポンスに対する署名。アプリケーション側から事前にHMACキーを共有されていた場合は必須。 |
{ "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 }
物理名 | データ型 | 必須 | 説明 | |||
---|---|---|---|---|---|---|
attribute | string | Yes | アトリビュート名。 | |||
oncall | object | Yes | ||||
name | string | Yes | 発信元のデバイスの名前。 | |||
addressId | string | Yes | 発信元のデバイスのアドレス。 | |||
remote | object | No | 相手局リソース情報 | |||
video | object | No | 映像関連情報 | |||
uri | string | No | 映像のリソースURI。省略された場合は映像無し。但し、videoとaudioの両方が省略されることは無い | |||
mimeType | string | No | 映像リソースのMIMEタイプ。 | |||
frameRate | float | No | 映像リソースのフレームレート。 | |||
width | integer | No | 通知時点での幅(可変) | |||
height | integer | No | 通知時点での高さ(可変) | |||
audio | object | No | 音声関連情報 | |||
uri | string | No | 音声のリソースURI。省略された場合は音声無し。但し、videoとaudioの両方が省略されることは無い。 | |||
mimeType | string | No | 音声リソースのMIMEタイプ。 | |||
sampleRate | integer | No | 音声リソースのサンプルレート。 | |||
channels | integer | No | 音声リソースのチャンネル数。 | |||
sampleSize | integer | No | 音声リソースのサンプルサイズ。 | |||
blockSize | integer | No | 音声リソースのブロックサイズ。 | |||
local | object | No | 自局リソース情報 | |||
video | object | No | 映像関連情報 | |||
uri | string | No | 映像のリソースURI。省略された場合は映像無し。但し、videoとaudioの両方が省略されることは無い | |||
mimeType | string | No | 映像リソースのMIMEタイプ。 | |||
frameRate | float | No | 映像リソースのフレームレート。 | |||
width | integer | No | 通知時点での幅(可変) | |||
height | integer | No | 通知時点での高さ(可変) | |||
audio | object | No | 音声関連情報 | |||
uri | string | No | 音声のリソースURI。省略された場合は音声無し。但し、videoとaudioの両方が省略されることは無い。 | |||
mimeType | string | No | 音声リソースのMIMEタイプ。 | |||
sampleRate | integer | No | 音声リソースのサンプルレート。 | |||
channels | integer | No | 音声リソースのチャンネル数。 | |||
sampleSize | integer | No | 音声リソースのサンプルサイズ。 | |||
blockSize | integer | No | 音声リソースのブロックサイズ。 | |||
serviceId | string | Yes | 0:正常応答 0以外:異常応答 |
|||
interface | string | Yes | インターフェース名。 | |||
profile | string | Yes | プロファイル名。 |
{ "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の切断イベントを取得する。
物理名 | データ型 | 必須 | 説明 |
---|---|---|---|
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 | 発信元のデバイスのアドレス。 |
{ "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 }
物理名 | データ型 | 必須 | 説明 | |
---|---|---|---|---|
attribute | string | Yes | アトリビュート名。 | |
serviceId | string | Yes | 0:正常応答 0以外:異常応答 |
|
interface | string | Yes | インターフェース名。 | |
profile | string | Yes | プロファイル名。 | |
hangup | object | Yes | 発信元デバイスの情報を格納したオブジェクト。 | |
addressId | string | Yes | 発信元のデバイスのアドレス。 |
{ "servieId" : "xxxxx", "profile" : "videochat", "attribute" : "hangup", "hangup" : { "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
他デバイスからの着信イベントを取得する。
プラグイン側でキャッシュしている最新のイベントメッセージを1つ取得する。
物理名 | データ型 | 必須 | 説明 |
---|---|---|---|
serviceId | string | Yes | サービスID。 |
config | string | No | コンフィグ。必要に応じてAPIキーなどを格納する任意の文字列。 |
物理名 | データ型 | 必須 | 説明 | |
---|---|---|---|---|
result | integer | Yes | 0:正常応答 0以外:異常応答 |
|
incoming | object | Yes | 発信元デバイスの情報を格納したオブジェクト。 | |
name | string | Yes | 発信元デバイスの名前。 | |
addressId | string | Yes | 発信元のデバイスのアドレス。 | |
product | string | Yes | DeviceConnectシステムの名前。 | |
version | string | Yes | DeviceConnectシステムのバージョン名。 | |
hmac | string | No | レスポンスに対する署名。アプリケーション側から事前にHMACキーを共有されていた場合は必須。 |
{ "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 }
物理名 | データ型 | 必須 | 説明 | |
---|---|---|---|---|
incoming | object | Yes | 発信元デバイスの情報を格納したオブジェクト。 | |
name | string | Yes | 発信元デバイスの名前。 | |
addressId | string | Yes | 発信元のデバイスのアドレス。 | |
attribute | string | Yes | アトリビュート名。 | |
serviceId | string | Yes | 0:正常応答 0以外:異常応答 |
|
interface | string | Yes | インターフェース名。 | |
profile | string | Yes | プロファイル名。 |
{ "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
プロフィール情報を取得する。
物理名 | データ型 | 必須 | 説明 |
---|---|---|---|
serviceId | string | Yes | サービスID。 |
config | string | No | コンフィグ。必要に応じてAPIキーなどを格納する任意の文字列。 |
物理名 | データ型 | 必須 | 説明 |
---|---|---|---|
result | integer | Yes | 0:正常応答 0以外:異常応答 |
name | string | Yes | デバイス自身の名前 |
product | string | Yes | DeviceConnectシステムの名前。 |
version | string | Yes | DeviceConnectシステムのバージョン名。 |
hmac | string | No | レスポンスに対する署名。アプリケーション側から事前にHMACキーを共有されていた場合は必須。 |
addressId | string | Yes | デバイス自身の名前 |
{ "product" : "Example System", "version" : "1.0", "result" : 0, "name" : "WebRTC Service", "addressId" : "xxxxx" }
one-shot
プロフィールを更新する。
物理名 | データ型 | 必須 | 説明 |
---|---|---|---|
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 }