Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ! Script für Warnung bei niedrigen Batterie - Ladestand
- ! von Uwe Debacher, Version vom 3.05.2017
- ! 1. Ein Gewerk "Batteriebetrieb" anlegen
- ! 2. Alle zu überwachenden Objekte dem Gewerk zuordnen
- ! 3. Das Skript per Zeitmodul 1x täglich ausführen
- var gewerk = dom.GetObject("Batteriebetrieb");
- string itemID;
- string text = "";
- integer counter = 0;
- foreach(itemID, gewerk.EnumUsedIDs()) {
- var device = dom.GetObject(dom.GetObject(itemID).Device());
- var ch = device.Channels().GetAt(0);
- var dp = ch.DPByHssDP("LOWBAT");
- if (!dp) {
- var dp = ch.DPByHssDP("LOW_BAT");
- }
- if ( dp.State() && dp.Value() ) {
- text = text # "- " # ch.Name().StrValueByIndex(":", 0) # "\r\n";
- counter = counter + 1;
- }
- }
- string mailto = "alarmanlage@schellenberger.biz";
- string sDate = system.Date("%d.%m.%Y %H:%M:%S");
- string sendmail = "Prüfung des Ladestandes der Batterien vom " # sDate # ".\r\n";
- ! Systemvariable holen
- var sv = dom.GetObject("Batteriezustand");
- if ( counter > 0 ) {
- sendmail = sendmail # "Der Ladezustand folgender Batterien ist niedrig: \r\n\r\n" # text;
- sendmail = sendmail # "\r\nBitte tausche die Batterien zeitnah aus.";
- string sendbetreff = "Batterie - Warnung";
- ! Systemvariable Wert setzen
- sv.State(false);
- }
- else {
- sendmail = sendmail # "Der Ladezustand aller Batterien ist in Ordnung.\r\n\r\n";
- string sendbetreff = "Batterie - OK";
- ! Systemvariable Wert setzen
- sv.State(true);
- }
- dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("/etc/config/addons/mh/email.sh '" # sendbetreff # "' '" # sendmail # "' '" # mailto #"'");
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement