스마트 홈 네트워크 제어 특성 스키마
action.devices.traits.NetworkControl
: 이 트레잇은 네트워크 데이터 보고 및 네트워크별 작업 실행을 지원하는 기기에 속합니다.
기기 속성
이 특성이 있는 기기는 다음을 보고할 수 있습니다.
속성을 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 |
숫자 |
네트워크 사용량 (MB)입니다. 네트워크 사용량이 현재 결제 기간 내에 있으므로 결제 기간 네트워크 사용량 한도와 관련하여 모니터링하는 것이 유용할 수 있습니다. |
networkUsageLimitMB |
숫자 |
네트워크 사용 한도 (MB, 메가바이트)입니다. 네트워크 사용량 한도가 현재 결제 기간 내에 있습니다. |
networkUsageUnlimited |
Boolean |
네트워크 사용량이 무제한인지 여부입니다. true로 설정하면 기기 상태 networkUsageLimitMB가 무시됩니다. |
lastNetworkDownloadSpeedTest |
객체 |
가장 최근의 네트워크 다운로드 속도 테스트 결과가 포함됩니다. |
downloadSpeedMbps |
숫자 |
최근 네트워크 속도 테스트의 다운로드 속도(Mbps)(초당 메가비트)입니다. |
unixTimestampSec |
정수 |
마지막 네트워크 다운로드 속도 테스트가 실행된 시간의 Unix 타임스탬프 (Unix 에포크 이후의 초 수)입니다. |
status |
String |
마지막 네트워크 다운로드 속도 테스트가 성공했는지 실패했는지 나타냅니다. 지원되는 값:
|
lastNetworkUploadSpeedTest |
객체 |
가장 최근의 네트워크 업로드 속도 테스트 결과가 포함됩니다. |
uploadSpeedMbps |
숫자 |
최근 네트워크 속도 테스트의 업로드 속도(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 }
'kids'가 있는 기기 networkProfile이 사용 중지됨
{ "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 |
숫자 |
필수사항. 초당 메가비트 단위로 측정된 네트워크 다운로드 속도 |
성공: networkUploadSpeedMbps
필드 | 유형 | 설명 |
---|---|---|
followUpToken |
String |
필수사항. 원래 EXECUTE 요청에 제공된 토큰입니다. |
status |
String |
필수사항. 요청의 결과입니다. 지원되는 값:
|
networkUploadSpeedMbps |
숫자 |
필수사항. 초당 메가비트 단위로 측정된 네트워크 업로드 속도 |
성공: networkDownloadSpeedMbps 및 networkUploadSpeedMbps
필드 | 유형 | 설명 |
---|---|---|
followUpToken |
String |
필수사항. 원래 EXECUTE 요청에 제공된 토큰입니다. |
status |
String |
필수사항. 요청의 결과입니다. 지원되는 값:
|
networkDownloadSpeedMbps |
숫자 |
필수사항. 초당 메가비트 단위로 측정된 네트워크 다운로드 속도 |
networkUploadSpeedMbps |
숫자 |
필수사항. 초당 메가비트 단위로 측정된 네트워크 업로드 속도 |
실패
필드 | 유형 | 설명 |
---|---|---|
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" } } }
기기 ERRORS
전체 목록 보기 오류 및 예외를 방지합니다.지정된 네트워크 프로필을 제어하려고 시도하는 중에 오류가 발생했습니다.
지원되는 값:
networkProfileNotRecognized
속도 테스트를 요청하는 중에 오류가 발생했습니다.
지원되는 값:
networkSpeedTestInProgress