스마트 홈 NetworkControl 특성 스키마
action.devices.traits.NetworkControl
: 이 특성은 네트워크 데이터 보고 및 네트워크별 작업 실행을 지원하는 기기에 속합니다.
기기 ATTRIBUTES
이 특성이 있는 기기는 SYNC
작업의 일부로 다음 속성을 보고할 수 있습니다. SYNC
인텐트 처리에 관한 자세한 내용은 인텐트 처리를 참고하세요.
속성 | 유형 | 설명 |
---|---|---|
supportsEnablingGuestNetwork |
Boolean |
(기본값: 게스트 네트워크를 사용 설정할 수 있으면 true로 설정합니다. |
supportsDisablingGuestNetwork |
Boolean |
(기본값: 게스트 네트워크를 사용 중지할 수 있으면 true로 설정합니다. |
supportsGettingGuestNetworkPassword |
Boolean |
(기본값:
|
networkProfiles |
배열 |
지원되는 네트워크 프로필 이름을 나타냅니다. |
[item, ...] |
String |
관련 기기 그룹을 나타내는 네트워크 프로필의 이름입니다. |
supportsEnablingNetworkProfile |
Boolean |
(기본값: 네트워크 프로필을 사용 설정할 수 있으면 true로 설정합니다. |
supportsDisablingNetworkProfile |
Boolean |
(기본값: 네트워크 프로필을 사용 중지할 수 있으면 true로 설정합니다. |
supportsNetworkDownloadSpeedTest |
Boolean |
(기본값: 다운로드 속도 테스트를 실행할 수 있으면 true로 설정합니다. |
supportsNetworkUploadSpeedTest |
Boolean |
(기본값: 업로드 속도 테스트를 실행할 수 있으면 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 |
마지막 네트워크 다운로드 속도 테스트의 성공 또는 실패 여부를 나타냅니다. 지원되는 값:
|
lastNetworkUploadSpeedTest |
객체 |
가장 최근의 네트워크 업로드 속도 테스트 결과가 포함되어 있습니다. |
uploadSpeedMbps |
Number |
마지막 네트워크 속도 테스트의 업로드 속도(Mbps)입니다(초당 메가비트). |
unixTimestampSec |
정수 |
마지막 네트워크 업로드 속도 테스트가 실행된 시점의 Unix 타임스탬프(Unix 에포크 이후의 시간(초))입니다. |
status |
String |
마지막 네트워크 업로드 속도 테스트의 성공 또는 실패 여부를 나타냅니다. 지원되는 값:
|
networkSpeedTestInProgress |
Boolean |
(기본값: 현재 속도 테스트가 실행 중인지 여부입니다. |
networkProfilesState |
객체 |
네트워크 프로필의 상태입니다. 이 최상위 객체에는 키 값 쌍이 포함되어야 합니다. 여기서 키는 |
<string> |
객체 |
개별 네트워크 프로필의 상태를 저장하는 객체입니다. |
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 |
필수사항.
|
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 |
필수사항. 요청의 결과입니다. 지원되는 값:
|
networkDownloadSpeedMbps |
Number |
필수사항. 초당 메가비트 단위로 측정된 네트워크 다운로드 속도입니다. |
성공: networkUploadSpeedMbps
필드 | 유형 | 설명 |
---|---|---|
followUpToken |
String |
필수사항. 원래 EXECUTE 요청에서 제공된 토큰입니다. |
status |
String |
필수사항. 요청의 결과입니다. 지원되는 값:
|
networkUploadSpeedMbps |
Number |
필수사항. 초당 메가비트 단위로 측정된 네트워크 업로드 속도입니다. |
성공: networkDownloadSpeedMbps 및 networkUploadSpeedMbps
필드 | 유형 | 설명 |
---|---|---|
followUpToken |
String |
필수사항. 원래 EXECUTE 요청에서 제공된 토큰입니다. |
status |
String |
필수사항. 요청의 결과입니다. 지원되는 값:
|
networkDownloadSpeedMbps |
Number |
필수사항. 초당 메가비트 단위로 측정된 네트워크 다운로드 속도입니다. |
networkUploadSpeedMbps |
Number |
필수사항. 초당 메가비트 단위로 측정된 네트워크 업로드 속도입니다. |
실패
필드 | 유형 | 설명 |
---|---|---|
followUpToken |
String |
필수사항. 원래 EXECUTE 요청에서 제공된 토큰입니다. |
status |
String |
필수사항. 요청의 결과입니다. 지원되는 값:
|
errorCode |
String |
필수사항. 이 값은 이 특성의 모든 오류 코드(예: |
예시
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