Obsługa wykrywania urządzeń

Ścieżka lokalnego przetwarzania jest ustalana, gdy Google dopasuje urządzenie z kontrolą lokalną do urządzenia zwróconego w odpowiedzi SYNC z Twojego przetwarzania w chmurze.

Aby umożliwić Google wykrywanie Twojego urządzenia w sieci lokalnej i ustalenie lokalnego sposobu realizacji, musisz dodać informacje o wykrywalności w konsoli Actions. Musisz też zaktualizować odpowiedź SYNC z usług wdrożonych w chmurze, aby poinformować Google o urządzeniu sterowanym lokalnie.

Konfigurowanie informacji o konfiguracji skanowania

Aby określić informacje o poszukowaniu:

  1. Otwórz projekt inteligentnego domu w konsoli Actions.
  2. W panelu użytkownika po lewej stronie kliknij Działania.
  3. W sekcji Skonfiguruj lokalny SDK domowego (opcjonalnie) > Dodaj konfigurację skanowania urządzenia kliknij Nowa konfiguracja skanowania.
  4. W menu wybierz typ protokołu dopasowania skanowania i wpisz wartości, które Google ma skanować.

W tabeli poniżej znajdziesz atrybuty, które możesz dodać w zależności od protokołów, których Google ma użyć do skanowania urządzenia:

mDNS
Atrybut Opis Przykładowa wartość
Nazwa usługi Wymagane. Nazwa usługi opublikowana przez urządzenie w formacie service.domain. _http._tcp.local
Nazwa

Wymagane. Filtruj według unikalnej instancji usługi w formacie instance.service.domain.

Platforma traktuje tę wartość jako wyrażenie regularne i zwraca wszystkie urządzenia, które z nią pasują.
my-device-[0-9]{4}\._http\._tcp\.local
UPnP
Atrybut Opis Przykładowa wartość
Typ usługi Wymagane. Pełny identyfikator usługi UPnP w formacie domain:service:type:version. schemas-upnp-org:service:SwitchPower:1
OUI

Opcjonalnie: Organizacyjnie unikalny identyfikator.

24-bitowa wartość identyfikująca producenta urządzenia. Zwykle są to pierwsze 3 oktety adresu MAC urządzenia.
1A:2B:3C
UDP
Atrybut Opis Przykładowa wartość
Adres rozgłoszeniowy Wymagane. Docelowy adres IP dla transmisji UDP. 255.255.255.255
Port rozgłoszeniowy Wymagane. Port docelowy dla transmisji UDP. 5555
Port nasłuchu Wymagane. Port nasłuchiwania odpowiedzi na zapytanie o usługę UDP. 5556
Pakiet Discovery

Wymagane. Ładunek do wysłania w transmisji UDP.

Sformatowany jako szesnastkowy ciąg bajtów.
48454C4C4F

Aktualizowanie odpowiedzi SYNC w wypełnianiu w chmurze

Intencja SYNC informuje Asystenta, jakie urządzenia kontroluje użytkownik i jakie mają one możliwości.

Aby obsługiwać lokalną realizację, platforma Local Home sprawdza odpowiedź SYNC z realizacji w chmurze działania inteligentnego domu i próbuje dopasować identyfikatory urządzeń w polu otherDeviceIds do identyfikatora weryfikacyjnego zwróconego przez moduł obsługi IDENTIFY. Wpisy urządzeń bez pola otherDeviceIds są wykluczane z wypełniania lokalnego.

W polu SYNC odpowiedzi SYNC musisz podać identyfikatory urządzeń inteligentnego domu, którymi można sterować lokalnie.otherDeviceIds Pole to pojawia się na poziomie device w odpowiedzi. Google może ustalić lokalną ścieżkę realizacji na dowolnym urządzeniu z danym identyfikatorem.

W polu customData możesz podać dodatkowe dane, których Google potrzebuje, aby połączyć się z samodzielnym urządzeniem lub kierować reklamy na urządzenia końcowe za pomocą koncentratora (np. numer portu i inne informacje o protokołach).

Przykład

W tym fragmencie kodu pokazujemy, jak utworzyć element obsługi SYNC.

Samodzielny/centralny
{
  "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": "..."
      }
    }]
  }
}