forked from KoenZomers/TadoApi
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathKoenZomers.Tado.Api.xml
More file actions
1902 lines (1902 loc) · 101 KB
/
Copy pathKoenZomers.Tado.Api.xml
File metadata and controls
1902 lines (1902 loc) · 101 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
<?xml version="1.0"?>
<doc>
<assembly>
<name>KoenZomers.Tado.Api</name>
</assembly>
<members>
<member name="T:KoenZomers.Tado.Api.Configuration.Tado">
<summary>
Configuration for the Tado API
</summary>
</member>
<member name="P:KoenZomers.Tado.Api.Configuration.Tado.BaseUrl">
<summary>
Base URL for the Tado API
</summary>
</member>
<member name="P:KoenZomers.Tado.Api.Configuration.Tado.AuthenticationUrl">
<summary>
The URL to use for authentication against the Tado API
</summary>
</member>
<member name="P:KoenZomers.Tado.Api.Configuration.Tado.TokenUrl">
<summary>
The URL to use for retrieving a device code for authentication against the Tado API
</summary>
</member>
<member name="P:KoenZomers.Tado.Api.Configuration.Tado.DefaultApiTimeoutSeconds">
<summary>
Default timeout for HTTP requests in seconds
</summary>
</member>
<member name="P:KoenZomers.Tado.Api.Configuration.Tado.UserAgent">
<summary>
Default user agent for HTTP requests towards Tado. Will be appended with the assembly version number.
</summary>
</member>
<member name="P:KoenZomers.Tado.Api.Configuration.Tado.ClientId">
<summary>
The client ID to use when connecting to the Tado API
</summary>
</member>
<member name="P:KoenZomers.Tado.Api.Configuration.Tado.TadoHomeId">
<summary>
Id of the home as registered with Tado
</summary>
</member>
<member name="T:KoenZomers.Tado.Api.Controllers.Base">
<summary>
Base class for all controllers
</summary>
<param name="loggerFactory">Instance through which to allow logging</param>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Base.#ctor(Microsoft.Extensions.Logging.ILoggerFactory)">
<summary>
Base class for all controllers
</summary>
<param name="loggerFactory">Instance through which to allow logging</param>
</member>
<member name="P:KoenZomers.Tado.Api.Controllers.Base.Logger">
<summary>
Instance through which to perform logging
</summary>
</member>
<member name="T:KoenZomers.Tado.Api.Controllers.Http">
<summary>
Controller wich allows to perform HTTP calls
</summary>
</member>
<member name="P:KoenZomers.Tado.Api.Controllers.Http.DefaultApiTimeoutSeconds">
<summary>
Default timeout for HTTP requests in seconds
</summary>
</member>
<member name="F:KoenZomers.Tado.Api.Controllers.Http._tadoHttpClient">
<summary>
HttpClient to use for network communications towards the Tado API
</summary>
</member>
<member name="F:KoenZomers.Tado.Api.Controllers.Http._configuration">
<summary>
Access to the application configuration
</summary>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Http.#ctor(System.Net.Http.IHttpClientFactory,Microsoft.Extensions.Options.IOptionsMonitor{KoenZomers.Tado.Api.Configuration.Tado},Microsoft.Extensions.Logging.ILoggerFactory)">
<summary>
Instantiate the HTTP controller
</summary>
<param name="httpClientFactory">HttpClientFactory to use to retrieve a HttpClient from</param>
<param name="configuration">The application configuration</param>
<param name="loggerFactory">LoggerFactory to use to retrieve Logger instance from</param>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Http.PostMessageGetResponse``1(System.Uri,KoenZomers.Tado.Api.Helpers.QueryStringBuilder,System.Threading.CancellationToken,System.Nullable{System.Int16},System.Nullable{System.Int16},KoenZomers.Tado.Api.Models.Authentication.Token)">
<summary>
Sends a HTTP POST to the provided uri
</summary>
<param name="queryBuilder">The querystring parameters to send in the POST body</param>
<typeparam name="T">Type of object to try to parse the response JSON into</typeparam>
<param name="uri">Uri of the webservice to send the message to</param>
<param name="cancellationToken">Cancellation token will be used to cancel the request and exit the retry loop.</param>
<param name="retryIntervalIfFailed">If provided, in case of a non 2xx response, it will keep retrying the call. Optional, if not provided, it will not retry and throw a <see cref="T:KoenZomers.Tado.Api.Exceptions.RequestFailedException"/> Exception if it fails.</param>
<param name="maximumRetries">If provided, in case of a non 2xx response, it will retry the call at most the amount configured through this parameter. Optional, if not provided, it will endlessly retry. If <paramref name="retryIntervalIfFailed"/> has not been set, this is being ignored.</param>
<param name="token">Optional token. If provided, it will be used to authenticate the request. If omitted, it will send the request anonymously.</param>
<returns>Object of type T with the parsed response</returns>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestThrottledException">Thrown when the request is getting throttled</exception>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestFailedException">Thrown when the request has failed.</exception>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Http.GetMessageReturnResponse``1(System.Uri,System.Threading.CancellationToken,System.Nullable{System.Net.HttpStatusCode},KoenZomers.Tado.Api.Models.Authentication.Token)">
<summary>
Sends a message to the Tado API and returns the provided object of type T with the response
</summary>
<typeparam name="T">Object type of the expected response</typeparam>
<param name="uri">Uri of the webservice to send the message to</param>
<param name="cancellationToken">Cancellation token will be used to cancel the request.</param>
<param name="expectedHttpStatusCode">The expected Http result status code. Optional. If provided and the webservice returns a different response, the return type will be NULL to indicate failure.</param>
<param name="token">Optional token. If provided, it will be used to authenticate the request. If omitted, it will send the request anonymously.</param>
<returns>Typed entity with the result from the webservice</returns>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestThrottledException">Thrown when the request is getting throttled</exception>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestFailedException">Thrown when the request has failed.</exception>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Http.SendMessageReturnResponse``1(System.String,System.Net.Http.HttpMethod,System.Uri,System.Threading.CancellationToken,System.Nullable{System.Net.HttpStatusCode},KoenZomers.Tado.Api.Models.Authentication.Token)">
<summary>
Sends a message to the Tado API and returns the provided object of type T with the response
</summary>
<typeparam name="T">Object type of the expected response</typeparam>
<param name="uri">Uri of the webservice to send the message to</param>
<param name="bodyText">Text to send to the webservice in the body</param>
<param name="httpMethod">Http Method to use to connect to the webservice</param>
<param name="cancellationToken">Cancellation token to cancel the request</param>
<param name="expectedHttpStatusCode">The expected Http result status code. Optional. If provided and the webservice returns a different response, the return type will be NULL to indicate failure.</param>
<param name="token">Optional token. If provided, it will be used to authenticate the request. If omitted, it will send the request anonymously.</param>
<returns>Typed entity with the result from the webservice</returns>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestThrottledException">Thrown when the request is getting throttled</exception>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestFailedException">Thrown when the request has failed.</exception>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Http.SendMessage(System.String,System.Net.Http.HttpMethod,System.Uri,System.Threading.CancellationToken,System.Nullable{System.Net.HttpStatusCode},KoenZomers.Tado.Api.Models.Authentication.Token)">
<summary>
Sends a message to the Tado API without looking at the response
</summary>
<param name="uri">Uri of the webservice to send the message to</param>
<param name="bodyText">Text to send to the webservice in the body</param>
<param name="httpMethod">Http Method to use to connect to the webservice</param>
<param name="cancellationToken">Cancellation token to cancel the request</param>
<param name="expectedHttpStatusCode">The expected Http result status code. Optional. If provided and the webservice returns a different response, the return type will be false to indicate failure.</param>
<param name="token">Optional token. If provided, it will be used to authenticate the request. If omitted, it will send the request anonymously.</param>
<returns>Boolean indicating if the request was successful</returns>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestThrottledException">Thrown when the request is getting throttled</exception>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestFailedException">Thrown when the request has failed.</exception>
</member>
<member name="T:KoenZomers.Tado.Api.Controllers.Tado">
<summary>
Initiates a new session to the Tado API
</summary>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Tado.#ctor(KoenZomers.Tado.Api.Controllers.Http,Microsoft.Extensions.Options.IOptionsMonitor{KoenZomers.Tado.Api.Configuration.Tado},Microsoft.Extensions.Logging.ILoggerFactory)">
<summary>
Initiates a new session to the Tado API
</summary>
</member>
<member name="P:KoenZomers.Tado.Api.Controllers.Tado.TadoApiBaseUrl">
<summary>
Base Uri with which all Tado API requests start
</summary>
</member>
<member name="P:KoenZomers.Tado.Api.Controllers.Tado.TadoApiAuthUrl">
<summary>
Tado API Uri to authenticate against
</summary>
</member>
<member name="P:KoenZomers.Tado.Api.Controllers.Tado.TadoTokenUrl">
<summary>
Tado API Uri to retrieve a token from
</summary>
</member>
<member name="P:KoenZomers.Tado.Api.Controllers.Tado.ClientId">
<summary>
Tado API Client Id to use for the OAuth token
</summary>
</member>
<member name="P:KoenZomers.Tado.Api.Controllers.Tado.IsAuthenticated">
<summary>
Boolean indicating if the current session is authenticated
</summary>
</member>
<member name="F:KoenZomers.Tado.Api.Controllers.Tado._token">
<summary>
The current token used to authenticate against the Tado API
</summary>
</member>
<member name="F:KoenZomers.Tado.Api.Controllers.Tado.TokenChanged">
<summary>
Event to receive the new token when it has been refreshed
</summary>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Tado.Dispose">
<summary>
Clean up
</summary>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Tado.GetDeviceCodeAuthentication(System.Threading.CancellationToken)">
<summary>
Initiates an authentication session by requesting a device authentication url which can be used to authenticate to Tado
</summary>
<returns>Instance of <see cref="T:KoenZomers.Tado.Api.Models.Authentication.DeviceAuthorizationResponse"/> containing the information to perform the device authentication or NULL if unable to initiate authentication session</returns>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Tado.WaitForDeviceCodeAuthenticationToComplete(KoenZomers.Tado.Api.Models.Authentication.DeviceAuthorizationResponse,System.Threading.CancellationToken)">
<summary>
Waits for the provided device authorization flow to be completed by the user in a browser
</summary>
<param name="deviceAuthorization">The device authorization flow session to wait for to be completed</param>
<param name="cancellationToken">Optional: Cancellation token to cancel the request</param>
<returns>TokenResponse containing the token to access to Tado API or NULL if it failed to complete</returns>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Tado.GetAccessTokenWithRefreshToken(System.String,System.Threading.CancellationToken)">
<summary>
Retrieves an access token using a refresh token
</summary>
<param name="refreshToken">Refresh token</param>
<param name="cancellationToken">Optional: Cancellation token to cancel the request</param>
<returns>Access token or NULL if unable to retrieve an access token</returns>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Tado.Authenticate(KoenZomers.Tado.Api.Models.Authentication.Token)">
<summary>
Authenticates this session based on the passed in token
</summary>
<param name="token">Token to use to authenticate</param>
<returns>True if authentication successful, false if it failed</returns>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Tado.GetMe(System.Threading.CancellationToken)">
<summary>
Returns information about the user currently connected through the Tado API
</summary>
<param name="cancellationToken">Optional: Cancellation token to cancel the request</param>
<returns>Information about the current user</returns>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestThrottledException">Thrown when the request is getting throttled</exception>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestFailedException">Thrown when the request has failed.</exception>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Tado.GetZones(System.Int32,System.Threading.CancellationToken)">
<summary>
Returns the zones configured in the home with the provided Id from the Tado API
</summary>
<param name="homeId">Id of the home to query</param>
<param name="cancellationToken">Optional: Cancellation token to cancel the request</param>
<returns>The configured zones</returns>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestThrottledException">Thrown when the request is getting throttled</exception>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestFailedException">Thrown when the request has failed.</exception>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Tado.GetDevices(System.Int32,System.Threading.CancellationToken)">
<summary>
Returns the devices configured in the home with the provided Id from the Tado API
</summary>
<param name="homeId">Id of the home to query</param>
<param name="cancellationToken">Optional: Cancellation token to cancel the request</param>
<returns>The configured devices</returns>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestThrottledException">Thrown when the request is getting throttled</exception>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestFailedException">Thrown when the request has failed.</exception>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Tado.GetMobileDevices(System.Int32,System.Threading.CancellationToken)">
<summary>
Returns the mobile devices connected to the home with the provided Id from the Tado API
</summary>
<param name="homeId">Id of the home to query</param>
<param name="cancellationToken">Optional: Cancellation token to cancel the request</param>
<returns>The connected mobile devices</returns>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestThrottledException">Thrown when the request is getting throttled</exception>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestFailedException">Thrown when the request has failed.</exception>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Tado.GetMobileDeviceSettings(System.Int32,System.Int16,System.Threading.CancellationToken)">
<summary>
Returns the settings of a mobile device connected to the home with the provided Id from the Tado API
</summary>
<param name="homeId">Id of the home to query</param>
<param name="mobileDeviceId">Id of the mobile device to query</param>
<param name="cancellationToken">Optional: Cancellation token to cancel the request</param>
<returns>The settings of the connected mobile device</returns>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Tado.GetInstallations(System.Int32,System.Int16,System.Threading.CancellationToken)">
<summary>
Returns the installations in the home with the provided Id from the Tado API
</summary>
<param name="homeId">Id of the home to query</param>
<param name="cancellationToken">Optional: Cancellation token to cancel the request</param>
<returns>The installations</returns>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestThrottledException">Thrown when the request is getting throttled</exception>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestFailedException">Thrown when the request has failed.</exception>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Tado.GetHomeState(System.Int32,System.Threading.CancellationToken)">
<summary>
Returns the state of the home with the provided Id from the Tado API
</summary>
<param name="homeId">Id of the home to query</param>
<param name="cancellationToken">Optional: Cancellation token to cancel the request</param>
<returns>The state of the home</returns>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestThrottledException">Thrown when the request is getting throttled</exception>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestFailedException">Thrown when the request has failed.</exception>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Tado.GetZoneState(System.Int32,System.Int16,System.Threading.CancellationToken)">
<summary>
Returns the state of a zone in the home with the provided Id from the Tado API
</summary>
<param name="homeId">Id of the home to query</param>
<param name="zoneId">Id of the zone to query</param>
<param name="cancellationToken">Optional: Cancellation token to cancel the request</param>
<returns>The state of the zone</returns>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestThrottledException">Thrown when the request is getting throttled</exception>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestFailedException">Thrown when the request has failed.</exception>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Tado.GetSummarizedZoneState(System.Int32,System.Int16,System.Threading.CancellationToken)">
<summary>
Returns the summarized state of a zone in the home with the provided Id from the Tado API
</summary>
<param name="homeId">Id of the home to query</param>
<param name="zoneId">Id of the zone to query</param>
<param name="cancellationToken">Optional: Cancellation token to cancel the request</param>
<returns>The summarized state of the zone</returns>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestThrottledException">Thrown when the request is getting throttled</exception>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestFailedException">Thrown when the request has failed.</exception>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Tado.GetWeather(System.Int32,System.Threading.CancellationToken)">
<summary>
Returns the current weather at the home with the provided Id from the Tado API
</summary>
<param name="homeId">Id of the home to query</param>
<param name="cancellationToken">Optional: Cancellation token to cancel the request</param>
<returns>The current weater at the home</returns>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestThrottledException">Thrown when the request is getting throttled</exception>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestFailedException">Thrown when the request has failed.</exception>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Tado.GetHome(System.Int32,System.Threading.CancellationToken)">
<summary>
Returns the home with the provided Id from the Tado API
</summary>
<param name="homeId">Id of the home to query</param>
<param name="cancellationToken">Optional: Cancellation token to cancel the request</param>
<returns>The home details</returns>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestThrottledException">Thrown when the request is getting throttled</exception>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestFailedException">Thrown when the request has failed.</exception>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Tado.GetUsers(System.Int32,System.Threading.CancellationToken)">
<summary>
Returns the users with access to the home with the provided Id from the Tado API
</summary>
<param name="homeId">Id of the home to query</param>
<param name="cancellationToken">Optional: Cancellation token to cancel the request</param>
<returns>The users with access</returns>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestThrottledException">Thrown when the request is getting throttled</exception>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestFailedException">Thrown when the request has failed.</exception>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Tado.GetZoneCapabilities(System.Int32,System.Int32,System.Threading.CancellationToken)">
<summary>
Returns the capabilities of a zone in the home with the provided Id from the Tado API
</summary>
<param name="homeId">Id of the home to query</param>
<param name="zoneId">Id of the zone to query</param>
<param name="cancellationToken">Optional: Cancellation token to cancel the request</param>
<returns>The capabilities of the zone</returns>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestThrottledException">Thrown when the request is getting throttled</exception>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestFailedException">Thrown when the request has failed.</exception>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Tado.GetEarlyStart(System.Int32,System.Int32,System.Threading.CancellationToken)">
<summary>
Returns the early start of a zone in the home with the provided Id from the Tado API
</summary>
<param name="homeId">Id of the home to query</param>
<param name="zoneId">Id of the zone to query</param>
<returns>The early start setting of the zone</returns>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestThrottledException">Thrown when the request is getting throttled</exception>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestFailedException">Thrown when the request has failed.</exception>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Tado.GetZoneTemperatureOffset(System.String,System.Threading.CancellationToken)">
<summary>
Returns the temperature offset set for a specific device from the Tado API
</summary>
<param name="deviceId">Id of the device to query</param>
<param name="cancellationToken">Optional: Cancellation token to cancel the request</param>
<returns>The zone temperature offset in Celcius and Fahrenheit</returns>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestThrottledException">Thrown when the request is getting throttled</exception>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestFailedException">Thrown when the request has failed.</exception>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Tado.GetZoneTemperatureOffset(KoenZomers.Tado.Api.Models.Device,System.Threading.CancellationToken)">
<summary>
Returns the temperature offset set for a specific device from the Tado API
</summary>
<param name="device">The device to query</param>
<param name="cancellationToken">Optional: Cancellation token to cancel the request</param>
<returns>The zone temperature offset in Celcius and Fahrenheit</returns>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestThrottledException">Thrown when the request is getting throttled</exception>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestFailedException">Thrown when the request has failed.</exception>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Tado.GetZoneTemperatureOffset(KoenZomers.Tado.Api.Models.Zone,System.Threading.CancellationToken)">
<summary>
Returns the temperature offset set for a specific zone from the Tado API
</summary>
<param name="zone">The zone to query</param>
<returns>The zone temperature offset in Celcius and Fahrenheit</returns>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestThrottledException">Thrown when the request is getting throttled</exception>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestFailedException">Thrown when the request has failed.</exception>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Tado.SetOpenWindow(System.Int32,System.Int32,System.Threading.CancellationToken)">
<summary>
Sets the specified zone to be in a "open window" state, if an open window is detected.
Check if an open window is detected by Tado by looking at <see cref="P:KoenZomers.Tado.Api.Models.State.OpenWindowDetected"/>.
</summary>
<param name="homeId">Id of the home to set the "open window" state for</param>
<param name="zoneId">Id of the zone to set the "open window" state for</param>
<param name="cancellationToken">Optional: Cancellation token to cancel the request</param>
<returns>Boolean indicating if the request was successful</returns>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestThrottledException">Thrown when the request is getting throttled</exception>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestFailedException">Thrown when the request has failed.</exception>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Tado.ResetOpenWindow(System.Int32,System.Int32,System.Threading.CancellationToken)">
<summary>
Resets the specified zone back to a "closed window" state, if it is currently in a "open window" state
</summary>
<param name="homeId">Id of the home to reset the "open window" state for</param>
<param name="zoneId">Id of the zone to reset the "open window" state for</param>
<param name="cancellationToken">Optional: Cancellation token to cancel the request</param>
<returns>Boolean indicating if the request was successful</returns>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestThrottledException">Thrown when the request is getting throttled</exception>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestFailedException">Thrown when the request has failed.</exception>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Tado.SetHomePresence(System.Int32,KoenZomers.Tado.Api.Enums.HomePresence,System.Threading.CancellationToken)">
<summary>
Sets the Home Presence mode manually, regardless of current geofence status of home devices.
</summary>
<param name="homeId">Id of the home to set the home presence for</param>
<param name="presence">Presence to set for the home</param>
<param name="cancellationToken">Optional: Cancellation token to cancel the request</param>
<returns>Boolean indicating if the request was successful</returns>
<exception cref="T:System.ArgumentOutOfRangeException">Thrown when an invalid enum value is used</exception>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestThrottledException">Thrown when the request is getting throttled</exception>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestFailedException">Thrown when the request has failed.</exception>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Tado.SetEarlyStart(System.Int32,System.Int32,System.Boolean,System.Threading.CancellationToken)">
<summary>
Sets the EarlyStart mode of a zone in the home with the provided Id through the Tado API
</summary>
<param name="homeId">Id of the home to switch the heating off in</param>
<param name="zoneId">Id of the zone to switch the heating off in</param>
<param name="enabled">True to enable EarlyStart or False to disable it</param>
<param name="cancellationToken">Optional: Cancellation token to cancel the request</param>
<returns>The new EarlyStart mode of the zone</returns>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestThrottledException">Thrown when the request is getting throttled</exception>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestFailedException">Thrown when the request has failed.</exception>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Tado.SayHi(System.String,System.Threading.CancellationToken)">
<summary>
Shows Hi on the Tado device to identify it
</summary>
<param name="deviceId">Id / serial number of the Tado device</param>
<param name="cancellationToken">Optional: Cancellation token to cancel the request</param>
<returns>Boolean indicating if the request was successful</returns>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestThrottledException">Thrown when the request is getting throttled</exception>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestFailedException">Thrown when the request has failed.</exception>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Tado.SetDeviceChildLock(KoenZomers.Tado.Api.Models.Device,System.Boolean,System.Threading.CancellationToken)">
<summary>
Turns the child lock on or off on the provided Tado device
</summary>
<param name="device">The Tado device to set the childlock for</param>
<param name="enableChildLock">Boolean indicating if the childlock should be enabled (true) or disabled (false)</param>
<param name="cancellationToken">Optional: Cancellation token to cancel the request</param>
<returns>Boolean indicating if the request was successful</returns>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestThrottledException">Thrown when the request is getting throttled</exception>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestFailedException">Thrown when the request has failed.</exception>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Tado.SetDeviceChildLock(System.String,System.Boolean,System.Threading.CancellationToken)">
<summary>
Turns the child lock on or off on the Tado device with the provided Id
</summary>
<param name="deviceId">Id of the Tado device to set the childlock for</param>
<param name="enableChildLock">Boolean indicating if the childlock should be enabled (true) or disabled (false)</param>
<param name="cancellationToken">Optional: Cancellation token to cancel the request</param>
<returns>Boolean indicating if the request was successful</returns>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestThrottledException">Thrown when the request is getting throttled</exception>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestFailedException">Thrown when the request has failed.</exception>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Tado.SetZoneTemperatureOffsetCelcius(System.String,System.Double,System.Threading.CancellationToken)">
<summary>
Sets the temperature offset in Celcius of a specific zone
</summary>
<param name="deviceId">Id of the Tado device in the zone to set the offset for</param>
<param name="temperature">Temperature in Celcius to set the offset to</param>
<param name="cancellationToken">Optional: Cancellation token to cancel the request</param>
<returns>Boolean indicating if the request was successful</returns>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestThrottledException">Thrown when the request is getting throttled</exception>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestFailedException">Thrown when the request has failed.</exception>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Tado.SetHeatingTemperatureCelsius(System.Int32,System.Int32,System.Double,System.Threading.CancellationToken)">
<summary>
Sets the temperature in a zone in the home with the provided Id through the Tado API
</summary>
<param name="homeId">Id of the home to set the temperature of</param>
<param name="zoneId">Id of the zone to set the temperature of</param>
<param name="temperature">Temperature to set the zone to</param>
<param name="cancellationToken">Optional: Cancellation token to cancel the request</param>
<returns>The summarized new state of the zone</returns>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestThrottledException">Thrown when the request is getting throttled</exception>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestFailedException">Thrown when the request has failed.</exception>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Tado.SetHeatingTemperatureCelcius(System.Int32,System.Int32,System.Double,KoenZomers.Tado.Api.Enums.DurationModes,System.Nullable{System.TimeSpan},System.Threading.CancellationToken)">
<summary>
Sets the temperature in a zone in the home with the provided Id through the Tado API for the duration as specified
</summary>
<param name="homeId">Id of the home to set the temperature of</param>
<param name="zoneId">Id of the zone to set the temperature of</param>
<param name="temperature">Temperature to set the zone to</param>
<param name="durationMode">Defines the duration for which the heating will be switched to the provided temperature</param>
<param name="timer">Only applicable if for durationMode Timer has been chosen. In that case it allows providing for how long the duration should be.</param>
<returns>The summarized new state of the zone</returns>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestThrottledException">Thrown when the request is getting throttled</exception>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestFailedException">Thrown when the request has failed.</exception>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Tado.SetHotWaterTemperatureCelcius(System.Int32,System.Double,KoenZomers.Tado.Api.Enums.DurationModes,System.Nullable{System.TimeSpan},System.Threading.CancellationToken)">
<summary>
Sets the hot water temperature in the home with the provided Id through the Tado API for the duration as specified
</summary>
<param name="homeId">Id of the home to set the temperature of</param>
<param name="temperatureCelcius">Temperature in Celcius to set the zone to</param>
<param name="durationMode">Defines the duration for which the heating will be switched to the provided temperature</param>
<param name="timer">Only applicable if for durationMode Timer has been chosen. In that case it allows providing for how long the duration should be.</param>
<param name="cancellationToken">Optional: Cancellation token to cancel the request</param>
<returns>The summarized new state of the zone</returns>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestThrottledException">Thrown when the request is getting throttled</exception>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestFailedException">Thrown when the request has failed.</exception>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Tado.SetHotWaterTemperatureFahrenheit(System.Int32,System.Double,KoenZomers.Tado.Api.Enums.DurationModes,System.Nullable{System.TimeSpan},System.Threading.CancellationToken)">
<summary>
Sets the hot water temperature in the home with the provided Id through the Tado API for the duration as specified
</summary>
<param name="homeId">Id of the home to set the temperature of</param>
<param name="temperatureFahrenheit">Temperature in Fahrenheit to set the zone to</param>
<param name="durationMode">Defines the duration for which the heating will be switched to the provided temperature</param>
<param name="timer">Only applicable if for durationMode Timer has been chosen. In that case it allows providing for how long the duration should be.</param>
<param name="cancellationToken">Optional: Cancellation token to cancel the request</param>
<returns>The summarized new state of the zone</returns>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestThrottledException">Thrown when the request is getting throttled</exception>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestFailedException">Thrown when the request has failed.</exception>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Tado.SetTemperature(System.Int32,System.Int32,System.Nullable{System.Double},System.Nullable{System.Double},KoenZomers.Tado.Api.Enums.DeviceTypes,KoenZomers.Tado.Api.Enums.DurationModes,System.Nullable{System.TimeSpan},System.Threading.CancellationToken)">
<summary>
Sets the temperature in a zone in the home with the provided Id through the Tado API for the duration as specified
</summary>
<param name="homeId">Id of the home to set the temperature of</param>
<param name="zoneId">Id of the zone to set the temperature of</param>
<param name="temperatureCelcius">Temperature in Celcius to set the zone to. Provide NULL for both temperatureCelcius and temperatureFahrenheit to switch the device off.</param>
<param name="temperatureFahrenheit">Temperature in Fahrenheit to set the zone to. Provide NULL for both temperatureCelcius and temperatureFahrenheit to switch the device off.</param>
<param name="durationMode">Defines the duration for which the heating will be switched to the provided temperature</param>
<param name="timer">Only applicable if for durationMode Timer has been chosen. In that case it allows providing for how long the duration should be.</param>
<param name="deviceType">Type of Tado device to switch on</param>
<param name="cancellationToken">Optional: Cancellation token to cancel the request</param>
<returns>The summarized new state of the zone</returns>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestThrottledException">Thrown when the request is getting throttled</exception>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestFailedException">Thrown when the request has failed.</exception>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Tado.SetHeatingTemperatureFahrenheit(System.Int32,System.Int32,System.Double,System.Threading.CancellationToken)">
<summary>
Sets the temperature in a zone in the home with the provided Id through the Tado API
</summary>
<param name="homeId">Id of the home to set the temperature of</param>
<param name="zoneId">Id of the zone to set the temperature of</param>
<param name="temperature">Temperature to set the zone to</param>
<param name="cancellationToken">Optional: Cancellation token to cancel the request</param>
<returns>The summarized new state of the zone</returns>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestThrottledException">Thrown when the request is getting throttled</exception>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestFailedException">Thrown when the request has failed.</exception>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Tado.SetHeatingTemperatureFahrenheit(System.Int32,System.Int32,System.Double,KoenZomers.Tado.Api.Enums.DurationModes,System.Nullable{System.TimeSpan},System.Threading.CancellationToken)">
<summary>
Sets the temperature in a zone in the home with the provided Id through the Tado API for the duration as specified
</summary>
<param name="homeId">Id of the home to set the temperature of</param>
<param name="zoneId">Id of the zone to set the temperature of</param>
<param name="temperature">Temperature to set the zone to</param>
<param name="durationMode">Defines the duration for which the heating will be switched to the provided temperature</param>
<param name="timer">Only applicable if for durationMode Timer has been chosen. In that case it allows providing for how long the duration should be.</param>
<param name="cancellationToken">Optional: Cancellation token to cancel the request</param>
<returns>The summarized new state of the zone</returns>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestThrottledException">Thrown when the request is getting throttled</exception>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestFailedException">Thrown when the request has failed.</exception>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Tado.SwitchHeatingOff(System.Int32,System.Int32,System.Threading.CancellationToken)">
<summary>
Switches the heating off in a zone in the home with the provided Id through the Tado API. Use SetTemperatureCelsius or SetTemperatureFahrenheit to switch the heating on again.
</summary>
<param name="homeId">Id of the home to switch the heating off in</param>
<param name="zoneId">Id of the zone to switch the heating off in</param>
<param name="cancellationToken">Optional: Cancellation token to cancel the request</param>
<returns>The summarized new state of the zone</returns>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestThrottledException">Thrown when the request is getting throttled</exception>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestFailedException">Thrown when the request has failed.</exception>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Tado.SwitchHeatingOff(System.Int32,System.Int32,KoenZomers.Tado.Api.Enums.DurationModes,System.Nullable{System.TimeSpan},System.Threading.CancellationToken)">
<summary>
Switches the heating off in a zone in the home with the provided Id through the Tado API for the duration as specified
</summary>
<param name="homeId">Id of the home to switch the heating off in</param>
<param name="zoneId">Id of the zone to switch the heating off in</param>
<param name="durationMode">Defines the duration for which the temperature will remain switched off</param>
<param name="timer">Only applicable if for durationMode Timer has been chosen. In that case it allows providing for how long the duration should be.</param>
<param name="cancellationToken">Optional: Cancellation token to cancel the request</param>
<returns>The summarized new state of the zone</returns>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestThrottledException">Thrown when the request is getting throttled</exception>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestFailedException">Thrown when the request has failed.</exception>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Tado.SwitchHotWaterOff(System.Int32,KoenZomers.Tado.Api.Enums.DurationModes,System.Nullable{System.TimeSpan},System.Threading.CancellationToken)">
<summary>
Switches the hot water off in the home with the provided Id through the Tado API for the duration as specified
</summary>
<param name="homeId">Id of the home to switch the heating off in</param>
<param name="durationMode">Defines the duration for which the temperature will remain switched off</param>
<param name="timer">Only applicable if for durationMode Timer has been chosen. In that case it allows providing for how long the duration should be.</param>
<param name="cancellationToken">Optional: Cancellation token to cancel the request</param>
<returns>The summarized new state of the zone</returns>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestThrottledException">Thrown when the request is getting throttled</exception>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestFailedException">Thrown when the request has failed.</exception>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Tado.SetZoneTemperatureOffsetCelcius(KoenZomers.Tado.Api.Models.Device,System.Double,System.Threading.CancellationToken)">
<summary>
Sets the temperature offset in Celcius of a specific zone
</summary>
<param name="device">The Tado device in the zone to set the offset for</param>
<param name="temperature">Temperature in Celcius to set the offset to</param>
<param name="cancellationToken">Optional: Cancellation token to cancel the request</param>
<returns>Boolean indicating if the request was successful</returns>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestThrottledException">Thrown when the request is getting throttled</exception>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestFailedException">Thrown when the request has failed.</exception>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Tado.SetZoneTemperatureOffsetCelcius(KoenZomers.Tado.Api.Models.Zone,System.Double,System.Threading.CancellationToken)">
<summary>
Sets the temperature offset in Celcius of a specific room
</summary>
<param name="zone">The Tado zone to set the offset for</param>
<param name="temperature">Temperature in Celcius to set the offset to</param>
<param name="cancellationToken">Optional: Cancellation token to cancel the request</param>
<returns>Boolean indicating if the request was successful</returns>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestThrottledException">Thrown when the request is getting throttled</exception>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestFailedException">Thrown when the request has failed.</exception>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Tado.SetZoneTemperatureOffsetFahrenheit(System.String,System.Double,System.Threading.CancellationToken)">
<summary>
Sets the temperature offset in Fahrenheit of a specific zone
</summary>
<param name="deviceId">Id of the Tado device in the zone to set the offset for</param>
<param name="temperature">Temperature in Fahrenheit to set the offset to</param>
<param name="cancellationToken">Optional: Cancellation token to cancel the request</param>
<returns>Boolean indicating if the request was successful</returns>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestThrottledException">Thrown when the request is getting throttled</exception>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestFailedException">Thrown when the request has failed.</exception>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Tado.SetZoneTemperatureOffsetFahrenheit(KoenZomers.Tado.Api.Models.Device,System.Double,System.Threading.CancellationToken)">
<summary>
Sets the temperature offset in Fahrenheit of a specific zone
</summary>
<param name="device">The Tado device in the zone to set the offset for</param>
<param name="temperature">Temperature in Fahrenheit to set the offset to</param>
<param name="cancellationToken">Optional: Cancellation token to cancel the request</param>
<returns>Boolean indicating if the request was successful</returns>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestThrottledException">Thrown when the request is getting throttled</exception>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestFailedException">Thrown when the request has failed.</exception>
</member>
<member name="M:KoenZomers.Tado.Api.Controllers.Tado.SetZoneTemperatureOffsetFahrenheit(KoenZomers.Tado.Api.Models.Zone,System.Double,System.Threading.CancellationToken)">
<summary>
Sets the temperature offset in Fahrenheit of a specific room
</summary>
<param name="zone">The Tado zone to set the offset for</param>
<param name="temperature">Temperature in Fahrenheit to set the offset to</param>
<param name="cancellationToken">Optional: Cancellation token to cancel the request</param>
<returns>Boolean indicating if the request was successful</returns>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestThrottledException">Thrown when the request is getting throttled</exception>
<exception cref="T:KoenZomers.Tado.Api.Exceptions.RequestFailedException">Thrown when the request has failed.</exception>
</member>
<member name="T:KoenZomers.Tado.Api.Converters.DeviceTypeConverter">
<summary>
Converts the Tado device type returned by the Tado API to the DeviceTypes enumerator in this project
</summary>
</member>
<member name="T:KoenZomers.Tado.Api.Converters.DurationModeConverter">
<summary>
Converts the duration mode type returned by the Tado API to the DurationModes enumerator in this project
</summary>
</member>
<member name="T:KoenZomers.Tado.Api.Converters.PowerStatesConverter">
<summary>
Converts the power state returned by the Tado API to the PowerStates enumerator in this project
</summary>
</member>
<member name="T:KoenZomers.Tado.Api.Enums.DeviceTypes">
<summary>
Defines the types of Tado devices that can be switched
</summary>
</member>
<member name="F:KoenZomers.Tado.Api.Enums.DeviceTypes.Heating">
<summary>
Heating
</summary>
</member>
<member name="F:KoenZomers.Tado.Api.Enums.DeviceTypes.HotWater">
<summary>
Hot water
</summary>
</member>
<member name="T:KoenZomers.Tado.Api.Enums.DurationModes">
<summary>
Defines the modes of the duration of changing a temperature
</summary>
</member>
<member name="F:KoenZomers.Tado.Api.Enums.DurationModes.UntilNextTimedEvent">
<summary>
Keep the setting until the next scheduled event starts
</summary>
</member>
<member name="F:KoenZomers.Tado.Api.Enums.DurationModes.Timer">
<summary>
Keep the setting for a specific duration
</summary>
</member>
<member name="F:KoenZomers.Tado.Api.Enums.DurationModes.UntilNextManualChange">
<summary>
Keep the setting until the user makes another change
</summary>
</member>
<member name="T:KoenZomers.Tado.Api.Enums.HomePresence">
<summary>
Defines the possible states home presence can be in
</summary>
</member>
<member name="F:KoenZomers.Tado.Api.Enums.HomePresence.Home">
<summary>
At least someone is home
</summary>
</member>
<member name="F:KoenZomers.Tado.Api.Enums.HomePresence.Away">
<summary>
Everyone is away
</summary>
</member>
<member name="T:KoenZomers.Tado.Api.Enums.PowerStates">
<summary>
Defines the power state a Tado device can be in
</summary>
</member>
<member name="F:KoenZomers.Tado.Api.Enums.PowerStates.On">
<summary>
Device is ON
</summary>
</member>
<member name="F:KoenZomers.Tado.Api.Enums.PowerStates.Off">
<summary>
Device is OFF
</summary>
</member>
<member name="T:KoenZomers.Tado.Api.Enums.TerminationTypes2">
<summary>
Defines the types to which a Tado device can be set that define the end of the current state of the device
</summary>
</member>
<member name="F:KoenZomers.Tado.Api.Enums.TerminationTypes2.Manual">
<summary>
The state will not change unless the device gets explicit instructions to do so
</summary>
</member>
<member name="F:KoenZomers.Tado.Api.Enums.TerminationTypes2.NextScheduledEvent">
<summary>
The state of the device will change at the next scheduled event for the device
</summary>
</member>
<member name="F:KoenZomers.Tado.Api.Enums.TerminationTypes2.Timer">
<summary>
The state of the device will change after a preset amount of time has elapsed
</summary>
</member>
<member name="T:KoenZomers.Tado.Api.Exceptions.AuthenticationExpiredException">
<summary>
Exception thrown when the authentication session expired
</summary>
</member>
<member name="T:KoenZomers.Tado.Api.Exceptions.RequestFailedException">
<summary>
Exception thrown when a request failed
</summary>
</member>
<member name="P:KoenZomers.Tado.Api.Exceptions.RequestFailedException.Uri">
<summary>
Uri that was called
</summary>
</member>
<member name="T:KoenZomers.Tado.Api.Exceptions.RequestThrottledException">
<summary>
Exception thrown when a request is being throttled (HTTP 429 response)
</summary>
</member>
<member name="P:KoenZomers.Tado.Api.Exceptions.RequestThrottledException.Uri">
<summary>
Uri that was called
</summary>
</member>
<member name="P:KoenZomers.Tado.Api.Exceptions.RequestThrottledException.RateLimitPolicyName">
<summary>
The rate limit policy name (e.g., "perday")
</summary>
</member>
<member name="P:KoenZomers.Tado.Api.Exceptions.RequestThrottledException.RateLimitQuota">
<summary>
The quota limit for the rate limit policy (e.g., 20000 requests per day)
</summary>
</member>
<member name="P:KoenZomers.Tado.Api.Exceptions.RequestThrottledException.RateLimitWindow">
<summary>
The time window for the rate limit policy in seconds (e.g., 86400 for daily)
</summary>
</member>
<member name="P:KoenZomers.Tado.Api.Exceptions.RequestThrottledException.RemainingRequests">
<summary>
The remaining requests allowed in the current window
</summary>
</member>
<member name="P:KoenZomers.Tado.Api.Exceptions.RequestThrottledException.ResetTimeSeconds">
<summary>
The time in seconds until the rate limit resets
</summary>
</member>
<member name="M:KoenZomers.Tado.Api.Exceptions.RequestThrottledException.#ctor(System.Uri,System.Net.Http.HttpResponseMessage,System.Exception)">
<summary>
Instantiates a new instance of the <see cref="T:KoenZomers.Tado.Api.Exceptions.RequestThrottledException"/> class.
</summary>
<param name="uri">Uri that was being called</param>
<param name="httpResponseMessage">Http Response Message. Optional.</param>
<param name="innerException">Exception raised while making the request. Optional.</param>
</member>
<member name="M:KoenZomers.Tado.Api.Exceptions.RequestThrottledException.ParseRateLimitHeaders(System.Net.Http.HttpResponseMessage)">
<summary>
Parses the RateLimit-Policy and RateLimit headers from the HTTP response
</summary>
<param name="httpResponseMessage">The HTTP response message containing the headers</param>
</member>
<member name="M:KoenZomers.Tado.Api.Exceptions.RequestThrottledException.ParseRateLimitPolicy(System.String)">
<summary>
Parses the RateLimit-Policy header to extract policy name, quota, and window
Format: "policy_name";q=quota;w=window_seconds
</summary>
<param name="policyHeader">The RateLimit-Policy header value</param>
</member>
<member name="M:KoenZomers.Tado.Api.Exceptions.RequestThrottledException.ParseRateLimit(System.String)">
<summary>
Parses the RateLimit header to extract remaining requests and reset time
Format: "policy_name";r=remaining;t=reset_seconds
</summary>
<param name="rateLimitHeader">The RateLimit header value</param>
</member>
<member name="T:KoenZomers.Tado.Api.Exceptions.SessionAuthenticationFailedException">
<summary>
Exception thrown when authenticating failed
</summary>
</member>
<member name="T:KoenZomers.Tado.Api.Exceptions.SessionNotAuthenticatedException">
<summary>
Exception thrown when functionality is called which requires the session to be authenticated while it isn't yet
</summary>
</member>
<member name="T:KoenZomers.Tado.Api.Extensions.PowerManagerService">
<summary>
Tado Service Instantiation for the framework
</summary>
</member>
<member name="M:KoenZomers.Tado.Api.Extensions.PowerManagerService.AddTadoServices(Microsoft.Extensions.DependencyInjection.IServiceCollection)">
<summary>
Instantiates the PowerManager Framework components
</summary>
<param name="basePath">Base path where the application files reside</param>
</member>
<member name="M:KoenZomers.Tado.Api.Extensions.PowerManagerService.AddTadoHttpClients(Microsoft.Extensions.DependencyInjection.IServiceCollection,KoenZomers.Tado.Api.Configuration.Tado)">
<summary>
Adds named HttpClient instances
</summary>
</member>
<member name="M:KoenZomers.Tado.Api.Extensions.PowerManagerService.AddTadoControllers(Microsoft.Extensions.DependencyInjection.IServiceCollection)">
<summary>
Adds the controllers to the Tado framework
</summary>
</member>
<member name="T:KoenZomers.Tado.Api.Helpers.EnumValidation">
<summary>
Helpers to work with enums
</summary>
</member>
<member name="M:KoenZomers.Tado.Api.Helpers.EnumValidation.EnsureEnumWithinRange``1(``0)">
<summary>
Ensures the provided enum is valid for the range of allowed enum options
</summary>
</member>
<member name="T:KoenZomers.Tado.Api.Entities.ActivityDataPoints">
<summary>
Contains activity data points such as heating power
</summary>
</member>
<member name="P:KoenZomers.Tado.Api.Entities.ActivityDataPoints.HeatingPower">
<summary>
The heating power data point
</summary>
</member>
<member name="T:KoenZomers.Tado.Api.Entities.Characteristics">
<summary>
Characteristics of a device
</summary>
</member>
<member name="P:KoenZomers.Tado.Api.Entities.Characteristics.Capabilities">
<summary>
The list of capabilities supported by the device
</summary>
</member>
<member name="T:KoenZomers.Tado.Api.Entities.Geolocation">
<summary>
Represents the geographic location of a device or home
</summary>
</member>
<member name="P:KoenZomers.Tado.Api.Entities.Geolocation.Latitude">
<summary>
The latitude coordinate
</summary>
</member>
<member name="P:KoenZomers.Tado.Api.Entities.Geolocation.Longitude">
<summary>
The longitude coordinate
</summary>
</member>
<member name="T:KoenZomers.Tado.Api.Entities.HeatingPower">
<summary>
Represents the heating power data point of a device
</summary>
</member>
<member name="P:KoenZomers.Tado.Api.Entities.HeatingPower.CurrentType">
<summary>
The type of heating power (e.g., percentage)
</summary>
</member>
<member name="P:KoenZomers.Tado.Api.Entities.HeatingPower.Percentage">
<summary>
The percentage of heating power being used
</summary>
</member>
<member name="P:KoenZomers.Tado.Api.Entities.HeatingPower.Timestamp">
<summary>
The timestamp when the heating power was recorded
</summary>
</member>
<member name="T:KoenZomers.Tado.Api.Entities.Link">
<summary>
Represents the link state of a Tado device or component
</summary>
</member>
<member name="P:KoenZomers.Tado.Api.Entities.Link.State">
<summary>
The current state of the link (e.g., ONLINE, OFFLINE)
</summary>
</member>
<member name="T:KoenZomers.Tado.Api.Entities.MountingState">
<summary>
State of the mounted Tado device
</summary>
</member>
<member name="P:KoenZomers.Tado.Api.Entities.MountingState.Value">
<summary>
The current mounting state of the device (e.g., MOUNTED, UNMOUNTED)
</summary>
</member>
<member name="P:KoenZomers.Tado.Api.Entities.MountingState.Timestamp">
<summary>
The timestamp when the mounting state was recorded
</summary>
</member>
<member name="T:KoenZomers.Tado.Api.Entities.Precision">
<summary>
Represents the precision of a temperature reading
</summary>
</member>
<member name="P:KoenZomers.Tado.Api.Entities.Precision.Celsius">
<summary>
The precision in Celsius
</summary>
</member>
<member name="P:KoenZomers.Tado.Api.Entities.Precision.Fahrenheit">
<summary>
The precision in Fahrenheit
</summary>
</member>
<member name="T:KoenZomers.Tado.Api.Entities.Temperatures">
<summary>
Represents temperature step settings in both Celsius and Fahrenheit
</summary>
</member>
<member name="P:KoenZomers.Tado.Api.Entities.Temperatures.Celsius">
<summary>
Temperature step settings in Celsius
</summary>
</member>
<member name="P:KoenZomers.Tado.Api.Entities.Temperatures.Fahrenheit">
<summary>
Temperature step settings in Fahrenheit
</summary>
</member>