FTUI Widget für SSCam Streaming Devices (SSCamSTRM)
Das SSCamSTRM Widget ist ein Widget für FHEM Tablet UI zur Integration von SSCam Streaming-Devices im FHEM Tablet UI.
Voraussetzung ist das Vorhandensein von SSCam Streaming-Devices. Streaming-Devices werden in existierenden SSCam Kamera-Devices angelegt mit:
set <SSCam-Device> createStreamDev <Typ>
Das entstandene Device ist im Attribut "data-device" des Widgets einzutragen.
Mindestlevel der Modulversionen sind SSCamSTRM 2.6.0 und SSCam 8.15.0.
Installation
Die Datei widget_sscamstrm.js muss in das js-Verzeichnis der fhem-tablet-ui Installation und die Datei sscam_hls.js in das entsprechende lib-Verzeichnis kopiert werden.
In FHEM kann der Befehl:
update all https://raw.githubusercontent.com/nasseeder1/fhem-ftui_sscamstrm_widget/master/controls_sscamstrm_widget.txt
verwendet werden um die Dateien einmalig zu installieren. Sollen die Dateien in den regelmäßigen Update-Prozess mit eingebunden werden, kann das control-File in FHEM integriert werden:
update add https://raw.githubusercontent.com/nasseeder1/fhem-ftui_sscamstrm_widget/master/controls_sscamstrm_widget.txt
Attribute
Attribut | Beschreibung | Standard-Wert | Beispiel |
---|---|---|---|
data-device | SSCam-Streamingdevice in FHEM, dessen Inhalt angezeigt werden soll | ||
data-get | Name des Readings, das eine Änderung des SSCam-Streamingdevice signalisiert | parentState | |
data-max-update | Maximale Häufigkeit in Sekunden für das Update des SSCam-Streamingdevices | 2 |
Das FTUI-Widget für SSCamSTRM kann alle zur Zeit unterstützen Streamingtypen wiedergeben. Dadurch kann nun auch das qualitativ hochwertige HLS-Format in FTUI dargestellt werden.
Hinweise
Im SSCamSTRM Widget wird anders als in anderen Widgets nicht der angegebene Wert aus dem Device dargestellt, sondern der HTML-Inhalt des angegebenen SSCam-Streamingdevices. Das data-get Reading dient nur dazu ein nötiges Update des Devices zu erkennen.
Es ist immer das Streaming-Device in FHEM zu erstellen und im Attribut "data-device" anzugeben, nicht das SSCam-Parentdevice selbst !
In dem Streamingdevice kann mittels der Attribute hideDisplayNameFTUI und htmlattrFTUI der Detaillink ausgeblendet bzw. die Größe des Content angepasst werden.
Beispiele
Einbinden des MJPEG-Streams. Das verwendete Streaming-Device vom Typ "mjpeg" wird vorab im zugeordneten SSCam-Device angelegt mit:
set <SSCam-Device> createStreamDev mjpeg
Das erzeugte Device, im Beispiel "SSCamSTRM.Keller.mjpeg", wird im data-device eingetragen.
<li data-row="1" data-col="1" data-sizey="3" data-sizex="4"> <header>Kamera Keller</header> <div class="cell"> <div data-type="sscamstrm" data-device="SSCamSTRM.Keller.mjpeg" ></div> </div> </li>
Einbinden der Schnappschußgalerie. Das verwendete Snapgallery-Device wird vorab im zugeordneten SSCam-Device angelegt mit:
set <SSCam-Device> createSnapGallery
Das erzeugte Device, im Beispiel "SSCamSTRM.Hauseingang.snapgallery", wird im data-device eingetragen.
<li data-row="1" data-col="1" data-sizey="3" data-sizex="5"> <header>Schnappschüsse Eingang</header> <div class="cell"> <div data-type="sscamstrm" data-device="SSCamSTRM.Hauseingang.snapgallery" ></div> </div> </li>
Es kann ebenfalls ein separates Steuerungspaneel für PTZ-Kameras erzeugt und in FTUI angezeigt werden. Dazu wird das Paneel im zugeordneten SSCam-Device angelegt mit:
set <SSCam-Device> createPTZcontrol
Bei der Einbindung in FTUI ist das Attribut data-get="state" zu ergänzen, da dieses Device das Standardreading parentState nicht enthält.
<li data-row="1" data-col="1" data-sizey="2" data-sizex="1"> <header>PTZ Control</header> <div class="cell"> <div data-type="sscamstrm" data-device="SSCamSTRM.Keller.PTZcontrol" data-get="state"></div> </div> </li>