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カードによる制限などについては、 デバイスプラグイン側の仕様に任せるものとする。

リクエスト

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

レスポンス

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

レスポンスサンプル

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

種別

one-shot

概要

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

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

リクエスト

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

レスポンス

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

レスポンスサンプル

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

種別

one-shot

概要

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

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

リクエスト

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

レスポンス

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

レスポンスサンプル

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

種別

one-shot

概要

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

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

リクエスト

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

レスポンス

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

レスポンスサンプル

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

種別

one-shot

概要

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

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

リクエスト

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

レスポンス

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

レスポンスサンプル

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

種別

event

概要

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

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

リクエスト

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

レスポンス

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

レスポンスサンプル

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

イベント

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

イベントサンプル

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

種別

event

概要

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

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

リクエスト

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

レスポンス

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

レスポンスサンプル

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

種別

one-shot

概要

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

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

リクエスト

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

レスポンス

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

レスポンスサンプル

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

種別

event

概要

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

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

リクエスト

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

レスポンス

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

レスポンスサンプル

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

イベント

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

イベントサンプル

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

種別

event

概要

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

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

リクエスト

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

レスポンス

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

レスポンスサンプル

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

種別

one-shot

概要

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

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

リクエスト

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

レスポンス

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

レスポンスサンプル

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

種別

one-shot

概要

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

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

リクエスト

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

レスポンス

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

レスポンスサンプル

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

Clone this wiki locally