BlueIris Indigo Plugin

Posted on
Mon Feb 12, 2018 12:30 am
GlennNZ offline
User avatar
Posts: 1555
Joined: Dec 07, 2014
Location: Central Coast, Australia

BlueIris Indigo Plugin

Release 0.7.6 PluginStore Version

Image

Have put together the Indigo Plugin for BlueIris windows based Cam Server Software.

This plugin creates BlueIris Server Device and BlueIris Cameras within Indigo. With these devices you can monitor the current condition of Server (CPU/Mem etc) and also trigger Cameras to record. There are multiple actions that Indigo can perform on each or multiple cameras - IR on/IR off, Ptz cycle on, enable/disable camera/motion etc.

From within BI we also setup communication back to Indigo - this enables immediate indigo awareness of any camera based motion events. So Indigo based events can be triggered on one or multiple cameras - eg. motion turn lights on etc. There is a small amount of setup required within BI for each Camera to enable this.

Major Recent changes

- Change from version 0.6.0 to own HttpServer to enable more functionality (Needs BlueIris Server Settings changed)
- Animated GIF support; working well ...
- Add action to create Gif per Camera(s) when run - can then be sent etc. as required; rather than generated with each trigger (although that is also possible with Camera Setting) Closes #1
- Add PluginTriggeringEnabled setting for Cameras to True/False - if set to False with Action Camera will not trigger within Plugin.
- Add Variable lastAnimGif as path result of last created Animated Gif (can then be used to send this image)
__________________________________________________________________________________________________________________________________________________

However the Major change is plugin built in:
Http Threaded Server
Changes to Plugin running it's own Http Server:
Need to put the port number of the server in Plugin Config:
Default port is 4556. Can be changed to any allowed port if needed.
__________________________________________________________________________________________________________________________________________________
Installation

Prerequisites:
Indigo 7 only.
(no additional libraries that I am currently aware of)

Download

Here:
http://www.indigodomo.com/pluginstore/149/

Steps:

For Neatness I suggest creating a BlueIris Directory - which the plugin will use.
Image

Go to Plugin Config:

Image


Enter:
BlueIris Server: IP address
Port Used for Webserver:
Username
Password

(for some actions your BI account needs to be admin enabled)

In Plugin Config select port to use and then will start its own server on this port.

Image


If you change this port the plugin will restart.

Next:

Click Login/Generate Server Device, here:
Image


(This will generate a main BI server device in either BlueIris directory or main)
Image

if all goes well -- Generate Cameras button should appear
Image

Click this - to generate all your camera devices...

Image


Main BI Server Device:

Image

Generates this device with status options

Image

Allows CPU,Mem Monitoring etc and triggering if CPU gets out of hand

BlueIris Server Camera End Setup

To trigger plugin with camera motion- add this entry to every BlueIris Camera with alerts; web request section

To enable triggers from with the plugin - add

Code: Select all
http://192.168.1.6:4556/&CAM/&TYPE/&PROFILE/True

or

Code: Select all
http://192.168.1.6:4556/&CAM/&TYPE/&PROFILE/False


eg. IndigoIP = 192.168.1.6, Port selected in PluginConfig: 4556

Code: Select all
When Triggered
http://192.168.1.6:4556/&CAM/&TYPE/&PROFILE/True
POST text: Indigo

Request again when trigger is reset
http://192.168.1.6:4556/&CAM/&TYPE/&PROFILE/False
POST text: Indigo


to each camera in BlueIris; Camera: Alerts, request from web service: When triggered. &

BI ScreenShots:
BlueIris Screen Shots Below:

Image
& see here:
Image


The plugin server allows the same entry for all your cameras - just copy and paste. It also bypass any authenication issues with various Indigo settings.




Animated GIFs Created


The Plugin can also generate an Animated Gif for each Camera. This can be done automatically if triggered from within the Camera Device settings, or it can be performed as an Action on selected Cameras when required.

eg.

Image


These can be selected from within Camera Properties:
Image

If enabled will generate Image and /or Animated Gif everytime that Camera is triggered.
If this option is select the plugin will download an image from this camera locally everytime it is triggered.
It is stored in path
Code: Select all
/User/Documents/Indigo-BlueIris/


or

Animated Gifs can be created with an Action to one or many Cameras:

Image


The animated Gif once triggered is then generated - eg. if length is 10 seconds 15 images/over 10 seconds are taken, and then packaged and sent, so if being used in a action group will need to add appropriate delay for it all to be created.

The way I have done this is to use two external calls - one to build-in Sips app to convert jpg to Gif. The next is to package gifiscle within the plugin and this is called to create the Anims. Separate threads are created so there is no main-thread time impact for this.
There are no additional libraries required (I hope....)

Animated Gif Options:
Width of image eg. 800, 1024
Time (seconds) Image will not be finished until this time is elapsed
Compression 20-200


Options

These animated gifs can then be sent via imsg very easily with the following Applescript action group.

Code: Select all
delay 5
tell application "Messages"
   set myid to get id of first service
   set theBuddy to buddy "toemailaddress" of service "E:fromemailaddress note the E:"
   send POSIX file "/Users/Username/Documents/Indigo-BlueIris/CameraNameShort/Animated.gif" to theBuddy
end tell


[Ideally as external script.]

Actions:

There are multiple support actions that can be performed on each Camera or the Blue Iris Server

Image
&
Image
&
Image


Add Enable/Disable Generate Animated Gifs as Action Group per Camera/s
[this enables you to change the camera settings with an action as required - e.g arrived home; stop making them]
Image

Triggers
The Plugin also creates a Trigger which is run when the selected Camera(s) detects motion and when the selected camera resets/no motion

You can select multiple cameras:

Image

The triggering of these alerts is dependant in the settings that are created within BlueIris as above - including the retrigger timeout - will not retrigger until this time has passed.
Last edited by GlennNZ on Sun Aug 19, 2018 1:11 am, edited 20 times in total.

Posted on
Mon Feb 12, 2018 3:17 am
rhanson offline
Posts: 192
Joined: Apr 30, 2013

Re: BlueIris Indigo Plugin

Awesome! Can't wait to try it out.

One thing that's been on my to-do list for a while is to grab a video clip of the previous 5-seconds of video after a motion trigger, and get it to my phone with an appropriate alert. I already get a still image, but a few seconds is obviously better to determine if we've got a visitor, or just leaves blowing around.

I've looked at bp2008's ui2 stuff and found the URLs that he's using to grab each individual frame from the file (.bvr format). I figure if we grab, say, 10 frames at 320x240 resolution 500ms apart, and then turn that set of frames into a gif, it would be small enough to push out via email or Pushover.

Posted on
Mon Feb 12, 2018 5:38 am
Seeker offline
Posts: 440
Joined: Aug 05, 2013

Re: BlueIris Indigo Plugin

Thank the maker. i've been hoping for a Blue Iris plugin since i started using Indigo several years ago!! great news. I'll check this out.

Posted on
Mon Feb 12, 2018 10:38 am
Professor Falken offline
User avatar
Posts: 289
Joined: Mar 29, 2015

Re: BlueIris Indigo Plugin

Oh, that's really cool. As you can probably tell on the forum, I'm just a brand new BI user (actually, I'm running the demo version on an old laptop until I get a real PC for it) but I've been hobbling together some scripts with the patient help of members here to bring it more under Indigo's control.

I look forward to trying out your plugin as soon as I have my "real" install up and running.

Posted on
Mon Feb 12, 2018 1:48 pm
neilk offline
Posts: 714
Joined: Jul 13, 2015
Location: Reading, UK

Re: BlueIris Indigo Plugin

Hi Glenn,
Worked first time and created the camera devices. It show straight away one of my cameras has locked up.

A “motion sensor” device would be nice but I still think you would need to manually configure the alerts at the BI end.

Other than that I think you have a great start,

Thanks,
Neil

Posted on
Mon Feb 12, 2018 4:04 pm
GlennNZ offline
User avatar
Posts: 1555
Joined: Dec 07, 2014
Location: Central Coast, Australia

Re: BlueIris Indigo Plugin

rhanson wrote:
Awesome!.
I've looked at bp2008's ui2 stuff and found the URLs that he's using to grab each individual frame from the file (.bvr format). I figure if we grab, say, 10 frames at 320x240 resolution 500ms apart, and then turn that set of frames into a gif, it would be small enough to push out via email or Pushover.


Thanks. Could look at this - issue personally is have so many outside cameras that if got notification every time motion - would be non-stop. Personally I just log in the iOS BlueIris app and have a look if interested. An nother aspect would be time for this; -5 seconds of picture grabbing, probably a few seconds of image modification; conversion etc; and a bit of time to send. So realistically probably 20-30 seconds before received ? Might be slightly too long.
Have a look at the image analysis plugin - which could look at using - eg. send image to Amazon Rekognition server- if vehicle or person - send notification.

neilk wrote:
Hi Glenn,
Worked first time and created the camera devices. It show straight away one of my cameras has locked up.
A “motion sensor” device would be nice but I still think you would need to manually configure the alerts at the BI end.
Other than that I think you have a great start,
Thanks,
Neil


Thanks.
I agree motion sensor device probably better icon for the cameras.

I think though you are right on the motion issue - motion alerts probably need to be at BIs server end. Whilst I can pull the camera info fairly regularly - currently its every few minutes, but probably could be a lot more regularly. (it is all local after-all). But regardles, it is not going to have instant, alert, there is motion type changes unless coming from BI . Will have a think and see if a way to integrate both aspects. ?variable that we get BI to change etc. (ideally we BI to have a subscription type service that the plugin could subscribe to - but I would presume that is a long way down Ken's list)

The major use of the Plugin - is to allow actions to cameras eg. trigger, pan left, pan right, IRon etc. for each camera from within Indigo

To do list;
(essentially making this up as I type!)
- add URLs for Images either as states for Cameras or create Variables in a BlueIris Variable folder?
- add Action to save local copy of current image/and/or animated gif
- add set Profile option
- Join Contrast/Brightness options together eg. select Brightness and seperate selector for number
- Look into trigger options for camera detected motion

Posted on
Mon Feb 12, 2018 5:22 pm
Seeker offline
Posts: 440
Joined: Aug 05, 2013

Re: BlueIris Indigo Plugin

this installed just fine. painless.

i see an action to 'change active profile' and it gives a list of cameras. i'm looking for a way to change the global blue iris profile. i use BI 1 for home, 2 for away. is there a way to do this?

Posted on
Mon Feb 12, 2018 5:33 pm
GlennNZ offline
User avatar
Posts: 1555
Joined: Dec 07, 2014
Location: Central Coast, Australia

Re: BlueIris Indigo Plugin

Seeker wrote:
this installed just fine. painless.

i see an action to 'change active profile' and it gives a list of cameras. i'm looking for a way to change the global blue iris profile. i use BI 1 for home, 2 for away. is there a way to do this?


Not yet!
Its half done - Won't be far off - got close and then ran out of time.

G

Posted on
Mon Feb 12, 2018 9:16 pm
Professor Falken offline
User avatar
Posts: 289
Joined: Mar 29, 2015

Re: BlueIris Indigo Plugin

Not installing the plugin until my new machine arrives and I've purchased a full BI license for it, so please excuse me if you have already included this.

I would like a way to have Indigo toggle on/off the IR mode on a camera. I have one camera that has issues with glare from a path light in my front yard. The camera's on-board logic doesn't work well due to the light being so prominent in its field of view (it stays in "day" mode if left to its own devices). BI lets you toggle the IR mode, but I haven't yet figured out if BI will let me schedule that change in a profile. I'd rather just have Indigo trigger it when it turns on that outside lamp.

Ideally, lots of camera picture properties could be all be triggered this way. So if, say, during the day it worked best with one set of brightness/contrast/etc., but in lower light conditions a differnet set worked better, those parameters could be adjusted with time..

I cold even see using this on PTZ cameras that have differing lighting conditions depending on their aim. If accessed via a CP element pointing to a particular PTZ preset, the picture parameters could be triggered as well, and adjust for different presets, as in my glare inducing path light example above.

Posted on
Mon Feb 12, 2018 9:50 pm
GlennNZ offline
User avatar
Posts: 1555
Joined: Dec 07, 2014
Location: Central Coast, Australia

Re: BlueIris Indigo Plugin

Seeker wrote:
this installed just fine. painless.

i see an action to 'change active profile' and it gives a list of cameras. i'm looking for a way to change the global blue iris profile. i use BI 1 for home, 2 for away. is there a way to do this?


Found a small bit of time -
Profile support is up. Download from Github.
Let me know how you go.

Working on motion sensor support, via BI updating variable - have handle on how to do without major impact - tests working well.
(more time needed.... :( )

Glenn

Posted on
Tue Feb 13, 2018 5:39 am
Seeker offline
Posts: 440
Joined: Aug 05, 2013

Re: BlueIris Indigo Plugin

profile interface looks look good. it looks like it is set on a per camera basis (9 actions for my 9 cameras). is there a way to make an action for the global profile? the main one that sets all cameras at once?

i use BI's geo feature to change the global profile to home or away. works great except for when i set up my VPN. it only recognizes (able to communicate with server) when i activate the vpn setting on my phone. my plan is to use an indigo home remote geo variable (very reliable) to trigger the bi profile change. i have that setup using your plugin now and will text this morning. i've never used the per camera profile before, ad it does require an action per camera.

thanks for your work on this. i'll check back in tonight.

Posted on
Tue Feb 13, 2018 9:00 am
Professor Falken offline
User avatar
Posts: 289
Joined: Mar 29, 2015

Re: BlueIris Indigo Plugin

I have no idea if this would be possible, but another really cool feature would be to have Indigo have the ability to toggle individual alert preferences on cameras.

Here is an example use case:

1) My neighbor goes somewhere every morning at 4:30 am. When he does, his headlights light up my driveway/front lawn (an area I otherwise don't want to mask) and triggers a motion detection event. I am set up to receive an email witha photo when a camera is triggered in the overnight time frame. But obviously I don't need an email of this event every morning.

If an indigo schedule could turn off the email notification for a short window around this very predicable time, I think that would solve it.

2) Here's an even more granular one: If indigo could individually manage the alert options like that, it would allow you to toggle them off and on both by schedule or on a CP. The Indigo user could even set it up to enable a notification type (email) just one time, then revert it back to off-- for example if you wanted a daytime notification on a package delivery on the front porch, or when someone you are waiting for drives up in the driveway.

This could all be handled by turning all of the notifications over to Indigo (send every trigger signal from BI to Indigo, then just let Indigo decide what to do notification-wise), but BI does a good job handling the attachment of JPGs to the emails, so I think it would be preferable to let BI keep sending the actual messages in these cases.

The other work-around would just be to toggle the alert on/off altogether. But then BI wouldn't record (if using motion triggered recording) or at least wouldn't mark something as an alert (if continuous recording) while the alerts were disable, which seems less than ideal.

As I said, I'm not sure if this is even possible or overly difficult. Just throwing out a suggestion if it turns out not to be too hard. Thanks a lot for working on this plugin.

Posted on
Tue Feb 13, 2018 9:40 am
Hackencrash offline
User avatar
Posts: 246
Joined: Dec 16, 2015
Location: UK

Re: BlueIris Indigo Plugin

Good man - I never thought anybody would write a plugin for this as it's not Mac-based, but I use BlueIris - thank you!

Posted on
Tue Feb 13, 2018 12:27 pm
Colly offline
Posts: 535
Joined: Jan 16, 2016
Location: Ireland

Re: BlueIris Indigo Plugin

Professor Falken wrote:
Not installing the plugin until my new machine arrives

Just curious what Win machine you or others use. Does anyone use a Windows equivalent of a headless mac mini?? Any recommendations? I've an old Win 7 laptop which is long past it's sell by date and integrating cameras via this plugin on a new Windows machine seems appealing to me..

Posted on
Tue Feb 13, 2018 12:35 pm
Seeker offline
Posts: 440
Joined: Aug 05, 2013

Re: BlueIris Indigo Plugin

Colly wrote:
Professor Falken wrote:
Not installing the plugin until my new machine arrives

Just curious what Win machine you or others use. Does anyone use a Windows equivalent of a headless mac mini?? Any recommendations? I've an old Win 7 laptop which is long past it's sell by date and integrating cameras via this plugin on a new Windows machine seems appealing to me..


I run blue iris on an Alienware i7 gaming machine. It’s a small form factor very similar in size to the mini. They were on sale during Black Friday a couple of years ago for $350 at GameStop.

It runs headless in my closet. I have 9 cameras, all 3 or 4 mp. CPU runs 25-35% with all cameras continuous recording at 15fps.

Who is online

Users browsing this forum: No registered users and 1 guest