Ein lokaler Auftragsausführungspfad wird erstellt, wenn Google ein lokal steuerbares Gerät einem Gerät zuordnet, das in der Antwort SYNC
Ihrer Cloud-Auftragsausführung zurückgegeben wird.
Damit Google Ihr Gerät im lokalen Netzwerk erkennen und den lokalen Auftragsausführungspfad ermitteln kann, müssen Sie in der Actions Console Informationen zur Auffindbarkeit hinzufügen.
Sie müssen auch die Antwort SYNC
aus Ihrer Cloud-Auftragsausführung aktualisieren, um Google über das lokal steuerbare Gerät zu informieren.
Informationen zur Scankonfiguration einrichten
So legen Sie die Informationen zur Auffindbarkeit fest:
- Öffnen Sie Ihr Smart-Home-Projekt in der Actions Console.
- Klicken Sie im linken Navigationsbereich auf Aktionen.
- Klicken Sie unter Local Home SDK konfigurieren (optional) > Gerätescankonfiguration hinzufügen auf Neue Scankonfiguration.
- Wählen Sie im Drop-down-Menü einen passenden Scantyp aus und geben Sie Werte ein, die Google scannen soll.
In den folgenden Tabellen sind die Attribute aufgeführt, die Sie basierend auf den Protokollen hinzufügen können, die Google zum Scannen Ihres Geräts verwenden soll:
Attribut | Beschreibung | Beispielwert |
---|---|---|
Dienstname |
Erforderlich. Vom Gerät veröffentlichter Dienstname im Format service.domain .
|
_http._tcp.local |
Name |
Erforderlich. Nach einer eindeutigen Dienstinstanz im Format |
my-device-[0-9]{4}\._http\._tcp\.local |
Attribut | Beschreibung | Beispielwert |
---|---|---|
Diensttyp |
Erforderlich. Voll qualifizierte Kennung des UPnP-Dienstes im Format domain:service:type:version .
|
schemas-upnp-org:service:SwitchPower:1 |
Benutzeroberfläche |
Optional. Eindeutige ID der Organisation. 24-Bit-Wert, der den Gerätehersteller identifiziert. In der Regel die ersten drei Oktette der MAC-Adresse des Geräts. |
1A:2B:3C |
Attribut | Beschreibung | Beispielwert |
---|---|---|
Broadcast-Adresse | Erforderlich. Ziel-IP-Adresse für die UDP-Übertragung | 255.255.255.255 |
Übertragungsport | Erforderlich. Zielport für die UDP-Übertragung. | 5555 |
Überwachungsport | Erforderlich. Überwachungsport für die UDP-Erkennungsantwort. | 5556 |
Discovery-Paket | Erforderlich. Nutzlast, die in der UDP-Übertragung gesendet werden soll Formatiert als hexadezimal-codierter String aus Byte. |
48454C4C4F |
SYNC-Antwort in der Cloud-Auftragsausführung aktualisieren
Der Intent SYNC
meldet Assistant, welche Geräte der Nutzer steuert und welche Funktionen er hat.
Zur Unterstützung der lokalen Auftragsausführung prüft die Local Home-Plattform die Antwort SYNC
der Cloud-Auftragsausführung Ihrer Smart-Home-Aktion und versucht, die Geräte-IDs im Feld otherDeviceIds
der vom IDENTIFY
-Handler zurückgegebenen Bestätigungs-ID zuzuordnen. Geräteeinträge ohne das Feld otherDeviceIds
sind von der lokalen Auftragsausführung ausgeschlossen.
Im Feld otherDeviceIds
der Antwort SYNC
müssen Sie die Geräte-IDs von Smart-Home-Geräten festlegen, die lokal gesteuert werden können. Das Feld wird in der Antwort auf der Ebene device
angezeigt. Google kann auf jedem Gerät mit der angegebenen ID einen lokalen Auftragsausführungspfad einrichten.
Verwenden Sie das Feld customData
, um alle zusätzlichen Daten anzugeben, die Google für die Verbindung mit einem eigenständigen Gerät benötigt, oder um Geräte über einen Hub (z. B. die Portnummer und andere protokollspezifische Informationen) anzusprechen.
Beispiel
Das folgende Snippet zeigt, wie Sie Ihren SYNC
-Handler erstellen können.
{ "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": "..." } }] } }