Skip to content
Takayuki Hoshi edited this page May 31, 2019 · 4 revisions

概要

周辺機器からスマートフォンの通話機能もしくは通話操作機能を提供するAPI。

目次

API概要
POST /gotapi/phone/acceptCallスマートフォンに対して着信応答をリクエストする。
POST /gotapi/phone/callスマートフォンに対して電話発信をリクエストする。
GET /gotapi/phone/callState現在の通話状態を取得する。
POST /gotapi/phone/endCallスマートフォンに対して通話終了をリクエストする。
GET /gotapi/phone/onCallStateChange通話状態の変更通知イベントのキャッシュを取得する。
PUT /gotapi/phone/onCallStateChange通話状態の変更通知イベントを開始する。
DELETE /gotapi/phone/onCallStateChange通話状態の変更通知イベントを停止する。
GET /gotapi/phone/onConnectスマートフォンに対して行った電話発信リクエストによるスマートフォン上での通話の開始、 通話の失敗、通話の終了状態を、周辺機器に通知するイベントを取得する。
PUT /gotapi/phone/onConnectスマートフォンに対して行った電話発信リクエストによるスマートフォン上での通話の開始、 通話の失敗、通話の終了状態を、周辺機器に通知するイベントを開始する。
DELETE /gotapi/phone/onConnectスマートフォンに対して行った電話発信要求によるスマートフォン上での通話の開始、 通話の失敗、通話の終了状態を、周辺機器に通知するイベントを停止する。
POST /gotapi/phone/rejectCallスマートフォンに対して着信拒否をリクエストする。
PUT /gotapi/phone/setスマートフォンに対して電話に関する設定項目(サイレント・マナー・音あり) の設定をリクエストする。

種別

one-shot

概要

スマートフォンに対して着信応答をリクエストする。

国際電話の対応、SIMカードによる制限などについては、 デバイスプラグイン側の仕様に任せるものとする。

リクエスト

物理名データ型必須説明
serviceIdstringYesサービスID。取得対象スマートデバイス
phoneNumberstringNo発信元の電話番号。
onCallStateChange イベントで受信した電話番号をそのまま指定すること。

レスポンス

論理名物理名データ型必須説明
処理結果resultintegerYes0: 正常応答
0以外: 異常応答
システム名productstringYesDeviceConnectシステムの名前。
システムバージョンversionstringYesDeviceConnectシステムのバージョン名。
署名hmacstringNoレスポンスに対する署名。 アプリケーション側から事前にHMACキーを共有されていた場合は必須。

レスポンスサンプル

{
"result" : 0,
"product" : "Example System",
"version" : "1.0.0"
}

種別

one-shot

概要

スマートフォンに対して電話発信をリクエストする。

国際電話の対応、SIMカードによる制限などについては、 デバイスプラグイン側の仕様に任せるものとする。

リクエスト

物理名データ型必須説明
serviceIdstringYesサービスID。取得対象スマートデバイス
phoneNumberstringYes電話番号。電話番号を示す文字列。文字には数字の0〜9のみを使用可能。
長さは11桁または13桁のいずれかとする。11桁は国内電話、13桁は国際電話として扱う。

レスポンス

論理名物理名データ型必須説明
処理結果resultintegerYes0: 正常応答
0以外: 異常応答
システム名productstringYesDeviceConnectシステムの名前。
システムバージョンversionstringYesDeviceConnectシステムのバージョン名。
署名hmacstringNoレスポンスに対する署名。 アプリケーション側から事前にHMACキーを共有されていた場合は必須。

レスポンスサンプル

{
"result" : 0,
"product" : "Example System",
"version" : "1.0.0"
}

種別

one-shot

概要

現在の通話状態を取得する。

現在の通話状態に変化がない場合は、 プラグイン側でキャッシュしている最新の通話状態を1つ取得する。

リクエスト

物理名データ型必須説明
serviceIdstringYesサービスID。取得対象スマートデバイス

レスポンス

論理名物理名データ型必須説明
処理結果resultintegerYes0: 正常応答
0以外: 異常応答
システム名productstringYesDeviceConnectシステムの名前。
システムバージョンversionstringYesDeviceConnectシステムのバージョン名。
署名hmacstringNoレスポンスに対する署名。 アプリケーション側から事前にHMACキーを共有されていた場合は必須。
通話状態statestringYes相手先との通話の状態を示す。
ringing着信中
dialing発信中
active通話中
on-hold保留中
standby待受中
電話番号phoneNumberstringYes相手先の電話番号。数字以外の記号は含めない。

レスポンスサンプル

{
"result" : 0,
"product" : "Example System",
"version" : "1.0.0",
"state" : "ringing",
"phoneNumber" : "090XXXXXXXX"
}

種別

one-shot

概要

スマートフォンに対して通話終了をリクエストする。

国際電話の対応、SIMカードによる制限などについては、 デバイスプラグイン側の仕様に任せるものとする。

リクエスト

物理名データ型必須説明
serviceIdstringYesサービスID。取得対象スマートデバイス
phoneNumberstringNo発信元の電話番号。
onCallStateChange イベントで受信した電話番号をそのまま指定すること。

レスポンス

論理名物理名データ型必須説明
処理結果resultintegerYes0: 正常応答
0以外: 異常応答
システム名productstringYesDeviceConnectシステムの名前。
システムバージョンversionstringYesDeviceConnectシステムのバージョン名。
署名hmacstringNoレスポンスに対する署名。 アプリケーション側から事前にHMACキーを共有されていた場合は必須。

レスポンスサンプル

{
"result" : 0,
"product" : "Example System",
"version" : "1.0.0"
}

種別

one-shot

概要

通話状態の変更通知イベントのキャッシュを取得する。

プラグイン側でキャッシュしている最新のイベントメッセージを1つ取得する。

リクエスト

物理名データ型必須説明
serviceIdstringYesサービスID。取得対象スマートデバイス

レスポンス

論理名物理名データ型必須説明
処理結果resultintegerYes0: 正常応答
0以外: 異常応答
システム名productstringYesDeviceConnectシステムの名前。
システムバージョンversionstringYesDeviceConnectシステムのバージョン名。
署名hmacstringNoレスポンスに対する署名。 アプリケーション側から事前にHMACキーを共有されていた場合は必須。
通話状態statestringYes相手先との通話の状態を示す。
ringing着信中
dialing発信中
active通話中
on-hold保留中
standby待受中
電話番号phoneNumberstringYes相手先の電話番号。数字以外の記号は含めない。

レスポンスサンプル

{
"result" : 0,
"product" : "Example System",
"version" : "1.0.0",
"state" : "ringing",
"phoneNumber" : "090XXXXXXXX"
}

種別

event

概要

通話状態の変更通知イベントを開始する。

スマートデバイスでサポートしていないパラメータがある場合には、 そのパラメータを省略する。

リクエスト

物理名データ型必須説明
serviceIdstringYesサービスID。取得対象スマートデバイス
intervallongNoデバイスプラグインがイベントを送信する間隔。

レスポンス

論理名物理名データ型必須説明
処理結果resultintegerYes0: 正常応答
0以外: 異常応答
システム名productstringYesDeviceConnectシステムの名前。
システムバージョンversionstringYesDeviceConnectシステムのバージョン名。
署名hmacstringNoレスポンスに対する署名。 アプリケーション側から事前にHMACキーを共有されていた場合は必須。

レスポンスサンプル

{
"result" : 0,
"product" : "Example System",
"version" : "1.0.0"
}

イベント

論理名物理名データ型必須説明
サービスIDserviceIdstringYesイベントを送信したサービスのID
プロファイル名profilestringYesプロファイル名。
インターフェース名interfacestringYesインターフェース名。
アトリビュート名attributestringYesアトリビュート名。
通話状態statestringYes相手先との通話の状態を示す。
ringing着信中
dialing発信中
active通話中
on-hold保留中
standby待受中
電話番号phoneNumberstringYes相手先の電話番号。数字以外の記号は含めない。

イベントサンプル

{
"serviceId" : "Host.dummyId.localhost.deviceconnect.org",
"profile" : "phone",
"attribute" : "onconnect",
"state" : "ringing",
"phoneNumber" : "090XXXXXXXX"
}

種別

event

概要

通話状態の変更通知イベントを停止する。

スマートデバイスでサポートしていないパラメータがある場合には、 そのパラメータを省略する。

リクエスト

物理名データ型必須説明
serviceIdstringYesサービスID。取得対象スマートデバイス

レスポンス

論理名物理名データ型必須説明
処理結果resultintegerYes0: 正常応答
0以外: 異常応答
システム名productstringYesDeviceConnectシステムの名前。
システムバージョンversionstringYesDeviceConnectシステムのバージョン名。
署名hmacstringNoレスポンスに対する署名。 アプリケーション側から事前にHMACキーを共有されていた場合は必須。

レスポンスサンプル

{
"result" : 0,
"product" : "Example System",
"version" : "1.0.0"
}

種別

one-shot

概要

スマートフォンに対して行った電話発信リクエストによるスマートフォン上での通話の開始、 通話の失敗、通話の終了状態を、周辺機器に通知するイベントを取得する。

現在の通話状態に変化がない場合は、 プラグイン側でキャッシュしている最新の通話状態を1つ取得する。

リクエスト

物理名データ型必須説明
serviceIdstringYesサービスID。取得対象スマートデバイス

レスポンス

論理名物理名データ型必須説明
処理結果resultintegerYes0: 正常応答
0以外: 異常応答
システム名productstringYesDeviceConnectシステムの名前。
システムバージョンversionstringYesDeviceConnectシステムのバージョン名。
署名hmacstringNoレスポンスに対する署名。 アプリケーション側から事前にHMACキーを共有されていた場合は必須。
電話機能の状態phoneStatusobjectYes電話機能の状態を保持するオブジェクト。 特定の相手先との通話状態の変化を通知する。
電話番号phoneNumberstringYes相手先の電話番号を示す文字列。文字には数字の0〜9のみを使用可能。 長さは11桁または13桁のいずれかとする。 11桁は国内電話、13桁は国際電話として扱う。
通話状態statefloatYes通話状態を示す定数。
0: 通話開始
1: 通話失敗
2: 通話終了

レスポンスサンプル

{
"result" : 0,
"product" : "Example System",
"version" : "1.0.0",
"phoneStatus" : {
"phoneNumber" : 2739128,
"state" : 2
}
}

種別

event

概要

スマートフォンに対して行った電話発信リクエストによるスマートフォン上での通話の開始、 通話の失敗、通話の終了状態を、周辺機器に通知するイベントを開始する。

スマートデバイスでサポートしていないパラメータがある場合には、 そのパラメータを省略する。

リクエスト

物理名データ型必須説明
serviceIdstringYesサービスID。取得対象スマートデバイス
intervallongNoデバイスプラグインがイベントを送信する間隔。

レスポンス

論理名物理名データ型必須説明
処理結果resultintegerYes0: 正常応答
0以外: 異常応答
システム名productstringYesDeviceConnectシステムの名前。
システムバージョンversionstringYesDeviceConnectシステムのバージョン名。
署名hmacstringNoレスポンスに対する署名。 アプリケーション側から事前にHMACキーを共有されていた場合は必須。

レスポンスサンプル

{
"result" : 0,
"product" : "Example System",
"version" : "1.0.0"
}

イベント

論理名物理名データ型必須説明
サービスIDserviceIdstringYesイベントを送信したサービスのID
プロファイル名profilestringYesプロファイル名。
インターフェース名interfacestringYesインターフェース名。
アトリビュート名attributestringYesアトリビュート名。
電話機能の状態phoneStatusobjectYes電話機能の状態を保持するオブジェクト。 特定の相手先との通話状態の変化を通知する。
電話番号phoneNumberstringYes相手先の電話番号を示す文字列。文字には数字の0〜9のみを使用可能。 長さは11桁または13桁のいずれかとする。 11桁は国内電話、13桁は国際電話として扱う。
通話状態statefloatYes通話状態を示す定数。
0: 通話開始
1: 通話失敗
2: 通話終了

イベントサンプル

{
"serviceId" : "Host.dummyId.localhost.deviceconnect.org",
"profile" : "phone",
"attribute" : "onconnect",
"phoneStatus" : {
"phoneNumber" : 2739128,
"state" : 2
}
}

種別

event

概要

スマートフォンに対して行った電話発信要求によるスマートフォン上での通話の開始、 通話の失敗、通話の終了状態を、周辺機器に通知するイベントを停止する。

スマートデバイスでサポートしていないパラメータがある場合には、 そのパラメータを省略する。

リクエスト

物理名データ型必須説明
serviceIdstringYesサービスID。取得対象スマートデバイス

レスポンス

論理名物理名データ型必須説明
処理結果resultintegerYes0: 正常応答
0以外: 異常応答
システム名productstringYesDeviceConnectシステムの名前。
システムバージョンversionstringYesDeviceConnectシステムのバージョン名。
署名hmacstringNoレスポンスに対する署名。 アプリケーション側から事前にHMACキーを共有されていた場合は必須。

レスポンスサンプル

{
"result" : 0,
"product" : "Example System",
"version" : "1.0.0"
}

種別

one-shot

概要

スマートフォンに対して着信拒否をリクエストする。

国際電話の対応、SIMカードによる制限などについては、 デバイスプラグイン側の仕様に任せるものとする。

リクエスト

物理名データ型必須説明
serviceIdstringYesサービスID。取得対象スマートデバイス
phoneNumberstringNo発信元の電話番号。
onCallStateChange イベントで受信した電話番号をそのまま指定すること。

レスポンス

論理名物理名データ型必須説明
処理結果resultintegerYes0: 正常応答
0以外: 異常応答
システム名productstringYesDeviceConnectシステムの名前。
システムバージョンversionstringYesDeviceConnectシステムのバージョン名。
署名hmacstringNoレスポンスに対する署名。 アプリケーション側から事前にHMACキーを共有されていた場合は必須。

レスポンスサンプル

{
"result" : 0,
"product" : "Example System",
"version" : "1.0.0"
}

種別

one-shot

概要

スマートフォンに対して電話に関する設定項目(サイレント・マナー・音あり) の設定をリクエストする。

スマートフォンのOSバージョンによっては、設定項目の挙動に違いがでる場合がある。

リクエスト

物理名データ型必須説明
serviceIdstringYesサービスID。取得対象スマートデバイス
modeintegerYes電話のモード。電話のモードを指定
0:サイレント
1:マナー
2:音あり

レスポンス

論理名物理名データ型必須説明
処理結果resultintegerYes0: 正常応答
0以外: 異常応答
システム名productstringYesDeviceConnectシステムの名前。
システムバージョンversionstringYesDeviceConnectシステムのバージョン名。
署名hmacstringNoレスポンスに対する署名。 アプリケーション側から事前にHMACキーを共有されていた場合は必須。

レスポンスサンプル

{
"result" : 0,
"product" : "Example System",
"version" : "1.0.0"
}

Clone this wiki locally