[ST Edge] Web Requestor: a driver to issue local POST and GET HTTP requests

This works perfectly for making Blue Iris perform actions based on SmartThings events. HUGE thanks to @TAustin for making this and his sidebar assistance.
For example, this can perform the same functions, completely local and without groovy, that the existing BI Fusion Smartapp allows for, like syncing the BI server Profiles to SmartThings location modes (e.g. ST changes to Away, set BI Profile to 1) and allows for triggering cameras based on SmartThings events (e.g. opening door triggers a camera).

A few notes without trying to completely derail the flexibility of this edge driver on a specific use:

  1. Just like BI Fusion, it still requires unchecking “Use Secure Session Keys and Login Page” in the BI Web Server settings and requires you run the web server, of course. This means you don’t want to give your server WAN access but instead use Stunnel or with a VPN, though that is typically good advice anyway. This limitation is detailed in the BI Help file directly but also says it is possible to elevate permissions from specific IPs, so I may just be missing something here (could not get it to work otherwise). Check the BI Fusion link above for some more details on this.
  2. The URL you’d use from the Web Requestor to drive BI to trigger a camera would be:
    GET:http://[BIServerIP]:[Port]/admin?camera=[ShortCamName]&trigger&user=[BIUserName]&pw=[BIPassword]
    If wanting to do a profile change, it’d be similar, with:
    http://[BIServerIP]:[Port]/admin?profile=[Number]&lock=[0, 1, or 2 for run, temp, or hold]&user=[BIUserName]&pw=[BIPassword]
    There is a huge amount of possibility here - check the BI Help file in the HTTP Interface section for all the options.
  3. If you ever plan to trigger more than one camera in a single automation, do not put them in the same device because automations in ST only allow a single device and the devices can only do one command per use in automations.
3 Likes