Dafür habe ich ein Testscript geschrieben um das zu probieren (ertmal auslesen):
Code: Alles auswählen
WriteLine("Begin");
WriteLine("Start:");
WriteLine(dom.GetObject("BidCos-RF.NEQ0935315:2.PARTY_START_TIME").State());
WriteLine(dom.GetObject("BidCos-RF.NEQ0935315:2.PARTY_START_DAY").State());
WriteLine(dom.GetObject("BidCos-RF.NEQ0935315:2.PARTY_START_MONTH").State());
WriteLine(dom.GetObject("BidCos-RF.NEQ0935315:2.PARTY_START_YEAR").State());
WriteLine("STOP:");
WriteLine(dom.GetObject("BidCos-RF.NEQ0935315:2.PARTY_STOP_TIME").State());
WriteLine(dom.GetObject("BidCos-RF.NEQ0935315:2.PARTY_STOP_DAY").State());
WriteLine(dom.GetObject("BidCos-RF.NEQ0935315:2.PARTY_STOP_MONTH").State());
WriteLine(dom.GetObject("BidCos-RF.NEQ0935315:2.PARTY_STOP_YEAR").State());
WriteLine("CONTROL_MODE ; Themp:");
WriteLine(dom.GetObject("BidCos-RF.NEQ0935315:2.CONTROL_MODE").State());
WriteLine(dom.GetObject("BidCos-RF.NEQ0935315:2.PARTY_TEMPERATURE").State());
WriteLine("Ende");
Zeit;erwartet;tatsächlich
00:00;0;0
00:30;30;30
01:00;60;60
01:30;90;90
02:00;120;120
02:30;150;150
03:00;180;180
03:30;210;210
04:00;240;240
04:30;270;14
05:00;300;44
05:30;330;74
06:00;360;104
06:30;390;134
07:00;420;164
07:30;450;194
08:00;480;224
08:30;510;254
09:00;540;28
09:30;570;58
10:00;600;88
10:30;630;118
11:00;660;148
11:30;690;178
12:00;720;208
12:30;750;238
13:00;780;12
13:30;810;42
14:00;840;72
14:30;870;102
15:00;900;132
15:30;930;162
16:00;960;192
16:30;990;222
17:00;1020;252
17:30;1050;26
18:00;1080;56
18:30;1110;86
19:00;1140;116
19:30;1170;146
20:00;1200;176
20:30;1230;206
21:00;1260;236
21:30;1290;10
22:00;1320;40
22:30;1350;70
23:00;1380;100
23:30;1410;130
Das lässt sich sowohl bei START- als auch Bei STOP_Time beobachten. Und sowohl bei HM-CC-RT-DN als auch bei HM-TC-IT-WM-W-EU.
Es spielt auch keine Rolle ob der Party-Modus per WebUI, claudmatic oder am Thermostat eingegeben wurde.
Beispiel für 19:30 : Rückgabewert "146".
XML-API (1.15) gibt auch 146:
Code: Alles auswählen
<datapoint name="BidCos-RF.NEQ0935315:2.PARTY_START_TIME" type="PARTY_START_TIME" ise_id="1526" value="146" valuetype="16" valueunit="minutes" timestamp="1508684313" operations="3"/>
Code: Alles auswählen
Sun Oct 22 17:35:53 2017;192.168.9.201; <134>Oct 22 17:35:54 ReGaHss: Info: IseXmlRpc::CallXmlrpcMethod: method =getValue params = {"NEQ0935315:2","PARTY_START_TIME"} result = 1170 [iseXmlRpc.cpp:2646]
Kann das jemand nachstellen (auch mit anderen CCU2-Versionen) oder mir sagen was hier falsch läuft?
Liebe Grüße
Andreas
Nachtrag:
Scheinbar ist der Rückgabewert auf eine 8Bit-Zahl begrenzt. Wenn man ab 04:30 bis 08:30 256 zu dem Wert addiert, kommt man auf den "richtigen" Wert. Danach addiert man bis 12:30 512, bis 17:00 768, bis 21:00 1024 und danach 1080.
Da wird man wieder ehwig auf eine Korrektur warten