This is an outgrowth of this thread:
http://forums.indigodomo.com/viewtopic.php?f=152&t=19897&p=154512#p154512
Please go there to see the conversation from before this post.
Hopefully this can become a thread for continued discussion of this application. Also note that there is a very robust Blue Iris forum over on IP Cam Talk:
https://ipcamtalk.com/forums/blue-iris.30/
Now back to my question (sorry, I think this is the best I can do to quote from a different thread):
Re: Video Surveillance
Controlling Blue Iris from Indigo
On this I have rehashed from a similar post to do it in another product.
This changes BlueIris to "Profile 7"
Code: Select all
http://user:password@192.168.1.200:8030/admin?profile=7
Where
IP Address for Blue Iris = 192.168.1.200
Blue Iris port = 8030
Blue Iris Profile = 7
(user:password@ can be omitted if you are not using authentication for your Blue Iris web server)
The full list of commands is
Code: Select all
/image/{cam-short-name}?h=100 You may also specify a specific height (h) or width (w) instead of scale.
/mjpg/{cam-short-name}/video.mjpg An M-JPEG stream. This stream is compatible with "Blue Iris MJPEG stream request."
/file/clips/{filename}&mode=jpeg&speed=100 An M-JPEG stream of a clip from your New clips folder. You may include additional subdirectory names in the filename. The speed parameter is optional, a percentage of normal playback speed.
/thumbs/{filename} A thumbnail image from a specific file in the New clips folder.
/alerts/{filename} A JPEG image from the Alerts folder.
/admin?profile=x Temporarily change the active profile to x. Use x=-1 to toggle the lock status.
/admin?camera=x&trigger Trigger camera x (short name)
/admin?signal=x Changes the traffic signal state and returns the current state. x=0 for red, x=1 for green, x=2 for yellow. This requires admin authentication.
/audio/{cam-short-name}/temp.wav Pull a raw audio stream (MIME type audio/x-wav).
/cam/{cam-short-name}/pos=x Performs a PTZ command on the specified camera, where x= 0=left, 1=right, 2=up, 3=down, 4=home, 5=zoom in, 6=zoom out
/cam/{cam-short-name}/pos=100 Causes a snapshot image to be captured from the specified camera.
/h264/{cam-short-name}/temp.h264 Pull a raw H.264 stream (MIME type video/H264). This stream will play in a tool like VLC, and may be used in future versions of the ActiveX control.
/h264/{cam-short-name}/temp.ts Pull an MPEG-2 transport stream (MIME type video/MP2T).
/h264/{cam-short-name}/temp.m or .m3u8 Pull a virtual M3U8 file (MIME type application/vnd.apple.mpegurl). This will play in QuickTime, iPad and the iPhone using the iPhone Live Streaming format.
So for example if you wanted to force a trigger on a camera as your alarm is sounding so it records, you would do the following
Code: Select all
http://192.168.1.200:8030/admin?camera= ... en&trigger
Where "backgarden" is the short camera name you set in BlueIris.
To do that from Indigo you can run an embedded python script action as follows.
Code: Select all
import requests
url = "http://192.168.1.200:8030/admin?camera=backgarden&trigger"
requests.get(url)
Try the url in a browser first, and it seems it can be fussy about authentication, in my example you would set BlueIris not to require authentication on the local LAN. I am afraid if you run into authorisation issues then I am stuck, but could probably point you in the right direction to use curl in an external script. Let me know if you need more.
I have sucessfully gotten BI to trigger actions in Indigo, and have also been able to pull down snapshots from BI for using in control pages.
But thus far I have been unable to get BI to recognize http commands sent from Indigo (or just from a browser). I have tried both with and without my credentials in the http string, and with setting the authorization to "off LAN only" in BI.
BI is seeing the request, and registering it as a login in the log, but the requested action doesn't happen (say, a profile change or a camera trigger). In the BI log, I am showing a login (though oddly from a user called "anonymous", which the program will re-create even if I delete it), then will log out this user exactly a minute later. I even tried changing the permissions of that newly created user to Admin level to see if that would work, but it did not.
I looked around in the BI settings to see if there was perhaps some check box that I needed to enable to allow http calls (is that what this would be called?) but nothing jumped out at me.
I realize I could also ask this question over on the BI forums, but figured I'd start here since it seems we have some users who have integrated the two programs well.
I am envisioning using Indigo to manage the BI profile schedules/changing since I already have various automatic and triggered house states, etc. in Indigo that will mesh nicely with security camera monitoring/alert settings. Hopefully there is a way to do this.
Thanks for any suggestions.