FAQ - Integrating Blue Iris CCTV Web Server with ST and webCoRE

core
webcore
actiontiles
blueiris

(Robin) #1

Edit
Discussion moved to the webCoRE Forum:

Original Post:

Blue Iris (BI) is an excellent CCTV software package which you can use with almost any IP camera. it runs on most (half decent) PC’s and provides:

  • Local recording (Constant or in response to motion + a set time prior and after motion
  • Advanced motion detection - zones within the view / size of object / speed of object / direction of travel etc.
  • Profiles - So motion zones / recording rules can be tweaked for different scenarios
  • Most importantly for ST - A built in web-server which can broadcast MPEG streams and send / respond to web requests!

This FAQ wont go into the details of setting up BI itself but I’d be glad to field any questions should you hit any walls. BI is free to try for a single camera but you need to buy a multi-camera licence if you need more.

I used to use the ‘Blue Iris Fusion’ smartapp by @JMZ for basic stuff like syncing BI profiles to ST modes and for triggering certain cameras to start recording, but it’s limited to a finite list of triggers and BI profiles can only be changed with ST modes… it’s still a great app though and worth a look for basic setups:

With ST and webCORE you can:

  • Send profile change commands to BI :white_check_mark:
  • Send triggers to BI :white_check_mark:
  • Receive motion triggers from BI :white_check_mark:
  • Send pan and tilt commands to BI :white_check_mark:
  • View Live streams in the ST app, BI app, ActionTiles and Chrome Extension :white_check_mark:
  • Secret (and massively awesome) feature that I cant discuss yet (still in development) :innocent:

Changing Blue Iris Profile (mode) from WebCoRE

webCoRE has the ability to send HTTP GET requests to external servers and BI has the ability to recieve and act upon these requests.

The following URL structure triggers a profile change in BI:

{BI_Server_LAN_IP}:{PORT}/admin?profile={DESIRED_PROFILE_NUMBER}&user={USERNAME}&pw={PASSWORD}

WebCoRE can also utilize the authentication header (Method details further down this post) so you can shorten the URL to:
{BI_Server_LAN_IP}:{PORT}/admin?profile={DESIRED_PROFILE_NUMBER}

Example webCoRE Piston (importable):

Trigger a certain camera to start recording from WebCoRE:

Send web request:
{BI_Server_LAN_IP}:{PORT}/admin?camera={CAM_SHORT_NAME}&trigger&user={USERNAME}pw={PASSWORD}

Or with authentication header:
{BI_Server_LAN_IP}:{PORT}/admin?camera={CAM_SHORT_NAME}&trigger

Example WebCoRE Piston:

Other commands that can be sent to BI:

There are also some other URL paths for pan tilt etc in the manual, pages 77-78:

http://www.warf.com/download/5982_1816_Blue-Iris-Chm-Help-File-03-30-2013.v3.pdf

Using Authentication Headers:

Instead of typing your credentials into the URL, you can extract the authentication header from your browser and paste that into the corresponding field in the webCoRE get request box.

  • Load the URL in the browser (without the credentials section as detailed above) and enter your user/pass
  • Open the browser’s console (press F12) and go to the Network tab, then refresh the page
  • Select the request and look for the Request headers section, find the Authentication field - copy the value in there and paste it as a value into the new Authentication header field of the Make web request task.

Most of the time you’ll see Authorization as “Basic blahblahblahMIMEencodedblahblahblah”

BI Motion used to trigger a webCoRE Piston:

  • Create a piston with no triggers and save
  • Whilst viewing the Piston summary page, copy the piston ID from the URL, it’s the long string at the end of the URL encased in colons ( : )
  • Go to webCoRE’s main settings page and copy the ‘webCoRE Execute Endpoint’ URL
  • Add the piston ID to the end of the end of the endpoint URL
  • Go to BI, Right Click on a camera and select camera properties
  • Choose the profile you want to work on
  • Go to the alerts tab

  • Tick ‘Request from a web service’ and click ‘configure’

  • Paste the endpoint URL into the ‘when triggered’ field, less the HTTPS which goes in the drop-down.

Now when that camera gets triggered (based on your motion, zoning, motion size, motion speed settings in the camera ‘trigger’ tab) , the associated piston will be fired. You can also use ‘when trigger ends’ option to fire a piston at that point as well

Viewing the Live Streams in the ST mobile app:

To view in ST, use the ‘Generic Video Camera Connect’ smartapp and child device handlers by @pstuart:

For some reason I’ve always used a different format for the authentication part of the stream URL entered into the parent SmartApp… but it works:

http://{USERNAME}:{PASSWORD}@{BI_SERVER_WAN_IP}:{PORT}/mjpg/{CAM_SHORT_NAME}

The above URL also works with LAN IP but only when you’re mobile device is at home.

Viewing the Live Streams in the BI Mobile App:

Blue Iris has a great mobile app, I’m on iOS, not sure if they have an app for Android?


Viewing the Live Streams in a ActionTiles:

http://{USERNAME}:{PASSWORD}@{BI_SERVER_LAN_IP}:{PORT}/mjpg/{CAM_SHORT_NAME}

If your’e using ActionTiles you probably have a tablet mounted on your wall, and that tablet will have a camera :wink:

I use an android app running in the background called ‘IP Webcam’ which stream live video from the tablet camera to BI.

Viewing the Live Streams in a Chrome extension:

MyIPCam

I just use the direct camera IP streams for this… I once had it showing BI streams but can’t remember the settings lol. Extension is fairly straightforward though so I’m sure you’ll figure it out if required.

To summarize… Get Blue iris, its awesome (and about to get even better :wink:)


Samsung SmartCam HD Pro: SNH-P6412BN - Connection Issues
Using Hikvision with ST?
Cameras with local storage that work with Smartthings and ActionTiles (on Android)
Recommendation for indoor camera
ActionTiles with Synology Video or Hikvision NVR
Samsung SmartCam: SNH-P6410BN, SNH-E6440BN and SNH-1011ND (+WWW Digest auth) (tested and working)
Blink support discontinued!
Fibaro Dimmer 2
Flir Secure HD WIFI Security CAM FS21F Integration help
SmartHome Newbie Seeks Camera System Recommendations
Continuous Record, with Motion Alerts
[DEPRECATED THREAD: visit community.webcore.co for assistance] WebCoRE - Example Pistons
Outdoor camera system - blink or nvr?
IP Camera Inregration
Planning for New House Build Electrics (Germany) - Overwhelmed!
[RELEASE: v6.7] ActionTiles (formerly called "SmartTiles V6")
Amcrest the way to go?
(Robin) #2

Post reserved for future awesomeness :wink:


( I hate Mondays) #3

Ahem, how?


(Robin) #4

I’ll wait for you to announce it first haha


(Randy) #5

Can I make a recommendation that will take this to a the level. Amazon now has an API to Rekognition which among other things does facial recognition and object recognition. Im not It a programmer of any kind but it looks pretty straight forward to setup and use. The cost of the service is very reasonable ($1 for every 1000 analysis) and it comes with 5,000 free per month to start. https://aws.amazon.com/rekognition/

Here would be my use case scenarios

Scenario 1
Motion is detected on a camera. An image is sent to Rekognition. First to see if there if there is a face to march it to. If there is cause an action to trigger based on the face recognition

Scenario 2
Send an image to Rekognition just before motion is detected. Send an image to Rekognition just after the motion stops. Compare the difference to see what was changed. Theft management.

Can this be done? Seems to me that it wouldn’t be had to add but what do I know. Who is looking for a challenge?


(Robin) #6

It’s beyond my skill-set, but would certainly be a neat feature.


(Bubba) #7

Is there a way to set the PTZ of the camera to a specific BI preset via webCore?


(Robin) #8

You can trigger a BI mode which can in turn PTZ to a specific position.

There are also the following command listed on page 78 of the manual… never played with PTZ but I think the ‘100’ in this example refers to a specific position.

873B8848-0B15-40DF-BE50-54E19F9EDB30

http://{USERNAME}:{PASSWORD}@{BI_SERVER_WAN_IP}:{PORT}/cam/{CAM_SHORT_NAME}?position=100


( Cosmo) #9

Robin, you’ve gotta copy this to the instructions and tutorials section on WC.
This is a stellar write up


(Chris Schoepp) #10

If I have cameras that do not have an mjpeg stream but I use blue iris, what is required to have it output a stream that actiontiles can see? Do I need a local server running to convert the stream in realtime? Does actiontiles support anything besides mjpeg streams?


(Robin) #11

AT can only read MJPEG streams… BI can take a few different formats and convert to MJPEG though.


#12

I updated my BI Fusion app significantly. Installs a Server Device and camera devices from the app, so you can have better control and feedback on your Blue Iris system. It also makes use of it’s parent/child type setup to simplify your install significantly: only one OAuth token to type, only enter username/password once, setup all your triggers/presets/etc in one place.

It also lets you integrate fully with the rest of smartthings (each camera is a motion sensor that can be subscribed to, and is also a switch that can be turned on (triggers recording) whenever any other app has something happen).

More controls are coming, just wanted to pass an update. It makes it a lot easier to use your cameras as motion sensors and to have smartthings events trigger them to record than the other options out there. No need to have multiple pistons to to each thing when you can just use the camera devices.


(Võ Thanh Minh) #13

I like this ideas. [quote=“Rkcrockett, post:5, topic:93665”]
Scenario 1

Motion is detected on a camera. An image is sent to Rekognition. First to see if there if there is a face to march it to. If there is cause an action to trigger based on the face recognition

Scenario 2

Send an image to Rekognition just before motion is detected. Send an image to Rekognition just after the motion stops. Compare the difference to see what was changed. Theft management.
[/quote]

I like this


(Mike King) #14

Silly question, but it’s not explicitly called out. Would I be able to view my camera’s while I’m remote, (AKA across the WAN)


(Robin) #15

Yes, so long as you use the WAN IP in the URL and setup BI for port forwarding (there is a setup wizard in BI for that).