FluxFlow.Components.Mqtt
0.3.0-alpha.1
See the version list below for details.
dotnet add package FluxFlow.Components.Mqtt --version 0.3.0-alpha.1
NuGet\Install-Package FluxFlow.Components.Mqtt -Version 0.3.0-alpha.1
<PackageReference Include="FluxFlow.Components.Mqtt" Version="0.3.0-alpha.1" />
<PackageVersion Include="FluxFlow.Components.Mqtt" Version="0.3.0-alpha.1" />
<PackageReference Include="FluxFlow.Components.Mqtt" />
paket add FluxFlow.Components.Mqtt --version 0.3.0-alpha.1
#r "nuget: FluxFlow.Components.Mqtt, 0.3.0-alpha.1"
#:package FluxFlow.Components.Mqtt@0.3.0-alpha.1
#addin nuget:?package=FluxFlow.Components.Mqtt&version=0.3.0-alpha.1&prerelease
#tool nuget:?package=FluxFlow.Components.Mqtt&version=0.3.0-alpha.1&prerelease
FluxFlow.Components.Mqtt
MQTT component package for FluxFlow.
This package keeps protocol-specific nodes outside FluxFlow.Engine while
preserving the same runtime registration model.
Nodes
| Node type | Shape | Purpose |
|---|---|---|
mqtt.publish |
Input → Result |
Publishes MqttPublishRequest values through an adapter. |
mqtt.subscribe |
source → Output |
Emits MqttReceivedMessage values from an adapter subscription. |
The package does not include a concrete network client. Applications provide an
adapter through RegisterMqttComponents.
var registry = new RuntimeNodeFactoryRegistry()
.RegisterMqttComponents((context, cancellationToken) =>
ValueTask.FromResult(MqttClientLease.Owned(
new AppMqttClientAdapter(context.Profile))));
Options are static node settings. Requests and messages are per-item data.
MqttClientFactoryContext includes the runtime node address, connection name,
and connection profile. Hosts can use ConnectionName to resolve app-owned
resources instead of placing all broker settings inline.
Return MqttClientLease.Owned(adapter) when the node should dispose the
adapter. Return MqttClientLease.Shared(adapter) when the host owns a shared
client lifetime.
Subscriptions return IMqttSubscription; once SubscribeAsync returns,
startup is considered successful. Each subscription should expose an independent
message stream so shared clients can safely serve multiple nodes.
Adapter Health
Adapters that also implement IMqttClientHealthSource can expose connection
health transitions. mqtt.publish and mqtt.subscribe forward those values as
diagnostics and events named mqtt.connection.healthChanged.
The package does not own reconnect policy. Adapters decide how to connect, reconnect, and report state.
Topic validation
Use MqttTopicValidator.ValidatePublishTopic and
MqttTopicValidator.ValidateSubscriptionFilter when projecting host settings or
building requests.
Publish topics must be present and cannot contain MQTT wildcards. Subscription
filters may use + as a complete level and # only as the final complete
level. Both helpers also reject null characters and oversized encoded topics.
Composition Guidance
Use this package as one part of a host-composed graph. See Component Composition for recommended host boundaries, package boundaries, and extraction timing.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- FluxFlow.Engine (>= 1.0.0)
-
net8.0
- FluxFlow.Engine (>= 1.0.0)
- System.Threading.Tasks.Dataflow (>= 9.0.4)
NuGet packages (3)
Showing the top 3 NuGet packages that depend on FluxFlow.Components.Mqtt:
| Package | Downloads |
|---|---|
|
FluxFlow.Components.Mqtt.PulseMqtt
Concrete MQTT transport adapter for FluxFlow. Maps resolved client configuration, exact message bytes, subscriptions, and broker acknowledgements while the provider-neutral MQTT core owns client policy and workflow behavior. |
|
|
FluxFlow.Components.Mqtt.MqttNet
Concrete MQTT transport adapter for FluxFlow. Maps resolved client configuration, exact message bytes, subscriptions, and broker acknowledgements while the provider-neutral MQTT core owns client policy and workflow behavior. |
|
|
FluxFlow.Components.Mqtt.Composition
Canonical FluxFlow Composition resources and nodes for provider-neutral MQTT client control, publication, subscriptions, and client events. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 8.0.0-rc.1 | 114 | 9/5/2026 |
| 7.1.0 | 193 | 8/9/2026 |
| 7.0.0 | 209 | 8/3/2026 |
| 4.1.4 | 177 | 7/3/2026 |
| 4.1.3 | 238 | 7/2/2026 |
| 4.0.0 | 183 | 6/20/2026 |
| 3.0.0 | 128 | 6/19/2026 |
| 2.0.0 | 147 | 6/18/2026 |
| 1.2.1 | 126 | 6/15/2026 |
| 1.2.0 | 428 | 6/12/2026 |
| 1.1.0 | 127 | 6/5/2026 |
| 1.0.0 | 126 | 6/4/2026 |
| 0.5.0-alpha.1 | 252 | 6/3/2026 |
| 0.4.0-alpha.1 | 80 | 6/2/2026 |
| 0.3.0-alpha.1 | 78 | 6/2/2026 |
| 0.2.2-alpha.1 | 84 | 6/2/2026 |
| 0.2.1-alpha.1 | 135 | 5/31/2026 |
| 0.2.0-alpha.1 | 83 | 5/31/2026 |
| 0.1.0-alpha.1 | 83 | 5/31/2026 |
Adds optional adapter connection health forwarding through MQTT diagnostics and events.