New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Cant get this to work #5
Comments
Can you provide more details? Thanks |
the entities don't load. In the logs it only says that blueiris hasn't been tested. |
For clarification, my config directory (linux) is /home//.homeassistant/ I created a custom_components folder here and added the blueiris sub-folder with the 4 python scripts in it and made them executable. I updated my config file and secrets file very similar to your example. My blueiris server is on the latest version. Any ideas? |
I am. it doesn't work. Also I I get errors if I specify more than one camera.
switch:
camera:
|
Was it solved? thanks |
no it wasn't. I ended up just adding the cameras individually to ha... Still use BI from the web. |
can you try the latest version? thanks |
does the config file really start with configuration? |
No, it just to explain that it should be at the same level of all other domain under the root tag which is configuration
|
blueiris: custom_updater: camera:
binary_sensor:
switch:
this is the logs: |
it lacks of the begining of the errors, can you cleanup the logs before starting the ha and after it fails copy that in addition, it seems that there is a problem with your custom updater |
Im going to manually install and then see what happens... BTW there is a typo in in your blueiris json file on line 17 /which.py should be switch.py |
|
Here's the latest log: |
what version of HA are you using? |
0.88.2 |
component is aligned with latest version of HA v0.91, HA changed the structure of components that's why it didn't find the generic camera class |
did you try that with latest version of HA? |
I upgraded to .91. I am not able to get this to run from custom_updater. |
I manually updated the blueiris component. I can get the elements to show up in unused entities, but they do not work and I don't show a login in blueiris for my ha user. No errors in the logs _rob@ha:~/.homeassistant$ tail home-assistant.log 2019-04-23 14:53:54 WARNING (MainThread) [homeassistant.loader] You are using a custom component for blueiris.binary_sensor which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you do experience issues with Home Assistant. 2019-04-23 14:53:55 WARNING (MainThread) [homeassistant.loader] You are using a custom component for blueiris.camera which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you do experience issues with Home Assistant. 2019-04-23 14:53:55 WARNING (MainThread) [homeassistant.loader] You are using a custom component for myicomfort.climate which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you do experience issues with Home Assistant. 2019-04-23 14:53:55 WARNING (MainThread) [homeassistant.loader] You are using a custom component for blueiris.switch which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you do experience issues with Home Assistant._ `blueiris: blueiris_host: 172.17.17.75 binary_sensor:
camera:
switch: |
I've even set the logger level to debug for the blueiris components, but can't seem to get any more information from it.
|
I'm not using it, will check it in the weekend and see how to fix that security settings,
2 first just added thanks to @darkgrue In addition switch to control whether the BlueIris is armed or not:
|
The To be fair, HTTP Digest auth only gives you marginal better security, you'd be far better served setting up SSL (which appears to be another prerequisite for integrating with Google Assistant). I threw another Pi running a NGINX reverse-proxy in front of my Home Assistant and Blue Iris servers for that reason. |
I installed the Mosquitto broker from the hass.io add-on store and did the autoconfig in configuration/integrations. I completed the instructions for the blueiris side, just not sure how to test it. |
@bhcallaway73 what do you have HA installed on? I think custom updater auto updates but i'm not sure as I'm not using it. if you open up ssh to your instance of ha, then start an interactive session. then goto /dev-mqtt on your ha instance... publish a topic... if you have everything setup, then the topic should show up on your ssh. |
Its an ubuntu server and hass.io is installed in a docker instance which I'm also not real familiar with. I have several containers I've setup manually for transmission, sonarr, sabnzbd, plex etc. thats fully automated, just never used docker. I see a ton of authentication errors in the mosquitto log. I had the blueiris user set as a non admin. Not sure if that matters or if I put the password in wrong. I'll see if I can figure out how to do what you asked with docker. |
Getting streaming - especially streaming with Google Assistant, is currently my priority. But it should be possible to get the click-action to stream correctly, and I think I've got a handle on the fix. |
Non-admin users work fine for MQTT auth, as that's how I'm set up. Make sure you've got everything configured right on both ends, as there are a lot of pieces. Pretty easy to miss something. |
I did a "docker container attach addon_core_mosquito" and published as you said but nothing came through. Not sure if that gives a interactive session but when I do the same for the homeassistant docker, I do see activity. Just can't figure out how to break out of attach. |
Sorry, spelled mosquitto wrong above but it was right in the command. BTW, thanks guys for all your help |
@bhcallaway73 I'm ubuntu server all the way as well. and I run most of those services (emby is much better than plex you should look into it :) ) I chose the python virtual method instead of docker... so did you set the mosquito user and pw set up correctly? then use THAT user in your config?
|
@bhcallaway73 scratch that url I just posted... thats different than the one I did :) |
@bhcallaway73 feel free to email me with questions, don't want to gum up this issue thread robhedrick@outlook.com |
I installed via this method. Thanks, I'll email. |
Pull Request #7 is in. This should fix the Streaming/Casting issues. Google Assistant can "see" the cameras, and will stream them to a Google Hub, like an official camera would. There are still some problems with the core Stream Component that have to be addressed by the HA team. There is a workaround for open HA Issue ("Stream Component and base_url #22252"), and I'm currently working around the Casting performance issues by referencing the MJPEG stream, (instead of the proxy Stream Component). However, the Stream Component still looks pretty choppy. It's a new HA Component, so it should improve over time. |
Motion wasn't working for me until I changed the topic from BlueIris/&CAM/&TYPE to BlueIris/&CAM/MOTION because BI was sending MOTION_A as the topic. |
Hrm, this seems to be a Blue Iris thing. It's appending the motion zone to the Testing a workaround where the motion topic is changed to Good catch, nonetheless... |
actually it does that because there are different types of motions and zones... my driveway cam sends MOTION_ABC because my trigger is defined to only trigger if the object travels through zone a b and c so I dont get false alerts. |
It's part of the motion zones, correct. However, having the motion zones added to the Because of that, we either have to sacrifice |
can we not handle the different mqtt topics for motion combinations that get published in a case/switch statement? I don't know if three's a way to query the camera to see what kind of motion has been configured MOTION_A I created my own sensors anyway... the baby cam's only need a sensor for MOTION_A but the driveway needs MOTION_ABC... |
Ehhhh... That's 8! permutations, and that's only if you don't take directionality into account (BI can specify AB, A>B, and B>A, though I don't have BI handy right now to see how the MQTT messages for each of those get expressed). 40,320+ sensors per camera and the if/then logic to process them would be a bit excessive, to say the least.
The BI RESTful API gives a lot more configuration information, but that doesn't appear to be one of them. Even so, creating all the logic would get out of hand pretty quickly.
I think for anything other than the default case ("MOTION_A"), we're going to have to rely on the user to configure their own use case. Anticipating that has too many design issues and trade-offs to be useful. In most use cases, I would imagine only one or two MQTT messages are going to be of significance, but the end-user is going to have to be the one to decide. We can definitely get the info into HA, but we're going to have to leave some of the configuration up to them. |
Why not create a function to populate all possible combinations of permutations? var motion = combinations("ABCDEFG");` then do a comparison against the motion variable... if the mqtt message matches motion, trigger motion... |
I addressed that. It's not that you can't write the code to create all the combinations of the sensors, it's that you've created over 40 thousand possible object entities per camera. That would be... bad. If you didn't fault out just trying to create all that, you'd have to service all of them somehow and there aren't enough clock cycles in a day. 8! is a very large number, in this context. |
hm :/ ... can we match with a wild card? blueiris/somecamera/MOTION_* ? |
I don't see how, because the MQTT broker sees I'm not a MQTT mechanic, so I can't speak with absolute certainty, but AFAIK MQTT doesn't "see" topics as wildcards (it wouldn't make sense, it'd go against the efficiencies of queues). You'd have to tell Home Assistant to associate a sensor with those topics, and then service each topic (by polling or interrupt) to aggregate that status. That would be very resource-intensive (to the point of absurdity). The other way would be to have the MQTT broker aggregate those messages somehow. In which case, you're now writing a custom MQTT broker (kind of outside the scope of what we got into) that is, well, broken by design. The best way is to have Blue Iris not do this and have it separate the trigger type from the motion zone. I put it in the BI suggestion box, we'll see... Who knows, maybe Version 5 revamped the whole way MQTT works in BI and fixes all of this? That'd be nice! I don't think most users are going to want or need that many motion zones, and will only care about one or two cases, out of whatever large number (I'm not sure it's really 8!, but it's still an absurd number) of possible configurations. In which case, they can create a MQTT Binary Sensor, rather than the auto-created "MOTION_A" sensor. |
You can subscribe to a wildcard topic... blueiris/camera/MOTION_# |
or even blueiris/+/MOTION_+ since each wildcard area is single hierarchy |
Based on the MQTT documentation, doesn't appear that it's possible to do a wildcard on a partial topic match. It's topic-level or nothing. =( You could match "BlueIris/Cam1/#", but that would match any of "BlueIris/Cam1/WATCHDOG", "BlueIris/Cam1/AUDIO", "BlueIris/Cam1/MOTION_A", "BlueIris/Cam1/MOTION_AB", etc. It'd only work if we had separate trigger and zone macros, e.g. "BlueIris/Cam1/MOTION/A", then we could subscribe to "BlueIris/Cam1/MOTION/#" I can give it a try to confirm, but I don't think we can really do this without changes on the BI side (which, I'd argue there's probably a compelling reason to want to have). |
Have you seen this yet? https://blueirissoftware.com/BlueIris5.pdf I wonder what will change in the API? |
Yes, I didn't start developing the intergation to the REST API mainly because I thought something like that will happen and it worth waiting. |
Is it possible to use more profiles than just arm/disarm? Like an option to arm the sleep profile? |
Is there anything special I need to do to get this work?
The text was updated successfully, but these errors were encountered: