UDP SSDP responses ignored if missing HOST field

Most the of the SSDP responses have a host field in the response

HOST: 239.255.255.250:1900

If that (largely redundant) field is missing, the udp:receivefrom() does not return that datagram… Other SSDP tools still report that response.

Hi, @schwark!
I already asked the team about this. I’ll get back to you once I get their feedback.
Thanks for bringing this up!

@schwark, following up on this question.
The team mentioned Edge doesn’t provide an SSDP-specific functionality, only the raw UDP access.
Also, the function udp:receivefrom() shouldn’t be filtering any data.
Could you provide more info about how your integration works to understand better the use case, please?

Right, I get there is no SSDP specific APIs or functionality - but I was just saying that an SSDP datagram that is missing the HOST header, never shows up in receivefrom on the smartthings hub, but I do see the datagrams being sent by the device in question, and am able to receive them just fine on other devices.

See line 63.

When the device advertises with a HOST header, the datagram magically shows up on the SmartThings hub…

Can you try joining the multi-cast group on that socket? To do so include the following on line 49

upnp:setoption('ip-add-membership', {multiaddr = config.MC_ADDRESS, interface = '0.0.0.0'})

Bingo!! That did it!