Skema Trait Jaringan Smart Home NetworkControl

action.devices.traits.NetworkControl - Sifat ini termasuk perangkat yang mendukung pelaporan data jaringan dan melakukan operasi khusus jaringan.

ATRIBUT Perangkat

Perangkat dengan karakteristik ini dapat melaporkan atribut berikut sebagai bagian dari operasi SYNC. Untuk mempelajari penanganan intent SYNC lebih lanjut, lihat fulfillment intent.

Atribut Type Deskripsi
supportsEnablingGuestNetwork Boolean

(Default: false)

Tetapkan ke true jika jaringan tamu dapat diaktifkan.

supportsDisablingGuestNetwork Boolean

(Default: false)

Tetapkan ke true jika jaringan tamu dapat dinonaktifkan.

supportsGettingGuestNetworkPassword Boolean

(Default: false)

Tetapkan ke true jika sandi jaringan tamu dapat diperoleh melalui perintah GetGuestNetworkPassword.

networkProfiles Array

Menunjukkan nama profil jaringan yang didukung.

[item, ...] String

Nama profil jaringan yang mewakili sekelompok perangkat terkait.

supportsEnablingNetworkProfile Boolean

(Default: "false")

Tetapkan ke true jika profil jaringan dapat diaktifkan.

supportsDisablingNetworkProfile Boolean

(Default: "false")

Tetapkan ke true jika profil jaringan dapat dinonaktifkan.

supportsNetworkDownloadSpeedTest Boolean

(Default: false)

Tetapkan ke true jika uji kecepatan download dapat dijalankan.

supportsNetworkUploadSpeedTest Boolean

(Default: false)

Tetapkan ke true jika uji kecepatan upload dapat dijalankan.

Contoh

Perangkat jaringan yang mendukung jaringan tamu, profil, dan uji kecepatan.

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

STATE Perangkat

Entitas dengan karakteristik ini dapat melaporkan status berikut sebagai bagian dari operasi QUERY. Untuk mempelajari penanganan intent QUERY lebih lanjut, lihat fulfillment intent.

Negara bagian Type Deskripsi
networkEnabled Boolean

Apakah jaringan utama diaktifkan atau tidak.

networkSettings Objek

Berisi SSID jaringan utama.

ssid String

Wajib.

SSID Jaringan.

guestNetworkEnabled Boolean

Apakah jaringan tamu diaktifkan atau tidak.

guestNetworkSettings Objek

Berisi SSID jaringan tamu.

ssid String

Wajib.

SSID Jaringan.

numConnectedDevices Integer

Jumlah perangkat yang terhubung ke jaringan.

networkUsageMB Number

Penggunaan jaringan dalam MB (megabyte). Penggunaan jaringan berada dalam periode penagihan saat ini, yang dapat berguna untuk memantau sehubungan dengan batas penggunaan jaringan periode penagihan.

networkUsageLimitMB Number

Batas penggunaan jaringan dalam MB (megabyte). Batas penggunaan jaringan berada dalam periode penagihan saat ini.

networkUsageUnlimited Boolean

Apakah penggunaan jaringan tidak terbatas. Status perangkat networkUsageLimitMB akan diabaikan jika disetel ke benar (true).

lastNetworkDownloadSpeedTest Objek

Berisi hasil uji kecepatan download jaringan terbaru.

downloadSpeedMbps Number

Kecepatan download dalam Mbps (megabit per detik) dari pengujian kecepatan jaringan terakhir.

unixTimestampSec Integer

Stempel waktu Unix (jumlah detik sejak Unix Epoch) saat pengujian kecepatan download jaringan terakhir dijalankan.

status String

Menunjukkan apakah pengujian kecepatan download jaringan terakhir berhasil atau gagal.

Nilai yang didukung:

SUCCESS
FAILURE
lastNetworkUploadSpeedTest Objek

Berisi hasil uji kecepatan upload jaringan terbaru.

uploadSpeedMbps Number

Kecepatan upload dalam Mbps (megabit per detik) dari pengujian kecepatan jaringan terakhir.

unixTimestampSec Integer

Stempel waktu Unix (jumlah detik sejak Unix Epoch) saat pengujian kecepatan upload jaringan terakhir dijalankan.

status String

Menunjukkan apakah pengujian kecepatan upload jaringan terakhir berhasil atau gagal.

Nilai yang didukung:

SUCCESS
FAILURE
networkSpeedTestInProgress Boolean

(Default: false)

Apakah uji kecepatan sedang dijalankan.

networkProfilesState Objek

Status untuk profil jaringan. Objek tingkat teratas ini harus berisi key-value pair dengan kunci adalah nama salah satu profil jaringan yang tercantum di atribut networkProfiles dan nilainya harus berupa status yang sesuai di profil tersebut.

<string> Objek

Objek yang menyimpan status profil jaringan individual. Nilai kunci harus berupa nama salah satu profil jaringan di atribut networkProfiles.

enabled Boolean

Status profil jaringan yang diaktifkan/dinonaktifkan saat ini.

Contoh

Perangkat yang memiliki jaringan aktif.

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

Perangkat yang memiliki jaringan aktif dan hasil pengujian kecepatan.

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

Perangkat dengan jaringan aktif dan pengujian kecepatan sedang berlangsung.

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

Perangkat dengan networkProfile "kids" dinonaktifkan.

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

PERMINTAAN Perangkat

Perangkat dengan karakteristik ini dapat merespons perintah berikut sebagai bagian dari operasi EXECUTE. Untuk mempelajari penanganan intent EXECUTE lebih lanjut, lihat fulfillment intent.

action.devices.commands.EnableDisableGuestNetwork

Aktifkan atau nonaktifkan jaringan tamu. Verifikasi pengguna sekunder dengan PIN harus digunakan. Keamanan rumah pengguna dapat dianggap terpengaruh jika perangkat keamanan lainnya dinonaktifkan melalui perintah ini.

Perintah ini memerlukan atribut berikut:
{
  "supportsEnablingGuestNetwork": true,
  "supportsDisablingGuestNetwork": true
}

Parameter

Parameter Type Deskripsi
enable Boolean

Wajib.

True untuk mengaktifkan jaringan tamu, false untuk menonaktifkan jaringan tamu.

Contoh

Aktifkan jaringan tamu.

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

action.devices.commands.EnableDisableNetworkProfile

Mengaktifkan atau menonaktifkan profil jaringan. Verifikasi pengguna sekunder dengan PIN harus digunakan. Keamanan rumah pengguna dapat dianggap terpengaruh jika perangkat keamanan lainnya dinonaktifkan melalui perintah ini.

Perintah ini memerlukan atribut berikut:
{
  "supportsEnablingNetworkProfile": true,
  "supportsDisablingNetworkProfile": true
}

Parameter

Parameter Type Deskripsi
profile String

Wajib.

Nama profil dari atribut networkProfiles.

enable Boolean

Wajib.

True untuk mengaktifkan profil, false untuk menonaktifkan profil.

Contoh

Matikan internet untuk anak-anak.

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

Terjadi error saat mencoba mengontrol profil jaringan yang ditentukan.

Nilai yang didukung:

networkProfileNotRecognized

action.devices.commands.GetGuestNetworkPassword

Dapatkan sandi jaringan tamu. Verifikasi pengguna sekunder dengan PIN harus digunakan. Keamanan rumah pengguna dapat dianggap terpengaruh jika perangkat keamanan lainnya dinonaktifkan melalui perintah ini.

Perintah ini memerlukan atribut berikut:
{
  "supportsGettingGuestNetworkPassword": true
}

Parameter

Parameter Type Deskripsi

Tidak ada properti

Contoh

Tampilkan sandi Wi-Fi tamu saya.

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

Hasil

Hasil Type Deskripsi
guestNetworkPassword String

Wajib.

Sandi untuk jaringan tamu.

Contoh

Tampilkan sandi Wi-Fi tamu saya.

{
  "guestNetworkPassword": "123456"
}

action.devices.commands.TestNetworkSpeed

Uji kecepatan download dan upload jaringan.

Perintah ini memerlukan atribut berikut:
{
  "supportsNetworkDownloadSpeedTest": true,
  "supportsNetworkUploadSpeedTest": true
}

Parameter

Parameter Type Deskripsi
testDownloadSpeed Boolean

Wajib.

Menunjukkan apakah kecepatan download harus diuji.

testUploadSpeed Boolean

Wajib.

Menunjukkan apakah kecepatan upload harus diuji.

followUpToken String

Wajib.

Token yang disediakan Google untuk respons tindak lanjut.

Contoh

Berapa kecepatan Wi-Fi?

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

Terjadi error saat mencoba meminta uji kecepatan.

Nilai yang didukung:

networkSpeedTestInProgress

Respons tindak lanjut

Perangkat dengan karakteristik ini dapat menampilkan payload respons tindak lanjut berikut sebagai bagian dari operasi EXECUTE. Untuk mempelajari cara menerapkan respons lanjutan lebih lanjut, lihat Notifikasi untuk Action smart home.

Payload berisi salah satu dari hal berikut:

Berhasil: networkDownloadSpeedMbps

Kolom Type Deskripsi
followUpToken String

Wajib.

Token yang diberikan dalam permintaan EXECUTE asli.

status String

Wajib.

Hasil permintaan.

Nilai yang didukung:

SUCCESS
networkDownloadSpeedMbps Number

Wajib.

Kecepatan download jaringan yang diukur dalam megabit per detik.

Berhasil: networkUploadSpeedMbps

Kolom Type Deskripsi
followUpToken String

Wajib.

Token yang diberikan dalam permintaan EXECUTE asli.

status String

Wajib.

Hasil permintaan.

Nilai yang didukung:

SUCCESS
networkUploadSpeedMbps Number

Wajib.

Kecepatan upload jaringan yang diukur dalam megabit per detik.

Berhasil: networkDownloadSpeedMbps dan networkUploadSpeedMbps

Kolom Type Deskripsi
followUpToken String

Wajib.

Token yang diberikan dalam permintaan EXECUTE asli.

status String

Wajib.

Hasil permintaan.

Nilai yang didukung:

SUCCESS
networkDownloadSpeedMbps Number

Wajib.

Kecepatan download jaringan yang diukur dalam megabit per detik.

networkUploadSpeedMbps Number

Wajib.

Kecepatan upload jaringan yang diukur dalam megabit per detik.

Kegagalan

Kolom Type Deskripsi
followUpToken String

Wajib.

Token yang diberikan dalam permintaan EXECUTE asli.

status String

Wajib.

Hasil permintaan.

Nilai yang didukung:

FAILURE
errorCode String

Wajib.

Nilainya dapat berupa kode error untuk fitur ini, misalnya, transientError.

Contoh

Berapa kecepatan Wi-Fi-nya? (tindak lanjut)

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

Berapa kecepatan Wi-Fi-nya? (tindak lanjut dengan kegagalan).

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

ERRORS perangkat

Lihat daftar lengkap error dan pengecualian.

Terjadi error saat mencoba mengontrol profil jaringan yang ditentukan.

Nilai yang didukung:

networkProfileNotRecognized

Terjadi error saat mencoba meminta uji kecepatan.

Nilai yang didukung:

networkSpeedTestInProgress