* Bayesian Binary Sensor Why: * It would be beneficial to leverage various sensor outputs in a Bayesian manner in order to sense more complex events. This change addresses the need by: * `BayesianBinarySensor` class in `./homeassistant/components/binary_sensor/bayesian.py` * Tests in `./tests/components/binary_sensor/test_bayesian.py` Caveats: This is my first time in this code-base. I did try to follow conventions that I was able to find, but I'm sure there will be some issues to straighten out. * minor cleanup * Address reviewer's comments This change addresses the need by: * Removing `CONF_SENSOR_CLASS` and its usage in `get_deprecated`. * Make probability update function a static method, and use single `_` to match project conventions. * Address linter failures * fix `device_class` declaration * Address Comments Why: * Not validating config schema enough. * Not following common practices for async initialization. * Naive implementation of Bayes' rule. This change addresses the need by: * Improving config validation for observations. * Moving initialization logic into `async_added_to_hass`. * Re-configuring Bayesian updates to allow true P|Q usage. * address linting issues * Improve DRYness by adding `_update_current_obs` method * update doc strings and ensure functions are set up properly for async * Make only 1 state change handle * fix style * fix style part 2 * fix lint |
||
---|---|---|
.. | ||
__init__.py | ||
test_aurora.py | ||
test_bayesian.py | ||
test_binary_sensor.py | ||
test_command_line.py | ||
test_ffmpeg.py | ||
test_mqtt.py | ||
test_nx584.py | ||
test_ring.py | ||
test_sleepiq.py | ||
test_spc.py | ||
test_tcp.py | ||
test_template.py | ||
test_threshold.py | ||
test_trend.py | ||
test_workday.py | ||
test_zwave.py |