From aa04eaabe5add5d54e5920bafaabb65b043cc96f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Skytt=C3=A4?= Date: Fri, 22 Nov 2019 10:34:27 +0200 Subject: [PATCH] Update SSDP integration manifest (#341) * Update SSDP integration manifest * Update/fix example --- docs/creating_integration_manifest.md | 22 ++++++++++------------ 1 file changed, 10 insertions(+), 12 deletions(-) diff --git a/docs/creating_integration_manifest.md b/docs/creating_integration_manifest.md index 4f2b9c70..1a23f43a 100644 --- a/docs/creating_integration_manifest.md +++ b/docs/creating_integration_manifest.md @@ -96,21 +96,19 @@ If your integration supports discovery via [Zeroconf](https://en.wikipedia.org/w ## SSDP -If your integration supports discovery via [SSDP](https://en.wikipedia.org/wiki/Simple_Service_Discovery_Protocol), you can add the type to your manifest. If the user has the `ssdp` integration loaded, it will load the `ssdp` step of your integration's config flow when it is discovered. We support SSDP discovery by ST, manufacturer and device type. Your integration is discovered if any of the specified info is found. It's up to your config flow to filter out duplicates. +If your integration supports discovery via [SSDP](https://en.wikipedia.org/wiki/Simple_Service_Discovery_Protocol), you can add the type to your manifest. If the user has the `ssdp` integration loaded, it will load the `ssdp` step of your integration's config flow when it is discovered. We support SSDP discovery by ST, and all data in UPnP device description. The manifest value is a list of matcher dictionaries, your integration is discovered if all items of any of the specified matchers are found in the SSDP/UPnP data. It's up to your config flow to filter out duplicates. + +The following example has one matcher consisting of three items, all of which must match for discovery to happen by this config. ```json5 { - "ssdp": { - "st": [ - "roku:ecp" - ], - "manufacturer": [ - "Roku" - ], - "device_type": [ - "urn:roku-com:device:player:1-0" - ] - } + "ssdp": [ + { + "st": "roku:ecp", + "manufacturer": "Roku", + "deviceType": "urn:roku-com:device:player:1-0" + } + ] } ```