Witamy w Google Home Developer Center – nowym miejscu, z którego dowiesz się, jak tworzyć inteligentne działania domowe. Uwaga: nadal będziesz tworzyć działania w konsoli Actions.

Obsługa wykrywania urządzeń

Zadbaj o dobrą organizację dzięki kolekcji Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.

Lokalna ścieżka realizacji jest identyfikowana, gdy Google dopasowuje urządzenie kontrolowane przez urządzenie do odpowiedzi zwróconej w odpowiedzi SYNC z chmury.

Aby umożliwić Google wykrycie Twojego urządzenia w sieci lokalnej i ustalenie lokalnej ścieżki realizacji, musisz dodać informacje o odkryciach w konsoli Actions. Musisz też zaktualizować odpowiedź SYNC z chmury, aby poinformować Google o urządzeniu lokalnym.

Dodawanie informacji o konfiguracji skanowania

Aby określić, jakie dane chcesz znaleźć:

  1. Otwórz projekt inteligentnego domu w Konsoli Actions.
  2. W menu po lewej stronie kliknij Czynności.
  3. W sekcji Skonfiguruj lokalny pakiet SDK lokalnego (opcjonalnie) > Dodaj konfigurację skanowania urządzeń kliknij Nowa konfiguracja skanowania.
  4. Wybierz z menu typ dopasowania pasującego do skanowania i wpisz wartości, które Google ma skanować.

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

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

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

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

Opcjonalne. Unikalny identyfikator organizacyjny.

Wartość 24-bitowa identyfikująca producenta urządzenia. Zwykle są to pierwsze oktety adresu MAC urządzenia.
1A:2B:3C
UDP
Atrybut Opis Przykładowa wartość
Adres transmisji Wymagany. Docelowy adres IP transmisji UDP. 255.255.255.255
Port transmisji Wymagany. Port docelowy transmisji UDP. 5555
Port nasłuchowy Wymagany. Port nasłuchiwania odpowiedzi odpowiedzi Discovery na UDP. 5556
Pakiet wykrywania

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

Sformatowany jako szesnastkowy kodowany bajt.
48454C4C4F

Aktualizowanie odpowiedzi SYNC w realizacji chmury

Intencje SYNC informują Asystenta, jakie urządzenia kontroluje użytkownik i jakie są jego możliwości.

Aby obsługiwać lokalną realizację, platforma lokalna sprawdza odpowiedź SYNC z realizacji w chmurze dotyczącą inteligentnego działania i próbuje dopasować identyfikatory urządzeń w polu otherDeviceIds do identyfikatora weryfikacji zwróconego przez moduł obsługi IDENTIFY. Wpisy urządzenia bez pola otherDeviceIds są wykluczone z lokalnej realizacji.

W polu otherDeviceIds odpowiedzi SYNC musisz ustawić identyfikatory urządzeń inteligentnych, które można sterować lokalnie. To pole pojawia się w odpowiedzi na poziomie device. Google może utworzyć lokalną ścieżkę realizacji na dowolnym urządzeniu o podanym identyfikatorze.

Pole customData służy do określania dodatkowych danych, które Google musi połączyć z samodzielnym urządzeniem lub aby kierować je na urządzenia końcowe za pomocą centrum (np. numer portu i inne informacje związane z protokołem).

Przykład

Fragment kodu poniżej pokazuje, jak utworzyć moduł obsługi SYNC.

Samodzielne/centrum
{
  "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": "..."
      }
    }]
  }
}