Das tr064 Plugin
Beschreibung
Das Plugin ist ein Interface zu Routern die das TR-064 Protokoll implementieren, wie der weit verbreiteten Fritz!Box.
Mit dem calllist
Widget aus diesem Plugin lässt sich eine Anrufliste darstellen. Diese Liste enthält sowohl die
Namen der Anrufer (wenn im Router hinterlegt), also auch die Aufzeichnungen des Anrufbeantworters.
Einstellungen
Für eine grundsätzliche Erklärung des Aufbaus der Konfiguration und der Definition der im folgenden benutzten Begriffe (Elemente, Attribute) sollte zunächst dieser Abschnitt gelesen werden: Seiten und Struktur der CometVisu.
Das Verhalten und Aussehen des calllist-Widgets aus dem tr064-Plugin kann durch die Verwendung von Attributen und Elementen beeinflusst werden. Die folgenden Tabellen zeigen die erlaubten Attribute und Elemente. In den Screenshots sieht man, wie beides über den Editor bearbeitet werden kann.
Nur die mit ….. unterstrichenen Attribute/Elemente müssen zwingend angegeben werden, alle anderen sind optional und können daher weg gelassen werden.
Erlaubte Attribute im calllist-Element
Element |
Attribut |
|||
---|---|---|---|---|
Name |
Inhalt |
Beschreibung |
||
calllist |
device |
Text |
ID/Name für das Gerät aus der versteckten Konfiguration. |
|
max |
Zahl |
Maximale Anzahl der vom Router zu ladenden Einträge. |
||
columns |
Text |
Durch Strichpunkt getrennte Liste mit Spaltentypen (mögliche Spalten: caller, date, name, nameOrCaller, tam, type) |
||
TAM |
Text |
Icon für Anrufbeantworter. |
||
TAMColor |
Text |
|||
TAMwait |
Text |
Icon für Warten auf Anrufbeantworter. |
||
TAMwaitColor |
Text |
|||
TAMplay |
Text |
Icon für Anrufbeantworter abspielen. |
||
TAMplayColor |
Text |
|||
TAMstop |
Text |
Icon für Anrufbeantworter Stopp. |
||
TAMstopColor |
Text |
|||
typeIncoming |
Text |
Icon für eingehenden Anruf. |
||
typeIncomingColor |
Text |
|||
typeMissed |
Text |
Icon für verpassten Anruf. |
||
typeMissedColor |
Text |
|||
typeOutgoing |
Text |
Icon für abgehenden Anruf. |
||
typeOutgoingColor |
Text |
|||
typeActiveIncoming |
Text |
Icon für aktiven, eingehenden Anruf. |
||
typeActiveIncomingColor |
Text |
|||
typeRejectedIncoming |
Text |
Icon für abgelehnten, eingehenden Anruf. |
||
typeRejectedIncomingColor |
Text |
|||
typeActiveOutgoing |
Text |
Icon für aktiven, abgehenden Anruf. |
||
typeActiveOutgoingColor |
Text |
|||
typeUnknown |
Text |
Icon für unbekannten Anruftyp. |
||
typeUnknownColor |
Text |
|||
refresh |
Zahl |
Definiert die Aktualisierungsrate der Anrufliste in Sekunden |
Erlaubte Kind-Elemente und deren Attribute
Element |
Attribut |
|||
---|---|---|---|---|
Struktur |
Name |
Inhalt |
Beschreibung |
|
|
colspan |
Zahl |
Spaltenanzahl für dieses Widget. |
|
colspan-m |
Zahl |
Übersteuert die Spaltenanzahl auf mittleren (medium) Browser Größen. |
||
colspan-s |
Zahl |
Übersteuert die Spaltenanzahl auf kleinen (small) Browser Größen. |
||
rowspan |
Zahl |
Zeilenanzahl für dieses Widget. |
||
x |
Text |
Horizontale Position des Widgets auf 2D Seiten. |
||
x-s |
Text |
Horizontale Position des Widgets auf 2D Seiten auf kleinen (small) Browser Größen. |
||
x-m |
Text |
Horizontale Position des Widgets auf 2D Seiten auf mittleren (medium) Browser Größen. |
||
y |
Text |
Vertikale Position des Widgets auf 2D Seiten. |
||
y-s |
Text |
Vertikale Position des Widgets auf 2D Seiten auf kleinen (small) Browser Größen. |
||
y-m |
Text |
Vertikale Position des Widgets auf 2D Seiten auf mittleren (medium) Browser Größen. |
||
z |
Text |
Für zukünftige Anwendungen reserviert. |
||
width |
Text |
Breite des Widgets auf 2D Seiten. |
||
width-s |
Text |
Breite des Widgets auf 2D Seiten auf kleinen (small) Browser Größen. |
||
width-m |
Text |
Breite des Widgets auf 2D Seiten auf mittleren (medium) Browser Größen. |
||
scale |
true oder false |
Automatische Anpassung der Layout-Werte auf Basis der Skalierung des Backdrops ein/-ausschalten (Standardeinstellung: true). |
||
scale-s |
true oder false |
Automatische Anpassung der Layout-Werte auf Basis der Skalierung des Backdrops ein/-ausschalten auf kleinen (small) Browser Größen (Standardeinstellung: true). |
||
scale-m |
true oder false |
Automatische Anpassung der Layout-Werte auf Basis der Skalierung des Backdrops ein/-ausschalten auf mittleren (medium) Browser Größen (Standardeinstellung: true). |
Element |
Attribut |
|||
---|---|---|---|---|
Struktur |
Name |
Inhalt |
Beschreibung |
|
|
name |
Text |
Name unter dem das Icon registriert ist. |
|
type |
Text |
|||
flavour |
Text |
Auswahl der Darstellungsvariante. Siehe auch Flavour. |
||
color |
Text |
Farbe des Icon in CSS Notation (z.B. #1188FF). |
||
styling |
Text |
Ändert die Farbe des angezeigten Wertes abhängig vom Wert selbst. Siehe auch Styling |
||
class |
Text |
Füge dieses Attribut der CSS Klasse hinzu, so dass das Widget durch ein eigenes Stylesheet zusätzlich formatiert werden kann. |
||
|
Text |
Text um bei dem Widget eine Beschreibung darzustellen. |
Element |
Attribut |
|||
---|---|---|---|---|
Struktur |
Name |
Inhalt |
Beschreibung |
|
|
transform |
Text |
Umwandlung des Bus-System Wertes um angezeigt werden zu können. |
|
mode |
disable, read, write oder readwrite |
„disable“ deaktiviert die Kommunikation, bei „read“ wird nur vom Backend gelesen, bei „write“ wird nur geschrieben und „readwrite“ wird die Adresse zum Lesen und zum Schreiben verwendet. |
||
variant |
Text |
|||
format-pos |
Zahl |
Position für Format-String wenn mehrere Adressen gleichzeitig genutzt werden. |
||
selector |
Text |
Nur MQTT: JSON Selektor |
||
qos |
Zahl |
Nur MQTT: QoS |
||
retain |
true oder false |
Nur MQTT: retain Flag |
||
ignore-error |
true oder false |
Nur MQTT: ignoriere Dekodierfehler. |
||
|
Text |
Die Gruppenadresse (z.B: 12/0/7) bei KNX-Backends, der Item-Name beim openHAB-Backend oder das Topic bei MQTT. |
XML Syntax
Alternativ kann man für das tr064-Plugin auch von Hand einen Eintrag in der visu_config.xml hinzufügen.
Vorsicht
In der Config selbst dürfen NUR UTF-8 Zeichen verwendet werden. Dazu muss ein auf UTF-8 eingestellter Editor verwendet werden!
Hier der minimale Beispielcode der das calllist Widget aus dem tr064 Plugin aus dem folgenden Screenshot erzeugt:
...
<meta>
<plugins>
<plugin name="tr064"/>
</plugins>
</meta>
...
<calllist device="fritzbox">
<label>calllist</label>
</calllist>
Voraussetzungen / Einrichtung auf dem Server
Um dieses Plugin nutzen zu können muss auf dem Server PHP eingerichtet sein und die Unterstützung für SoapClient installiert sein.
Unter Debian basierten Systemen muss daher das Paket php-soap
installiert
sein.
Einrichtung der Fritz!Box
Um Zugriff auf die Anrufliste der Fritz!Box zu bekommen, muss dort ein Benutzer angelegt werden (oder ein bereits angelegter Benutzer verwendet werden). Dies geht über die Benutzer-Verwaltung:
Der Benutzer selbst benötigt noch die Rechte um auf die Anrufliste zugreifen zu dürfen:
Damit das Plugin auf diesen Benutzer zugreifen kann, müssen dessen Login-Daten hinterlegt werden. Dies geht über die „Versteckten Konfigurationen“.
Der dort verwendete Name muss im calllist Widget im Attribut device
angegeben werden.
Die in der versteckte Konfiguration verwendeten Schlüssel/Wert-Paare sind:
Schlüssel |
Wert |
Beispiel |
---|---|---|
uri |
Die URI für den Zugriff auf die TR-064 Schnittstelle |
|
user |
Der Benutzername für den TR-064 Zugang |
|
pass |
Das Passwort für den TR-64 Zugang |
|
selfsigned |
Erlaube selbst signierte Zertifikate wenn |
|
Hinweis
Wenn eine SSL gesicherte Verbindung zum Router aufgebaut werden soll (d.h. die URI mit
https
beginnt), so ist meist selfsigned
auf true
zu setzen, da ein Router
im Heimnetz üblicher Weise mit einem selbst signierten Zertifikat arbeitet.
Eine Fehlermeldung mit dem Inhalt
{"faultstring":"Could not connect to host","faultcode":"HTTP"}
kann darauf hinweisen,
dass selfsigned
auf true
gesetzt werden muss.
Fußnoten