RxMQTTnet
4.3.56
MQTTNETプロジェクトの拡張、サブスクリプションを観測可能性に変換し、観察可能なストリームから公開します。
MQTTnet.Extensions.External.RxMQTT.Client.MqttFactoryExtensionsでMQTTnet.MqttFactoryを使用します。
var client = new MqttFactory ( ) . CreateRxMqttClient ( ) ; マネージドクライアントオプションを使用します
await client . StartAsync ( options ) . ConfigureAwait ( false ) ;rxクライアントに接続し、拡張機能を使用してメッセージを処理することにより、 IObservable<MqttApplicationMessageReceivedEventArgs>を取得します。
var subscription = rxMqttClinet
. Connect ( "RxClientTest/#" )
. SelectPayload ( )
. Subscribe ( Console . WriteLine ) ;サブスクリプションを処分してサブスクリプションを終了します。
subscription . Dispose ( ) ;MqttApplicationMessage sの観測可能なシーケンスを作成し、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 ( ) ; MQTTクライアントパブリッシュメソッドを使用します。