Als ein kleines Gimmik habe ich in openHAB einen kleinen Wecker realisiert. Dabei nutzte ich ein vorhandenes Squeezebox-Radio, das bereits in openHAB integriert ist. Mit ein paar Erweiterungen der openHAB-Konfiguration kann ich nun in der Sitemap den Wecker ein- und ausschalten und die Weckzeit definieren. Wie ich das umsetzte, zeigt dieser kleine Artikel.
Zunächst benötigen wir drei weitere Items, die wir einfach zu den bereits vorhandenen Squeezebox-Items hinzufügen:
Switch RDO61_WECKER "Wecker" <clock>
Number RDO61_WECKER_H "Weckzeit Stunde [%s]" <calendar>
Number RDO61_WECKER_M "Weckzeit Minute [%s]" <calendar>
Die Items haben außerhalb von openHAB keine Funktion und dienen quasi nur als Dummies, damit die Weckzeit und der Weckbetrieb gespeichert werden können.
Sitemap einrichten
Nun erweitern wir unsere Sitemap an gewünschter Stelle, damit wir den Wecker bequem von unserem openHAB-Client aus konfigurieren können:
Die hauptsächliche Aufgabe besteht in der Erstellung einer neuen Regel, die wie folgt aussehen kann:
import org.openhab.core.library.types.*
import org.openhab.core.persistence.*
import org.openhab.model.script.actions.*
import org.openhab.action.squeezebox.*
import org.joda.time.*
var Timer timerRDO61 = null
rule "Wecker Radio"
when
Time cron "0 * * * * ?"
then
if (RDO61_WECKER.state == ON) {
var sollMinute = (RDO61_WECKER_M.state as DecimalType).intValue
var sollStunde = (RDO61_WECKER_H.state as DecimalType).intValue
if (sollMinute == now.getMinuteOfHour && sollStunde == now.getHourOfDay) {
squeezeboxPlayUrl("rdo61", "http://www.folkalley.com/sidestream.pls")
timerRDO61 = createTimer(now.plusMinutes(30)) [|
sendCommand(RDO61_POWER, OFF)
]
}
}
end
Diese Regel wird minütlich ausgeführt und prüft, ob die aktuelle Uhrzeit mit der als Weckzeit konfigurierten Zeit übereinstimmt. Wenn dem so ist, wird auf einer zuvor konfigurierten Squeezebox ein in der Regel konfigurierter Radiosender abgespielt. Nach einer halben Stunde wird die Squeezebox wieder ausgeschaltet.
Wecker mit openHAB
Als ein kleines Gimmik habe ich in openHAB einen kleinen Wecker realisiert. Dabei nutzte ich ein vorhandenes Squeezebox-Radio, das bereits in openHAB integriert ist. Mit ein paar Erweiterungen der openHAB-Konfiguration kann ich nun in der Sitemap den Wecker ein- und ausschalten und die Weckzeit definieren. Wie ich das umsetzte, zeigt dieser kleine Artikel.
Verfügbare Artikel zu openHAB
Items definieren
Zunächst benötigen wir drei weitere Items, die wir einfach zu den bereits vorhandenen Squeezebox-Items hinzufügen:
Die Items haben außerhalb von openHAB keine Funktion und dienen quasi nur als Dummies, damit die Weckzeit und der Weckbetrieb gespeichert werden können.
Sitemap einrichten
Nun erweitern wir unsere Sitemap an gewünschter Stelle, damit wir den Wecker bequem von unserem openHAB-Client aus konfigurieren können:
Regel erstellen
Die hauptsächliche Aufgabe besteht in der Erstellung einer neuen Regel, die wie folgt aussehen kann:
Diese Regel wird minütlich ausgeführt und prüft, ob die aktuelle Uhrzeit mit der als Weckzeit konfigurierten Zeit übereinstimmt. Wenn dem so ist, wird auf einer zuvor konfigurierten Squeezebox ein in der Regel konfigurierter Radiosender abgespielt. Nach einer halben Stunde wird die Squeezebox wieder ausgeschaltet.
Verwandte Beiträge
Wenn wir OpenHAB aus den entsprechenden Repositories installiert haben, wurde ein neuer, nicht priviligierter Nutzer…
Auch von unterwegs ist es möglich, auf seine Hausautomatisierung zuzugreifen. Gern wüsste man, ob das…
In diesem Artikel geht es um die Installation der Hausautomatisierungssoftware openHAB auf ein bereits installiertes und…
In diesem Beitrag wurde der 1wire-Sensor DS18B20 vorgestellt und erläutert, wie man diesen an einem…
Die heutigen Smartphones enthalten meist ein NFC-Modul mitsamt intern verbauter Antenne. Mit dieser "Near-Field-Communication"-Technologie ist…