hier eine ganz kurze Anleitung für die Steuerung der Dreambox aus openHAB heraus.
Ich zeige Lautstärke und den aktuellen Sender an. Mehr habe ich aktuell in der Sitemap nicht eingebunden. Ich habe zusätzlichen einen Schalter zum Ausschalten der Dreambox. Mit meinem globalen "ichgeheinsBett" Schalter wird dann auch die Dreambox abgeschaltet.
Meine Items sehen wie folgt aus:
Code: Alles auswählen
Number InnenEGWohnzimmerDreamboxActualVolume
"Volume [%d %%]"
{http="<[http://dreamboxIP/web/getcurrent:60000:REGEX(.*?<e2current>(.*?)</e2current>.*)]"}
String InnenEGWohnzimmerDreamboxActualChannel
"Aktueller Kanal [%s]"
{http="<[http://dreamboxIP/web/getcurrent:60000:REGEX(.*?<e2servicename>(.*?)</e2servicename>.*)]"}
String InnenEGWohnzimmerDreamboxPowerstate_RAW
{http="<[http://dreamboxIP/web/powerstate:60000:REGEX(.*?<e2instandby>(.*?)</e2instandby>.*)]"}
Switch InnenEGWohnzimmerDreamboxPowerstate
"DreamBox Wohnzimmer"
(gEGWohnzimmer)
Switch EGWohnzimmerDreamboxSetPowerstate
{http=">[*:POST:http://dreamboxIP/web/powerstate?newstate=0]"}
String EGWohnzimmerDreamboxStatus
" [%s]"
Code: Alles auswählen
/**
* Powerzustand Dreambox Wohnzimmer überwachen und verwertbaren Zustand setzen
*
*/
rule "InnenEGWohnzimmerDreamboxPowerstate_RAW_Changed"
when
Item InnenEGWohnzimmerDreamboxPowerstate_RAW changed
then
if (InnenEGWohnzimmerDreamboxPowerstate_RAW.state == "true"){
InnenEGWohnzimmerDreamboxPowerstate.postUpdate(OFF)
} else if (InnenEGWohnzimmerDreamboxPowerstate_RAW.state == "false"){
InnenEGWohnzimmerDreamboxPowerstate.postUpdate(ON)
} else {
InnenEGWohnzimmerDreamboxPowerstate.postUpdate(Uninitialized)
}
logInfo("HomeBox.InnenEGWohnzimmerDreamboxPowerstate_RAW_Changed", "Updated InnenEGWohnzimmerDreamboxPowerstate_RAW: " + InnenEGWohnzimmerDreamboxPowerstate_RAW.state)
end
Code: Alles auswählen
/**
* Powerzustand Dreambox setzen
*
*/
rule "Set_Dreambox_Powerstate"
when
Item InnenEGWohnzimmerDreamboxPowerstate received command
then
if (receivedCommand == ON) {
EGWohnzimmerDreamboxSetPowerstate.sendCommand(ON)
} else {
EGWohnzimmerDreamboxSetPowerstate.sendCommand(OFF)
}
logInfo("HomeBox.Set_Dreambox_Powerstate", "Updated Set_Dreambox_Powerstate: " + EGWohnzimmerDreamboxSetPowerstate.state)
end
Viele Grüße,
Seppy