Cihaz keşfini destekleme

Google, yerel olarak kontrol edilebilir bir cihazı bulut karşılamanızdan SYNC yanıtında döndürülen bir cihazla eşleştirdiğinde yerel bir karşılama yolu oluşturulur.

Google'ın cihazınızı yerel ağda keşfetmesini ve yerel sipariş karşılama yolunu oluşturmasını sağlamak için Actions konsolunda keşif bilgilerini eklemeniz gerekir. Ayrıca, yerel olarak kontrol edilebilen cihazı Google'a bildirmek için bulut karşılamanızdan SYNC yanıtını güncellemeniz de gerekir.

Tarama yapılandırması bilgilerini ayarlayın

Keşif bilgilerini belirtmek için aşağıdaki adımları uygulayın:

  1. Actions konsolunda akıllı ev projenizi açın.
  2. Sol gezinme menüsünde İşlemler'i tıklayın.
  3. Configure Local Home SDK (İsteğe Bağlı) > Add device tarama configuration (Cihaz tarama yapılandırması ekle) bölümünde New scan config'i (Yeni tarama yapılandırması) tıklayın.
  4. Açılır menüden bir tarama eşleştirme protokol türü seçin ve Google'ın taraması için değerler girin.

Aşağıdaki tablolarda, Google'ın cihazınızı taramak için kullanmasını istediğiniz protokollere bağlı olarak ekleyebileceğiniz özellikler gösterilmektedir:

mDNS
Özellik Açıklama Örnek Değer
Hizmet Adı Zorunlu. Cihaz tarafından service.domain biçiminde yayınlanan hizmet adı. _http._tcp.local
Ad

Zorunlu. instance.service.domain biçiminde benzersiz bir hizmet örneği için filtre uygulayın.

Platform, bu değeri normal ifade olarak değerlendirir ve eşleşen cihazları döndürür.
my-device-[0-9]{4}\._http\._tcp\.local
UPnP
Özellik Açıklama Örnek Değer
Hizmet Türü Zorunlu. UPnP hizmetinin domain:service:type:version biçimindeki tam nitelikli tanımlayıcısı. schemas-upnp-org:service:SwitchPower:1
Kullanıcı Arayüzü

İsteğe bağlı. Kuruluş Olarak Benzersiz Tanımlayıcı.

Cihaz üreticisini tanımlayan 24 bit değer. Genellikle, cihaz MAC adresinin ilk üç sekizliğidir.
1A:2B:3C
UDP
Özellik Açıklama Örnek Değer
Yayın Adresi Zorunlu. UDP yayınının hedef IP adresi. 255.255.255.255
Yayın Bağlantı Noktası Zorunlu. UDP yayını için hedef bağlantı noktası. 5555
Dinleme Bağlantı Noktası Zorunlu. UDP keşif yanıtı için dinleme bağlantı noktası. 5556
Keşif Paketi

Zorunlu. UDP yayınında gönderilecek yük.

Baytlardan oluşan on altılı kodlanmış dize olarak biçimlendirilir.
48454C4C4F

Bulut istek karşılamada SENKRONİZASYON yanıtını güncelleme

SYNC amacı, kullanıcının kontrol ettiği cihazları ve bu cihazların özelliklerini Asistan'a bildirir.

Yerel ev platformu, yerel karşılamayı desteklemek için akıllı ev işleminizin bulut istek karşılamadaki SYNC yanıtını kontrol eder ve otherDeviceIds alanındaki cihaz kimliklerini IDENTIFY işleyici tarafından döndürülen doğrulama kimliğiyle eşleştirmeye çalışır. otherDeviceIds alanı olmayan cihaz girişleri yerel istek karşılamanın dışında tutulur.

SYNC yanıtının otherDeviceIds alanında, yerel olarak kontrol edilebilen akıllı ev cihazlarının cihaz kimliklerini ayarlamanız gerekir. Alan, yanıttaki device düzeyinde görünür. Google, belirtilen kimliğe sahip herhangi bir cihazda yerel bir sipariş karşılama yolu oluşturabilir.

Google'ın bağımsız bir cihaza bağlaması gereken ek verileri belirtmek veya son cihazları bir merkez aracılığıyla hedeflemek için customData alanını kullanın (örneğin, bağlantı noktası numarası ve protokole özel diğer bilgiler).

Örnek

Aşağıdaki snippet'te SYNC işleyicinizi nasıl oluşturabileceğiniz gösterilmektedir.

Bağımsız/Hub
{
  "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf",
  "payload": {
    "agentUserId": "1836.15267389",
    "devices": [{
      "id": "123",
      "type": "action.devices.types.OUTLET",
      "traits": [
        "action.devices.traits.OnOff"
      ],
      "name": {
        "name": "Night light"
      },
      "willReportState": false,
      "otherDeviceIds": [{
        "deviceId": "local-device-id"
      }],
      "customData": {
        "port": 5555,
        "authToken": "..."
      }
    }]
  }
}