Skip to content

Releases: leosperry/ha-kafka-net

V3.0.0-prerelease

10 Feb 03:13
Compare
Choose a tag to compare
V3.0.0-prerelease Pre-release
Pre-release

This is a prerelease version. Use with caution. More testing and documentation is needed before release.
If you run into any issues, please report it.

Thank you & happy automating.

Version 2.1.3

05 Feb 21:33
Compare
Choose a tag to compare

Updates:

  • UI now shows AdditionalEntitiesToTrack
  • Conditional automations fire immediately if For is set to TimeSpan.Zero

Version 2.1.2

05 Feb 16:12
Compare
Choose a tag to compare

New Features:

  • Added AdditionalEntitiesToTrack to Automation Builder
  • Added ability for conditional automations to raise error events during delayed execution.

Version 2.1.1

04 Feb 23:27
Compare
Choose a tag to compare

Small fix regarding thread handling. No new features.

Version 2.1

04 Feb 21:05
Compare
Choose a tag to compare

Note: please use V2.1.1

New Features:

  • ISystemMonitor for recording unhandled exceptions and reporting when entities are in bad state
  • New Configuration options

Breaking Changes:

  • app.StartHaKafkaNet() no long takes parameters. Configuration is handled internally.

V2.0.0

31 Jan 22:48
Compare
Choose a tag to compare

Version 2 Released!

This version brings several major features.

  1. A brand new UI which:
    • Lists all your running automations, information about how they were registered, entities that trigger them, and type information.
    • Allows you to enable/disable automations at runtime,
    • Has a link to the KafkaFlow admin dashboard which allows you to inspect the Kafka consumers.
    • Tells you if the state handler has been initialized. If your application is running and you restart it, sometimes it can take a minute for the Kafka handlers to initialize and start handling new events.
  2. An automation builder with fluent syntax for quickly creating new automations.
  3. A test harness to allow you to write component tests. You can still unit test your custom built automations like before, but now, when you use either the IAutomationFactory or the IAutomationBuilder, you can create component style tests for all automations created in your registries.

Breaking Changes

  • The methods of the IAutomationRegistry interface no longer have the IAutomationFactory passed in as a parameter. Instead, inject it and/or the IAutomationBuilder into your constuctor.
  • The config has had the API node renamed to HaConnectionInfo. If you don't change it, it should still work, but may not be supported in future versions. The console will alert you to change it.

Merging v2 changes

31 Jan 20:45
c7cf968
Compare
Choose a tag to compare
Merging v2 changes Pre-release
Pre-release

This is a pre-release for V2.

v1.1.0

21 Jan 19:17
Compare
Choose a tag to compare
  • Added api methods for working with multiple entities in one call
  • Added sun model
  • Moved Test Helpers so that consumers can use them

Note: 1 small breaking change
If you were using IHaApiProvider.LightTurnOn(LightTurnOnModel settings, CancellationToken cancellationToken = default)
This is the overload that takes in a LightTurnOnModel
The string EntityId has changed to IEnumerable<string>
Example fix:
If your code had

        LightTurnOnModel color1 = new LightTurnOnModel()
        {
            EntityId = my_light_id,
            RgbColor = (255, 255, 0)
        };

change it to this:

        LightTurnOnModel color1 = new LightTurnOnModel()
        {
            EntityId = [my_light_id],
            RgbColor = (255, 255, 0)
        };

notice the brackets around [my_light_id]

v1.0.0

19 Jan 21:35
Compare
Choose a tag to compare

First non-Alpha Release!!!

Added several tests
Added full support for reusing IAutomation and ICondtionalAutomation
Added prebuilt basic light/motion automations

v0.3.0

18 Jan 17:01
Compare
Choose a tag to compare
  • Added conditional automations
    • These will ensure a condition remains true for an extended period of time. Consider turning off lights when there's no motion for 20 minutes
  • Added IAutomationRegistry for adding multiple instances of the same type of automation
    • Consider the above example and you want to create multiple instances of an automation that turns off lights when no motion is detected. By using the automation registry, you can add the same automation for multiple sensors/lights.
    • The automation registry exposes an IAutomationFactory. Currently it supports adding simple and conditional automations by accepting callback functions. In a future version it will support the above example more cleanly by taking in entity ID's instead of callbacks.
    • If you want to created your own automations and expose them via the registry, you should add the ExcludeFromDiscovery attribute to your automation class. This will prevent it from being added into your services automagically. This attribute is used internally to hide a wrapper for the conditional automation which converts it into an IAutomation
  • Added LightTurnOnModel for API calls to turn on a light. This makes it much easier to set RGB and other properties without needing to read the Home Assistant documentation.