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

action.devices.traits.NetworkControl - このトレイトは、ネットワーク データの報告が可能で、ネットワーク固有の操作を実行できるデバイスに使用します。

デバイスの属性

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

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

(デフォルト: false

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

supportsDisablingGuestNetwork ブール値

(デフォルト: false

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

supportsGettingGuestNetworkPassword ブール値

(デフォルト: false

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

networkProfiles 配列

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

[item, ...] String

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

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 String

必須。

ネットワーク SSID。

guestNetworkEnabled ブール値

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

guestNetworkSettings オブジェクト

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

ssid String

必須。

ネットワーク SSID。

numConnectedDevices 整数

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

networkUsageMB 数値

ネットワーク使用量(MB 単位)。ネットワーク使用量は現在の請求期間内です。これは、請求期間のネットワーク使用量上限をモニタリングする際に役立ちます。

networkUsageLimitMB 数値

ネットワーク使用量の上限(MB 単位)。ネットワーク使用量の上限は、現在の請求期間内に設定されています。

networkUsageUnlimited ブール値

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

lastNetworkDownloadSpeedTest オブジェクト

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

downloadSpeedMbps 数値

前回のネットワーク速度テストのダウンロード速度(Mbps)。

unixTimestampSec 整数

最後にネットワークのダウンロード速度テストが実行されたときの UNIX タイムスタンプ(Unix エポック以降の秒数)。

status String

前回のネットワーク ダウンロード速度テストが成功したか失敗したかを示します。

サポートされている値:

SUCCESS
FAILURE
lastNetworkUploadSpeedTest オブジェクト

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

uploadSpeedMbps 数値

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

unixTimestampSec 整数

最後にネットワーク アップロード速度テストが実行されたときの UNIX タイムスタンプ(Unix エポック以降の秒数)。

status String

前回のネットワーク アップロード速度テストが成功したか失敗したかを示します。

サポートされている値:

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」ネットワーク プロファイルが無効になっているデバイス。

{
  "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 String

必須。

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 String

必須。

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

ゲスト Wi-Fi のパスワードを表示して。

{
  "guestNetworkPassword": "123456"
}

action.devices.commands.TestNetworkSpeed

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

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

パラメータ

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

必須。

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

testUploadSpeed ブール値

必須。

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

followUpToken String

必須。

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

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

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

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

サポートされている値:

networkSpeedTestInProgress

フォローアップの回答

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

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

成功: networkDownloadSpeedMbps

フィールド タイプ 説明
followUpToken String

必須。

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

status String

必須。

リクエストの結果。

サポートされている値:

SUCCESS
networkDownloadSpeedMbps 数値

必須。

ネットワークのダウンロード速度(メガビット/秒)。

成功: networkUploadSpeedMbps

フィールド タイプ 説明
followUpToken String

必須。

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

status String

必須。

リクエストの結果。

サポートされている値:

SUCCESS
networkUploadSpeedMbps 数値

必須。

ネットワークのアップロード速度(メガビット/秒)。

成功: networkDownloadSpeedMbps と networkUploadSpeedMbps

フィールド タイプ 説明
followUpToken String

必須。

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

status String

必須。

リクエストの結果。

サポートされている値:

SUCCESS
networkDownloadSpeedMbps 数値

必須。

ネットワークのダウンロード速度(メガビット/秒)。

networkUploadSpeedMbps 数値

必須。

ネットワークのアップロード速度(メガビット/秒)。

失敗

フィールド タイプ 説明
followUpToken String

必須。

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

status String

必須。

リクエストの結果。

サポートされている値:

FAILURE
errorCode String

必須。

値には、このトレイトの任意のエラーコードを指定できます(例: 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