Uygulamanızı test edin ve hatalarını ayıklayın

Yerel sipariş karşılama uygulamanızı daha önce açıklanan adımları kullanarak derlemenizi, ardından aşağıdaki adımları uygulayarak akıllı ev entegrasyonunuzu kendi barındırma ortamınızda test etmenizi öneririz:

  1. Kendi barındırma ortamınızda, yerel istek karşılama uygulamanızı çalıştıran HTML sayfasını sunun. Aşağıdaki snippet'te yerel istek karşılama uygulamanızı çalıştıran statik HTML dosyası örneği gösterilmektedir.

    <html>
      <head>
        <!-- Local Home SDK -->
        <script src="//www.gstatic.com/eureka/smarthome/smarthome_sdk.js"></script>
        <!-- Local app under development -->
        <script src="local_execution.js"></script>
      </head>
    
    </html>
    
    
  2. Cihaz kontrolünü test edin.

  3. Chrome'dan hata ayıklayın. Entegrasyonunuzla ilgili sorunları gidermek için kesme noktalarını ve günlükleri kullanın.

  4. TypeScript kodunuzu değiştirip derleyin, ardından bu adımları tekrarlayın.

Bu derleme ve test işlemini tekrarlayarak değişikliklerinizin işleyiş şeklini hızlı ve kolay bir şekilde görebilir, kodunuzdaki sorunları daha kolay tespit edebilir ve hata ayıklayabilirsiniz.

Cihaz kontrolünü test et

İşlem konsolunda web uygulamanızın URL'sini belirtmeniz gerekir. Bu URL, yerel sipariş karşılama sırasında Google Home veya Google Nest cihaza yüklenen HTML'yi sunar.

Yerel istek karşılama ile cihaz kontrolünü test etmek için şu adımları uygulayın:

Chrome

  1. Actions konsolunda Akıllı Ev projenizi açın.
  2. Sol gezinme menüsünde İşlemler'i tıklayın.
  3. Yerel ev SDK'sını yapılandırın (isteğe bağlı) > Chrome için test URL'nizi girin bölümünde, yerel sipariş karşılama uygulamanızı çalıştıran HTML'yi yayınlayan geliştirme sunucusu URL'sini belirtin.
  4. Kaydet'i tıklayın. Google'ın konsol değişikliklerinizi uygulaması 30 dakikayı bulabilir.
  5. Test amaçlı Google Home veya Google Nest cihazınızı yeniden başlatın.
  6. Akıllı cihazınıza bir komut verin. Örneğin, cihazınızda OnOff özelliği kullanılıyorsa "Ok Google, ışıkları aç" diyebilirsiniz.

Node.js

  1. Actions konsolunda Akıllı Ev projenizi açın.
  2. Sol gezinme menüsünde İşlemler'i tıklayın.
  3. Yerel ev SDK'sını yapılandırın (isteğe bağlı) > Düğüm için test URL'nizi girin bölümünde, yerel istek karşılama uygulamanızı çalıştıran JavaScript'i sunan geliştirme sunucusu URL'sini belirtin.
  4. Kaydet'i tıklayın. Google'ın konsol değişikliklerinizi uygulaması 30 dakikayı bulabilir.
  5. Test amaçlı Google Home veya Google Nest cihazınızı yeniden başlatın.
  6. Akıllı cihazınıza bir komut verin. Örneğin, cihazınızda OnOff özelliği kullanılıyorsa "Ok Google, ışıkları aç" diyebilirsiniz.

Cihazınız tarafından hangi çalışma zamanının kullanıldığı hakkında daha fazla ayrıntı için Desteklenen cihazlar bölümüne bakın.

komutunu kullanarak cihazınızı normal çalışmasına sıfırlamanız gerekir.

Chrome'dan hata ayıklama

Chrome Geliştirici Araçları'nı kullanarak yerel istek karşılama uygulamanızdaki hataları ayıklayabilirsiniz. Hata ayıklama işlemi yapmadan önce ortamınızın doğru şekilde ayarlandığından emin olun:

  • Konsoldaki geliştirme URL'nizi, Google Home veya Google Nest cihazı (yerel ağ veya internet üzerinden) tarafından erişilebilen bir URL olarak ayarladınız.
  • Makineniz, test ettiğiniz Google Home veya Google Nest cihazı ile aynı yerel ağa bağlı.
  • Ağınız cihazlar arasında paketleri engellemez.
  • Actions Console'da ve Google Home veya Google Nest cihazında aynı Google hesabıyla giriş yapmış olmanız gerekir.
  • Bulut istek karşılamasındaki SENKRONİZASYON yanıtını güncellediniz. otherDeviceIds alanında en az bir geçerli değer döndürmelidir.
  • Actions konsoluna doğru tarama yapılandırması bilgilerini girmiş olmanız gerekir.

Yerel istek karşılama uygulamanızı Chrome Geliştirici Araçları hata ayıklayıcısına bağlamak için şu adımları uygulayın:

Chrome

  1. Yerel geliştirme makinenize Google Chrome tarayıcıyı yükleyin ve başlatın.
  2. Chrome tarayıcınızın adres alanına chrome://inspect#devices yazarak Chrome denetleyicisini başlatın. Sayfada cihazların bir listesi gösterilir. HTML dosyanız ise test amaçlı Google Home veya Google Nest cihazınızın adının altında listelenmelidir.
  3. Chrome Geliştirici Araçları'nı başlatmak için HTML'nizin altındaki mavi denetleme bağlantısını tıklayın. Konsol sekmesine geçin. Yerel Ev platformu, konsol günlüğüne uygulamanızın sürümünü ve Yerel Ev SDK sürümünü gösterir. Günlüğü görüyorsanız Google, uygulamanızı başarıyla yüklediği ve uygulamaya bağlanabildiği anlamına gelir. Çalışmıyorsa Google Home veya Google Nest cihazınızı yeniden başlatın.
  4. Şekil 1: chrome://inspect'teki yerel istek karşılama uygulaması.

Node.js

  1. Yerel geliştirme makinenize Google Chrome tarayıcıyı yükleyin ve başlatın.
  2. Test cihazınızın yerel IP adresini belirleyin.
  3. Chrome tarayıcınızın adres alanına chrome://inspect#devices yazarak Chrome denetleyicisini başlatın.
  4. Hedef keşif ayarları'nı açmak için Yapılandır... seçeneğini belirleyin.
  5. Şekil 2: chrome://inspect'teki hedef keşif ayarları.
  6. Listeye DEVICE_IP_ADDRESS:9222 yazın ve Bitti'yi tıklayın.
  7. Chrome Geliştirici Araçları'nı başlatmak için komut dosyanızın altındaki mavi denetleme bağlantısını tıklayın. Konsol sekmesine geçin. Yerel Ev platformu, konsol günlüğüne uygulamanızın sürümünü ve Yerel Ev SDK sürümünü gösterir. Günlüğü görüyorsanız Google, uygulamanızı başarıyla yüklediği ve uygulamaya bağlanabildiği anlamına gelir. Çalışmıyorsa Google Home veya Google Nest cihazınızı yeniden başlatın.

Cihazınız tarafından hangi çalışma zamanının kullanıldığı hakkında daha fazla ayrıntı için Desteklenen Cihazlar bölümüne bakın.

Hata ayıklamayla ilgili ipuçları

Hata ayıklama sırasında unutulmaması gereken bazı ek noktalar şunlardır:

  • Birden fazla Google Home veya Google Nest cihazını aynı yerel ağdaki test hesabınıza bağlamayın. Yerel istek karşılama komutlarıyla hangi Google Home veya Google Nest cihazının hedeflendiğini kontrol edemezsiniz.
  • Yerel sipariş karşılama uygulama kapsayıcınızı, geliştirme URL'nizdeki en son kodla yeniden yüklemek için Chrome Geliştirici Araçları'ndaki sayfayı yenileyin. Bu işlem, Yerel Ev platformunu sıfırlamaz. Bu işlem, yerel sipariş karşılama uygulamanızda platform amaçlarını (IDENTIFY gibi) yeniden tetiklemek için gerekli olabilir. Yerel Ev platformunu sıfırlamak için Google Home veya Google Nest cihazınızı yeniden başlatın.
  • JavaScript uygulamanızın hatasız yüklendiğinden emin olun. Bunun için Geliştirici Araçları sayfasının konsol bölümüne göz atın. Sorun olursa şuna benzer bir mesaj görürsünüz: Uncaught TypeError: Cannot read property ‘open’ of null.
  • IDENTIFY yanıtındaki verificationId, SYNC yanıtındaki otherDeviceIds öğelerinden biriyle eşleşmelidir.
  • EXECUTE işleyici için HTTP, TCP veya UDP komutlarınızın cihazınız tarafından alabildiğinden ve beklendiği gibi çalıştığından emin olun.
  • İşleyicilerden bir Promise döndürdüğünüzden emin olun.
  • Genel durumu bellekte tutmaktan kaçının. Uygulama yaşam döngüsü bölümüne bakın.
  • Yerel istek karşılama uygulamanız tarafından atılan hatalar, projenizin hata günlüklerinde görünür.

Hazırlama ve üretime sunma

Akıllı ev İşleminizi başlatmaya hazır olduğunuzda aşağıdaki adımları uygulayın:

  1. Bir terminal penceresi açın. Proje dizininizde npm run build komutunu çalıştırın. Bu komut, dist dizini altında uygulamanız için aşağıdaki JavaScript paketlerini oluşturur:
    project-directory/
    └── dist
     ├── web
     │    └── bundle.js
     └── node
          └── bundle.js
    
  2. Konsolda Geliştir > İşlemler'i tıklayarak JavaScript uygulamanızı yükleyin. Yerel Ev SDK'sını Yapılandırın bölümünde, JavaScript dosyalarını yükle'yi tıklayın.
    Şekil 3: JavaScript uygulamanızı yükleme.
  3. Dosya yükle iletişim kutusunda, daha önce oluşturduğunuz paket dosyalarını yükleyin. Paket dosyalarının her iki sürümünü de (Düğüm, Web) yüklediğinizden emin olun. Böylece İşleminiz, yerel istek karşılamanın desteklediği tüm çalışma zamanı ortamlarında doğru şekilde çalışır.
    1. JavaScript hedeflemenizi Node.js'yi yükleyin.: bundle.js dosyasını dist/node dizininden yükleyin.
    2. JavaScript hedefleme Chrome'u (tarayıcı) yükleyin: dist/web dizininden bundle.js dosyasını yükleyin.
  4. İşleminizi Asistan özellikli bir cihazda test ederek üretim ortamında beklendiği gibi davrandığını doğrulayın. Daha fazla bilgi edinmek için Akıllı ev işleminizi test etme ve paylaşma başlıklı makaleyi inceleyin.
  5. İşleminizin işleyiş şeklinden memnun olduğunuzda Akıllı ev işleminizi başlatma bölümündeki talimatları uygulayarak üretim dağıtımı için Google'a gönderin. Buna kendi kendine test ve sertifika isteği adımlarını tamamlama da dahildir.