Sebelum Anda mulai menggunakan API Otomatisasi, Anda harus merancang otomatisasi Anda.
Tentukan parameter berikut untuk setiap otomatisasi:
- Keadaan saat otomatisasi harus disarankan kepada pengguna. Misalnya, jika pengguna baru saja menambahkan tiga lampu baru ke rumahnya, dia mungkin tertarik dengan otomatisasi tertentu yang disesuaikan untuk mengontrol lampu.
- Jenis perangkat mana yang diperlukan untuk otomatisasi. Misalnya, jika pengguna baru saja menambahkan tiga lampu baru ke rumahnya, dia mungkin tertarik dengan otomatisasi tertentu yang disesuaikan untuk mengontrol lampu. Contoh jenis perangkat lampu mencakup
OnOffLightDevice,ColorTemperatureLightDevice,DimmableLightDevice, atauExtendedColorLightDevice. - Atribut dan perintah karakteristik mana yang diperlukan untuk otomatisasi, dan apakah didukung oleh Automation API di Android.
- Ciri yang harus mengaktifkan otomatisasi sebagai pemicu. Pemula dibahas dalam Komponen otomatisasi di Android.
- Kondisi tambahan yang menentukan apakah otomatisasi harus benar-benar berjalan, dan tindakan mana yang harus dilakukan.
- Alur eksekusi untuk otomatisasi. Haruskah dijalankan secara berurutan atau paralel? Apakah Anda memerlukan beberapa jalur logika?
Saat mendesain, mungkin berguna untuk membuat diagram aliran otomatisasi, simpul demi simpul, dengan logika yang diperlukan pada setiap langkah.
Setelah Anda merancang otomatisasi, gunakan Automation DSL untuk membangunnya. Otomatisasi yang Anda buat pada dasarnya adalah "template" — semua struktur dan perangkat di dalamnya adalah placeholder dan diisi dengan struktur dan perangkat spesifik setiap pengguna saat mereka "mengadopsi" otomatisasi untuk digunakan sendiri.
Berikut adalah berbagai jenis otomatisasi yang dapat dibuat aplikasi menggunakan Home API. Lihat halaman Membangun otomatisasi untuk cuplikan kode yang berkaitan dengan contoh ini.
Otomatisasi sederhana
Katakanlah Anda perlu menulis aplikasi yang menciptakan otomatisasi yang menaikkan tirai pada pukul 8:00 pagi. Untuk mencapai hal ini, aplikasi memerlukan daftar blind (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 bangunan yang dipilih di Google Home app (GHA). Jika tidak, otomatisasi tidak akan mengetahui zona waktu tempat otomatisasi akan dijalankan. Discovery API dapat membantu Anda menentukan apakah suatu alamat ditetapkan ke struktur atau tidak.
Jadi alur eksekusinya akan tampak seperti ini:
- Menggunakan Discovery API, kumpulkan daftar perangkat
WindowCoveringDevice. - Jika alamat jalan tidak diisi, beri tahu pengguna bahwa mereka perlu memberikan alamat jalan, dan hentikan eksekusi.
- Jika tidak, tentukan otomatisasi:
- Mulai otomatisasi pada pukul 8:00 pagi.
- Untuk setiap tirai, panggil perintah
upOrOpentraitWindowCovering.
Otomatisasi yang kompleks
Bayangkan sebuah aplikasi yang membangun otomatisasi yang memicu lampu berkedip saat gerakan terdeteksi.
Salah satu tugas pertama dalam penerapan aplikasi ini adalah mencari tahu lampu apa saja yang tersedia di rumah pengguna menggunakan Discovery API. Dengan informasi ini, aplikasi Anda sekarang dapat menampilkan lampu yang tersedia dan mungkin memungkinkan pengguna memilih lampu mana yang ingin dikedipkan.
Alur eksekusi:
- Dengan menggunakan Discovery API, kumpulkan daftar perangkat lampu yang ada di
struktur, yang merupakan perangkat dengan jenis perangkat
OnOffLightDevice,ColorTemperatureLightDevice,DimmableLightDevice, atauExtendedColorLightDevice. - Menyediakan cara untuk memilih lampu yang berkedip, mungkin melalui panel Pengaturan khusus.
- Tentukan otomatisasi:
- Mulai otomatisasi setiap kali seseorang pergi atau tiba di lokasi,
dengan memantau
AreaPresenceState. - Jika
presenceStatemenunjukkan bahwa struktur ditempati, kedipkan lampu yang dipilih.
- Mulai otomatisasi setiap kali seseorang pergi atau tiba di lokasi,
dengan memantau
Otomatisasi umum
Untuk contoh otomatisasi yang lebih canggih, pertimbangkan otomatisasi yang memandu pengguna dalam pembuatan otomatisasi terbuka, berdasarkan salah satu atau semua perangkat yang mereka miliki di rumah.
Otomatisasi mungkin pertama-tama meminta pengguna untuk memilih suatu struktur.
Kemudian otomatisasi dapat menampilkan semua ruangan dalam struktur tersebut dalam tampilan garis besar yang dapat diperluas, di mana memperluas suatu ruangan akan memperlihatkan perangkat-perangkat yang ada di dalamnya. Memperluas perangkat lebih lanjut akan mencantumkan permulaan, dan perintah yang didukung oleh perangkat tersebut.
Pengguna dapat memilih perangkat, permulaan, dan perintah yang ingin digunakan, dan otomatisasi akan memandu pengguna dalam merakit otomatisasi.
Setelah semua pilihan dan keputusan pengguna bersifat final, otomatisasi akan membuat otomatisasi dan menyimpannya ke struktur yang dipilih pengguna.
Pada tingkat tinggi, otomatisasi semacam itu perlu mengumpulkan beberapa set data tentang rumah pengguna menggunakan Structure API untuk Android, Device API untuk Android, dan Discovery API.
| API | Informasi |
|---|---|
| Structure API |
|
| Device API |
|
| Discovery API |
|