Google berkomitmen untuk mendorong terwujudnya keadilan ras bagi komunitas Kulit Hitam. Lihat caranya.

Skema Weave

Skema Weave

Skema menjelaskan model data pokok yang mendorong representasi dan penafsiran data yang dikeluarkan oleh perangkat logis atau fisik dalam sistem Weave.

Skemanya adalah:

  • Standar — Ini berisi definisi fungsi yang disetujui secara resmi yang menyediakan antarmuka yang konsisten, terlepas dari implementasinya. Misalnya, bola lampu yang diwakili dalam skema akan selalu memiliki fungsi inti seperti status aktif/nonaktif dan tindakan atau tingkat peredupan.
  • Composable — Pengguna dapat membuat resource yang kompleks yang terdiri dari bit fungsi yang ditentukan dengan lebih kecil. Misalnya, Nest Detect berisi dua jenis sensor: motion dan open/close. Fungsi untuk jenis sensor ini distandardisasi dalam skema dan dapat digunakan kembali di seluruh perangkat.
  • Dapat Diperluas — Pengguna dapat membuat ekstensi khusus untuk fungsi standar. Misalnya, Anda dapat memperluas fungsi sensor gerakan standar skema dengan fungsi tambahan untuk aplikasi keamanan tertentu.
  • Versi — Semua perubahan dalam skema dibuat untuk kompatibilitas maju dan mundur.

Skema ini mendefinisikan tiga elemen: karakteristik, antarmuka, dan resource. Hampir semua fungsi dalam ekosistem Nest untuk operasi sehari-hari ditentukan dalam skema. Mari kita bahas setiap elemen secara lebih mendalam.

Sifat

Sifat adalah unit fungsi dasar. Properti dapat berupa status atau kemampuan perangkat umum, atau menjelaskan konfigurasi yang menginformasikan perilakunya. Satu karakteristik mungkin umum untuk banyak perangkat, atau spesifik untuk satu jenis perangkat.

Misalnya, dalam skema ini Anda mungkin menentukan karakteristik berikut untuk digunakan di perangkat Nest:

Sifat

Antarmuka

Kami dapat memperluas komposabilitas fitur dengan mengelompokkannya, terutama jika beberapa fitur mewakili fungsi baru yang spesifik. Jenis karakteristik tersebut disebut antarmuka .

Misalnya, antarmuka Interkom dapat terdiri dari fitur Speaker dan Mikrofon:

Sifat dan Antarmuka

Resource

Resource merepresentasikan hal logis atau fisik dalam skema. Misalnya, Nest Protect adalah sebuah fasilitas. Begitu juga Nest Guard. Atau pengguna, atau struktur seperti rumah pengguna.

Resource terdiri dari serangkaian karakteristik yang mencakup konfigurasi, status, dan kemampuannya.

Hubungan antara sumber daya, antarmuka, dan karakteristik terlihat seperti ini:

Resource, Antarmuka, dan Sifat

Seperti yang dapat Anda lihat, beberapa fitur, seperti fitur Motion, bersifat umum untuk resource yang berbeda. Dan beberapa antarmuka, seperti antarmuka Intercom, juga umum untuk resource yang berbeda. Fitur, antarmuka, dan resource ditentukan satu kali dalam skema dan digunakan kembali di berbagai resource dan perangkat dalam sistem Weave.

Elemen karakteristik

Fitur dibagi lagi menjadi tiga elemen utama: properti, perintah, dan peristiwa. Mari kita lihat contoh setiap elemen ciri.

Properti

Properties merepresentasikan status suatu karakteristik. Properti dapat berupa baca-tulis atau hanya-baca.

Misalnya:

  • Versi Software merupakan properti dari ciri Identitas Perangkat. Ini adalah ciri umum yang dimiliki oleh sebagian besar perangkat. Nest Thermostat, Kamera, dan Perlindungan—semua ini memiliki versi software khusus.
  • Bolt State adalah properti fitur Bolt Lock, tetapi khusus untuk perangkat seperti Yale x Nest Lock. Anda tidak akan menemukan kunci baut di Nest Thermostat, misalnya.

Perintah

Perintah adalah permintaan tindakan kustom khusus karakteristik dari suatu karakteristik, dengan respons yang diharapkan. Ini biasanya disebut perintah kustom dan dapat diperluas ke perubahan status tertentu untuk properti. Misalnya:

  • Perubahan Baut Lock adalah perintah kustom yang mengubah properti Status Baut dari fitur Kunci Baut.
  • Setel Kode Pengguna Pengguna adalah perintah khusus yang membuat properti Kode Pengguna Baru atau memperbarui yang ada dari fitur Setelan Kode Pengguna Pengguna.

Acara

Peristiwa adalah data peristiwa yang terjadi untuk suatu karakteristik. Nilai ini memberi tahu pelanggan tentang perubahan karakteristik karakteristik atau beberapa jenis peristiwa lainnya, seperti reset sistem.

Misalnya, peristiwa Perubahan Status Aktuator Bolt dari karakteristik Bolt Lock memberi tahu pelanggan tentang status beberapa properti Bolt Lock saat ini, serta aktor yang terakhir menyebabkan properti Status Aktuator Bolt berubah. Semua informasi ini dikirimkan sebagai satu acara.

Bahasa Deskripsi Skema Tenun

Fitur, antarmuka, dan resource skema di Weave ditentukan dan dijelaskan menggunakan bahasa khusus domain (DSL) yang memanfaatkan sintaksis Google Protocol Buffer v3. Bahasa ini disebut Weave Schema Deskripsi Language (WDL) .

WDL dijalankan melalui compiler yang menghasilkan realisasi dan encoding khusus platform yang berbeda. Jenis kode yang dihasilkan bergantung pada resource:

  • Objective C, Swift, Java, Scala — aplikasi seluler dan layanan cloud
  • C++ dengan encoding Weave TLV — perangkat tersemat dan aplikasi seluler

Nanti kita akan membahas lebih lanjut contoh WDL.

Rangkuman

Hal yang telah Anda pelajari:

  • Skema menjelaskan model data yang mendasari untuk sistem Weave.
  • Skema ini menentukan tiga elemen:
    • Sifat Unit fungsi dasar
    • Antarmuka Serangkaian karakteristik yang mewakili fungsi baru yang spesifik
    • Resource Hal yang logis atau fisik
  • Sifatnya terdiri dari properti, perintah, dan peristiwa:
    • Properti Status sifat resource
    • Perintah Permintaan kustom untuk tindakan karakteristik
    • Peristiwa Catatan peristiwa yang terjadi
  • Skema ini ditentukan menggunakan Weave Schema Deskripsi Language (WDL) , yang didasarkan pada Google Protocol Buffer v3

Untuk informasi yang lebih mendalam, lihat: