mirror of
https://github.com/fhem/fhem-mirror.git
synced 2025-03-10 09:16:53 +00:00
vitoconnect: more readings and other small improvements
git-svn-id: https://svn.fhem.de/fhem/trunk@19074 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
parent
8c7b5b3e4a
commit
db7042d649
@ -84,12 +84,20 @@
|
||||
# Betriebsarten "heating" und "active" ergänzt
|
||||
# 2019-03-02 Readings für heating.boiler.sensors.temperature.commonSupply.value und
|
||||
# heating.circuits.1.operating.modes.heating.active hinzugefügt
|
||||
# Typo fixed
|
||||
# Typo fixed ("Brenner_Be-t-riebsstunden")
|
||||
# 2019-03-29 neue Readings:
|
||||
# heating.circuits.1.operating.modes.dhwAndHeatingCooling.active 1
|
||||
# heating.circuits.1.operating.modes.normalStandby.active 0
|
||||
# heating.circuits.1.operating.programs.fixed.active 0
|
||||
# heating.compressor.active 0
|
||||
# heating.dhw.temperature.hysteresis.value 5
|
||||
# heating.dhw.temperature.temp2.value 60
|
||||
# Passwort wird bei "define" nur noch gesetzt, wenn noch kein Passwort gespeichert war
|
||||
# Attribut "model" implementiert
|
||||
#
|
||||
#
|
||||
# ToDo: timeout konfigurierbar machen
|
||||
# "set"s für Schedules zum Steuern der Heizung implementieren
|
||||
# Dokumentation (insbesondere Wiki und auch auf Deutsch)
|
||||
# Nicht bei jedem Lesen neu einloggen (wenn möglich)
|
||||
# Fehlerbehandlung verbessern
|
||||
# Attribute implementieren und dokumentieren
|
||||
@ -102,6 +110,9 @@
|
||||
# vitoconnect_Set effizienter implementieren
|
||||
# nach einem set Befehl Readings aktualisieren, vorher alten Timer löschen
|
||||
# heating.circuits.0.operating.programs.holiday.changeEndDate action: end implementieren?
|
||||
# set für:
|
||||
# heating.dhw.temperature.hysteresis.setHysteresis action: hysteresis und
|
||||
# heating.dhw.temperature.temp2.setTargetTemperature action: temperature implementieren
|
||||
#
|
||||
|
||||
|
||||
@ -130,6 +141,7 @@ my $RequestList = {
|
||||
"heating.boiler.sensors.temperature.commonSupply.value" => "Kessel_Common_Supply_Temperatur",
|
||||
"heating.boiler.sensors.temperature.main.status" => "Kessel_Status",
|
||||
"heating.boiler.sensors.temperature.main.value" => "Kesseltemperatur",
|
||||
|
||||
"heating.burner.active" => "Brenner_aktiv",
|
||||
"heating.burner.automatic.status" => "Brenner_Status",
|
||||
"heating.burner.automatic.errorCode" => "Brenner_Fehlercode",
|
||||
@ -151,9 +163,11 @@ my $RequestList = {
|
||||
"heating.circuits.0.operating.modes.active.value" => "HK1-Betriebsart",
|
||||
"heating.circuits.0.operating.modes.dhw.active" => "HK1-WW_aktiv",
|
||||
"heating.circuits.0.operating.modes.dhwAndHeating.active" => "HK1-WW_und_Heizen_aktiv",
|
||||
"heating.circuits.0.operating.modes.dhwAndHeatingCooling.active" => "HK1-WW_und_Heizen_Kuehlen_aktiv",
|
||||
"heating.circuits.0.operating.modes.forcedNormal.active" => "HK1-Solltemperatur_erzwungen",
|
||||
"heating.circuits.0.operating.modes.forcedReduced.active" => "HK1-Reduzierte_Temperatur_erzwungen",
|
||||
"heating.circuits.0.operating.modes.heating.active" => "HK1-heizen_aktiv",
|
||||
"heating.circuits.0.operating.modes.normalStandby.active" => "HK1-Normal_Standby_aktiv",
|
||||
"heating.circuits.0.operating.modes.standby.active" => "HK1-Standby_aktiv",
|
||||
"heating.circuits.0.operating.programs.active.value" => "HK1-Programmstatus",
|
||||
"heating.circuits.0.operating.programs.comfort.active" => "HK1-Solltemperatur_comfort_aktiv",
|
||||
@ -162,6 +176,7 @@ my $RequestList = {
|
||||
"heating.circuits.0.operating.programs.eco.temperature" => "HK1-Solltemperatur_eco",
|
||||
"heating.circuits.0.operating.programs.external.active" => "HK1-External_aktiv",
|
||||
"heating.circuits.0.operating.programs.external.temperature" => "HK1-External_Temperatur",
|
||||
"heating.circuits.0.operating.programs.fixed.active" => "HK1-Fixed_aktiv",
|
||||
"heating.circuits.0.operating.programs.holiday.active" => "HK1-Urlaub_aktiv",
|
||||
"heating.circuits.0.operating.programs.holiday.start" => "HK1-Urlaub_Start",
|
||||
"heating.circuits.0.operating.programs.holiday.end" => "HK1-Urlaub_Ende",
|
||||
@ -187,9 +202,11 @@ my $RequestList = {
|
||||
"heating.circuits.1.operating.modes.active.value" => "HK2-Betriebsart",
|
||||
"heating.circuits.1.operating.modes.dhw.active" => "HK2-WW_aktiv",
|
||||
"heating.circuits.1.operating.modes.dhwAndHeating.active" => "HK2-WW_und_Heizen_aktiv",
|
||||
"heating.circuits.1.operating.modes.dhwAndHeatingCooling.active" => "HK2-WW_und_Heizen_Kuehlen_aktiv",
|
||||
"heating.circuits.1.operating.modes.forcedNormal.active" => "HK2-Solltemperatur_erzwungen",
|
||||
"heating.circuits.1.operating.modes.forcedReduced.active" => "HK2-Reduzierte_Temperatur_erzwungen",
|
||||
"heating.circuits.1.operating.modes.heating.active" => "HK2-heizen_aktiv",
|
||||
"heating.circuits.1.operating.modes.normalStandby.active" => "HK2-Normal_Standby_aktiv",
|
||||
"heating.circuits.1.operating.modes.standby.active" => "HK2-Standby_aktiv",
|
||||
"heating.circuits.1.operating.programs.active.value" => "HK2-Programmstatus",
|
||||
"heating.circuits.1.operating.programs.comfort.active" => "HK2-Solltemperatur_comfort_aktiv",
|
||||
@ -198,6 +215,7 @@ my $RequestList = {
|
||||
"heating.circuits.1.operating.programs.eco.temperature" => "HK2-Solltemperatur_eco",
|
||||
"heating.circuits.1.operating.programs.external.active" => "HK2-External_aktiv",
|
||||
"heating.circuits.1.operating.programs.external.temperature" => "HK2-External_Temperatur",
|
||||
"heating.circuits.1.operating.programs.fixed.active" => "HK2-Fixed_aktiv",
|
||||
"heating.circuits.1.operating.programs.holiday.active" => "HK2-Urlaub_aktiv",
|
||||
"heating.circuits.1.operating.programs.holiday.start" => "HK2-Urlaub_Start",
|
||||
"heating.circuits.1.operating.programs.holiday.end" => "HK2-Urlaub_Ende",
|
||||
@ -223,9 +241,11 @@ my $RequestList = {
|
||||
"heating.circuits.2.operating.modes.active.value" => "HK3-Betriebsart",
|
||||
"heating.circuits.2.operating.modes.dhw.active" => "HK3-WW_aktiv",
|
||||
"heating.circuits.2.operating.modes.dhwAndHeating.active" => "HK3-WW_und_Heizen_aktiv",
|
||||
"heating.circuits.2.operating.modes.dhwAndHeatingCooling.active" => "HK3-WW_und_Heizen_Kuehlen_aktiv",
|
||||
"heating.circuits.2.operating.modes.forcedNormal.active" => "HK3-Solltemperatur_erzwungen",
|
||||
"heating.circuits.2.operating.modes.forcedReduced.active" => "HK3-Reduzierte_Temperatur_erzwungen",
|
||||
"heating.circuits.2.operating.modes.heating.active" => "HK3-heizen_aktiv",
|
||||
"heating.circuits.2.operating.modes.normalStandby.active" => "HK3-Normal_Standby_aktiv",
|
||||
"heating.circuits.2.operating.modes.standby.active" => "HK3-Standby_aktiv",
|
||||
"heating.circuits.2.operating.programs.active.value" => "HK3-Programmstatus",
|
||||
"heating.circuits.2.operating.programs.comfort.active" => "HK3-Solltemperatur_comfort_aktiv",
|
||||
@ -234,6 +254,7 @@ my $RequestList = {
|
||||
"heating.circuits.2.operating.programs.eco.temperature" => "HK3-Solltemperatur_eco",
|
||||
"heating.circuits.2.operating.programs.external.active" => "HK3-External_aktiv",
|
||||
"heating.circuits.2.operating.programs.external.temperature" => "HK3-External_Temperatur",
|
||||
"heating.circuits.2.operating.programs.fixed.active" => "HK3-Fixed_aktiv",
|
||||
"heating.circuits.2.operating.programs.holiday.active" => "HK3-Urlaub_aktiv",
|
||||
"heating.circuits.2.operating.programs.holiday.start" => "HK3-Urlaub_Start",
|
||||
"heating.circuits.2.operating.programs.holiday.end" => "HK3-Urlaub_Ende",
|
||||
@ -247,6 +268,7 @@ my $RequestList = {
|
||||
"heating.circuits.2.sensors.temperature.supply.status" => "HK3-Vorlauftemperatur_aktiv",
|
||||
"heating.circuits.2.sensors.temperature.supply.value" => "HK3-Vorlauftemperatur",
|
||||
|
||||
"heating.compressor.active" => "Kompressor_aktiv",
|
||||
"heating.configuration.multiFamilyHouse.active" => "Mehrfamilenhaus_aktiv",
|
||||
"heating.controller.serial.value" => "Controller_Seriennummer",
|
||||
"heating.device.time.offset.value" => "Device_Time_Offset",
|
||||
@ -266,7 +288,9 @@ my $RequestList = {
|
||||
"heating.dhw.sensors.temperature.outlet.status" => "WW-Sensoren_Auslauf_Status",
|
||||
"heating.dhw.sensors.temperature.outlet.value" => "WW-Sensoren_Auslauf_Wert",
|
||||
"heating.dhw.temperature.main.value" => "WW-Haupttemperatur",
|
||||
"heating.dhw.sensors.temperature.hotWaterStorage.status" => "WW-Temperatur_aktiv",
|
||||
"heating.dhw.temperature.hysteresis.value" => "WW-Hysterese",
|
||||
"heating.dhw.temperature.temp2.value" => "WW-Temperatur_2",
|
||||
"heating.dhw.sensors.temperature.hotWaterStorage.status" => "WW-Temperatur_aktiv",
|
||||
"heating.dhw.sensors.temperature.hotWaterStorage.value" => "WW-Isttemperatur",
|
||||
"heating.dhw.temperature.value" => "WW-Solltemperatur",
|
||||
"heating.dhw.schedule.active" => "WW-zeitgesteuert_aktiv",
|
||||
@ -314,6 +338,12 @@ sub vitoconnect_Initialize($) {
|
||||
$hash->{AttrFn} = 'vitoconnect_Attr';
|
||||
$hash->{ReadFn} = 'vitoconnect_Read';
|
||||
$hash->{AttrList} = "disable:0,1 "
|
||||
."model:Vitodens_200-W_(B2HB),Vitodens_200-W_(B2KB),"
|
||||
."Vitotronic_200_(HO1),Vitotronic_200_(HO1A),Vitotronic_200_(HO1B),Vitotronic_200_(HO1D),Vitotronic_200_(HO2B),"
|
||||
."Vitotronic_200_RF_(HO1C),Vitotronic_200_RF_(HO1E),"
|
||||
."Vitotronic_200_(KO1B),Vitotronic_200_(KO2B),Vitotronic_200_(KW6),Vitotronic_200_(KW6A),Vitotronic_200_(KW6B),Vitotronic_200_(KW1),Vitotronic_200_(KW2),Vitotronic_200_(KW4),Vitotronic_200_(KW5),"
|
||||
."Vitotronic_300_(KW3),Vitotronic_200_(WO1A),Vitotronic_200_(WO1B),Vitotronic_200_(WO1C),"
|
||||
."Vitoligno_300-C,Vitoligno_200-S,Vitoligno_300-P_mit_Vitotronic_200_(FO1),Vitoligno_250-S,Vitoligno_300-S "
|
||||
."vitoconnect_raw_readings:0,1 "
|
||||
."vitoconnect_actions_active:0,1 "
|
||||
.$readingFnAttributes;
|
||||
@ -330,8 +360,13 @@ sub vitoconnect_Define($$) {
|
||||
$hash->{intervall} = $param[4];
|
||||
$hash->{counter} = 0;
|
||||
|
||||
my $err = vitoconnect_StoreKeyValue($hash, "passwd", $param[3]);
|
||||
return $err if ($err);
|
||||
my $isiwebpasswd = vitoconnect_ReadKeyValue($hash, "passwd");
|
||||
if ($isiwebpasswd eq ""){
|
||||
my $err = vitoconnect_StoreKeyValue($hash, "passwd", $param[3]);
|
||||
return $err if ($err)
|
||||
} else {
|
||||
Log3 $name, 3, "$name - Passwort war bereits gespeichert";
|
||||
}
|
||||
|
||||
InternalTimer(gettimeofday()+10, "vitoconnect_GetUpdate", $hash);
|
||||
return undef;
|
||||
@ -1026,7 +1061,7 @@ sub vitoconnect_Attr(@) {
|
||||
sub vitoconnect_GetUpdate($) {
|
||||
my ($hash) = @_;
|
||||
my $name = $hash->{NAME};
|
||||
Log3 $name, 4, "$name: GetUpdate called ...";
|
||||
Log3 $name, 4, "$name - GetUpdate called ...";
|
||||
if ( IsDisabled($name) ) {
|
||||
Log3 $name, 4, "$name: device disabled";
|
||||
InternalTimer(gettimeofday()+$hash->{intervall}, "vitoconnect_GetUpdate", $hash);
|
||||
@ -1053,6 +1088,7 @@ sub vitoconnect_getCode($) {
|
||||
callback => \&vitoconnect_getCodeCallback
|
||||
};
|
||||
|
||||
#Log3 $name, 4, "$name: user=$param->{user} passwd=$param->{pwd}";
|
||||
# Log3 $name, 5, Dumper($hash);
|
||||
HttpUtils_NonblockingGet($param);
|
||||
return undef;
|
||||
@ -1332,6 +1368,7 @@ sub vitoconnect_action($) {
|
||||
sslargs => {SSL_verify_mode => 0},
|
||||
timeout => 10,
|
||||
method => "POST" };
|
||||
Log3 $name, 4, "$name: user=$param->{user} passwd=$param->{pwd}";
|
||||
($err, $response_body) = HttpUtils_BlockingGet($param);
|
||||
if ($err eq "") {
|
||||
$response_body =~ /code=(.*)"/;
|
||||
|
Loading…
x
Reference in New Issue
Block a user