Yeah I saw this early on and considered it, but I really don’t want users to have to enter in IP address, so I ended up using SSDP for discovery, which then auto handles the IP.
I definitely share the sentiment of feeling like there should be a way to consolidate this since there is going to be a ton of overlap in LAN drivers that are all basically doing the same thing, but I’m just not sure things are set up well to really do that cleanly.
FYI, my UPnP driver and library provides full UPnP specification support on Lua (including SSDP) for anyone wanting to write a driver that uses it. It certainly is an option for developers, but not a solution for end-users.
Edgebridge provides a much simpler solution for anyone that can send an http request to integrate with SmartThings. There are lots of applications that provide this option (Blue Iris, for example), so this fits the need of non-programmers.
Due to a bug in the most recent edgebridge app, I’ve uploaded fresh files for edgebridge.py, edgebridge.exe and edgebridge4pi.
The issue this fixes is seen when you are sending a GET request from a device application to a hub driver, through edgebridge. In certain cases this may cause an error to be logged by edgebridge and the Edge driver not receiving the message.
To update your edgebridge server app, simply download the applicable file from the github repository, replacing the one on your computer, and stop and restart the edgebridge server app.
Thank you to @Puzzling for identifying this problem.
Nice driver! Can this be used to dynamically populate a message that contains device information (switch state, temperature reading, etc…)? I’m trying to migrate from WebCore, another fantastic app, and send data to Google Sheets from WebCore and am looking for a replacement. On a side note, I can’t paste into the Web Request fields on my Android phone, am I the only one?
There is very little capability in standard SmartThings that would allow you to build a dynamically populated message like that. You may need to look at something like Action Tiles or Node Red. Otherwise you would need a SmartApp and a place to run it.
There’s no problem configuring a device IP address to be the same address as the bridge server, so that’s not the problem. You can certainly have a device application running on the same machine.
Not sure why your registration was deleted, created, then deleted again. I would suggest starting fresh and creating another LAN Motion device (use the button at the bottom of the Controls screen, probably with an ‘Untitled’ label), then delete your old one, then configure the new one. Configure the bridge address LAST. Watch the edgebridge log to ensure the registration was successfully made as soon as you save the bridge address.
Also please note:
port number is optional for the the device address
port number is mandatory for the bridge server address