Skema Trait NetworkControl Smart Home

action.devices.traits.NetworkControl - Ciri ini milik perangkat yang mendukung pelaporan data jaringan dan menjalankan operasi khusus jaringan.

ATTRIBUTE Perangkat

Perangkat dengan ciri 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 (benar) jika jaringan tamu dapat diaktifkan.

supportsDisablingGuestNetwork Boolean

(Default: false)

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

supportsGettingGuestNetworkPassword Boolean

(Default: false)

Setel ke true (benar) 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")

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

supportsDisablingNetworkProfile Boolean

(Default: "false")

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

supportsNetworkDownloadSpeedTest Boolean

(Default: false)

Setel ke true (benar) 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"
  ]
}

STATUS Perangkat

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

Status Type Deskripsi
networkEnabled Boolean

Apakah jaringan utama diaktifkan.

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 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 benar (true).

lastNetworkDownloadSpeedTest Objek

Berisi hasil uji kecepatan download jaringan terbaru.

downloadSpeedMbps Number

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

unixTimestampSec Bilangan Bulat

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

status String

Menunjukkan apakah uji 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 Unix Epoch) saat pengujian kecepatan upload jaringan terakhir dijalankan.

status String

Menunjukkan apakah uji 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 atas ini harus berisi pasangan nilai kunci dengan kuncinya adalah nama salah satu profil jaringan yang tercantum dalam atribut networkProfiles dan nilainya harus berupa status yang sesuai dari 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 saat ini diaktifkan/dinonaktifkan.

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 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 uji 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" yang dinonaktifkan.

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

Perangkat COMMAND

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

Mengaktifkan atau menonaktifkan jaringan tamu. Verifikasi sekunder pengguna 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, salah 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 sekunder pengguna 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

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 sekunder pengguna 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 diberikan Google untuk respons tindak lanjut.

Contoh

Berapa kecepatan Wi-Fi-nya?

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

Terjadi error saat mencoba meminta uji kecepatan.

Nilai yang didukung:

networkSpeedTestInProgress

Tindak lanjut tanggapan

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

Payload berisi salah satu 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 apa pun untuk fitur 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"
    }
  }
}

Perangkat ERRORS

Lihat daftar lengkap error dan pengecualian.

Terjadi error saat mencoba mengontrol profil jaringan yang diberikan.

Nilai yang didukung:

networkProfileNotRecognized

Terjadi error saat mencoba meminta uji kecepatan.

Nilai yang didukung:

networkSpeedTestInProgress