Skema Smart Home NetworkControl Trait

action.devices.traits.NetworkControl - Sifat ini dimiliki oleh 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 lebih lanjut cara menangani intent SYNC, lihat Fulfillment intent.

Atribut Jenis Deskripsi
supportsEnablingGuestNetwork Boolean

(Default: false)

Tetapkan ke benar (true) jika jaringan tamu dapat diaktifkan.

supportsDisablingGuestNetwork Boolean

(Default: false)

Tetapkan ke benar (true) jika jaringan tamu dapat dinonaktifkan.

supportsGettingGuestNetworkPassword Boolean

(Default: false)

Tetapkan ke benar (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 grup perangkat terkait.

supportsEnablingNetworkProfile Boolean

(Default: "false")

Tetapkan ke benar (true) jika profil jaringan dapat diaktifkan.

supportsDisablingNetworkProfile Boolean

(Default: "false")

Tetapkan ke benar (true) jika profil jaringan dapat dinonaktifkan.

supportsNetworkDownloadSpeedTest Boolean

(Default: false)

Tetapkan ke benar (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 pengujian kecepatan.

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

Status PERANGKAT

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

Negara bagian Jenis Deskripsi
networkEnabled Boolean

Apakah jaringan utama diaktifkan.

networkSettings Objek

Berisi SSID jaringan utama.

ssid String

Wajib.

SSID jaringan.

guestNetworkEnabled Boolean

Apakah jaringan tamu diaktifkan.

guestNetworkSettings Objek

Berisi SSID jaringan tamu.

ssid String

Wajib.

SSID jaringan.

numConnectedDevices Bilangan Bulat

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 dipantau 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. networkUsageLimitMB status perangkat akan diabaikan jika disetel ke 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 Bilangan Bulat

Stempel waktu Unix (jumlah detik sejak Epoch Unix) 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 uji kecepatan jaringan terakhir.

unixTimestampSec Bilangan Bulat

Stempel waktu Unix (jumlah detik sejak Epoch Unix) 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 berjalan.

networkProfilesState Objek

Status untuk profil jaringan. Objek tingkat teratas ini harus berisi pasangan nilai kunci dengan kunci adalah nama salah satu profil jaringan yang tercantum dalam atribut networkProfiles dan nilainya harus berupa status profil yang sesuai.

<string> Objek

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

enabled Boolean

Status profil jaringan yang diaktifkan/dinonaktifkan saat ini.

Contoh

Perangkat dengan jaringan aktif.

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

Perangkat dengan jaringan aktif dan hasil uji 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 "anak-anak" dinonaktifkan.

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

Perintah Perangkat

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

action.devices.commands.EnableDisableGuestNetwork

Mengaktifkan atau menonaktifkan 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 Jenis Deskripsi
enable Boolean

Wajib.

Benar (true) untuk mengaktifkan jaringan tamu, salah (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 Jenis Deskripsi
profile String

Wajib.

Nama profil dari atribut networkProfiles.

enable Boolean

Wajib.

Benar untuk mengaktifkan profil, salah untuk menonaktifkan profil.

Contoh

Nonaktifkan internet untuk anak-anak.

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

Terjadi error saat mencoba mengontrol profil jaringan yang diberikan.

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 Jenis Deskripsi

Tidak ada properti

Contoh

Tampilkan sandi Wi-Fi tamu saya.

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

Hasil

Hasil Jenis 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 Jenis 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 lanjutan.

Contoh

Berapa kecepatan Wi-Fi-nya?

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

Terjadi error saat mencoba meminta pengujian 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 penerapan respons tindak lanjut lebih lanjut, lihat Notifikasi untuk Action smart home.

Payload berisi salah satu hal berikut:

Berhasil: networkDownloadSpeedMbps

Kolom Jenis 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 Jenis 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 Jenis 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.

Gagal

Kolom Jenis 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 apa pun untuk karakteristik ini, misalnya, transientError.

Contoh

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

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

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

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

ERROR Perangkat

Lihat daftar lengkap error dan pengecualian.

Terjadi error saat mencoba mengontrol profil jaringan yang diberikan.

Nilai yang didukung:

networkProfileNotRecognized

Terjadi error saat mencoba meminta pengujian kecepatan.

Nilai yang didukung:

networkSpeedTestInProgress