Deutsch:Jobs

From bab-tec.de wiki

Jump to: navigation, search

[[Deutsch|--Albert 13:05, 25 July 2014 (CEST)Zurück]]

File:Example.jpg

Contents

Anwendungsfälle

Verzögerer (langer Tastendruck)

Um eine Lichtszene durch einen längeren Tastendruck auszulösen benötigen Sie zwei Taster und zwei Lichtszenen. Diese müssen wie folgt parametriert werden:

EIN - Taster

Symbol Beschreibung
Adresse: 1/2/3
Funktion Taster (Ein/Aus)

Lichtszene – EIN

Symbol Beschreibung
Eingang: 1/2/3
Auslösung Start bei EIN
Anhaltbar: Ja
Verzögerung 30 --> 3s
1. Ausgang frei
1. Ausgang Zentrale Gruppenadresse = 1

AUS - Taster

Symbol Beschreibung
Adresse: 1/2/4
Funktion Taster (Ein/Aus)

Lichtszene – AUS

Symbol Beschreibung
Eingang: 1/2/4
Auslösung Start bei AUS
Anhaltbar: Ja
Verzögerung 30 --> 3s
1. Ausgang frei
1. Ausgang Zentrale Gruppenadresse = 1


Hinweis: Sie müssen das Feld „Anhaltbar“ mit einem Häkchen versehen (Flag setzen), damit der Status beim Loslassen unter der gewünschten Verzögerung aufgehoben wird. Sobald der Taste genauso lange oder länge gedrückt wird, sendet die Lichtszene den gewünschten Ausgang.

Zyklischer Telegramm Generator

Sie können den Zeit senders als einen zyklischen Telegramm Generator benutzen. Viele der Jobs im eibPort benötigen ein Auslösendes Telegramm. Falls Sie diese Jobs in einem zyklischen Intervall aufrufen möchten, nutzen Sie einfach die Zeit Telegramme des Zeit Senders als Eingang.

Betriebsstundenzähler

Lösungsmöglichkeit: Mathematik (Ab Firmware 3.0.1)

BSZ deutsch.png
Dieser Betriebsstundenzähler basiert auf einen Impulsgeber (Zeitsender) und auf Mathejobs, die die eigentliche Aufgabe als Betriebsstundenzähler übernehmen. Der Betriebsstundenzähler kann optional mit einem Vorgabewert belegt werden.

Jobs

Voraussetzung ist ein Impulsgeber. Hierzu lässt sich der Job "Zeit Sender" nutzen, dessen Sendeintervall man je nach gewünschter Auflösung des Betriebsstundenzählers einstellt. In diesem Beispiel wird das Intervall auf den kleinstmöglichen Wert von 10 Sekunden gesetzt. Hierbei ist zu beachten, dass alle folgenden Mathejobs alle 10 Sekunden synchron getriggert werden und ggf. einen neuen Wert senden und somit eine hohe Buslast erzeugen können. Sollen viele Betriebsstundenzähler eingesetzt werden, kann man den Ausgang des Zeitsenders über den Job "Verzögerer" z.B. um 5 Sekunden entzerren und die Mathejobs dann zur hälfte auf den Ausgang des Zeitsenders, zur anderen hälfte auf den Ausgang des Verzögerers setzen.

Der Ausgang des Impulsgebers wird im Folgenden mit GA#1 nummeriert.


Ein Mathejob steht hier für einen Betriebsstundenzähler. Der Zählerwert wird hier als EIS 11 ausgegeben. Hier sind die Kommunikationsobjekte aufgelistet:



Der Mathematische Ausdruck für Copy&Paste:

 is_value_override = eoiga() == eo_ga(3,0);
override_skip_send = (!is_value_override && eo(1) == 0 ? 1 : 0);
is_value_override ? eo(3) : (eo(0) + 1)

Die weiteren Einstellungen bitte unbedingt dem angehängten Screenshot entnehmen.

Visualisierung

In der Visualisierung lassen sich nun normale Werteanzeigen nutzen. Es wird die Gruppenadresse GA#11 eingegeben und als Datentyp EIS11u ausgewählt. Um zwei Nachkommastellen zu sehen, wird in das Formatfeld '0.00' eingetragen. Da die obigen Jobs in 10 Sekunden-Schritten zählen, muss nun ein Faktor gesetzt werden:



Zähler-Job

Sobald bei einem einfachen Zähler-Job als Ausgang der Datentyp 2 Byte ausgewählt wird, ist der maximale darstellbare Wert 65535 (FF FF). Sobald ein Zähler einen Wert über 65535 anzeigen soll muss als Datentyp EIS 11 benutzt werden (4Byte), dadurch erhöhr sich der Wertebereich auf 4.294.967.295.



astabile Kippstufe (flip flop)

17/0 start first input NAND
17/1 output
17/2 second input NAND
17/3 enable/disable (Gateobject)

Flip flop.JPG


Lichtszenen mit EIS 14 starten

Die Lichtszenen im eibPort können nur über EIS 1 Telegramme mit den Werten 0 oder 1 gestartet werden. Es gibt jedoch auch die Möglichkeit, die Szenen über EIS 14 zu starten (z.B. Wert 5 startet Lichtszene 5).Dazu benötigt man einen Mathe Job mit dieser Formel:

 override_addr = (HG << 11) | (MG << 8) | eo(0); 1

HG und MG müssen mit der Haupt- und Mittelgruppe ersetzt werden, mit denen die Lichtszenen (EIS 1) gestartet werden sollen. Wenn zum Beispiel 10 Szenen über die Gruppenadressen 1/5/1-1/5/10 gestartet werden sollen, muss HG mit 1 und MG mit 5 ersetzt werden. eo(0) ist eine Variable für den ersten Eingang des Mathejobs auf die die Werte 1-10 gesendet werden. Der erste Teil der Formel berechnet somit die Ausgangsadresse, über die eine Szene gestartet werden soll. Die folgende 1 ist der Wert, der auf dieser Adresse gesendet wird um eine Lichtszene zu starten (hier "Start bei EIN").

Beispiel (siehe Bild):

5/1/0 ist EIS 14 mit den Werten 1-10

Lichtszene 14.png
1: 5/1/1 ist Trigger der ersten Lichtszene

2: 5/1/2 ist Triger der zweuiten Lichtszene

...

10: 5/1/10 ist Trigger der zehtne Lichtszenen


Der Ausgang des Mathejobs wird nicht gesendet und kann eine Dummy Adresse erhalten oder auch (z.B. als Merker) die 5/1/1




Lichtszenen Uhrzeitabhängig starten

Idee: 

Ein Raum soll Zeitabhängig illuminiert werden. Für die Farbeinstellungen werden in diesem Beispiel vier Lichtszenen angelegt, die über separate Gruppenadressen gestartet werden. Die Beleuchtung wird über einen Tastsensor ein und ausgeschaltet. Es wird also ebenfalls eine fünfte Lichtszene benötigt um die Beleuchtung auszuschalten. 

Es werden nun drei Mathematik Jobs angelegt. Der erste Job extrahiert aus einem EIS 3 Uhrzeit Telegramm den Stundenanteil als EIS 14 Wert. Der zweite Job berechnet aus dem Stundenwert den gewünschten Lichtszenen-Index: 0 = Aus bzw. 1 - 4 Zeitabhängig. Der dritte Job sendet bei Änderung des Lichtszenen-Index ein Telegramm auf die Startadresse der Lichtszene. 


Eingänge:

Uhrzeit (EIS 3)
Tastsensor (EIS 1)

Ausgänge:

Lichtszene "AUS"
Lichtszene < 10°C
Lichtszene 10-14°C
Lichtszene 14-18°C
Lichtszene > 18°C

Hilfsadressen:

Uhrzeit/Stunde (EIS 14)
Lichtszene Soll Index (EIS 14)


Stundenanteil aus EIS 3 Uhrzeit extrahieren

Time2Hour.png

Dieser Job nutzt ein EIS 3 Uhrzeit Telegramm um daraus den Stundenanteil als EIS 14 Wert zu extrahieren. Als Eingang wird hier EIS 11 (4 Byte) ausgewählt, da der Mathematik Job keinen 3 Byte Wert verarbeiten kann. Das 3 Byte Telegramm wird automatisch mit einem Byte als LSB (least significant byte, also "rechts") aufgefüllt. Nach der EIS 3 spezifikation enthalten die 4 Bytes in der Binärdarstellung folgende Informationen:

TTTHHHHH 00MMMMMM 00SSSSSS XXXXXXXX

Das (vom Job) hinzugefügte Byte ist hier mit X markiert. Um den Stundenanteil auszuwählen, werden die Bytes mit 0x1f000000 undiert und um 24 Bits nach rechts geschoben.


Für Copy & Paste:

eo(0) & 0x1f000000 >> 24


Stunde zu Lichtszenen-Soll-Index

Hour2Index.png
Dieser Job hat einen EIS 14 Eingang für den zuvor berechneten Stundenwert und einen EIS 1 Eingang, z.B. für einen Tastsensor oder Bewegungsmelder "eo(1)". Über If-Then-Else Anweisungen wird je nach Status des EIS 1 Eingangs entweder der Index 0 gesendet (für Beleuchtung aus) oder ein Block für den Stundenwert abgearbeitet. Der Stundenwert wird ebenfalls über If-Then-Else Anweisungen in 4 Bereiche eingeteilt: Stunde <= 10 bedeutet Lichtszene 1; Stunde <= 14 bedeuted Lichtszene 2 usw.


Für Copy & Paste:

hour = eo(0);
eo(1) == 1 ? (hour <= 10 ? 1 : (hour <= 14 ? 2 : (hour <= 18 ? 3 : 4))) : 0


Ausgewählte Lichtszene starten

Index2Scene.png
Dieser Job arbeitet nur, wenn sich das Eingangsobjekt, also der Lichtszenen-Soll-Index ändert. Das verhindert, dass Änderungen an der Beleuchtung durch den Kunden, bei jeder Temperaturänderung überschrieben werden.

Die Adresse für Lichtszene "AUS" wird als Ausgangsobjekt eingetragen. In dem mathematischen Ausdruck werden nun zunächst die vier weiteren Gruppenadressen zum Starten der Lichtszenen in Integer Werte umgerechnet. Dazu wird die Funktion str_ga("") genutzt. Aus Sicht der Performance des "Scripts" ist das nicht optimal, kann aber vernachlässigt werden, da die Funktion nicht sekündlich berechnet wird. Zudem macht es den Ausdruck leserlicher und später besser wartbar.

Um die Ausgangsadresse nun mit der Adresse der entsprechenden Lichtszene zu überschreiben, wird die Variable override_addr überschrieben. Wenn der Soll-Index nicht in dem Bereich von 1-4 liegt, wird die Variable auf 0 gesetzt, damit der oben definierte Ausgang des Jobs genutzt wird (für Lichtszene AUS).

Danach wird nur noch eine 1 auf dem Ausgang gesendet, um die ausgewählte Lichtszene zu starten.


Für Copy & Paste:

index = eo(0);
lz1 = str_ga("18/1/1");
lz2 = str_ga("18/1/2");
lz3 = str_ga("18/1/3");
lz4 = str_ga("18/1/4");
override_addr = (index == 1 ? lz1 : (index == 2 ? lz2 : (index == 3 ? lz3 : (index == 4 ? lz4 : 0))));
1




Lichtszenen Temperaturabhängig starten

Idee:

Ein Raum soll Temperaturabhängig illuminiert werden. Für die Farbeinstellungen werden in diesem Beispiel vier Lichtszenen angelegt, die über separate Gruppenadressen gestartet werden. Die Beleuchtung wird über einen Tastsensor ein und ausgeschaltet. Es wird also ebenfalls eine fünfte Lichtszene benötigt um die Beleuchtung auszuschalten.

Es werden nun zwei Mathematik Jobs angelegt. Der erste Job berechnet aus einem Temperatureingang den gewünschten Lichtszenen-Index: 0 = Aus bzw. 1 - 4 Temperaturabhängig. Der zweite Mathejob sendet bei Änderung des Lichtszenen-Index ein Telegramm auf die Startadresse der Lichtszene.


Eingänge:

Temperatursensor (EIS 5)
Tastsensor (EIS 1)

Ausgänge:

Lichtszene "AUS"
Lichtszene < 10°C
Lichtszene 10-14°C
Lichtszene 14-18°C
Lichtszene > 18°C

Hilfsadressen:

Lichtszene-Soll-Index (EIS 14)


Temperatur zu Lichtszenen-Soll-Index

Temperature2Index.png
Dieser Job hat einen Temperatur "eo(0)" und einen EIS 1 Eingang, z.B. für einen Tastsensor oder Bewegungsmelder "eo(1)". Über If-Then-Else Anweisungen wird je nach Status des EIS 1 Eingangs entweder der Index 0 gesendet (für Beleuchtung aus) oder ein Block für den Temperaturwert abgearbeitet. Die Temperatur wird ebenfalls über If-Then-Else Anweisungen in 4 Bereiche eingeteilt: Temperatur <= 10 bedeutet Lichtszene 1; Temperatur <= 14 bedeuted Lichtszene 2 usw.


Für Copy & Paste:

temp = eo(0);
eo(1) == 1 ? (temp <= 10 ? 1 : (temp <= 14 ? 2 : (temp <= 18 ? 3 : 4))) : 0


Ausgewählte Lichtszene starten

Index2Scene.png
Dieser Job arbeitet nur, wenn sich das Eingangsobjekt, also der Lichtszenen-Soll-Index ändert. Das verhindert, dass Änderungen an der Beleuchtung durch den Kunden, bei jeder Temperaturänderung überschrieben werden.

Die Adresse für Lichtszene "AUS" wird als Ausgangsobjekt eingetragen. In dem mathematischen Ausdruck werden nun zunächst die vier weiteren Gruppenadressen zum Starten der Lichtszenen in Integer Werte umgerechnet. Dazu wird die Funktion str_ga("") genutzt. Aus Sicht der Performance des "Scripts" ist das nicht optimal, kann aber vernachlässigt werden, da die Funktion nicht sekündlich berechnet wird. Zudem macht es den Ausdruck leserlicher und später besser wartbar.

Um die Ausgangsadresse nun mit der Adresse der entsprechenden Lichtszene zu überschreiben, wird die Variable override_addr überschrieben. Wenn der Soll-Index nicht in dem Bereich von 1-4 liegt, wird die Variable auf 0 gesetzt, damit der oben definierte Ausgang des Jobs genutzt wird (für Lichtszene AUS).

Danach wird nur noch eine 1 auf dem Ausgang gesendet, um die ausgewählte Lichtszene zu starten.


Für Copy & Paste:

index = eo(0);
lz1 = str_ga("18/1/1");
lz2 = str_ga("18/1/2");
lz3 = str_ga("18/1/3");
lz4 = str_ga("18/1/4");
override_addr = (index == 1 ? lz1 : (index == 2 ? lz2 : (index == 3 ? lz3 : (index == 4 ? lz4 : 0))));
1


Niederschlags- und Temperaturabhängige Bewässerungssteuerung

Für eine Bewässerungssteuerung wird die Information benötigt, ob es in den letzten 24 Std. geregnet hat und ob in dieser Zeit eine Temperaturschwelle überschritten wurde.

Um die Temperatur- und die Niederschlagsinformationen zu verarbeiten wird jeweils ein Mathejob benötigt, der den aktuellen Zeitstempel auf eine Gruppenadresse sendet, sofern die Bedingung "Niederschlag" oder "Temperatur über 25°C" erfüllt sind.

Ein dritter Mathejob dient zum Starten der Bewässerung. Das Telegramm zum Starten der Bewässerung (z.B. von einer Wochenuhr) wird als Eingang auf diesen Mathejob gesetzt. Hier wird nun überprüft, ob die Zeitstempel für Niederschlag oder Temperatur innerhalb der letzten 24 Stunden liegen. Ist dies der Fall sendet der Mathejob ein Telegramm auf dem Ausgang um die Bewässerung zu starten.


Benötigte Jobs:


Gruppenadressen im Beispiel:


Mathjob Temperatur

BewaesserungTemperatur.png
Dieser Job sendet kein Telegramm, wenn der Eingangswert - also die Temperatur - unter 25°C ist. Ist die Temperatur 25°C oder höher, wird der aktuelle Zeitstempel auf die Ausgangsadresse gesendet.
override_skip_send = eo(0) < 25;
time()

Mathejob Niederschlag

BewaesserungNiederschlag.png
Dieser Job sendet nur bei Niederschlag den aktuellen Zeitstempel aus die Ausgangsadresse.
override_skip_send = eo(0) == 0;
time()

Mathejob Bewässerung starten

Bewaesserung.png
Dieser Mathejob überprüft, ob es in den letzten 24 Stunden geregnet hat und ob die Temperatur von 25°C überschritten wurde. Ist das Signal für die Bewässerung "EIN", wird es durchgereicht, sofern es nicht geregnet hat und die Temperatur über 25°C gestiegen ist. Ein "AUS" Signal wird in jedem Fall durchgereicht.
vor24h = time() - 24 * 60 * 60;
regen = eo(1) > vor24h;
temperatur = eo(2) > vor24h;
override_skip_send = (eo(0) == 1 && !regen && temperatur);
eo(0)

Minimaler / maximaler Tageswert versenden

Es soll ein minimaler oder maximaler Tageswert ermittelt und per E-Mail versendet werden. Grob lässt sich diese Aufgabe lösen, indem bei jedem empfangenen Telegramm der minimale bzw. maximale Wert verglichen und ggf. aktualisiert wird. Nachts wird dieser Wert versendet und der maximale Wert zurückgesetzt. Dieses Beispiel bezieht sich auf eine maximale Tagestemperatur.

Benötigte Jobs:

Gruppenadressen im Beispiel:

Vergleicher

Max vergleicher.png
Mit dem Vergleicher wird der jeweilige Eingangswert mit dem bisher ermittelten Maximum verglichen. Ist der Eingangswert höher als das bisherige Maximum, wird der Wert als neues maximum auf die Adresse 16/2 gesendet. Ist der Wert niedriger, wird keine weitere Aktion durchgeführt.

Wochenuhr

Max trigger.png
Per Wochenuhr wird Nachts ein Telegramm ausgelöst, um die folgende Lichtszene zu starten. Es empfiehlt sich, den Zeitpunkt nicht direkt auf 0 Uhr zu setzen, da zu viele gleichzeitige Aktionen zu einem Zeitpunkt eine hohe (Telegramm-) Last erzeugen kann. Deswegen wird hier keine Jahresuhr genutzt, da diese nur exakt um 0 Uhr sendet.

Lichtszene

MaxSendReset.png
Die Lichtszene Startet im Abstand von jeweils einer Sekunde das Versenden der Mail mit dem maximalwert und anschließend das zurücksetzen des Wertes. Da hier im Beispiel ein maximalwert ermittelt werden soll, wird der Wert auf einen nie zu erreichenden minimalwert gesetzt. Hier also -100°C

E-Mail Job

Max mail.png
Der E-Mail Sender verschickt die ermittelte Maximaltemperatur als Fließkommazahl mit zwei Nachkommastellen (Formatierung im Text: %.2f).

HTTP Requests

Mittels http-Requests können Inhalte von Webservern abgeholt und verarbeitet werden oder Daten an Server versendet werden. Dazu stehen die Methoden GET und POST zur Verfügung. Der URL (einheitlicher Quellen Anzeiger) wird dabei aus drei verschiedenen Teilen zusammengesetzt, Basis URL, Ziel und Wertobjekt(en) bzw. Inhalten als Content-Type. Pflichtfelder sind Elemente Name, Eingangsobjekt und Basis-URL. Für das Auswerten der Antworten eines Webservers steht ein Modul zur Verfügung welches mittels Regulärer Ausdrücke die Antwort durchsucht und aufgrund dessen Ereignisse im KNX auslösen kann.


Axis PTZ Netzwerkkamera via http request Job steuern

Um eine PTZ Netzwerkkamera über KNX Gruppenadressen zu steuern wird ein http request Job benötigt.

Die Befehle sind in der sogenannten „http API“ beschrieben. Verfügbar sind diese Dokumente auf den Hersteller Internetseiten. Hier der Link für Axis Kameras: http://www.axis.com/au/en/support/developer-support/vapix

Die PTZ Befehle befinden sich unter dem Abschnitt “Pan/Tilt/Zoom API” (PTZ). Unter dem folgenden Link ist das entsprechende PDF Dokument herunterladbar: http://www.axis.com/files/manuals/vapix_ptz_52933_en_1307.pdf

In der Tabelle ab der Seite 20 befinden sich die Befehle und die Syntax des http request für die PTZ Funktionen: http://<ip-address-camera>/axis-cgi/com/ptz.cgi?<argument>=<value>

Parameter: <ip-address-camera> - Die IP Adresse der Axis Kamera. <argument> - An dieser Stelle wird der Befehl “move” für die PTZ Funktionen eingetragen. In der Tabelle ab Seite 20 sind alle mögliche PTZ Befehle aufgelistet. <value> Eingetragen werden an dieser Stelle die Werte für den PTZ Befehl “move”. Mögliche Werte für „move“ sind: “home, up, down, left, right, upleft, upright, downleft, downright, stop” (Tabelle auf Seite 21).


Hier eine Bildschirmfoto das eine Beispielkonfiguration zeigt:
Axis PTZ http request.png

Um die Kamera über die KNX Gruppenadresse 31/0/200 (Bildschirmfoto) zu steuern, wird der Job mit den Triggerwerten:

ausgelöst.



DynDNS Update via http Request für den Dienst noip.com

Damit der EIBPORT über einen Hostnamen aus dem Internet erreichbar ist, wird ein DynDNS Dienst benötigt. Dieser Dienst setzt aber voraus das die wechselnde externe IP Adresse immer aktualisiert ist. Diese Aufgabe kann der EIBPORT mit einen http-Request übernehmen. Zum Biespiel für den Fall das nur ein (LTE) Modem und kein Router in der Anlage vorhanden ist.

Benötigt wird - ein "Zyklischer Sender" Job der diesen http Request Job antriggert, damit die externe IP Adresse beim DynDNS Dienst aktuell gehalten wird - und ein (kostenloser) Account beim DynDNS Dienst www.noip.com Die Konfiguration für dem Dienst no-ip.com wird im Bild gezeigt:

http Request Job DynDNS Service no-ip.com update


- Das Protokoll ist: "http://"

- Benutzername "Auth Name" ist der Benutzername des noip.com Accounts

- Passwort "Auth Passwort" das Passwort für den noip.com Accounts

- Die Basis URL lautet: dynupdate.no-ip.com/nic/update/

- Die Ziel-URL lautet: hostname=[VOLLSTÄNDIGER HOSTNAME] => Die Angaben in eckigen Klammern sind vom Benutzer anzugeben.



Push Notification an iOS APP PROWL

http Request Job

Prowl ist der Growl-Client für iOS. Per PUSH NOTIFICATION ist es möglich an iPhone, iPod touch oder iPad Benachrichtigungen von einem Computer oder aber auch vom EIBPORT zu senden.

Hier eine kleine Anleitung wie per PUSH NOTIFICATION eine Temperatur auf ein iOS Endgerät gesendet werden kann:

- Als erstes wird unter Prowl (http://www.prowlapp.com/) einen Account angelegt. - Mit einen gültigen Account können sogenannte "API Keys" erstellt werden. -> Dieser API Key wird im http Request Job benötigt und stellt die Verbindung zum Prowl Account her.

http Request Job

Für die PUSH NOTIFICATION wird ein http Request Job benötigt. - Im EIBPORT Job Editor einen http Request Job anlegen.

- Die Eingangsgruppenadresse ist der Trigger, wann eine NOTIFICATION gesendet werden soll.

- Die Basis URL lautet: api.prowlapp.com/publicapi/add?apikey=[API KEY]&application=[NAME]&description=[BESCHREIBUNG] => Die Angaben in eckigen Klammern sind vom Benutzer anzugeben.

- Ziel URL für Ziel 1 ist: =/0 Auslösewert kann vom Kunden angegeben werden (senden bei 1 oder 0)

- Werte Senden für Wert "1" z.B. "5/1/7", " EIS 5" " %f" Format



Abfrage der 'uptime' und 'load' des eibPorts

Die URL die Sie benötigen: "http://<eibPort_IP>/cgi-bin/statcgi?uptime=on"
BN: status
pw: eibPort

Hier der reguläre Ausdruck mit die Auswertung erfolgt: "up (.*), load average: ([\.\d]*), ([\.\d]*), ([\.\d]*)" Die vier Gruppen im Ausdruck zeigen auf die vier Ausgangsobjekte des Jobs. Der Datentyp für alle vier Ausgangstypen muss EIS 15 sein, andernfalls werden die Fließkomma Werte nicht korrekt angezeigt. Bitte Beachten: Die Abfrage der Durchschnitts-Prozessor-Auslastung zu oft pro Minute kann zu noch höhere Auslastung führen ;) !!


Abfrage des Datenbank Status des eibPorts

under construction !


Abfrage von Wetterdaten

Mit dem HTTP Request Job können verschiedene Wetterdienste abgefragt werden: Wetterabfrage


Die Google Wetter API wurde leider abgeschaltet. Im Folgenden noch das Konfigurationsbeispiel, welches nun nicht mehr funktioniert.

Mittels einer Anfrage an den Google Wetterdaten Server („Google Weather API“) erhält der eibPort eine XML-Datei als Antwort. Die Antwort wird dann durch den Ausdruck gefiltert und die Werte über die Ausgänge an die Visualisierung weitergeleitet. Für den Request werden folgenden Einstellungen gemacht:

Protokoll: http:// Basis-URL: www.google.de Request Type: GET GET-URL / Post Data: /ig/api?weather=Dortmund

Hinweis: Es ist wichtig sicher zu stellen, dass die Antwort des Requests in der richtigen Sprache erfolgt. Nutzt man z.B. „google.com“ anstatt „google.de“ erfolgt die Antwort in englischer Sprache.

Mit dem Stadtnamen hinter ‚weather=‘ wird bestimmt von welchem Ort die Wetterdaten übermittelt werden. Theoretisch wäre es möglich, diese Einstellung mittels der Wertobjekte zu ändern. Kopiert man die URL dieses Requests in eine Browserzeile und ruft sie ab, wird die Antwort als XML-Datei im Browser angezeigt. In unserem Beispiel möchten wir die aktuellen Wetterbedingungen, die aktuelle Temperatur in Celsius, die aktuelle Luftfeuchtigkeit und die Höchsttemperatur für den nächsten Tag ausgeben. Zunächst erstellen wir die Ausdrücke für jeder dieser Ausgaben einzeln, danach fügen wir sie zusammen.

Hinweis: Die erstellten Ausdrücke lassen sich am besten mit einem Tool kontrollieren. Es gibt die verschiedensten Tools online sowie Beispiel: http://dev.radsoftware.com.au/downloads/Rad.RegexDesigner.Setup.1.4.exe. Dabei ist zu beachten, dass die Flags manchmal eine andere Bedeutung haben (z.B. Dot All = Singleline).

Wichtig: Mit Mozilla Firefox kann es vorkommen, dass sich am Ende des Regulären Ausdrucks ein Leerzeichen befindet wenn er direkt von hier in das entsprechende Feld im Mathejob kopiert wird. Ist das der Fall funktioniert der Ausdruck nicht. Bitte überprüfen Sie den Eintrag im Mathejob gründlich.

Aktuellen Wetterbedingungen:
Die aktuellen Wetterdaten stehen im Abschnitt „<current_conditions>“. Danach folgt die Angabe „<condition data=“. Diese wiederholt sich jedoch in den Angaben „<forecast conditions>“ je dreimal. Um zu verhindern dass der Ausdruck auf alle „condition data=“ zutrifft muss dem Ausdruck der String „<current_conditions>“ vorangestellt werden.

<current_conditions>.*?<condition data="([a-zA-ZäÄöÖüÜ\s]+)"

Damit dieser Ausdruck zum Erfolg führt muss zwischen „<current_conditions>“ und dem eigentlichen Ausdruck ein „.*?“ (Punkt - Sternchen - Fragezeichen) platziert werden und das Flag „DotAll“ aktiviert werden. Hintergrund ist der, dass die beiden Strings in verschiedenen Zeilen stehen. Durch das Flag „DotAll“ berücksichtigt der Ausdruck auch die Zeilenenden (er würde sonst Zeile für Zeile versuchen zu greifen) und durch das „.*?“ verhält sich der Ausdruck „ungreedy“.Es handelt sich dabei um die erste Gruppe, weshalb der Ausgang 1 als EIS 15 Text definiert wird.

Aktuelle Temperatur in Celsius
Die Ausgabe der aktuellen Temperatur steht hinter dem String „<temp_c data=“. Dieser kommt nur einmal im gesamten Text vor. Der Ausdruck lautet demnach:

temp_c data="([\-\+]?[0-9]+)

Es muss kein Flag aktiviert sein. Da es sich dabei um einen Temperatur Wert handelt wird der Ausgang EIS 5 formatiert. Die Datenkonfiguration ist „ASCII – Unsigned long deicmal“.

Aktuelle Luftfeuchtigkeit
Die Ausgabe der aktuellen Luftfeuchtigkeit erfolgt hinter dem String „Feuchtigkeit:“. Sollte die Antwort in Englisch gegeben worden sein, steht an dieser Stelle „Humidity“ und der Ausdruck trifft nicht zu.

Feuchtigkeit: ([0-9]+)

Kein Flag ist dazu aktiviert. Es handelt sich um einen Prozentwert, also wird der Ausgang als EIS 6 formatiert. Die Datenkonfiguration ist „ASCII – Unsigned long deicmal“.

Höchsttemperatur für den nächsten Tag
Die Vorhersagen für die kommenden Tage finden sich im Abschnitt „<forecast_conditions>“. Dort gibt es eine Angabe „high data=“ in der die Höchsttemperatur am jeweiligen Tag in Celsius angeben wird. Allerdings existiert dieser Abschnitt insgesamt viermal, jeweils für die vier darauf folgenden Tage. Im aktuellen Fall interessiert uns aber nur die Temperatur von morgen, also der insgesamt erste Eintrag zu „high data=“.

high data="([\-\+]?[0-9]+)

Alle Flags sind deaktiviert. Dieser Ausdruck liefert den ersten Eintrag von insgesamt 4 Treffern. Da es sich um einen Temperatur Wert handelt wird der Ausgang dazu wieder EIS 5 formatiert. Die Datenkonfiguration ist „ASCII – Unsigned long deicmal“.

Alle Ausgaben in einem regulären Ausdruck
Da im Job 4 Ausgänge genutzt werden können, ist es möglich alle oben genannten Informationen mittels eines einzigen regulären Ausdrucks herauszufiltern und durch die Konfiguration von Gruppen auf die vier Ausgänge zu legen. Dabei ist zu beachten, dass das Flag „DotAll“ aktiviert ist, da der Ausdruck auch Zeilenenden erkennen muss. Zwischen den Ausdrücken wird jeweils ein „.*“ platziert.

<current_conditions>.*?<condition data="([a-zA-ZäÄöÖüÜ\s]+)".*temp_c data="([\-\+]?[0-9]+).*Feuchtigkeit: ([0-9]+).*?high data="([\-\+]?[0-9]+)

Hinweis: Zwischen dem Ausdruck für die Feuchtigkeit und der Höchsttemperatur für den nächsten Tag muss neben dem „.*“ das Fragezeichen gesetzt werden, um den Ausdruck „ungreedy“ werden zu lassen.


Einbindung von Philips Hue Leuchten in den EIBPORT

Mit dem HTTP Request Job können die Philips Hue Leuchten in die Visualisierung eingebunden werden.

Durch den HTTP Request Job wird die Verbindung zwischen der Philips Hue Bridge und dem EIBPORT geschaffen. Um die Verbindung zu realisieren muss vorerst die IP-Adresse der Philips Hue Bridge ermittelt und ein Zugangsaccount (Benutzer) erstellt werden. "http://www.developers.meethue.com/documentation/getting-started"

Wenn diese Schritte erledigt sind muss nur noch der HTTP Request Job parametriert werden.

File:Screen Hue HTTP Request.jpg

Einstellungen im http Request

Eingangsobjekt*

Hier wird die Gruppenadresse eingetragen, die gleiche Gruppenadresse muss in jedes Visualisierungselement eingetragen werden.

BASIS-URL*

In die Basis-URL muss folgender Pfad eingetragen werden: <bridge ip address>/api/<angelegter Benutzer>/lights/<Leuchtennezeichnung>

Request Type

Der Request Type muss auf PUT umgestellt werden.

Content-Type

Der Content-Type muss auf applications/json umgestellt werden.


Anfrage: Ziel-URLs

Um der Philips Hue Bridge die Kommandos zu übermitteln, muss als erstes die Ziele parametriert werden. Dazu muss ein Auslöse-Wert vergeben werden, der dem dazugehörigen

EIS 14 Taster in dem Visualisierungs Editor zugewiesen wird. In dem Feld „GET-URL / Post-Data“ muss das Kommando eingegeben werden.


Kommando Funktion des Kommandos
{"on":true} Leuchte einschalten
{"on":false} Leuchte ausschalten
{"effect":"colorloop"} Effekt: Farbe der Leuchte wird dauerhaft gewechselt
{"effect":"none" Effekt wird ausgeschaltet
{"on":true, "sat":\0, "bri":\1, "hue":\2} Farbe der Leuchte kann im Farb Auswahl Element gewählt werden.
Wichtig: Der Auslöse-Wert “1” muss für das Visualisierungselement

„Farb Auswahl“ genutzt werden. Sobald ein anderer Auslöse-Wert

für die Farb AuswahlBenutzt wird funktioniert das Kommando nicht mehr!


Werte Senden

Damit die Farb-Auswahl auch einwandfrei funktioniert, müssen drei Werteobjekte eingetragen werden. Farbton, Sättigung und Helligkeit. Da die Philips Hue eine Farbauswahl von 65535 Farben hat muss das Werteobjekt ein EIS 10u Typ sein, die anderen beiden sind EIS 14u Typen.

Einstellungen im Visualisierungs Editor

Farbauswahl.png

Im Visualisierungseditor müssen für einfach Funktionen, wie Licht ein/ausschalten oder Effekte ein/ausschalten EIS 14 Taster verwendet werden. Hier müssen lediglich zwei Werte eingetragen werden, zum einen die Adresse EIS 14 und zum anderen Auslöse-Wert

Bei dem Visualisierungselemente Farb Auswahl müssen ein paar mehr Felder parametriert werden.

Einstellung Funktion
Ausgang RGB/HSB Der Ausgang muss auf HSB gestellt werden
Farbton (2Byte) Es muss die Gruppenadresse, der im Job Editor beim Werteobjekt für die Farbauswahl (hue) zuständig ist, ausgewählt werden.
Sättigung (1Byte) Es muss die Gruppenadresse, die im Job Editor beim Werteobjekt für die Sättigung (sat) zuständig ist, ausgewählt werden.
Helligkeit (1Byte) Es muss die Gruppenadresse, die im Job Editor beim Werteobjekt für die Helligkeit (bri) zuständig ist, ausgewählt werden.
EIS 1 Senden Fertig Hier wird die Gruppenadresse des Eingangsobjektes eingetragen.

Mathematik

Dieser Abschnitt über den Mathejob listet alle aktuellen Funktionen und Operationen auf. Nähere Informationen über den Mathejob finden Sie in der aktuellen eibPort Dokumentation, zu finden im Downloadbereich der von http://www.bab-tec.de/deutsch/service/download/

Das Mathematik Modul unterliegt wie der eibPort Firmware ständiger Weiterentwicklungen. Zurzeit gibt es zwei Versionen: Die Version 1.1 und die Version 1.2. Die Versionsnummer des Moduls kann mit der

Funktion "version()" im Mathejob selber abgefragt werden. Hier ein kleines Konfigurationsbeispiel:

Ausgang: 31/7/10 EIS 14
Eingang: 31/7/11 EIS 1
Mathematische Operation: version()

Wenn der Mathejob jetzt eine 1Bit Telegramm auf dem Eingang 31/7/11 erhält gibt er am Ausgang die Zahl 17 (steht für 0x11 also Version 1.1) oder die Zahl 18 (steht für 0x12 also Version 1.2) aus.


Alle Funktionen des Mathe Jobs Version 1.1 (0x11)

Mathematische Operationen:

Symbol Beschreibung
+ Addition (bzw. Aneinanderreihung von Strings)
- Subtraktion
* Multiplikation
/ Division (reelwertig)
% Modulo (Rest nach einer ganzzahligen Division)
& bitweises "und-ieren
| bitweises "oder-ieren
^ Potenzieren

Logische (boolsche) Operationen

Symbol Beschreibung
|| logisches ODER
&& logisches UND
> Vergleichsoperation "Größer als"
>= Vergleichsoperation "Größer gleich"
< Vergleichsoperation "Kleiner als"
<= Vergleichsoperation "Kleiner gleich"
== Vergleichsoperation "Gleichheit"

Sonstige Operationen

Symbol Beschreibung
= Zuweisung
'(' und ')' Klammerung zur Änderung des Operatorvorranges

Eingebaute Funktionen

Symbol Beschreibung
sqrt(x) Quadratwurzelberechung
sin(x) Sinusberechnung
cos(x) Cosinusberechnung
tan(x) Tangensberechnung
max(x,...) Maximumbestimmung von einer (endlichen) Menge von Werten
min(x,...) Minimumbestimmung von einer (endlichen) Menge von Werten
rad(x) Umrechnung Grad in Radian (Bogenberechnung)
asin(x) Berechnung des Arcussinus
acos(x) Berechnung des Arcuscosinus
atan(x) Berechnung des Arcustangens
ceil(x) Berechnung des kleinsten ganzzahligen Wertes, der nicht kleiner als das Argument ist ("Aufrunden")
floor(x) Berechnung des größten ganzzahligen Wertes, der nicht größer als das Argument ist ("Abrunden")
abs(x) Berechnung des absoluten Wertes eines Arguments
exp(x) Berechnung der Exponentialfunktion zur Basis 'e' (Eulersche Konstante)
log10(x) Berechnung des 10er-Logarithmus
pow(x,y) Exponentialfunktione berechnet x^y
time() Liefert die Systemzeit in Sekunden seit dem Beginn der Epoche (00:00:00 UTC, January 1, 1970)
srand(x) Setzt den (Pseudo-)Zufallsgenerator auf einen definerten Startwert
rand() Liefert die nächste Zufallszahl
eo_sum(x,...) Addiert die EIB-Objekte mit den Nummern laut der Argumente auf
int(x) Schneidet die Realzahl ab und liefert nur den ganzzahligen Wert zurück
modf(x) Liefert den Dezimalteil einer Realzahl zurück (Die Stellen nach dem Komma)
round(x) Liefert eine korrekt gerundete Ganzzahl eines realen Argumentes
round(x, n) Liefert eine korrekt gerundete Zahl mit n Nachkommastellen

Zahlentypen/-arten und Strings:

Art Schreibweise
Integerzahlen 42
Hexadezimalzahlen 0x12ab
Realzahlen 1.23
Exponentialzahlen 1.23e3 für 1.23 * 10^3 oder 1023.0
Texte "text"

Vordefinierte Konstanten:

Symbol Beschreibung
M_PI Die Konstante Pi (3.14.....)
M_E Die Euler-Konstante (Basis des natürlichen Logarithmus)
M_LOG2E Logarithmus zur Basis 2 von 'e'
M_LOG10E Logarithmus zur Basis 10 von 'e'
M_LN2 Natürlicher Log. von 2
M_LN10 Natürlicher Log. von 10
M_PI_2 Pi dividiert durch 2 ("Pi-Halbe")
M_PI_4 Pi dividiert durch 4 ("Pi-Viertel")
M_1_PI Reziprokwert von Pi (1 durch Pi)
M_2_PI 2 mal 1 durch PI
M_2_SQRTPI 2 mal 1 durch Wurzel Pi
M_SQRT2 Wurzel aus 2
M_SQRT1_2 Der Kehrwert von Wurzel 2 (bzw. Wurzel aus 1/2)



Die neuen Funktionen im Mathe Job Version 1.2 (0x12)

Zugriff auf den Ausgangswert

Konfiguration der Eingänge
Berechnung der Formel

Eingangsobjektes bei der Ausführung der Operation berücksichtigt.

Mathematical Operations:

Symbol Beschreibung
~ bitweises negieren
! logisches negieren (NOT)

Sonstige Operationen:

Symbol Beschreibung
?: If-Then-Else Operator

Eingebaute Funktionen:

Symbol Beschreibung
eoiga() Liefert die Gruppenadresse welche die Berechnung ausgelöst hat (nicht formatiert!)
eo_ga(idx, idx_ga) Liefert die Gruppenadresse eines Objektes unformatiert. idx bestimmt die Indexnummer des Eingangs, idx_ga bestimmt die Indexnummer der Gruppenadresse im Objekt. Beides fängt bei „0“ an zu zählen (von links nach rechts).
ga_str(ga, fmt) Liefert die gewünschte Gruppenadresse (ga = Indexnummer) als String (EIS 15) auf den Ausgang. Mittels „fmt“ kann 2- oder 3-stellige Schreibweise bestimmt werden.
str_ga(str) Gibt eine gewünschte Gruppenadresse als Ganzzahl aus. 2- oder 3-stellige Schreibweise spielt keine Rolle.
version() Liefert die Versionsnummer des Mathematik Moduls zurück. Aktuell sind das „18“ = version 1.2 (0x12) und „17“ = version 1.1 (0x11).

Reservierte Variablen

Variable Beschreibung
override_addr Wenn der Wert dieser Variable ungleich „0“ ist, wird die eigentliche Ausgangsadresse verworfen und stattdessen der Wert dieser Variablen als Ausgangsadresse interpretiert (1-stellige Schreibweise).
override_eis Wenn der Wert dieser Variablen ungleich „0“ ist, wird die eigentliche Datentypkonfiguration durch diese überschrieben. Dabei findet keine Anpassung des Wertes statt.
override_skip_send Ist der Wert dieser Variablen ungleich „0“ wird der Sendevorgang abgebrochen. Die laufende Berechnung führt zu keinem Ergebnis.
override_keep_data Ist der Wert dieser Variablen ungleich „0“ wird nicht der errechnete Ausgangswert, sondern der Eingangswert benutzt der die Berechnung angestoßen hat.

Ein paar Beispiele

Diese Beispiele zeigen wie die Funktionen, Variablen und Operationen in den mathematischen Ausdruck eingebaut werden können:

Das Prinzip des Mathe-Jobs basiert auf der "Mathematik in C". Also es gibt die Operatoren aus C und auch die Namen der Funktionen sind (quasi) identisch zu denen der Standard-C-Bibliotheken.

Eine Erläuterung zu der Mathematik in C gibt es hier:
https://de.wikibooks.org/wiki/C-Programmierung:_Ausdr%C3%BCcke_und_Operatoren

Und die Reihenfolge der Auswertung der Funktionen und Operatoren ist hier:
https://de.wikibooks.org/wiki/C-Programmierung:_Liste_der_Operatoren_nach_Priorit%C3%A4t

Am Besten "lernen" kann man durch das Studium der Beispiele z.B. aus unserem Wiki oben (und oder dem Handbuch).

Das Einizige, was wirklich eibPort-spezifisch ist, ist die Funktion "eo()". Diese stellt die Schnittstelle zu den "Live-"Daten aus der EIB/KNX-Anlage dar. (Daher der Name eo für EIB-Objekt)

Dies sind genau wie in den anderen Jobs und der ETS "Objekte". Heißt es können mehrere GA zusammengefasst werden zu einem Objektwert.

Diese Objekte werden im Mathe-Job unter Nennung des Datentyps eingetragen und können dann in den mathematischen Ausdrücken verwenden werden!

Z.B. würde der Ausdruck "eo(1) * eo(2) + 1000" den *Objektwert* vom EIB-Objekt "1" mit dem von "2" multiplizieren und dann noch 1000 addieren. Das Ergebniss dieses Ausdrucks würde dann in den
Ergebnis-Datentyp gewandelt und wieder auf die Ausgangs-GA zurückgesendet werden.Angestossen würde die Berechnung dieses Ausdrucks damit immer dann, wenn
sich eine GA in einem der beiden Objekte (über den Bus) verändert.


Anwesenheitssimulation mit dem EIBPORT

Anwesenheitssimulation

Definition:
Mit Anwesenheitssimulation werden Maßnahmen bezeichnet, die dem Einbrecher vortäuschen, es sei jemand zu Hause. Dazu gehören z. B.: Zeitschaltuhren, sodass in verschiedenen Räumen immer wieder einmal Licht angeht, oder die Bitte an die Nachbarn, bei längerer Abwesenheit die Rollläden morgens und abends hoch und runter zu lassen. Die Polizei empfiehlt Anwesenheitssimulation, da für Einbrecher ein Haus oder eine Wohnung in der Regel nur dann eine attraktive Gelegenheit darstellt, wenn niemand zu Hause und damit das Entdeckungsrisiko für den Täter minimiert ist.
Quelle: Netzwerk Zuhause sicher e. V.

Eine Anwesenheitssimulation soll also nach außen hin zeigen, dass durch das Schalten von Licht oder Fahren der Jalousie jemand zuhause ist. Dies übernehmen im einfachen Falle preiswerte Zeitschaltuhren. Diese führen ihren Dienst aber jeden Tag zur exakt gleichen Zeit aus. Diebe, die aber das Haus mehrere Tage beobachten, erkennen sofort, dass hier ein Automat zugange ist. Sind Sie längere Zeit im Urlaub, können immer gleiche Schaltzeiten gerade in den Jahresübergangszeiten bewirken, dass das in der Zeitschaltuhr eingestellte Szenario mit der Wirklichkeit 3 Wochen später nicht mehr übereinstimmt.

Lösung:
Astro Uhr mit Zufallsfunktion im EIBPORT

Durch die Astro Funktion ist gewährleistet, dass sich z.B. die Zeiten für das Ein-/Ausschalten von Lichtern an die Jahreszeit anpassen. Wird dieser (Schalt-) Ausgang nun zufällig verzögert, so ergibt sich jeden Tag eine anders Bild. Beim eibPort lässt sich der Ausgang um einen beliebigen Zeitraum verzögern z.B. 30 Minuten. So wird jeden Tag das Licht zufällig zwischen 1-30 Minuten verzögert ausgeschaltet. Gleiches ist mit der Jalousie/dem Rollladen natürlich auch möglich. Nach außen hin ergeben sich so nun solch unregelmäßige Szenerien, wie Sie nur durch einen Mensch gesteuert, möglich erscheinen. Da die Astro Uhr die berechnete Zeit für den nächsten Tag ausgeben kann, wird durch die Darstellung der Zeiten in der Visualisierung der Nutzer über die errechneten Fahr-/Schaltzeiten z.B. der Jalousien informiert. Für ihn ist die Fahr-/Schaltzeit kein Zufall Durch die Freigabe Option des Jobs können diese „zufälligen“ Schaltungen zum Urlaub frei gegeben werden und anschließend wieder gesperrt werden.


Tipp:

Ein netter Trick von einem Kunden. Schalten Sie das Flurlicht ein, wenn es abends an der Türe klingelt (2/3 aller Einbrüche finden Abends / in der Nacht statt). Die Freigabe zur Lichtschaltung steuern Sie ebenfalls über die Astro Uhr. Das erweckt den Eindruck als wollten Sie zur Türe gehen um diese zu öffnen, was Einbrecher zur Flucht veranlasst.


E-Mail

Um mit dem eibPort E-Mails zu versenden sind an verschiedenen Stellen Einstellungen nötig.


E-Mail Provider Einstellungen

Die E-Mail Provider Einstellungen erreichen Sie unter „System“ > „Konfiguration“ > „eMail“. Voreingestellt sind dort zwei Mailprovider „eibPort.de (Internet)“ und „gmx eP“. Beide Provider können zu Testzwecken verwendet werden. Insgesamt können bis zu 10 Provider angelegt werden.

Soll ein eigener Provider genutzt werden müssen die korrekte Verbindungsdaten vorliegen. Die Verbindungsdaten erhalten Sie von Ihrem E-Mail Provider, bitte tragen Sie die Daten entsprechend ein. Dabei gibt es folgende Einträge zu beachten:

  1. Aktiv: Der Eintrag muss aktiviert sein!
  2. TLS: Erkundigen Sie sich bei Ihrem Provider welche Verschlüsselungseinstellung ausgewählt werden muss!
  3. Realm: Bezeichnet eine Gruppe von Users die auf den gleichen Server zugreifen, Anhand der Realms wird unterschieden zu welcher Gruppe von Benutzer der Client gehört. Wenn nicht explizit aufgeführt, ist an dieser Stelle kein Eintrag notwendig.
  4. „Von“ Einstellungen: Manche E-Mail Server erwarten eine bestimmen E-Mail Adresse im „Von“ (FROM) -Feld. Steht dort eine falsche E-Mail Adresse findet keine Versendung statt! Mit der Option „Von: Einstellungen erzwingen“ wird jede E-Mail mit den dortigen „Von Einstellungen“ versendet, nicht mit denen die ggf im E-Mail Job eingetragen werden.

Durch das Abspeichern des Providers erhält der Eintrag automatisch eine laufende Nummer. Im Fall des dritten angelegten Providereintrages ist das „mail_provider02“. Dieser Name dient zur Verknüpfung mit dem E-Mail Job.


Netzwerkeinstellungen

Damit ein E-Mail Job funktioniert, muss der E-Mail Provider erreichbar sein. Dafür sind die korrekten Netzwerkeinstellungen notwendig. Über die Standardkonfiguration gilt es folgende Einträge zu machen:

  1. Standardgateway: Bei dem Standardgateway handelt es sich um den Router der das Netzwerk in dem sich der eibPort befindet mit einem anderen Netzwerk (meist das Internet) verbindet. In der Regel wird hier die Adresse des lokalen Routers eingetragen (bspw. 192.168.1.1).
  2. DNS-Server: Ein DNS Server ist im Netzwerk für die Auflösung von Hostnamen (bspw. bab-tec.de) in die jeweilige IP-Adresse zuständig (85.22.73.82). Dieser Service wird i.d.R. von einem Server außerhalb des eigenen Netzwerkes im Internet ausgeführt. Moderne Router (aus dem Heimbereich) verfügen allerdings über eine „DNS Forwarding“ Funktion und leiten die DNS Anfragen aus Ihrem lokalen Netzwerk an die entsprechenden DNS Server weiter. In diesem Falle kann hier auch die IP-Adresse des Standard Gateways eingetragen werden.

Eine andere Möglichkeit wäre in der Konfigurationsoberfläche des Routers nach den DNS-Servereinträgen zu suchen und diese in den eibPort zu übertragen oder aber sogenannte „Public DNS Server“ zu benutzen (bspw. von Google: 8.8.8.8). Funktioniert die Namesauflösung nicht, kann der E-Mail Job nicht den Hostnamen des Providers auflösen (mx.eibPort.de) und sich somit gar nicht mit dem E-Mail Server verbinden!

Es ist zu empfehlen immer die DNS Server Einträge des lokalen Providers zu nutzen (DSL Provider etc.)!

Um die Verbindungseinstellungen zu überprüfen können Sie einen RSS Feed in der Ajax- Visualisierung (Control L) testen. Im Gegensatz zur Java Visualisierung wird der RSS Feed dabei vom eibPort selber aufgerufen und nicht vom Visualisierungsclient. Wird der RSS Feed in Control L angezeigt, kann sich der eibPort ins Internet verbinden und Hostnamen auflösen!


E-Mail Jobeinstellungen

Um einen E-Mail im eibPort auszulösen wird jetzt nur noch ein E-Mail Job benötigt. Die E-Mail Jobs werden unter „Editor“ - „Job Editor“ - eMail-Versand“ angelegt. Für den Anfang sollte eine einfache Konfiguration gewählt werden.

  1. Tragen Sie „Element-Name“, „Eingangsobjekt“, „Empfänger“, „Betreff“ und „Text“ ein.
  2. Wählen Sie den gewünschten „eMail-Provider“ aus (die richtige Nummer finden Sie in den eMail Provider Einstellungen s.o.)
  3. Tragen Sie den richtigen Absender ein, wenn dies nicht in den Providereinstellungen erfolgt ist.

Das Auslösende Telegramm („Eingangsobjekt“) muss ein 1bit Telegramm sein (EIS 1). Da die Sendebedingung des Jobs standardmäßig auf „EIN oder Aus“ steht, reagiert der Job sowohl auf eine „1“ als auch auf eine „0“! Legen Sie zum Testen auf einer Visualisierungsseite einen Schalter an und lösen Sie ihn aus. Sie sollten dann in Kürze eine E-Mail im gewünschten Postfach erhalten. Bitte beachten Sie, dass sich ein E-Mail Service immer verzögern kann und eine E-Mail nicht zwingend sofort ankommen muss.

Funktioniert der E-Mail Versand trotz aller Vorkehrungen nicht, kontaktieren Sie den bab-tec Support unter info@bab-tec.de.


Verschlüsselter E-mail Versand

Seit dem NSA Skandal erwarten alle E-Mail Provider nun verschlüsselte Mails. Dazu ist das SSL Protokoll oder noch besser das TLS Protokoll von Nöten
(siehe auch hier: http://praxistipps.chip.de/ssl-oder-tls-verschluesselung-was-ist-der-unterschied_3610)

Der EIBPORT unterstützt Sie mit dem modernsten Verfahren TLS. Ihre alten Einstellungen gelten wahrscheinlich für unverschlüsselte E-Mail. Seit April 2014 erwartet z.B. die Telekom nur noch verschlüsselte Mails.Da wir den modernsten Standard unterstützen (TLS) aktivieren Sie bitte die entsprechenden Checkboxen (Bild) in der E-Mail Konfiguration des EIBPORT.

Verschlüsselter E-mail Versand häkchen.png
Für die Telekom wählen Sie bitte noch Port 587 sowie securesmtp.t-online. Siehe auch hier:
http://hilfe.telekom.de/hsp/cms/content/HSP/de/3378/faq-45856134

Bei z.B. GMX funktioniert das das ähnlich:
https://hilfe.gmx.net/sicherheit/ssl.html

Einen guten Überblick zum Thema gibt auch diese Seite:
https://www.fastmail.fm/help/technical/ssltlsstarttls.html

UDP-Sender

under construction!

Personal tools
Namespaces
Variants
Actions
Navigation
Toolbox