Google Home デベロッパー センターにようこそ。スマートホーム アクションの開発方法を学ぶことができます。注: アクションの作成は、引き続き Actions Console で行います。
コレクションでコンテンツを整理 必要に応じて、コンテンツの保存と分類を行います。

スマートホームの NetworkControl トレイトのスキーマ

action.devices.traits.NetworkControl - このトレイトは、ネットワーク データの報告とネットワーク固有の操作をサポートするデバイスに使用します。

デバイスの属性

この特性を持つデバイスは、SYNC オペレーションの一部として次の属性を報告する可能性があります。SYNC インテントの処理の詳細については、インテント フルフィルメントをご覧ください。

属性 タイプ 説明
supportsEnablingGuestNetwork ブール値

(デフォルト: false

ゲスト ネットワークを有効にできる場合は true に設定します。

supportsDisablingGuestNetwork ブール値

(デフォルト: false

ゲスト ネットワークを無効にできる場合は true に設定します。

supportsGettingGuestNetworkPassword ブール値

(デフォルト: false

GetGuestNetworkPassword コマンドを使用してゲスト ネットワーク パスワードを取得できる場合は、true に設定します。

networkProfiles 配列

サポートされているネットワーク プロファイル名を示します。

[item, ...] 文字列

関連デバイスのグループを表すネットワーク プロファイルの名前。

supportsEnablingNetworkProfile ブール値

(デフォルト: "false"

ネットワーク プロファイルを有効にできる場合は true に設定します。

supportsDisablingNetworkProfile ブール値

(デフォルト: "false"

ネットワーク プロファイルを無効にできる場合は true に設定します。

supportsNetworkDownloadSpeedTest ブール値

(デフォルト: false

ダウンロード速度テストを実行できる場合は、true に設定します。

supportsNetworkUploadSpeedTest ブール値

(デフォルト: false

アップロード速度テストを実行できる場合は、true に設定します。

ゲスト ネットワーク、プロファイル、速度テストに対応しているネットワーク デバイス。

{
  "supportsEnablingGuestNetwork": true,
  "supportsDisablingGuestNetwork": true,
  "supportsEnablingNetworkProfile": true,
  "supportsDisablingNetworkProfile": true,
  "supportsNetworkDownloadSpeedTest": true,
  "supportsNetworkUploadSpeedTest": true,
  "supportsGettingGuestNetworkPassword": true,
  "networkProfiles": [
    "kids"
  ]
}

デバイスのステータス

この特性を持つデバイスは、QUERY オペレーションの一部として次の状態をレポートできます。QUERY インテントの処理の詳細については、インテント フルフィルメントをご覧ください。

状態 タイプ 説明
networkEnabled ブール値

メイン ネットワークが有効かどうか。

networkSettings オブジェクト

メイン ネットワークの SSID が含まれます。

ssid 文字列

必須。

ネットワーク SSID。

guestNetworkEnabled ブール値

ゲスト ネットワークが有効かどうか。

guestNetworkSettings オブジェクト

ゲスト ネットワークの SSID が含まれます。

ssid 文字列

必須。

ネットワーク SSID。

numConnectedDevices Integer

ネットワークに接続されているデバイスの数。

networkUsageMB Number

ネットワーク使用量(MB)。メガバイト単位です。ネットワーク使用量は現在の期間内であるため、請求対象期間のネットワーク使用量の上限に関してモニタリングできます。

networkUsageLimitMB Number

ネットワーク使用量の上限(MB、MB)。ネットワーク使用量の上限が、現在の請求対象期間内です。

networkUsageUnlimited ブール値

ネットワーク使用量が無制限かどうか。デバイスの状態 networkUsageLimitMB が true に設定されている場合は無視されます。

lastNetworkDownloadSpeedTest オブジェクト

最新のネットワーク ダウンロード速度テストの結果が含まれます。

downloadSpeedMbps Number

最後のネットワーク速度テストのダウンロード速度(Mbps)です。

unixTimestampSec Integer

最後のネットワーク ダウンロード速度テストが実行された時点の Unix タイムスタンプ(Unix エポックからの経過秒数)。

status 文字列

最後のネットワーク ダウンロード速度テストが成功したかどうかを示します。

サポートされている値:

SUCCESS
FAILURE
lastNetworkUploadSpeedTest オブジェクト

最新のネットワーク アップロード速度テストの結果が含まれます。

uploadSpeedMbps Number

前回のネットワーク速度テストのアップロード速度(Mbps)です。

unixTimestampSec Integer

前回のネットワーク アップロード速度テストが実行された時点の Unix タイムスタンプ(Unix エポックからの経過秒数)。

status 文字列

最後のネットワーク アップロード速度テストが成功したかどうかを示します。

サポートされている値:

SUCCESS
FAILURE
networkSpeedTestInProgress ブール値

(デフォルト: false

速度テストを現在実施しているかどうか。

networkProfilesState オブジェクト

ネットワーク プロファイルの状態。このトップレベル オブジェクトには Key-Value ペアを含める必要があります。キーは、networkProfiles 属性にリストされているいずれかのネットワーク プロファイルの名前です。値はそのプロファイルに対応する状態である必要があります。

<string> オブジェクト

個々のネットワーク プロファイルの状態を保存するオブジェクト。 キーの値は、networkProfiles 属性でいずれかのネットワーク プロファイルの名前になります。

enabled ブール値

ネットワーク プロファイルの現在の有効/無効状態。

アクティブなネットワークがあるデバイス。

{
  "networkEnabled": true,
  "networkSettings": {
    "ssid": "home-network-123"
  },
  "guestNetworkSettings": {
    "ssid": "home-network-123-guest"
  },
  "numConnectedDevices": 4,
  "networkUsageMB": 100.8
}

ネットワークと速度テストの結果がアクティブなデバイス。

{
  "networkEnabled": true,
  "networkSettings": {
    "ssid": "home-network-123"
  },
  "guestNetworkSettings": {
    "ssid": "home-network-123-guest"
  },
  "numConnectedDevices": 4,
  "networkUsageMB": 100.8,
  "lastNetworkDownloadSpeedTest": {
    "downloadSpeedMbps": 159.8,
    "unixTimestampSec": 1563215576,
    "status": "SUCCESS"
  },
  "lastNetworkUploadSpeedTest": {
    "uploadSpeedMbps": 64.1,
    "unixTimestampSec": 1563215576,
    "status": "SUCCESS"
  }
}

アクティブなネットワークと速度テストが進行中のデバイス。

{
  "networkEnabled": true,
  "networkSettings": {
    "ssid": "home-network-123"
  },
  "guestNetworkSettings": {
    "ssid": "home-network-123-guest"
  },
  "numConnectedDevices": 4,
  "networkUsageMB": 100.8,
  "networkSpeedTestInProgress": true
}

"kids" networkProfile が無効になっているデバイス。

{
  "networkEnabled": true,
  "networkSettings": {
    "ssid": "home-network-123"
  },
  "networkProfilesState": {
    "parents": {
      "enabled": true
    },
    "kids": {
      "enabled": false
    }
  }
}

デバイスのコマンド

この特性を持つデバイスは、EXECUTE オペレーションの一部として次のコマンドに応答できます。EXECUTE インテントの処理の詳細については、インテント フルフィルメントをご覧ください。

action.devices.commands.EnableDisableGuestNetwork

ゲスト ネットワークを有効または無効にします。PIN を使用した予備のユーザー確認を使用する必要があります。これらのコマンドで他のセキュリティ デバイスを無効にしている場合、ユーザーのホーム セキュリティが影響を受ける可能性があります。

このコマンドには次の属性が必要です。
{
  "supportsEnablingGuestNetwork": true,
  "supportsDisablingGuestNetwork": true
}

パラメータ

パラメータ タイプ 説明
enable ブール値

必須。

ゲスト ネットワークを有効にするには true、無効にするには false を指定します。

ゲスト ネットワークをオンにします。

{
  "command": "action.devices.commands.EnableDisableGuestNetwork",
  "params": {
    "enable": true
  }
}

action.devices.commands.EnableDisableNetworkProfile

ネットワーク プロファイルを有効または無効にします。PIN を使用した予備のユーザー確認を使用する必要があります。これらのコマンドで他のセキュリティ デバイスを無効にしている場合、ユーザーのホーム セキュリティが影響を受ける可能性があります。

このコマンドには次の属性が必要です。
{
  "supportsEnablingNetworkProfile": true,
  "supportsDisablingNetworkProfile": true
}

パラメータ

パラメータ タイプ 説明
profile 文字列

必須。

networkProfiles 属性からのプロファイル名。

enable ブール値

必須。

プロファイルを有効にする場合は true、プロファイルを無効にする場合は false です。

子ども向けのインターネットをオフにする。

{
  "command": "action.devices.commands.EnableDisableNetworkProfile",
  "params": {
    "profile": "kids",
    "enable": false
  }
}

特定のネットワーク プロファイルの制御中にエラーが発生しました。

サポートされている値:

networkProfileNotRecognized

action.devices.commands.GetGuestNetworkPassword

ゲスト ネットワークのパスワードを取得します。PIN を使用した予備のユーザー確認を使用する必要があります。これらのコマンドで他のセキュリティ デバイスを無効にしている場合、ユーザーのホーム セキュリティが影響を受ける可能性があります。

このコマンドには次の属性が必要です。
{
  "supportsGettingGuestNetworkPassword": true
}

パラメータ

パラメータ タイプ 説明

プロパティがありません

ゲスト Wi-Fi のパスワードを表示する。

{
  "command": "action.devices.commands.GetGuestNetworkPassword",
  "params": {}
}

結果

結果 タイプ 説明
guestNetworkPassword 文字列

必須。

ゲスト ネットワークのパスワード。

ゲスト Wi-Fi のパスワードを表示する。

{
  "guestNetworkPassword": "123456"
}

action.devices.commands.TestNetworkSpeed

ネットワークのダウンロード速度とアップロード速度をテストします。

このコマンドには次の属性が必要です。
{
  "supportsNetworkDownloadSpeedTest": true,
  "supportsNetworkUploadSpeedTest": true
}

パラメータ

パラメータ タイプ 説明
testDownloadSpeed ブール値

必須。

ダウンロード速度をテストするかどうかを指定します。

testUploadSpeed ブール値

必須。

アップロード速度をテストするかどうかを指定します。

followUpToken 文字列

必須。

フォローアップ レスポンス用の Google 提供のトークン。

Wi-Fi の速度はどのくらいですか?

{
  "command": "action.devices.commands.TestNetworkSpeed",
  "params": {
    "testDownloadSpeed": true,
    "testUploadSpeed": true,
    "followUpToken": "123"
  }
}

速度テストのリクエスト中にエラーが発生しました。

サポートされている値:

networkSpeedTestInProgress

フォローアップの回答

この特性を持つデバイスは、EXECUTE オペレーションの一部として次のフォローアップ レスポンス ペイロードを返すことがあります。フォローアップ レスポンスの実装の詳細については、スマートホーム アクションの通知をご覧ください。

ペイロードには次のいずれかが含まれています。

成功: networkDownloadSpeedMbps

フィールド タイプ 説明
followUpToken 文字列

必須。

元の EXECUTE リクエストで提供されたトークン。

status 文字列

必須。

リクエストの結果。

サポートされている値:

SUCCESS
networkDownloadSpeedMbps Number

必須。

ネットワーク ダウンロード速度(Mbps)。

成功: networkUploadSpeedMbps

フィールド タイプ 説明
followUpToken 文字列

必須。

元の EXECUTE リクエストで提供されたトークン。

status 文字列

必須。

リクエストの結果。

サポートされている値:

SUCCESS
networkUploadSpeedMbps Number

必須。

ネットワークのアップロード速度(Mbps)。

成功: networkDownloadSpeedMbps と networkUploadSpeedMbps

フィールド タイプ 説明
followUpToken 文字列

必須。

元の EXECUTE リクエストで提供されたトークン。

status 文字列

必須。

リクエストの結果。

サポートされている値:

SUCCESS
networkDownloadSpeedMbps Number

必須。

ネットワーク ダウンロード速度(Mbps)。

networkUploadSpeedMbps Number

必須。

ネットワークのアップロード速度(Mbps)。

失敗

フィールド タイプ 説明
followUpToken 文字列

必須。

元の EXECUTE リクエストで提供されたトークン。

status 文字列

必須。

リクエストの結果。

サポートされている値:

FAILURE
errorCode 文字列

必須。

この値には、任意のトレイトのエラーコード(例: transientError)を指定できます。

Wi-Fi の速度はどのくらいですか?(フォローアップの回答)。

{
  "NetworkControl": {
    "priority": 0,
    "followUpResponse": {
      "status": "SUCCESS",
      "networkDownloadSpeedMbps": 23.3,
      "networkUploadSpeedMbps": 10.2,
      "followUpToken": "1234"
    }
  }
}

Wi-Fi の速度はどのくらいですか?(失敗に対するフォローアップの回答)

{
  "NetworkControl": {
    "priority": 0,
    "followUpResponse": {
      "status": "FAILURE",
      "errorCode": "transientError",
      "followUpToken": "1234"
    }
  }
}

デバイスエラー

エラーと例外のリストをご覧ください。

特定のネットワーク プロファイルの制御中にエラーが発生しました。

サポートされている値:

networkProfileNotRecognized

速度テストのリクエスト中にエラーが発生しました。

サポートされている値:

networkSpeedTestInProgress