/// <summary> /// Handles reconnecting(or not) whenever a client disconnects. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected override async void MqttClient_Disconnected(object sender, MQTTnet.Client.Disconnecting.MqttClientDisconnectedEventArgs e) { this.UpdateConnectionStatus(); if (!this.ForceDisconnect && this.initialConnectSuccess) { _ = await MqttService.MqttClient.Reconnect(); this.UpdateConnectionStatus(); } this.ForceDisconnect = false; }
private async void MqttClient_Disconnected(object sender, MQTTnet.Client.Disconnecting.MqttClientDisconnectedEventArgs e) { StringBuilder str = new StringBuilder(); str.AppendLine("MQTT Disconnected"); str.AppendLine($"Client connected : {e.ClientWasConnected}"); str.AppendLine($"Exception Message : {e.Exception?.Message}"); WriteLog(str.ToString()); Observable.Timer(TimeSpan.FromSeconds(5)).Subscribe(async(s) => { await XF.Mqtt.MqttService.MqttClient.Reconnect(); }); }
protected abstract void MqttClient_Disconnected(object sender, MQTTnet.Client.Disconnecting.MqttClientDisconnectedEventArgs e);