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

Move to MqttNet 5? #102

Open
mikewindlake opened this issue Jan 3, 2025 · 8 comments
Open

Move to MqttNet 5? #102

mikewindlake opened this issue Jan 3, 2025 · 8 comments

Comments

@mikewindlake
Copy link

I saw that Mqttnet 5 has been released however it would seem that ManagedClient has not and is not something going to happen soon. Do you have any thoughts on how you'd update this library?

From their update guide https://github.com/dotnet/MQTTnet/wiki/Upgrading-guide#managedclient-extension-is-not-available-yet

@ChrisPulman
Copy link
Owner

Hi Mike, I will take a look at what can be achieved and if possible make the necessary updates.

@ChrisPulman
Copy link
Owner

I have released V3.0.0, for the time being I have removed the Managed Client functionality to at least get a version with the basic Client out with V5 support.

Automatic reconnection was the main advantage of the ManagedClient and buffered messages.
It looks like its left to 3rd parties to create something to replace it.

@mikewindlake perhaps you have an idea about what features such a replacement should have. If you do, please feel free to mention them.
I would also welcome a PR to either use as a base, a full-fledged solution and anything in between as a starting point.

The nice thing about Reactive code is that we can build in resilience into the Subscription.

@mikewindlake
Copy link
Author

I'll give it a look over when I get a chance to see what is possible. Hopefully I can get my current project done, I'll take a look at a reconnect mechanism and let you know. I used a reactive pattern through my demo which makes very clean design

@ChrisPulman
Copy link
Owner

I have just released V3.1.0 there is a set of IResilientClient extensions that hopefully will resolve your needs. Let me know how it goes and if anything needs changing, thank you.

@mikewindlake
Copy link
Author

I took a quick look at the code. Looks good, I need to give it a go. I am re-working my demo code now to add some other features so I'll have a chance to update with everything else.

One quick question, does the message storage hook to the existing client retained message handler? (IManagedMqttClientStorage)

@ChrisPulman
Copy link
Owner

IResilientMqttClientStorage has the same members I tried to use new names to ensure separation from the core libraries, just incase there's anything that might conflict. The functionality should be mostly the same.

@ChrisPulman
Copy link
Owner

@mikewindlake any update on the suitability of V3.1.0 I haven't had any projects come through as yet to do full testing, but should get something in the next couple of months.

@mikewindlake
Copy link
Author

@ChrisPulman I haven't gotten to it yet. I got sidetracked on documentation and design reviews. I'm hoping to get to it this week.

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

No branches or pull requests

2 participants