FritzBox: FHEM2CCU - FB-Stati an die CCU übermitteln
Dient zum Übertragen diverser FB-Status an die HomeMatic CCU1.
Das Script aktualisiert die angegebenen FB-Status bei FHEM Start und nach definierbarer Zeit. Bei Änderung eines Status wird die SystemVariable in der CCU gesetzt. FHEM benötigt root!
fhem.cfg
define CCU_IP dummy # IP-Adresse der CCU eingeben set CCU_IP xxx.xxx.xxx.xxx include ./FHEM/FHEM2CCU_FritzBox.cfg
FHEM2CCU_FritzBox.cfg
define CCU_SysVar_Prefix dummy
# Prefix für SystemVariablen kann hier geändert werden (Standart: FB_)
set CCU_SysVar_Prefix FB_
# WLAN
define WLAN_STATUS dummy
attr WLAN_STATUS room Fritz!Box
define WLAN_check at +*00:05:00 trigger WLAN_check
define WLAN_STATUS_set notify (WLAN_check|global:INITIALIZED) {\
my $v=`ctlmgr_ctl r wlan settings/ap_enabled`;;\
chomp($v);;\
fhem "set WLAN_STATUS $v" if($v ne Value("WLAN_STATUS"));;\
}
define WLAN_ntfy notify WLAN_STATUS {\
GetFileFromURL "http://" . Value("CCU_IP") . ":8181/fhem2ccu.exe?Status=dom.GetObject('" . Value("CCU_SysVar_Prefix") . "WLAN').State(" . Value("WLAN_STATUS") . ")"\
}
# WLAN5
define WLAN5_STATUS dummy
attr WLAN5_STATUS room Fritz!Box
define WLAN5_check at +*00:05:00 trigger WLAN5_check
define WLAN5_STATUS_set notify (WLAN5_check|global:INITIALIZED) {\
my $v=`ctlmgr_ctl r wlan settings/ap_enabled_scnd`;;\
chomp($v);;\
fhem "set WLAN5_STATUS $v" if($v ne Value("WLAN5_STATUS"));;\
}
define WLAN5_ntfy notify WLAN5_STATUS {\
GetFileFromURL "http://" . Value("CCU_IP") . ":8181/fhem2ccu.exe?Status=dom.GetObject('" . Value("CCU_SysVar_Prefix") . "WLAN5').State(" . Value("WLAN5_STATUS") . ")"\
}
# WLANGast
define WLANGast_STATUS dummy
attr WLANGast_STATUS room Fritz!Box
define WLANGast_check at +*00:05:00 trigger WLANGast_check
define WLANGast_STATUS_set notify (WLANGast_check|global:INITIALIZED) {\
my $v=`ctlmgr_ctl r wlan settings/guest_ap_enabled`;;\
chomp($v);;\
fhem "set WLANGast_STATUS $v" if($v ne Value("WLANGast_STATUS"));;\
}
define WLANGast_ntfy notify WLANGast_STATUS {\
GetFileFromURL "http://" . Value("CCU_IP") . ":8181/fhem2ccu.exe?Status=dom.GetObject('" . Value("CCU_SysVar_Prefix") . "WLANGast').State(" . Value("WLANGast_STATUS") . ")"\
}
fhem Frontend
Status an die CCU senden:
trigger WLAN_STATUS
Status aktuallisieren:
trigger WLAN_check
Einstellungen CCU
Firewall für FHEM-Server freigeben, SystemVariablen anlegen (Standard: FB_WLAN, usw.) Bei einem Neustart der CCU sollten die aktuellen Status geholt werden (wget, CUxD):
http://user:pwd@192.168.1.1:8083/fhem?cmd=trigger+WLAN_STATUS;trigger+WLAN5_STATUS;trigger+WLANGast_STATUS