1. Giriş
Neler öğreneceksiniz?
- Komut dosyası içeren bir otomasyonu planlama ve yazma
- Komut dosyası içeren bir otomasyonu test etme
İhtiyacınız olanlar
- Google Home uygulamasının yüklü olduğu bir Android veya iOS telefon
- Google Home ile Çalışır sertifikalı ve açılıp kapatılabilen bir akıllı ışık veya başka bir cihaz
2. Cihazınızı kurma
Cihazınız henüz kurulmadıysa evinizde kurun.
Cihazın Google Home uygulamasında göründüğünü ve Home uygulamasını kullanarak cihazı açıp kapatabildiğinizi onaylayın.
3. Komut dosyalı otomasyonunuzu planlama
İlk olarak, komut dosyası içeren otomasyonumuzun ne yapmasını istediğimizi düşünerek başlayacağız. Bu kapsamda aşağıdaki gibi hususları göz önünde bulunduracağız:
- Hangi cihazları otomatikleştirmek istediğiniz
- Komut dosyası oluşturulmuş otomasyonun yürütülmesini hangi başlatıcı (veya etkinlik) tetiklemelidir?
- Komut dosyası içeren otomasyonun tetiklendikten sonra çalışıp çalışmayacağını kontrol eden ek koşullar (varsa).
- Hangi işlemlerin gerçekleştirileceği.
Bu codelab'in amacı doğrultusunda, komut dosyasıyla otomasyonun iki işlem yapmasını planlıyoruz:
- Işığınızı (veya diğer akıllı cihazınızı) belirli bir saatte açabilirsiniz.
- Cihazınızı belirli bir saatte kapatma
Komut dosyalı otomasyonumuzun tam olarak ne yapmasını istediğimiz konusunda net olduğumuza göre, komut dosyası düzenleyiciyi açıp komut dosyalı otomasyonu yazacağız.
4. Komut dosyalı otomasyonu yazma
Komut dosyası oluşturulan otomasyonlar, YAML veri serileştirme dili kullanılarak bildirimli bir şekilde yazılır.
Komut dosyası içeren otomasyonlar iki ana bölümden oluşur:
- Meta veriler: Komut dosyası oluşturulmuş otomasyonun adı ve ne yaptığına dair açıklama.
- Otomasyon kuralları: Otomasyonun başlatma mantığını ve davranışını tanımlar.
Meta veri
Otomasyonumuzun meta verileri, kullanıcıya otomasyonun adını ve ne işe yaradığını söyler. Meta veriler, şu şekilde görünen metadata bloğunda belirtilir:
metadata:
name: Scheduled light
description: Turn the light on and off at specific times
Otomasyon kuralları
Asıl çalışma, otomasyon kuralında yapılır. Sırayla değerlendirilen üç bölümden (başlatıcılar, koşullar ve işlemler) oluşur:
1 Starters | 2 Koşullar | 3 İşlem |
Başlatıcılar, otomasyonu başlatan öğelerdir. Sonraki koşulların değerlendirilmesi için en az bir başlatıcı | Bunlar isteğe bağlıdır ve bir başlangıç öğesi etkinleştirildikten sonra değerlendirilen bir veya daha fazla ek kısıtlamadan oluşur. Koşullar Birden fazla kısıtlama eklerken bunları Koşul, durum değişikliği bildirimiyle aynı şey değildir:
| İşlemler, başlatıcı ve tüm kısıtlama koşulları karşılandığında gerçekleştirilen işlemlerdir. |
Otomasyonumuzun automations bloğu iki kural içerir:
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
Aşağıdakileri göz önünde bulundurun:
- İki
automationskuralı vardır. Birincisi ışığı açar, ikincisi ise kapatır. - Her kuralın tek bir işlemi vardır.
on: true, ışığı aç anlamına gelir. Benzer şekilde,on: falsesimgesi ışığı kapat anlamına gelir.- Her kuralda, otomasyona hangi saatte başlatılacağını bildiren tek bir
time.schedulebaşlatıcı bulunur. - Bu otomasyonda koşul yok.
5. Tam komut dosyalı otomasyon
Tüm bu parçaları bir araya getirdiğimizde, komut dosyası otomasyonunun tamamı aşağıdaki gibi görünür:
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
- Otomasyonu kopyalayın (yukarıda).
- Google Home Web'e gidin.
- Üç yıldız simgesiyle gösterilen otomasyonlar sekmesini seçin:

- + Yeni ekle'yi tıklayın.
- Komut dosyası düzenleyicide otomasyon şablonunu silin.
- Otomasyonunuzu yapıştırın.
Desk light - Officeyerine cihazınızın adını ve konumunu yazın.- Doğrula'yı tıklayın. Komut dosyası düzenleyici, komut dosyası oluşturulmuş otomasyonunuzda hata içeren bölümlerin altını çizer. Ortaya çıkan hataları giderin ve hata kalmayana kadar doğrulamaya ve düzeltmeye devam edin. Örneğin, cihazınızın adı farklı olabilir. Bu durumda, geçerli bir cihaz adı seçmek için otomatik tamamlama özelliğini kullanabilirsiniz.
- Kaydet'i tıklayın.
- Senaryonuzun metninin altındaki Etkinleştir anahtarının açık konumda olduğundan emin olun:

6. Otomasyonu test etme
- Cihazınızın prize takılı olduğundan ve Google Home uygulamasında göründüğünden emin olun.
- Cihaz açıksa kapatın.
- Google Home Web'deki Otomasyonlar sayfasında otomasyonunuzun yanındaki "çalıştır" düğmesini tıklayın.

- Cihaz açılmalıdır.
Şimdi otomasyonu test edelim.
- Cihazı kapatın.
- Otomasyonu düzenleyin ve 7. satırdaki "cihazı açma" zamanını beş dakika sonrasına ayarlayın.
- 14. satırdaki "cihaz kapalı" zamanını, "açılma zamanından" kısa bir süre sonraki bir zamanla değiştirin.
- Doğrula'yı tıklayın. Oluşabilecek hataları düzeltin.
- Kaydet'i tıklayın.
- Etkinleştir anahtarının açık konumda olduğundan emin olun.
- İki başlangıç zamanının geçmesini bekleyin. Cihaz, belirttiğiniz saatlerde açılıp kapanmalıdır.
7. Tebrikler!
Komut dosyası içeren bir otomasyonu başarıyla oluşturdunuz. Tebrikler!
Bu codelab'de şunları öğrendiniz:
- Otomasyon tasarlama ve yazma
- Otomasyonları test etme
Sonraki adımlar
Bu codelab'de çok basit bir otomasyon oluşturduk. Otomasyonlar, güç anahtarının açılıp kapanmasını planlamaktan çok daha fazlasını yapabilir. Otomasyon oluşturmanın temel bilgilerini öğrendiğinize göre, Google Home ekosisteminde bulunan çeşitli başlangıç türlerini, koşulları ve işlemleri inceleyebilirsiniz.
Aşağıdaki alıştırmaları deneyin:
- Otomasyona daha fazla
time.schedulebaşlatıcı ekleyin. - Otomasyonu, aynı programda başka bir cihazı açıp kapatacak şekilde değiştirin.
time.schedulebaşlatıcılarını kaldırmadan otomasyonu, cihazları yalnızca başka bir cihaz açıldığında etkinleşecek şekilde değiştirin.conditionifadesini kullanan örnek komut dosyalarına bakın.- Otomasyonu, cihazları yalnızca evde biri varken açacak şekilde değiştirin.
Daha fazla bilgi
Google Home otomasyonları hakkında daha fazla bilgi edinmek için Otomasyonlar referans belgelerini inceleyin: