Ich benötige hier die Doku
Moderator: Co-Administratoren
Ich benötige hier die Doku
Ich habe mir neue Feuermelder besorgen müssen. Leider scheinen Da die Datenpunkte anders angesprochen zu werden.
HmIP-SWSD <- das sind die neuen
HM-Sec-SD-2 <-- die habe ich bisher und konnte sie noch mit STATE,ERROR_ALARM_TEST,ERROR_SMOKE_CHAMBER und LOWBAT kontrollieren. Mit den Neuen Geräten geht das nicht mehr.
HmIP-SWSD <- das sind die neuen
HM-Sec-SD-2 <-- die habe ich bisher und konnte sie noch mit STATE,ERROR_ALARM_TEST,ERROR_SMOKE_CHAMBER und LOWBAT kontrollieren. Mit den Neuen Geräten geht das nicht mehr.
Re: Ich benötige hier die Doku
viewtopic.php?t=57265 <---- das habe ich auch schon gefunden.
Damit hatte ich es so:
probiert. So klappte es mit den anderen Rauchmeldern auch schon. Doch mit den neuen geht es nicht. Das Programm läuft nicht durch.
Damit hatte ich es so:
Code: Alles auswählen
Etage_eins_rechts = "HmIP-SWSD 1Etage_rechts_Schlafzimmerzimmer:1";
string Erdgeschoss_links_KZ_Test = dom.GetObject(Etage_eins_rechts).DPByHssDP("SMOKE_DETECTOR_ALARM_STATUS").Value();
Re: Ich benötige hier die Doku
Die zwei Zeilen sind es auch schon die letzte Funktioniert nicht.
Am Ende kommt dann noch zum Test: hin. Doch das wird nicht erreicht. Ich habe alles durchprobiert was hier: viewtopic.php?t=57265 vorkommt und dem was ich in der Datenpunkt Doku https://www.eq-3.de/Downloads/eq3/downl ... punkte.pdf hier gefunden habe. Eind habe ich vergessen: Erdgeschoss_links_KZ_Test wird weiter oben noch mit string Erdgeschoss_links_KZ_Test ; benannt das ist nicht der Fehler
Am Ende kommt dann noch zum Test:
Code: Alles auswählen
WriteLine("Ende" # Erdgeschoss_links_KZ_Test );
Zuletzt geändert von WAdler 68 am 07.02.2024, 20:49, insgesamt 1-mal geändert.
-
- Beiträge: 5571
- Registriert: 30.05.2019, 11:37
- System: Alternative CCU (auf Basis OCCU)
- Wohnort: Chemnitz
- Hat sich bedankt: 120 Mal
- Danksagung erhalten: 764 Mal
Re: Ich benötige hier die Doku
Wird denn die Objektvariable irgendwo vorher definiert? In dem Programmschnipsel nicht.
Bitte vollständigen Script zeigen.
Bitte vollständigen Script zeigen.
Re: Ich benötige hier die Doku
Ja das hatte ich vergessen zu erwähnen. Es hängt in der Zeile wo ich den Rauchmelder anspreche.
-
- Beiträge: 9819
- Registriert: 27.04.2020, 10:34
- System: CCU
- Hat sich bedankt: 711 Mal
- Danksagung erhalten: 1659 Mal
Re: Ich benötige hier die Doku
Soll das ein Fortsetzungsroman sein? Warum kann man nicht mal klartext reden und alles zusammen fassen?
LG, Michael.
Wenn du eine App zur Bedienung brauchst, dann hast du kein Smarthome.
Wettervorhersage über AccuWeather oder OpenWeatherMap+++ Rollladensteuerung 2.0 +++ JSON-API-Ausgaben auswerten +++ undokumentierte Skript-Befehle und Debugging-Tipps +++
Wenn du eine App zur Bedienung brauchst, dann hast du kein Smarthome.
Wettervorhersage über AccuWeather oder OpenWeatherMap+++ Rollladensteuerung 2.0 +++ JSON-API-Ausgaben auswerten +++ undokumentierte Skript-Befehle und Debugging-Tipps +++
Re: Ich benötige hier die Doku
Ich möchte eine Webseite erstellen, in der ich alle Rauchmelder kontrolliere:
<---- das funktioniert auch so! nur das die neuen Rauchmelder nicht so wollen wie ich.
da habe ich, um es leichter zu erklären die unnötigen Zeilen hier gestrichen:
Das bleibt als Fehler übrig um den es hier geht:
Code: Alles auswählen
! Alle Rauchmelder auf Webseite
string Webseite = "<head><meta http-equiv='Content-Language' content='de'><meta http-equiv='refresh' content='60'><title>Rauchmelder</title></head>
<body bgcolor=ffff00>";
string Dachboden = "HM-Sec-SD-2 NEQ0448735:1";
string Treppe_oben = "HM-Sec-SD-2 NEQ0448837:1";
string Treppe_unten = "HM-Sec-SD-2 NEQ0449006:1";
string Keller = "HM-Sec-SD-2 NEQ0003137:1";
string Team_oben = "HM-Sec-SD-2-Team *NEQ0448735M3/4:1";
string Team_unten = "HM-Sec-SD-2-Team *NEQ0003137:1";
string Erdgeschoss_links_KZ = "HmIP-SWSD EG_links_Kinderzimmer:1";
string Erdgeschoss_links_SZ = "HmIP-SWSD EG_links_Schlafzimmer:1";
string Etage_eins_links = "Rauchmelder :1";
string Etage_eins_rechts = "HmIP-SWSD 1Etage_rechts_Schlafzimmerzimmer:1";
string Etage_zwei_links_KZ = "HmIP-SWSD 2Etage_links_Kinderzimmer:1";
string Etage_zwei_links_SZ = "HmIP-SWSD 2Etage_links_Schlafzimmerzimmer:1";
string Etage_zwei_rechts_KZ = "HmIP-SWSD 2Etage_rechts_Kinderzimmer:1";
string Etage_zwei_rechts_SZ = "HmIP-SWSD 2Etage_rechts_Schlafzimmerzimmer:1";
! boolean batt5 = dom.GetObject(Etage_eins_links).DPByHssDP("ERROR_SMOKE_CHAMBER").Value();
! real kanal1
string Dachboden_Test = dom.GetObject(Dachboden).DPByHssDP("ERROR_ALARM_TEST").Value();
string Dachboden_Rauchkammer = dom.GetObject(Dachboden).DPByHssDP("ERROR_SMOKE_CHAMBER").Value();
string Dachboden_Alarm = dom.GetObject(Dachboden).DPByHssDP("STATE").Value();
string Dachboden_Batt = dom.GetObject(Dachboden).DPByHssDP("LOWBAT").Value();
string Treppe_oben_Test = dom.GetObject(Treppe_oben).DPByHssDP("ERROR_ALARM_TEST").Value();
string Treppe_oben_Rauchkammer = dom.GetObject(Treppe_oben).DPByHssDP("ERROR_SMOKE_CHAMBER").Value();
string Treppe_oben_Alarm = dom.GetObject(Treppe_oben).DPByHssDP("STATE").Value();
string Treppe_oben_Batt = dom.GetObject(Treppe_oben).DPByHssDP("LOWBAT").Value();
string Treppe_unten_Test = dom.GetObject(Treppe_unten).DPByHssDP("ERROR_ALARM_TEST").Value();
string Treppe_unten_Rauchkammer = dom.GetObject(Treppe_unten).DPByHssDP("ERROR_SMOKE_CHAMBER").Value();
string Treppe_unten_Alarm = dom.GetObject(Treppe_unten).DPByHssDP("STATE").Value();
string Treppe_unten_Batt = dom.GetObject(Treppe_unten).DPByHssDP("LOWBAT").Value();
string Keller_Test = dom.GetObject(Keller).DPByHssDP("ERROR_ALARM_TEST").Value();
string Keller_Rauchkammer = dom.GetObject(Keller).DPByHssDP("ERROR_SMOKE_CHAMBER").Value();
string Keller_Alarm = dom.GetObject(Keller).DPByHssDP("STATE").Value();
string Keller_Batt = dom.GetObject(Keller).DPByHssDP("LOWBAT").Value();
string Team_oben_Test = dom.GetObject(Treppe_oben).DPByHssDP("ERROR_ALARM_TEST").Value();
string Team_oben_Rauchkammer = dom.GetObject(Treppe_oben).DPByHssDP("ERROR_SMOKE_CHAMBER").Value();
string Team_oben_Alarm = dom.GetObject(Treppe_oben).DPByHssDP("STATE").Value();
string Team_oben_Batt = dom.GetObject(Treppe_oben).DPByHssDP("LOWBAT").Value();
string Team_unten_Test = dom.GetObject(Treppe_unten).DPByHssDP("ERROR_ALARM_TEST").Value();
string Team_unten_Rauchkammer = dom.GetObject(Treppe_unten).DPByHssDP("ERROR_SMOKE_CHAMBER").Value();
string Team_unten_Alarm = dom.GetObject(Treppe_unten).DPByHssDP("STATE").Value();
string Team_unten_Batt = dom.GetObject(Treppe_unten).DPByHssDP("LOWBAT").Value();
! -------------------------------------------------------------------------------------------------------------
! --------------- Wohnungen -----------------------------------------------------------------------------------
Etage_eins_rechts = "HmIP-SWSD 1Etage_rechts_Schlafzimmerzimmer:1";
! string Erdgeschoss_links_KZ_Test = dom.GetObject(Etage_eins_rechts).DPByHssDP("SMOKE_DETECTOR_ALARM_STATUS").Value();
! =========================================================================================================================
! string Erdgeschoss_links_KZ_Rauchkammer = dom.GetObject(Erdgeschoss_links_KZ).DPByHssDP("ERROR_SMOKE_CHAMBER").Value();
! string Erdgeschoss_links_KZ_Alarm = dom.GetObject(Erdgeschoss_links_KZ).DPByHssDP("STATE").Value();
! string Erdgeschoss_links_KZ_Batt = dom.GetObject(Erdgeschoss_links_KZ).DPByHssDP("LOWBAT").Value();
! string Erdgeschoss_links_SZ_Test = dom.GetObject(Erdgeschoss_links_SZ).DPByHssDP("ERROR_ALARM_TEST").Value();
! string Erdgeschoss_links_SZ_Rauchkammer = dom.GetObject(Erdgeschoss_links_SZ).DPByHssDP("ERROR_SMOKE_CHAMBER").Value();
! string Erdgeschoss_links_SZ_Alarm = dom.GetObject(Erdgeschoss_links_SZ).DPByHssDP("STATE").Value();
! string Erdgeschoss_links_SZ_Batt = dom.GetObject(Erdgeschoss_links_SZ).DPByHssDP("LOWBAT").Value();
string Etage_eins_links_Alarm = dom.GetObject(Etage_eins_links).DPByHssDP("STATE").Value();
WriteLine ( "ich " # Etage_eins_links_Alarm);
WriteLine ( "Ende ");
! ----------------------------- Tabelle Haus -----------------------------------------------------------------------------
string Tabelle_Haus = "<table border='2' bgcolor='silver'><thead><tr><th>Rauchmelder</th><th>Ort (Haus)</th><th> Rauch? </th></th><th>Rauchkammer</th><th>Alarmtest</th><th>Batterie</th></tr></thead>";
! ----------------------------- Dachboden ---------------------------------------------------------------------------------
if(!Dachboden_Test)
{Tabelle_Haus = Tabelle_Haus # "<tr><td align=center>" # Dachboden # "</td><td align=center>Dachboden</td><td align=center bgcolor='green'>alles Ok</td>";}
else
{Tabelle_Haus = Tabelle_Haus # "<tr><td align=center>" # Dachboden # "</td><td align=center>Dachboden</td><td align=center bgcolor='red'>Rauch erkannt!</td>";}
if(Dachboden_Rauchkammer == 0)
{Tabelle_Haus = Tabelle_Haus # "<td align=center bgcolor='green'>alles Ok </td>";}
else
{Tabelle_Haus = Tabelle_Haus # "<td align=center bgcolor='red'>Rauchkammer verschmutzt!</td>";}
if(Dachboden_Test == 0)
{Tabelle_Haus = Tabelle_Haus # "<td align=center bgcolor='green'>alles Ok </td>";}
else
{Tabelle_Haus = Tabelle_Haus # "<td align=center bgcolor='red'>Alarmtest fehlgeschlegen!</td>";}
if(!Dachboden_Batt)
{Tabelle_Haus = Tabelle_Haus # "<td align=center bgcolor='green'>alles Ok </td>";}
else
{Tabelle_Haus = Tabelle_Haus # "<td align=center bgcolor='red'>Batterie leer!</td>";}
Tabelle_Haus = Tabelle_Haus # "</tr>";
! ----------------------------------------------------------------------------------------------------------------------
! ------------- Treppenhaus oben ---------------------------------------------------------------------------------------
if(!Treppe_oben_Alarm)
{Tabelle_Haus = Tabelle_Haus # "<tr><td align=center>" # Treppe_oben # "</td><td align=center>Treppenhaus oben</td><td align=center bgcolor='green'>alles Ok</td>";}
else
{Tabelle_Haus = Tabelle_Haus # "<tr><td align=center>" # Treppe_oben # "</td><td align=center>Treppenhaus oben</td><td align=center bgcolor='red'>Rauch erkannt!</td>";}
if(Treppe_oben_Rauchkammer == 0)
{Tabelle_Haus = Tabelle_Haus # "<td align=center bgcolor='green'>alles Ok </td>";}
else
{Tabelle_Haus = Tabelle_Haus # "<td align=center bgcolor='red'>Rauchkammer verschmutzt!</td>";}
if(Treppe_oben_Test == 0)
{Tabelle_Haus = Tabelle_Haus # "<td align=center bgcolor='green'>alles Ok </td>";}
else
{Tabelle_Haus = Tabelle_Haus # "<td align=center bgcolor='red'>Alarmtest fehlgeschlegen!</td>";}
if(!Treppe_oben_Batt)
{Tabelle_Haus = Tabelle_Haus # "<td align=center bgcolor='green'>alles Ok </td>";}
else
{Tabelle_Haus = Tabelle_Haus # "<td align=center bgcolor='red'>Batterie leer!</td>";}
Tabelle_Haus = Tabelle_Haus # "</tr>";
! ----------------------------------------------------------------------------------------------------------------------
! ------------- Treppenhaus unten ---------------------------------------------------------------------------------------
if(!Treppe_unten_Alarm)
{Tabelle_Haus = Tabelle_Haus # "<tr><td align=center>" # Treppe_unten # "</td><td align=center>Treppenhaus unten</td><td align=center bgcolor='green'>alles Ok</td>";}
else
{Tabelle_Haus = Tabelle_Haus # "<tr><td align=center>" # Treppe_unten # "</td><td align=center>Treppenhaus unten</td><td align=center bgcolor='red'>Rauch erkannt!</td>";}
if(Treppe_unten_Rauchkammer == 0)
{Tabelle_Haus = Tabelle_Haus # "<td align=center bgcolor='green'>alles Ok </td>";}
else
{Tabelle_Haus = Tabelle_Haus # "<td align=center bgcolor='red'>Rauchkammer verschmutzt!</td>";}
if(Treppe_unten_Test == 0)
{Tabelle_Haus = Tabelle_Haus # "<td align=center bgcolor='green'>alles Ok </td>";}
else
{Tabelle_Haus = Tabelle_Haus # "<td align=center bgcolor='red'>Alarmtest fehlgeschlegen!</td>";}
if(!Treppe_unten_Batt)
{Tabelle_Haus = Tabelle_Haus # "<td align=center bgcolor='green'>alles Ok </td>";}
else
{Tabelle_Haus = Tabelle_Haus # "<td align=center bgcolor='red'>Batterie leer!</td>";}
Tabelle_Haus = Tabelle_Haus # "</tr>";
! ----------------------------------------------------------------------------------------------------------------------
! ------------- Keller ---------------------------------------------------------------------------------------
if(!Keller_Alarm)
{Tabelle_Haus = Tabelle_Haus # "<tr><td align=center>" # Keller # "</td><td align=center>Keller</td><td align=center bgcolor='green'>alles Ok</td>";}
else
{Tabelle_Haus = Tabelle_Haus # "<tr><td align=center>" # Keller # "</td><td align=center>Keller</td><td align=center bgcolor='red'>Rauch erkannt!</td>";}
if(Keller_Rauchkammer == 0)
{Tabelle_Haus = Tabelle_Haus # "<td align=center bgcolor='green'>alles Ok </td>";}
else
{Tabelle_Haus = Tabelle_Haus # "<td align=center bgcolor='red'>Rauchkammer verschmutzt!</td>";}
if(Keller_Test == 0)
{Tabelle_Haus = Tabelle_Haus # "<td align=center bgcolor='green'>alles Ok </td>";}
else
{Tabelle_Haus = Tabelle_Haus # "<td align=center bgcolor='red'>Alarmtest fehlgeschlegen!</td>";}
if(!Keller_Batt)
{Tabelle_Haus = Tabelle_Haus # "<td align=center bgcolor='green'>alles Ok </td>";}
else
{Tabelle_Haus = Tabelle_Haus # "<td align=center bgcolor='red'>Batterie leer!</td>";}
Tabelle_Haus = Tabelle_Haus # "</tr>";
! ----------------------------------------------------------------------------------------------------------------------
! ----------------------------------------------------------------------------------------------------------------------
Tabelle_Haus = Tabelle_Haus # "<tr><td align=center colspan=5> Sammelmeldung </td></tr>";
! ----------------------------------------------------------------------------------------------------------------------
! ------------- Sammlung oben ---------------------------------------------------------------------------------------
if(!Team_oben_Alarm)
{Tabelle_Haus = Tabelle_Haus # "<tr><td align=center>" # Team_oben # "</td><td align=center>Team oben</td><td align=center bgcolor='green'>alles Ok</td>";}
else
{Tabelle_Haus = Tabelle_Haus # "<tr><td align=center>" # Team_oben # "</td><td align=center>Team oben</td><td align=center bgcolor='red'>Rauch erkannt!</td>";}
if(Team_oben_Rauchkammer == 0)
{Tabelle_Haus = Tabelle_Haus # "<td align=center bgcolor='green'>alles Ok </td>";}
else
{Tabelle_Haus = Tabelle_Haus # "<td align=center bgcolor='red'>Rauchkammer verschmutzt!</td>";}
if(Team_oben_Test == 0)
{Tabelle_Haus = Tabelle_Haus # "<td align=center bgcolor='green'>alles Ok </td>";}
else
{Tabelle_Haus = Tabelle_Haus # "<td align=center bgcolor='red'>Alarmtest fehlgeschlegen!</td>";}
if(!Team_oben_Batt)
{Tabelle_Haus = Tabelle_Haus # "<td align=center bgcolor='green'>alles Ok </td>";}
else
{Tabelle_Haus = Tabelle_Haus # "<td align=center bgcolor='red'>Batterie leer!</td>";}
Tabelle_Haus = Tabelle_Haus # "</tr>";
! ----------------------------------------------------------------------------------------------------------------------
! ------------- Sammlung unten ---------------------------------------------------------------------------------------
if(!Team_unten_Alarm)
{Tabelle_Haus = Tabelle_Haus # "<tr><td align=center>" # Team_unten # "</td><td align=center>Team unten</td><td align=center bgcolor='green'>alles Ok</td>";}
else
{Tabelle_Haus = Tabelle_Haus # "<tr><td align=center>" # Team_unten # "</td><td align=center>Team unten</td><td align=center bgcolor='red'>Rauch erkannt!</td>";}
if(Team_unten_Rauchkammer == 0)
{Tabelle_Haus = Tabelle_Haus # "<td align=center bgcolor='green'>alles Ok </td>";}
else
{Tabelle_Haus = Tabelle_Haus # "<td align=center bgcolor='red'>Rauchkammer verschmutzt!</td>";}
if(Team_unten_Test == 0)
{Tabelle_Haus = Tabelle_Haus # "<td align=center bgcolor='green'>alles Ok </td>";}
else
{Tabelle_Haus = Tabelle_Haus # "<td align=center bgcolor='red'>Alarmtest fehlgeschlegen!</td>";}
if(!Team_unten_Batt)
{Tabelle_Haus = Tabelle_Haus # "<td align=center bgcolor='green'>alles Ok </td>";}
else
{Tabelle_Haus = Tabelle_Haus # "<td align=center bgcolor='red'>Batterie leer!</td>";}
Tabelle_Haus = Tabelle_Haus # "</tr></table>";
! ----------------------------------------------------------------------------------------------------------------------
! ----------------------------------------------------------------------------------------------------------------------
! ----------------------------- Tabelle 1. Etage links -----------------------------------------------------------------
string Wohnung = "<table border='2' bgcolor='silver'><thead><tr><th>Rauchmelder</th><th>Etage</th><th>Ort </th><th> Rauch? </th></tr></thead>";
! ----------------------------- 1.Etage links -------------------------------------------------------------------------------
if(!Etage_eins_links_Alarm)
{Wohnung = Wohnung # "<tr><td align=center>" # Etage_eins_links # "</td><td align=center>1Etage links</td><td align=center>Flur</td><td align=center bgcolor='green'>alles Ok</td></tr>";}
else
{Wohnung = Wohnung # "<tr><td align=center>" # Etage_eins_links # "</td><td align=center>1.Etage links</td><td align=center>Flur</td><td align=center bgcolor='red'>Rauch erkannt!</td></tr>";}
Wohnung = Wohnung # "</table>";
! ----------------------------------------------------------------------------------------------------------------------
! ----------------------------- Links ----------------------------------------------------------------------------------
string link = "<p><a href = 'Schichtkalender.html'>Link zum Schichtkalender</a> </p>";
link = link # "<p><a href = 'Wetter.html'>Link zum Wetter</a></p>";
link = link # "<p><a href = 'Heizung.html'>Link zur Heizung</a></p>";
Webseite = Webseite # Tabelle_Haus # Wohnung # link;
! -----------------------------------------------------------------------------------------------------
! ab hier wird die Webseite gespeichert
string datei = "/media/usb1/Webseiten/Rauchmelder.html";
string stdout; string stderr;
system.Exec ("rm '" # datei # "'",&stdout,&stderr);
if ( stderr ){WriteLine ( "Fehler" );}
dom.GetObject("CUxD.CUX2801001:1.WRITE_FILE").State("0:" # datei #": "#Webseite );
WriteLine ( "Ende ")
da habe ich, um es leichter zu erklären die unnötigen Zeilen hier gestrichen:
Das bleibt als Fehler übrig um den es hier geht:
Code: Alles auswählen
string Etage_eins_rechts = "HmIP-SWSD 1Etage_rechts_Schlafzimmerzimmer:1";
string Erdgeschoss_links_KZ_Test = dom.GetObject(Etage_eins_rechts).DPByHssDP("SMOKE_DETECTOR_ALARM_STATUS").Value();
WriteLine("Ende" # Erdgeschoss_links_KZ_Test );
- Baxxy
- Beiträge: 11045
- Registriert: 18.12.2018, 15:45
- System: Alternative CCU (auf Basis OCCU)
- Hat sich bedankt: 633 Mal
- Danksagung erhalten: 2290 Mal
Re: Ich benötige hier die Doku
Stimmt die Benamung vom Kanal?
Im Script testen...
Im Script testen...
Code: Alles auswählen
object oChn = channels.Get ("HmIP-SWSD 1Etage_rechts_Schlafzimmerzimmer:1");
if (oChn) {
integer a = oChn.DPByHssDP ("SMOKE_DETECTOR_ALARM_STATUS").Value();
WriteLine("Gefunden... Wert = "#a);
}
else {WriteLine("Kanal nicht gefunden...");}
Grüße... Baxxy
- Raspberry Pi 4 als Homematic-Zentrale - Tipps und Informationen
- Analysescript für genutzte Funk-Adressen, Funkmodul-Hardware und Zentralen Hardware
- NANO CUL 868MHz - Stick zum AskSin Analyzer XS umflashen (Anleitung für ArduinoIDE unter Windows)
- Firmware Updates für IP-Aktoren / Sensoren... Info's, Tipps und Sonstiges
- CCU funkt nicht - CarrierSense (CS) Probleme erkennen und lösen