1. Pengantar
Yang akan Anda pelajari
- Cara merencanakan dan menulis otomatisasi dengan skrip.
- Cara menguji otomatisasi dengan skrip.
Yang Anda butuhkan
- Ponsel Android atau iOS yang menjalankan aplikasi Google Home.
- Lampu smart atau perangkat lain yang disertifikasi untuk Kompatibel dengan Google Home dan dapat dihidupkan atau dimatikan.
2. Siapkan perangkat
Jika perangkat Anda belum disiapkan, lanjutkan dan siapkan perangkat di rumah Anda.
Konfirmasi bahwa perangkat muncul di aplikasi Google Home, dan Anda dapat mengaktifkan serta menonaktifkannya menggunakan aplikasi Home.
3. Merencanakan otomatisasi dengan skrip
Kita akan mulai dengan memikirkan apa yang ingin kita lakukan dengan otomatisasi yang dibuat dengan skrip. Hal ini mencakup pertimbangan seperti:
- Perangkat mana yang ingin Anda otomatiskan.
- Pemicu (atau peristiwa) apa yang harus memicu eksekusi otomatisasi yang dibuat dengan skrip.
- Kondisi tambahan apa saja, jika ada, yang mengontrol apakah otomatisasi yang dibuat dengan skrip berjalan atau tidak setelah dipicu.
- Tindakan apa yang akan dilakukan.
Untuk tujuan codelab ini, rencana kita adalah membuat otomatisasi dengan skrip melakukan dua hal:
- Menyalakan lampu (atau perangkat smart lainnya) pada waktu tertentu.
- Menonaktifkan perangkat pada waktu tertentu.
Setelah kita memahami dengan jelas apa yang kita inginkan dari otomatisasi dengan skrip, kita akan membuka editor skrip dan menulis otomatisasi dengan skrip.
4. Menulis otomatisasi dengan skrip
Otomatisasi dengan skrip ditulis secara deklaratif menggunakan bahasa serialisasi data YAML.
Otomatisasi dengan skrip terdiri dari dua bagian utama:
- Metadata - Nama otomatisasi dengan skrip dan deskripsi fungsinya.
- Aturan otomatisasi — Menentukan logika inisiasi dan perilaku otomatisasi.
Metadata
Metadata otomatisasi kami memberi tahu pengguna nama dan fungsi otomatisasi. Metadata ditentukan dalam blok metadata, yang terlihat seperti ini:
metadata:
name: Scheduled light
description: Turn the light on and off at specific times
Aturan otomatisasi
Aturan otomatisasi adalah tempat pekerjaan sebenarnya dilakukan. Terdiri dari tiga bagian, pemicu, kondisi, dan tindakan, yang dievaluasi secara berurutan:
1 Starters | 2 Kondisi | 3 Tindakan |
Pemicu adalah hal yang memulai otomatisasi. Setidaknya satu pemicu harus dievaluasi sebagai | Opsi ini bersifat opsional, dan terdiri dari satu atau beberapa batasan tambahan yang dievaluasi setelah pemula diaktifkan. Jika kondisi diselesaikan ke Saat menyertakan beberapa batasan, pisahkan dengan kata kunci Kondisi tidak sama dengan notifikasi perubahan status:
| Tindakan adalah operasi yang dilakukan saat pemicu dan kondisi batasan telah terpenuhi. |
Blok automations otomatisasi kita berisi dua aturan:
automations:
- starters:
- type: time.schedule
at: 1:00 PM
actions:
- type: device.command.OnOff
devices: Desk light - Office
on: true
- starters:
- type: time.schedule
at: 1:05 PM
actions:
- type: device.command.OnOff
devices: Desk light - Office
on: false
Perhatikan hal berikut:
- Ada dua aturan
automations. Yang pertama menyalakan lampu, dan yang kedua mematikan lampu. - Setiap aturan memiliki satu tindakan.
on: trueberarti nyalakan lampu. Demikian pula,on: falseberarti matikan lampu.- Setiap aturan memiliki satu pemicu
time.scheduleyang memberi tahu otomatisasi waktu untuk memulai otomatisasi. - Tidak ada kondisi dalam otomatisasi ini.
5. Otomatisasi berbasis skrip penuh
Dengan menggabungkan semua bagian ini, berikut tampilan otomatisasi yang di-script secara lengkap:
metadata:
name: Scheduled light
description: Turn the light on and off at specific times
automations:
- starters:
- type: time.schedule
at: 1:00 PM
actions:
- type: device.command.OnOff
devices: Desk light - Office
on: true
- starters:
- type: time.schedule
at: 1:05 PM
actions:
- type: device.command.OnOff
devices: Desk light - Office
on: false
- Salin otomatisasi (di atas).
- Buka Google Home untuk web.
- Pilih tab otomatisasi, yang diwakili oleh ikon dengan tiga bintang:

- Klik + Tambahkan perbandingan baru.
- Di editor skrip, hapus template otomatisasi.
- Tempelkan otomatisasi Anda.
- Ganti
Desk light - Officedengan nama dan lokasi perangkat Anda. - Klik Validasi. Editor skrip menggarisbawahi bagian otomatisasi dengan skrip yang berisi error. Atasi error yang muncul dan terus lakukan validasi serta perbaikan hingga tidak ada lagi error. Misalnya, nama perangkat Anda mungkin berbeda. Jika demikian, Anda dapat menggunakan fitur pelengkapan otomatis untuk memilih nama perangkat yang valid.
- Klik Simpan.
- Pastikan tombol Aktifkan, di bawah teks skrip Anda, berada pada posisi aktif:

6. Menguji otomatisasi
- Pastikan perangkat Anda dicolokkan dan terlihat di aplikasi Google Home.
- Jika perangkat sedang aktif, nonaktifkan.
- Di halaman Otomatisasi di Google Home untuk web, klik tombol 'jalankan' di samping otomatisasi Anda.

- Perangkat akan menyala.
Sekarang, mari kita uji otomatisasi.
- Nonaktifkan perangkat.
- Edit otomatisasi, dan ubah waktu 'perangkat aktif' di baris 7 menjadi lima menit ke depan.
- Ubah waktu 'device off' di baris ke-14 menjadi waktu sesaat setelah 'on time'.
- Klik Validasi. Atasi error yang mungkin muncul.
- Klik Simpan.
- Pastikan tombol Aktifkan berada pada posisi aktif.
- Tunggu hingga kedua waktu mulai berlalu. Perangkat akan menyala, lalu mati pada waktu yang Anda tentukan.
7. Selamat!
Anda telah berhasil membuat otomatisasi dengan skrip - luar biasa!
Dalam codelab ini, Anda telah mempelajari cara:
- Cara merancang dan menulis otomatisasi.
- Cara menguji otomatisasi.
Langkah berikutnya
Dalam codelab ini, kita telah membuat otomatisasi yang sangat sederhana. Otomatisasi dapat melakukan lebih dari sekadar menjadwalkan pengalihan tombol daya. Setelah memahami dasar-dasar pembuatan otomatisasi, Anda dapat menjelajahi berbagai jenis pemicu, kondisi, dan tindakan yang tersedia di ekosistem Google Home.
Coba latihan berikut:
- Tambahkan lebih banyak pemicu
time.scheduleke otomatisasi. - Ubah otomatisasi untuk mengaktifkan dan menonaktifkan perangkat lain pada jadwal yang sama.
- Tanpa menghapus pemicu
time.schedule, ubah otomatisasi agar hanya mengaktifkan perangkat saat perangkat lain diaktifkan. Lihat skrip contoh yang menggunakan klausacondition. - Ubah otomatisasi agar hanya menyalakan perangkat saat ada orang di rumah.
Bacaan lebih lanjut
Untuk mempelajari lebih lanjut otomatisasi Google Home, pelajari dokumentasi referensi Otomatisasi: