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.
Go to Plugin Config:
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.
If you change this port the plugin will restart.
Next:
Click Login/Generate Server Device, here:
(This will generate a main BI server device in either BlueIris directory or main)
if all goes well -- Generate Cameras button should appear
Click this - to generate all your camera devices...
Main BI Server Device:
Generates this device with status options
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:
& see here:
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.
These can be selected from within Camera Properties:
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:
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
&
&
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]
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:
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.