Sebelum mulai menggunakan Automation API, Anda harus mendesain otomatisasi.
Tentukan parameter berikut untuk setiap otomatisasi:
- Situasi saat otomatisasi harus disarankan kepada pengguna. Misalnya, jika pengguna baru saja menambahkan tiga lampu baru ke rumah, mereka mungkin tertarik dengan otomatisasi tertentu yang disesuaikan untuk mengontrol lampu.
- Jenis perangkat yang diperlukan untuk otomatisasi. Misalnya, jika pengguna
baru saja menambahkan tiga lampu baru ke rumah mereka, mereka mungkin tertarik dengan
otomatisasi tertentu yang disesuaikan untuk mengontrol lampu. Contoh jenis perangkat lampu
meliputi
OnOffLightDevice
,ColorTemperatureLightDevice
,DimmableLightDevice
, atauExtendedColorLightDevice
. - Atribut dan perintah karakteristik mana yang diperlukan untuk otomatisasi, dan apakah atribut dan perintah tersebut didukung oleh Automation API.
- Ciri yang harus mengaktifkan otomatisasi sebagai pemicu. Pemicu dibahas di Komponen otomatisasi.
- Kondisi tambahan yang menentukan apakah otomatisasi benar-benar harus berjalan, dan tindakan mana yang akan dilakukan.
- Alur eksekusi untuk otomatisasi. Apakah harus dieksekusi secara berurutan atau secara paralel? Apakah Anda memerlukan beberapa jalur logika?
Saat mendesain, sebaiknya buat diagram alur otomatisasi, node demi node, dengan logika yang diperlukan di setiap langkah.
Setelah Anda mendesain otomatisasi, gunakan Automation DSL untuk mem-build-nya. Otomatisasi yang Anda buat pada dasarnya adalah "template" — setiap struktur dan perangkat di dalamnya adalah placeholder dan diisi dengan struktur dan perangkat spesifik setiap pengguna saat mereka "mengadaptasi" otomatisasi untuk penggunaan mereka sendiri.
Berikut adalah berbagai jenis otomatisasi yang dapat dibuat aplikasi menggunakan Home API. Lihat halaman Mem-build otomatisasi untuk melihat cuplikan kode terkait contoh ini.
Otomatisasi sederhana
Misalnya, Anda perlu menulis aplikasi yang membuat otomatisasi yang mengangkat tirai
pada pukul 08.00. Untuk melakukannya, aplikasi memerlukan daftar tirai
(perangkat dengan jenis perangkat WindowCoveringDevice
) yang ada dalam struktur
yang mendukung otomatisasi, yang dapat disediakan oleh Discovery API.
Untuk otomatisasi yang perlu dijalankan pada waktu tertentu, Anda juga harus memastikan bahwa pengguna telah menetapkan alamat jalan untuk struktur yang dipilih di Google Home app (GHA). Jika tidak, otomatisasi tidak akan mengetahui zona waktu tempat otomatisasi akan berjalan. Discovery API dapat membantu Anda menentukan apakah alamat telah ditetapkan ke struktur atau tidak.
Jadi, alur eksekusi akan terlihat seperti ini:
- Dengan menggunakan Discovery API, kumpulkan daftar perangkat
WindowCoveringDevice
. - Jika alamat tidak diisi, beri tahu pengguna bahwa mereka harus menyediakan alamat, dan hentikan eksekusi.
- Atau, tentukan otomatisasi:
- Mulai otomatisasi pukul 08.00.
- Untuk setiap tirai, panggil perintah
upOrOpen
sifatWindowCovering
.
Otomatisasi kompleks
Bayangkan aplikasi yang membuat otomatisasi yang memicu lampu berkedip saat gerakan terdeteksi.
Salah satu tugas pertama dalam menerapkan aplikasi ini adalah mencari tahu lampu apa saja yang tersedia di rumah pengguna menggunakan Discovery API. Dengan informasi ini, aplikasi Anda kini dapat menampilkan lampu yang tersedia dan mungkin mengizinkan pengguna memilih lampu yang ingin berkedip.
Alur eksekusi:
- Dengan menggunakan Discovery API, kumpulkan daftar perangkat lampu yang ada dalam
struktur, yang akan menjadi perangkat apa pun dengan jenis perangkat
OnOffLightDevice
,ColorTemperatureLightDevice
,DimmableLightDevice
, atauExtendedColorLightDevice
. - Berikan cara untuk memilih lampu yang berkedip, mungkin melalui panel Setelan kustom.
- Tentukan otomatisasi:
- Mulai otomatisasi setiap kali seseorang meninggalkan atau tiba di tempat,
dengan memantau
AreaPresenceState
. - Jika
presenceState
menunjukkan bahwa struktur sedang ditempati, kedipkan lampu yang dipilih.
- Mulai otomatisasi setiap kali seseorang meninggalkan atau tiba di tempat,
dengan memantau
Otomatisasi generik
Untuk contoh otomatisasi yang lebih canggih, pertimbangkan otomatisasi yang memandu pengguna membuat otomatisasi terbuka, berdasarkan salah satu atau semua perangkat yang mereka miliki di rumah.
Otomatisasi mungkin akan meminta pengguna untuk memilih struktur terlebih dahulu.
Kemudian, otomatisasi dapat menampilkan semua ruangan dalam struktur dalam tampilan garis besar yang dapat diluaskan, dengan meluaskan ruangan akan menampilkan perangkat di dalamnya. Memperluas perangkat lebih lanjut mencantumkan pemicu, dan perintah yang didukung oleh perangkat tersebut.
Pengguna dapat memilih perangkat, pemicu, dan perintah yang ingin mereka gunakan, dan otomatisasi akan memandu pengguna dalam menyusun otomatisasi.
Jika semua pilihan dan keputusan pengguna sudah final, otomatisasi akan membuat otomatisasi dan menyimpannya ke struktur yang dipilih.
Pada tingkat tinggi, otomatisasi semacam itu perlu mengumpulkan beberapa kumpulan data tentang rumah pengguna menggunakan Structure API, Device API, dan Discovery API.
API | Informasi |
---|---|
Structure API |
|
Device API |
|
Discovery API |
|