Schéma de Trait NetworkControl pour la maison connectée

action.devices.traits.NetworkControl : cette caractéristique appartient aux appareils qui prennent en charge la création de rapports sur les données réseau et l'exécution d'opérations spécifiques au réseau.

ATTRIBUTS D'appareils

Les appareils présentant cette caractéristique peuvent signaler les éléments suivants : dans le cadre de l'opération SYNC. Pour apprendre Pour en savoir plus sur la gestion des intents SYNC, consultez Traitement des intents.

Attributs Type Description
supportsEnablingGuestNetwork Valeur booléenne

(Par défaut : false)

Défini sur "true" si le réseau invité peut être activé.

supportsDisablingGuestNetwork Valeur booléenne

(Par défaut : false)

Défini sur "true" si le réseau invité peut être désactivé.

supportsGettingGuestNetworkPassword Valeur booléenne

(Par défaut : false)

Défini sur "true" si le mot de passe du réseau invité peut être obtenu via la commande GetGuestNetworkPassword.

networkProfiles Array

Indique les noms de profils réseau acceptés.

[item, ...] String

Nom d'un profil réseau représentant un groupe d'appareils associés.

supportsEnablingNetworkProfile Valeur booléenne

(Par défaut : "false")

Défini sur "true" si les profils réseau peuvent être activés.

supportsDisablingNetworkProfile Valeur booléenne

(Par défaut : "false")

Défini sur "true" si les profils réseau peuvent être désactivés.

supportsNetworkDownloadSpeedTest Valeur booléenne

(Par défaut : false)

Défini sur "true" si un test du débit descendant peut être effectué.

supportsNetworkUploadSpeedTest Valeur booléenne

(Par défaut : false)

Défini sur "true" si un test du débit montant peut être effectué.

Exemples

Périphérique réseau compatible avec le réseau invité, les profils et le test de débit.

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

STATES de l'appareil

Les entités présentant cette caractéristique peuvent signaler les éléments suivants : dans le cadre de l'opération QUERY. Pour apprendre Pour en savoir plus sur la gestion des intents QUERY, consultez Traitement des intents.

États Type Description
networkEnabled Valeur booléenne

Indique si le réseau principal est activé.

networkSettings Objet

Contient le SSID du réseau principal.

ssid String

Obligatoire.

SSID du réseau.

guestNetworkEnabled Valeur booléenne

Indique si le réseau invité est activé.

guestNetworkSettings Objet

Contient le SSID du réseau invité.

ssid String

Obligatoire.

SSID du réseau.

numConnectedDevices Entier

Nombre d'appareils connectés au réseau.

networkUsageMB Number

Utilisation du réseau en Mo (mégaoctets). L'utilisation du réseau est comprise dans la période de facturation en cours. Il peut être utile de surveiller la limite d'utilisation du réseau pendant la période de facturation.

networkUsageLimitMB Number

Limite d'utilisation du réseau en Mo (mégaoctets). La limite d'utilisation du réseau est comprise dans la période de facturation en cours.

networkUsageUnlimited Valeur booléenne

Indique si l'utilisation du réseau est illimitée. L'état de l'appareil "networkUsageLimitMB" sera ignoré si cette valeur est définie sur "true".

lastNetworkDownloadSpeedTest Objet

Contient les résultats du test de débit de téléchargement réseau le plus récent.

downloadSpeedMbps Number

Débit descendant en Mbit/s (mégabits par seconde) lors du dernier test de débit réseau.

unixTimestampSec Entier

Horodatage Unix (nombre de secondes depuis l'époque Unix) du dernier test de vitesse de téléchargement réseau.

status String

Indique si le dernier test du débit descendant du réseau a réussi ou échoué.

Valeurs acceptées :

SUCCESS
FAILURE
lastNetworkUploadSpeedTest Objet

Contient les résultats du test de débit montant le plus récent sur le réseau.

uploadSpeedMbps Number

Débit ascendant en Mbit/s (mégabits par seconde) lors du dernier test de débit réseau.

unixTimestampSec Entier

Horodatage Unix (nombre de secondes depuis l'époque Unix) du dernier test de vitesse d'importation réseau.

status String

Indique si le dernier test de débit ascendant sur le réseau a réussi ou échoué.

Valeurs acceptées :

SUCCESS
FAILURE
networkSpeedTestInProgress Valeur booléenne

(Par défaut : false)

Indique si un test de débit est en cours.

networkProfilesState Objet

État des profils réseau. Cet objet de premier niveau doit contenir des paires clé/valeur où la clé correspond au nom de l'un des profils réseau répertoriés dans l'attribut networkProfiles et la valeur doit correspondre à l'état correspondant de ce profil.

<string> Objet

Objet stockant l'état d'un profil de réseau individuel. La valeur de la clé doit correspondre au nom de l'un des profils réseau de l'attribut networkProfiles.

enabled Valeur booléenne

État actuel activé/désactivé du profil réseau.

Exemples

Appareil avec un réseau actif.

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

Appareil avec un réseau actif et les résultats du test de débit.

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

Appareil avec un réseau actif et un test de débit en cours.

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

Appareil avec les "enfants" Profil réseau désactivé.

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

COMMANDS d'appareils

Les appareils présentant cette caractéristique peuvent répondre aux éléments suivants : dans le cadre de l'opération EXECUTE. Pour apprendre Pour en savoir plus sur la gestion des intents EXECUTE, consultez Traitement des intents.

action.devices.commands.EnableDisableGuestNetwork

Activez ou désactivez le réseau invité. Vous devez utiliser la validation secondaire à l'aide d'un code. La sécurité de la maison d'un utilisateur peut être considérée comme affectée si d'autres appareils de sécurité sont désactivés à l'aide de ces commandes.

Cette commande nécessite les attributs suivants:
{
  "supportsEnablingGuestNetwork": true,
  "supportsDisablingGuestNetwork": true
}

Paramètres

Paramètres Type Description
enable Valeur booléenne

Obligatoire.

"True" pour activer le réseau invité, "false" pour le désactiver.

Exemples

Activez le réseau invité.

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

action.devices.commands.EnableDisableNetworkProfile

Activez ou désactivez un profil réseau. Vous devez utiliser la validation secondaire à l'aide d'un code. La sécurité de la maison d'un utilisateur peut être considérée comme affectée si d'autres appareils de sécurité sont désactivés à l'aide de ces commandes.

Cette commande nécessite les attributs suivants:
{
  "supportsEnablingNetworkProfile": true,
  "supportsDisablingNetworkProfile": true
}

Paramètres

Paramètres Type Description
profile String

Obligatoire.

Nom de profil indiqué dans l'attribut networkProfiles.

enable Valeur booléenne

Obligatoire.

"True" pour activer le profil, "false" pour le désactiver.

Exemples

Désactivez Internet pour vos enfants.

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

Une erreur s'est produite lors de la tentative de contrôle du profil réseau donné.

Valeurs acceptées :

networkProfileNotRecognized

action.devices.commands.GetGuestNetworkPassword

Obtenez le mot de passe du réseau invité. Vous devez utiliser la validation secondaire à l'aide d'un code. La sécurité de la maison d'un utilisateur peut être considérée comme affectée si d'autres appareils de sécurité sont désactivés à l'aide de ces commandes.

Cette commande nécessite les attributs suivants:
{
  "supportsGettingGuestNetworkPassword": true
}

Paramètres

Paramètres Type Description

Aucune propriété

Exemples

Affiche le mot de passe de mon réseau Wi-Fi invité.

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

Résultats

Résultats Type Description
guestNetworkPassword String

Obligatoire.

Mot de passe du réseau invité.

Exemples

Affiche le mot de passe de mon réseau Wi-Fi invité.

{
  "guestNetworkPassword": "123456"
}

action.devices.commands.TestNetworkSpeed

Testez le débit descendant et ascendant du réseau.

Cette commande nécessite les attributs suivants:
{
  "supportsNetworkDownloadSpeedTest": true,
  "supportsNetworkUploadSpeedTest": true
}

Paramètres

Paramètres Type Description
testDownloadSpeed Valeur booléenne

Obligatoire.

Indique si la vitesse de téléchargement doit être testée.

testUploadSpeed Valeur booléenne

Obligatoire.

Indique si la vitesse d'importation doit être testée.

followUpToken String

Obligatoire.

Jeton fourni par Google pour la réponse de suivi.

Exemples

Quel est le débit Wi-Fi ?

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

Une erreur s'est produite lors de la demande de test de débit.

Valeurs acceptées :

networkSpeedTestInProgress

Réponses de suivi

Les appareils présentant cette caractéristique peuvent renvoyer les éléments suivants : charge utile de la réponse de suivi dans le cadre de l'opération EXECUTE. Pour apprendre comment implémenter des réponses de suivi, consultez Notifications pour les actions de maison connectée

La charge utile contient l'un des éléments suivants:

Réussite: networkDownloadSpeedMbps

Champs Type Description
followUpToken String

Obligatoire.

Jeton fourni dans la requête EXECUTE d'origine.

status String

Obligatoire.

Résultat de la requête.

Valeurs acceptées :

SUCCESS
networkDownloadSpeedMbps Number

Obligatoire.

Vitesse de téléchargement du réseau, mesurée en mégabits par seconde.

Réussite: networkUploadSpeedMbps

Champs Type Description
followUpToken String

Obligatoire.

Jeton fourni dans la requête EXECUTE d'origine.

status String

Obligatoire.

Résultat de la requête.

Valeurs acceptées :

SUCCESS
networkUploadSpeedMbps Number

Obligatoire.

Vitesse de transfert réseau mesurée en mégabits par seconde.

Opération réussie: networkDownloadSpeedMbps et networkUploadSpeedMbps

Champs Type Description
followUpToken String

Obligatoire.

Jeton fourni dans la requête EXECUTE d'origine.

status String

Obligatoire.

Résultat de la requête.

Valeurs acceptées :

SUCCESS
networkDownloadSpeedMbps Number

Obligatoire.

Vitesse de téléchargement du réseau, mesurée en mégabits par seconde.

networkUploadSpeedMbps Number

Obligatoire.

Vitesse de transfert réseau mesurée en mégabits par seconde.

Échec

Champs Type Description
followUpToken String

Obligatoire.

Jeton fourni dans la requête EXECUTE d'origine.

status String

Obligatoire.

Résultat de la requête.

Valeurs acceptées :

FAILURE
errorCode String

Obligatoire.

La valeur peut correspondre à n'importe quel code d'erreur pour cette caractéristique, par exemple transientError.

Exemples

Quel est le débit Wi-Fi ? (réponse de suivi)

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

Quel est le débit Wi-Fi ? (réponse de suivi en cas d'échec)

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

Erreurs d'appareil

Voir la liste complète les erreurs et les exceptions.

Une erreur s'est produite lors de la tentative de contrôle du profil réseau donné.

Valeurs acceptées :

networkProfileNotRecognized

Une erreur s'est produite lors de la demande de test de débit.

Valeurs acceptées :

networkSpeedTestInProgress