-
-
Save jazzyisj/45fce29d825b8f9b29c5974444299d90 to your computer and use it in GitHub Desktop.
Great project and it works great. I am getting template log warnings and notice in the code the ignore_time does not appear and the comments say that if it is set to less than 5 secs we will see these errors. Where should I add the ignore_time. Also just a heads up i was also getting a warning from unavailable_entities_alert sensor regarding int value and found modifying the line to include a default value of zero stopped the error as below
sensors:
unavailable_entities_alert:
friendly_name: Unavailable Entities Alert
delay_on:
seconds: 30 # delay before activating alert
value_template: "{{ states('sensor.unavailable_entities')|int(default=0) > 0 }}"
Once again thanks for a great project
@Bytelink5616 I'm getting the same warning. I've tried several things, but I could not get it to go away.
@Bytelink5616 I think you are using an old version of the template. Try the current version in the gist at the top of this page. If you're still having issues with this version let me know.
@pmd5700 I just started getting the warnings again also, but only when I reload my templates. Something must have changed, I'm looking into it. However, these are just warnings and they do not affect the sensor. You can use the log filter code given in the package to prevent the warnings from showing up in the home assistant log.
Are you using the most recent version?
@jazzyisj Here is the full warning. I just want to make sure it doesn't break in 2022.1. Yes, I actually just updated to the most recent version. I don't recall if I was getting this warning prior to that.
Template warning: 'int' got invalid input 'unknown' when rendering template '{{ states('sensor.unavailable_entities')|int > 0 }}' but no default was specified. Currently 'int' will return '0', however this template will fail to render in Home Assistant core 2022.1
Template warning: 'int' got invalid input '' when rendering template '{{ states('sensor.unavailable_entities')|int > 0 }}' but no default was specified. Currently 'int' will return '0', however this template will fail to render in Home Assistant core 2022.1
@pmd5700 - The code you are referring to does not exist in the most current version. Where are you copying the code from?
@jazzyisj I'm using this to trigger my automation:
binary_sensor:
- platform: template
sensors:
unavailable_entities_alert:
delay_on:
seconds: 60 # delay before activating alert
value_template: "{{ states('sensor.unavailable_entities')|int > 0 }}"
That is not part of the package in this gist. That does look suspiciously like some template sensors I have in my personal config though..lol.
Anyway yes, you can just add a default value for int there. That should only happen on startup or when you're reloading templates.
value_template: "{{ states('sensor.unavailable_entities')|int(0) > 0 }}"
I use alerts for my notifications instead of an automation which is why I had to create the binary sensors in addition to the unavailable entities sensor. You could just use a numeric_state trigger if you're using an automation, you don't need the binary sensor template.
trigger:
- platform: numeric_state
entity_id: sensor.unavailable_entities
above: 0
As for the template loop warnings - I'm not seeing them anymore again.
What is happening when you see that warning in your logs? Startup? Reloading templates?
@jazzyisj Thanks! I think I misread Bytelink5616's comment above. I was only getting the errors I posted above about the Int. I added the (0) and they seem to have gone away.
It should look familiar, I think you help me set it up ~a year ago lol. I tried the numeric state trigger, but I wanted to put a delay in the binary sensor so it didn't trigger all the time.
@pmd5700 Too funny..lol
This will give you your delay. Also if you're using the most current version you can increase the ignore_sec
value to accomplish pretty much the same thing.
trigger:
- platform: numeric_state
entity_id: sensor.unavailable_entities
above: 0
for: 60
The Unavailable Entities Sensor has been moved to it's own package.
Please ask any further questions or report issues here.
https://github.com/jazzyisj/unavailable-entities-sensor
I have a similar issue as some others: I have a few devices that expose multiple sensors. I thought I could extend the sensor in a way that it would allow excluding sensors using regular expression. However, it seems that there is no elegant way to do that with HA and Jinja:
This feature is now available via the search test. The README in the new repository explains how to utilize it. I remembered your comment because it was the basis for my first failed attempt at accomplishing it with custom attributes so I thought I'd point it out to you.
| rejectattr('entity_id','match',...)
YES! Home Assistant finally supports this! I finally got around to implementing it on this sensor (well, more like documenting it).
Is there anyway to modify it to only show if an entity has been unavailable for XX seconds/minutes?
I've updated the sensor and this is now accomplished with a much more elegant method. I recommend updating to the new method.
@Bytelink5616 My pleasure! I'm just paying forward all the help I've received along the way :-)
Can you visit the new repository for the sensor and check out the READ.ME? I've added quite a bit of documentation there.
If you still have a question then feel free to open an issue there so others can benefit.
It works like a charm :) thank you :)