Skip to content
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

Notification of Husqvarna: use Event-format-V2 #364

Open
MichelRabozee opened this issue Dec 6, 2024 · 6 comments
Open

Notification of Husqvarna: use Event-format-V2 #364

MichelRabozee opened this issue Dec 6, 2024 · 6 comments
Assignees
Labels
enhancement New feature or request

Comments

@MichelRabozee
Copy link

MichelRabozee commented Dec 6, 2024

Hi,

I just received a notification from Husqvarna related to their phasing out of Event-format-V1

Dear User of Husqvarna Group Developer Portal. We want to inform you that we will launch our new IoT-backend in March 2025. Our current solution has grown old and earned its retirement. This will be a breaking change for those who are using our current solution, and you will need to change your apps according to the below information. The updated solution will be available from 20th December 2024. We will simultaneously run both solutions until 28th February 2025. After this the current version will be removed and only the updated version will be running. Please see the new event format here: Event-format-V2

Is the current plugin version already using the new event format ?

Best regards,
Michel

Environment:

  • Plugin Version: Event-format-V2
  • Homebridge Version: v1.8.5
  • Node.js Version: v20.17.0
  • Operating System: macOS / hb-service
@MichelRabozee MichelRabozee added the question Further information is requested label Dec 6, 2024
@jeff-winn
Copy link
Owner

It is not, and I got the same email. Looks like I’ve got some work to do. My mower is parked for the winter too, so I can’t test it either.

Thanks for reaching out, I’ll start digging in.

@MichelRabozee
Copy link
Author

And mine is at the shop for yearly maintenance. Bad timing from Husqvarna to phase out in the winter 😟😟

@jeff-winn jeff-winn added enhancement New feature or request and removed question Further information is requested labels Dec 18, 2024
@jeff-winn jeff-winn self-assigned this Dec 18, 2024
@jeff-winn
Copy link
Owner

Finally started to dig into this, unfortunately due to Husqvarna using version 1 for both their V1 and V2 versions of the same API, the plugin is likely going to have to break, and be released after they roll out the new version. They're touching both the normal APIs as well as their streamed updates and the two likely won't be compatible with each other.

Best case scenario is update the code early, test it after they've released their change, and then release my update with the changes in place. Given my mower will be parked until spring, I'll be limited to a preview release but that's it.

If they'd done a v2 endpoint with all the v2 changes isolated, we wouldn't be forced to break but alas that isn't the case and there's nothing I can do about it.

@MichelRabozee
Copy link
Author

Wow, that is not cool of Husqvarna :-( Having read (quickly) https://app.qa-developer-portal.dss.husqvarnagroup.net/apis/automower-connect-api?tab=websocket%20v2 I thought only the WebSocket stuff will be migrated (from WebSocket to WebSocket V2), and that in the transition period (from 20-dec-2024 till 1-mar-2025), both events (deprecated and v2, for instance "positions-event" and positions-event-v2) will be transmitted simultaneously, allowing the client applications to use the one they are able to process (so if the application understands already v2, it uses that one); for me the approach of not creating a new v2 endpoint was done to be able for applications to gradually implement the new events, without the need to do the whole move at once. Seems I was a bit too confident about how they implemented the move I guess :-(

@jeff-winn
Copy link
Owner

Yeah they didn’t only change their streaming events, the public API also changed to match some of their new event models and it’s just not worth trying to support both at once for only a few months when I can’t test it anyway.

The V1 of their API can return either V1 model or V2 model which isn’t compatible with V1. They didn’t version their API routes to v2 either so I’d just be guessing where the data is located for a very short runway.

I’m just working to jump straight to V2 at this point and not support both simultaneously.

@MichelRabozee
Copy link
Author

OK, that seems to be the best approach. I am here for testing, but I do not know when I will get back my mowers (usually, the shop prepares them around end of January, but I need anyway to wait March for starting them. So, take your time and enjoy end of year quality time !!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

When branches are created from issues, their pull requests are automatically linked.

2 participants