Class MqttDeviceBuilderExtensions
Registers an MQTT device client with AddDevices.
public static class MqttDeviceBuilderExtensions
- Inheritance
-
MqttDeviceBuilderExtensions
- Inherited Members
Methods
AddMqttClient(ProtoDeviceBuilder, string, string, string, string?, Func<ProtoExecutionContext, string, string>?, Action<MqttDeviceOptions>?)
Declares a named device client over MQTT. The topic templates address one device each -
{deviceId} is filled from the id passed to For<TDevice>("id") - so the
device publishes to publishTopic and receives what
subscribeTopic matches (its wildcards included). The registration carries
both as endpoint settings; a client registered directly with AddClient may instead name
publishTopic/subscribeTopic in the address query, and a setting wins over the
address parameter. The broker address resolves through the devices precedence: a setting a
started piece published (a broker container) wins over configuration
(ProtoTest:Devices:Mqtt:Broker), which wins over address;
resolveAddress replaces that rule for a suite that resolves the broker itself.
public static ProtoDeviceClientBuilder AddMqttClient(this ProtoDeviceBuilder devices, string name, string publishTopic, string subscribeTopic, string? address = null, Func<ProtoExecutionContext, string, string>? resolveAddress = null, Action<MqttDeviceOptions>? configure = null)
Parameters
devicesProtoDeviceBuildernamestringpublishTopicstringsubscribeTopicstringaddressstringresolveAddressFunc<ProtoExecutionContext, string, string>configureAction<MqttDeviceOptions>