스마트 홈 NetworkControl 특성 스키마

action.devices.traits.NetworkControl: 이 특성은 네트워크 데이터 보고 및 네트워크별 작업 실행을 지원하는 기기에 속합니다.

기기 ATTRIBUTES

이 특성이 있는 기기는 SYNC 작업의 일부로 다음 속성을 보고할 수 있습니다. SYNC 인텐트 처리에 관한 자세한 내용은 인텐트 처리를 참고하세요.

속성 유형 설명
supportsEnablingGuestNetwork Boolean

(기본값: false)

게스트 네트워크를 사용 설정할 수 있으면 true로 설정합니다.

supportsDisablingGuestNetwork Boolean

(기본값: false)

게스트 네트워크를 사용 중지할 수 있으면 true로 설정합니다.

supportsGettingGuestNetworkPassword Boolean

(기본값: false)

GetGuestNetworkPassword 명령어를 통해 게스트 네트워크 비밀번호를 가져올 수 있는 경우 true로 설정합니다.

networkProfiles 배열

지원되는 네트워크 프로필 이름을 나타냅니다.

[item, ...] String

관련 기기 그룹을 나타내는 네트워크 프로필의 이름입니다.

supportsEnablingNetworkProfile Boolean

(기본값: "false")

네트워크 프로필을 사용 설정할 수 있으면 true로 설정합니다.

supportsDisablingNetworkProfile Boolean

(기본값: "false")

네트워크 프로필을 사용 중지할 수 있으면 true로 설정합니다.

supportsNetworkDownloadSpeedTest Boolean

(기본값: false)

다운로드 속도 테스트를 실행할 수 있으면 true로 설정합니다.

supportsNetworkUploadSpeedTest Boolean

(기본값: false)

업로드 속도 테스트를 실행할 수 있으면 true로 설정합니다.

예시

게스트 네트워크, 프로필, 속도 테스트를 지원하는 네트워크 기기

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

기기 상태

이 특성을 가진 항목은 QUERY 작업의 일부로 다음 상태를 보고할 수 있습니다. QUERY 인텐트 처리에 관한 자세한 내용은 인텐트 처리를 참고하세요.

상태 유형 설명
networkEnabled Boolean

기본 네트워크의 사용 설정 여부입니다.

networkSettings 객체

기본 네트워크의 SSID가 포함됩니다.

ssid String

필수사항.

네트워크 SSID입니다.

guestNetworkEnabled Boolean

게스트 네트워크의 사용 설정 여부

guestNetworkSettings 객체

게스트 네트워크의 SSID가 포함됩니다.

ssid String

필수사항.

네트워크 SSID입니다.

numConnectedDevices 정수

네트워크에 연결된 기기의 수입니다.

networkUsageMB Number

네트워크 사용량 (MB)입니다. 네트워크 사용량이 현재 결제 기간 내에 있으므로 결제 기간의 네트워크 사용량 한도와 관련하여 모니터링하는 데 유용합니다.

networkUsageLimitMB Number

네트워크 사용량 한도 (MB)입니다. 네트워크 사용량 한도가 현재 결제 기간 내에 있습니다.

networkUsageUnlimited Boolean

네트워크 사용량이 무제한인지 여부입니다. true로 설정하면 기기 상태 networkUsageLimitMB가 무시됩니다.

lastNetworkDownloadSpeedTest 객체

가장 최근의 네트워크 다운로드 속도 테스트 결과를 포함합니다.

downloadSpeedMbps Number

마지막 네트워크 속도 테스트의 다운로드 속도(Mbps)입니다(초당 메가비트).

unixTimestampSec 정수

Unix 에포크 이후의 시간 (초)으로, 마지막 네트워크 다운로드 속도 테스트가 실행된 시점의 Unix 타임스탬프입니다.

status String

마지막 네트워크 다운로드 속도 테스트의 성공 또는 실패 여부를 나타냅니다.

지원되는 값:

SUCCESS
FAILURE
lastNetworkUploadSpeedTest 객체

가장 최근의 네트워크 업로드 속도 테스트 결과가 포함되어 있습니다.

uploadSpeedMbps Number

마지막 네트워크 속도 테스트의 업로드 속도(Mbps)입니다(초당 메가비트).

unixTimestampSec 정수

마지막 네트워크 업로드 속도 테스트가 실행된 시점의 Unix 타임스탬프(Unix 에포크 이후의 시간(초))입니다.

status String

마지막 네트워크 업로드 속도 테스트의 성공 또는 실패 여부를 나타냅니다.

지원되는 값:

SUCCESS
FAILURE
networkSpeedTestInProgress Boolean

(기본값: false)

현재 속도 테스트가 실행 중인지 여부입니다.

networkProfilesState 객체

네트워크 프로필의 상태입니다. 이 최상위 객체에는 키 값 쌍이 포함되어야 합니다. 여기서 키는 networkProfiles 속성에 나열된 네트워크 프로필 중 하나의 이름이고 값은 프로필의 상응하는 상태여야 합니다.

<string> 객체

개별 네트워크 프로필의 상태를 저장하는 객체입니다. 키 값은 networkProfiles 속성에 있는 네트워크 프로필 중 하나의 이름이어야 합니다.

enabled Boolean

네트워크 프로필의 현재 활성화/비활성화 상태입니다.

예시

활성 네트워크가 있는 기기.

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

'어린이' 네트워크 프로필이 사용 중지된 기기

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

기기 명령어

이 특성이 있는 기기는 EXECUTE 작업의 일부로 다음 명령어에 응답할 수 있습니다. EXECUTE 인텐트 처리에 관한 자세한 내용은 인텐트 처리를 참고하세요.

action.devices.commands.EnableDisableGuestNetwork

게스트 네트워크를 사용 또는 사용 중지합니다. PIN을 사용한 2차 사용자 인증을 사용해야 합니다. 이러한 명령어로 다른 보안 기기가 사용 중지되면 사용자의 홈 시큐리티가 영향을 받는 것으로 간주될 수 있습니다.

이 명령어에는 다음 속성이 필요합니다.
{
  "supportsEnablingGuestNetwork": true,
  "supportsDisablingGuestNetwork": true
}

매개변수

매개변수 유형 설명
enable Boolean

필수사항.

게스트 네트워크를 사용하려면 true, 게스트 네트워크를 사용 중지하려면 false를 지정합니다.

예시

게스트 네트워크를 사용 설정합니다.

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

action.devices.commands.EnableDisableNetworkProfile

네트워크 프로필을 사용 또는 사용 중지합니다. PIN을 사용한 2차 사용자 인증을 사용해야 합니다. 이러한 명령어로 다른 보안 기기가 사용 중지되면 사용자의 홈 시큐리티가 영향을 받는 것으로 간주될 수 있습니다.

이 명령어에는 다음 속성이 필요합니다.
{
  "supportsEnablingNetworkProfile": true,
  "supportsDisablingNetworkProfile": true
}

매개변수

매개변수 유형 설명
profile String

필수사항.

networkProfiles 속성의 프로필 이름입니다.

enable Boolean

필수사항.

프로필을 사용하려면 true, 프로필을 사용 중지하려면 false를 지정합니다.

예시

자녀의 인터넷을 사용 중지합니다.

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

해당 네트워크 프로필을 제어하려고 시도하는 중에 오류가 발생했습니다.

지원되는 값:

networkProfileNotRecognized

action.devices.commands.GetGuestNetworkPassword

게스트 네트워크 비밀번호를 가져옵니다. PIN을 사용한 2차 사용자 인증을 사용해야 합니다. 이러한 명령어로 다른 보안 기기가 사용 중지되면 사용자의 홈 시큐리티가 영향을 받는 것으로 간주될 수 있습니다.

이 명령어에는 다음 속성이 필요합니다.
{
  "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 Boolean

필수사항.

다운로드 속도를 테스트해야 하는지 여부를 나타냅니다.

testUploadSpeed Boolean

필수사항.

업로드 속도를 테스트해야 하는지 여부를 나타냅니다.

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 Number

필수사항.

초당 메가비트 단위로 측정된 네트워크 다운로드 속도입니다.

성공: networkUploadSpeedMbps

필드 유형 설명
followUpToken String

필수사항.

원래 EXECUTE 요청에서 제공된 토큰입니다.

status String

필수사항.

요청의 결과입니다.

지원되는 값:

SUCCESS
networkUploadSpeedMbps Number

필수사항.

초당 메가비트 단위로 측정된 네트워크 업로드 속도입니다.

성공: networkDownloadSpeedMbps 및 networkUploadSpeedMbps

필드 유형 설명
followUpToken String

필수사항.

원래 EXECUTE 요청에서 제공된 토큰입니다.

status String

필수사항.

요청의 결과입니다.

지원되는 값:

SUCCESS
networkDownloadSpeedMbps Number

필수사항.

초당 메가비트 단위로 측정된 네트워크 다운로드 속도입니다.

networkUploadSpeedMbps Number

필수사항.

초당 메가비트 단위로 측정된 네트워크 업로드 속도입니다.

실패

필드 유형 설명
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