Ścieżka realizacji lokalnej jest ustanawiana, gdy Google dopasuje urządzenie, którym można sterować lokalnie, do urządzenia zwróconego w odpowiedzi SYNC z realizacji w chmurze.
Aby umożliwić Google wykrywanie urządzenia w sieci lokalnej i ustanowienie lokalnej ścieżki realizacji, musisz dodać informacje o wykrywaniu w konsoli Actions.
Musisz też zaktualizować odpowiedź SYNC z realizacji w chmurze, aby poinformować Google o urządzeniu, którym można sterować lokalnie.
Konfigurowanie informacji o konfiguracji skanowania
Aby podać informacje o wykrywaniu:
Otwórz integrację Cloud-to-cloud w Google Home Developer Console:
Po lewej stronie ekranu kliknij Projekt > Cloud-to-cloud, a następnie wybierz Edytuj, aby skonfigurować integrację. Na stronie Konfiguracja i ustawienia przewiń do sekcji Realizacja lokalna i włącz to ustawienie. Wpisz podany niżej adres URL w każdym polu testowego adresu URL, wstaw identyfikator projektu i kliknij Zapisz:
https://<project-id>.web.app/local-home/index.htmlAby dodać nową konfigurację skanowania, w sekcji Wykrywanie urządzeń kliknij + Dodaj konfigurację skanowania.
Wybierz z menu typ protokołu dopasowania 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 w poszukiwaniu urządzenia:
| 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 |
my-device-[0-9]{4}\._http\._tcp\.local |
| Atrybut | Opis | Przykładowa wartość |
|---|---|---|
| Typ usługi |
Wymagane. Pełny i jednoznaczny identyfikator usługi UPnP w formacie domain:service:type:version.
|
schemas-upnp-org:service:SwitchPower:1 |
| identyfikator OUI |
Opcjonalnie: identyfikator OUI. 24-bitowa wartość identyfikująca producenta urządzenia. Zwykle są to pierwsze 3 oktety adresu MAC urządzenia. |
1A:2B:3C |
| Atrybut | Opis | Przykładowa wartość |
|---|---|---|
| Adres Discovery | Wymagane. Docelowy adres IP transmisji UDP. | 255.255.255.255 |
| Port transmisji | Wymagane. Port docelowy dla transmisji UDP. | 5555 |
| Port nasłuchujący | Wymagane. Port nasłuchiwania odpowiedzi na wykrywanie UDP. | 5556 |
| Pakiet Discovery | Wymagane. Ładunek do wysłania w transmisji UDP. Sformatowany jako ciąg bajtów zakodowany w systemie szesnastkowym. |
48454C4C4F |
Aktualizowanie odpowiedzi SYNC w realizacji w chmurze
Intencja SYNC informuje Asystenta, jakie urządzenia kontroluje użytkownik i jakie są ich możliwości.
Aby obsługiwać realizację lokalną, platforma Local Home sprawdza odpowiedź SYNC z realizacji w chmurze akcji inteligentnego domu i próbuje dopasować identyfikatory urządzeń w polu otherDeviceIds do identyfikatora weryfikacji zwróconego przez moduł obsługi IDENTIFY. Wpisy urządzeń bez pola otherDeviceIds są wykluczone z realizacji lokalnej.
W polu otherDeviceIds odpowiedzi SYNC musisz ustawić identyfikatory urządzeń inteligentnych urządzeń domowych, którymi można sterować lokalnie. Pole pojawia się w odpowiedzi na poziomie device. Google może ustanowić ścieżkę realizacji lokalnej na dowolnym urządzeniu o podanym identyfikatorze.
Użyj pola customData, aby określić dodatkowe dane, których Google potrzebuje do połączenia się z samodzielnym urządzeniem lub do kierowania na urządzenia końcowe za pomocą koncentratora (np. numer portu i inne informacje dotyczące protokołu).
Przykład
Poniższy fragment kodu pokazuje, jak utworzyć moduł obsługi SYNC.
{ "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": "..." } }] } }