@@ -74,7 +74,7 @@ await GetInitialStatusAsync()
7474 }
7575
7676 _refresh = new System . Timers . Timer ( ) ;
77- _refresh . Elapsed += RefreshAsync ;
77+ _refresh . Elapsed += async ( sender , e ) => await RefreshAsync ( ) ;
7878 _refresh . Interval = _refreshInterval ;
7979 _refresh . Start ( ) ;
8080 }
@@ -136,6 +136,8 @@ protected override async void Mqtt_MqttMsgPublishReceived(MqttApplicationMessage
136136 var desiredCoolResponse = await _client . PostAsync < ThermostatUpdateRequest , Response > ( request )
137137 . ConfigureAwait ( false ) ;
138138 _log . LogInformation ( $ "{ request . Uri } response: ({ desiredCoolResponse . Status . Code } ) { desiredCoolResponse . Status . Message } ") ;
139+
140+ await RefreshAsync ( ) ;
139141 }
140142
141143 break ;
@@ -157,11 +159,13 @@ protected override async void Mqtt_MqttMsgPublishReceived(MqttApplicationMessage
157159 var desiredFanModeResponse = await _client . PostAsync < ThermostatUpdateRequest , Response > ( request )
158160 . ConfigureAwait ( false ) ;
159161 _log . LogInformation ( $ "{ request . Uri } response: ({ desiredFanModeResponse . Status . Code } ) { desiredFanModeResponse . Status . Message } ") ;
162+
163+ await RefreshAsync ( ) ;
160164 }
161165
162166 break ;
163167 case "desiredHeat/set" :
164- if ( int . TryParse ( message , out int desiredHeatValue ) && int . TryParse ( _thermostatStatus [ thermostatId ] . Status [ "desiredHeat " ] , out int currentDesiredCoolValue ) )
168+ if ( int . TryParse ( message , out int desiredHeatValue ) && int . TryParse ( _thermostatStatus [ thermostatId ] . Status [ "desiredCool " ] , out int currentDesiredCoolValue ) )
165169 {
166170 request . Functions = new List < Function >
167171 {
@@ -179,6 +183,8 @@ protected override async void Mqtt_MqttMsgPublishReceived(MqttApplicationMessage
179183 var desiredHeatResponse = await _client . PostAsync < ThermostatUpdateRequest , Response > ( request )
180184 . ConfigureAwait ( false ) ;
181185 _log . LogInformation ( $ "{ request . Uri } response: ({ desiredHeatResponse . Status . Code } ) { desiredHeatResponse . Status . Message } ") ;
186+
187+ await RefreshAsync ( ) ;
182188 }
183189
184190 break ;
@@ -205,6 +211,8 @@ protected override async void Mqtt_MqttMsgPublishReceived(MqttApplicationMessage
205211 var setHoldResponse = await _client . PostAsync < ThermostatUpdateRequest , Response > ( request )
206212 . ConfigureAwait ( false ) ;
207213 _log . LogInformation ( $ "{ request . Uri } response: ({ setHoldResponse . Status . Code } ) { setHoldResponse . Status . Message } ") ;
214+
215+ await RefreshAsync ( ) ;
208216 }
209217 catch ( JsonException ex )
210218 {
@@ -219,6 +227,8 @@ protected override async void Mqtt_MqttMsgPublishReceived(MqttApplicationMessage
219227 var hvacModeResponse = await _client . PostAsync < ThermostatUpdateRequest , Response > ( request )
220228 . ConfigureAwait ( false ) ;
221229 _log . LogInformation ( $ "{ request . Uri } response: ({ hvacModeResponse . Status . Code } ) { hvacModeResponse . Status . Message } ") ;
230+
231+ await RefreshAsync ( ) ;
222232 }
223233
224234 break ;
@@ -236,9 +246,8 @@ protected override async void Mqtt_MqttMsgPublishReceived(MqttApplicationMessage
236246 /// Heartbeat ping. Failure will result in the heartbeat being stopped, which will
237247 /// make any future calls throw an exception as the heartbeat indicator will be disabled.
238248 /// </summary>
239- /// <param name="sender">Event sender.</param>
240- /// <param name="e">Event args.</param>
241- private async void RefreshAsync ( object sender , ElapsedEventArgs e )
249+ /// <returns>>A <see cref="Task"/> representing the asynchronous operation.</returns>
250+ private async Task RefreshAsync ( )
242251 {
243252 // Get current revision status
244253 var summaryRequest = new ThermostatSummaryRequest { Selection = new Selection { SelectionType = "registered" } } ;
0 commit comments