RxMQTTnet
4.3.56
Une extension du projet MQTTNET, pour transformer les abonnements en observables et publier à partir d'un flux observable.
Utilisez le MQTTnet.MqttFactory avec le MQTTnet.Extensions.External.RxMQTT.Client.MqttFactoryExtensions .
var client = new MqttFactory ( ) . CreateRxMqttClient ( ) ; Utilisez les options du client géré
await client . StartAsync ( options ) . ConfigureAwait ( false ) ; Obtenez un IObservable<MqttApplicationMessageReceivedEventArgs> en vous connectant au client RX et utilisez des extensions pour traiter le message:
var subscription = rxMqttClinet
. Connect ( "RxClientTest/#" )
. SelectPayload ( )
. Subscribe ( Console . WriteLine ) ;Terminer l'abonnement en éliminant l'abonnement.
subscription . Dispose ( ) ; Créez une séquence observable de MqttApplicationMessage S et publiez-les via le client RX.
Observable . Interval ( TimeSpan . FromMilliseconds ( 1000 ) )
. Select ( i => new MqttApplicationMessageBuilder ( )
. WithTopic ( "RxClientTest" )
. WithPayload ( "Time: " + DateTime . Now . ToLongTimeString ( ) )
. WithQualityOfServiceLevel ( MqttQualityOfServiceLevel . ExactlyOnce )
. WithRetainFlag ( )
. Build ( ) )
. PublishOn ( mqttClient )
. Subscribe ( ) ; Utilisez la méthode de publication du client MQTT.