Das Beispiel demonstriert die Auswertung einer Web-Seite. Die URL für den Abruf könnte bspw. http://www.example.net/weather.php?plz=12345 lauten. Als Antwort würde der Web-Server eine HTML-Seite mit Wetterdaten liefern. Der gesamte Datenverkehr enthält dann z.B. folgende Daten:
-- SENDEN: --
-- SENDEN: --
|
-- EMPFANG: --
|
-- ENDE --
Die angebene URL existiert nicht. Die angegebenen Daten dienen nur als Beispiel.
Folgende Daten müssen im HS/FS-Experte definiert werden:
Die angebene URL existiert nicht. Die angegebenen Daten dienen nur als Beispiel.
Folgende Daten müssen im HS/FS-Experte definiert werden:
1.Allgemeine Daten
Im Registerreiter "Daten" müssten folgende Einstellungen getätigt werden:
Bezeichnung: frei wählbar
Host: www.example.net
IP-Port: 80
Bezeichnung: frei wählbar
Host: www.example.net
IP-Port: 80
2.Die Abfrage senden
Im Registerreiter "Senden" gibt es zwei Möglichkeiten, eine Abfrage zu senden.
Zum einen kann die Option "HTTP-Abruf senden" gewählt werden, hier generiert der HS/FS-Experte beim übertragen automatisch die nötigen Datenblöcke. Die Datenblöcke müssen somit nicht selbst definiert werden. Allerdings wäre in diesem Fall die PLZ fix:
Zum einen kann die Option "HTTP-Abruf senden" gewählt werden, hier generiert der HS/FS-Experte beim übertragen automatisch die nötigen Datenblöcke. Die Datenblöcke müssen somit nicht selbst definiert werden. Allerdings wäre in diesem Fall die PLZ fix:
- URL (nur Pfad): /weather.php?plz=12345
Desweiteren können auch die nötigen Datenblöcke selbst definert werden, in diesem Fall kann eine dynamische PLZ gesendet werden:
- Block 1
Typ: Text
Freier Text: GET /weather.php?plz= - Block 2
Typ: Wert als Klartext
Kommunikationsobjekt welches die gewünschte PLZ enthält
URL-Quoting anwenden aktivieren - Block 3
Typ: Text
Freier Text: HTTP/1.1
Die Felder CR anhängen und LF anhängen müssen aktiviert sein. Vor HTTP muss ein Leerzeichen stehen.
Erklärung: Mittels eines sogenannten GET-Befehls wird die Gegenstelle davon unterrichtet, welche Datei abgerufen werden soll. Da nicht nur der Dateiname sondern auch Parameter übergeben werden, muss die erste Zeile des HTTP-Kommandos auf mehrere Datenblöcke aufgeteilt werden. - Block 4
Typ: Text
Freier Text: Hostname: www.example.net
Die Felder CR anhängen und LF anhängen müssen aktiviert sein.
Erklärung: Der Gegenstelle muss ebenfalls mitgeteilt werden, unter welcher Adresse man die Datei heruntergeladen hat. - Block 5
Typ: Text
Freier Text: Connection: Close
Die Felder CR anhängen und LF anhängen müssen aktiviert sein.
Erklärung: Die Gegenstelle möchte wissen, ob nach dem Senden der Daten die Verbindung offen gehalten werden soll. - Block 6
Typ: Text
Freier Text:
Die Felder CR anhängen und LF anhängen müssen aktiviert sein.
Erklärung: Zum Abschluss der Abfrage muss eine Leerzeile gesendet werden.
Hinweis
Jeder Datenblock muss mit CR und LF abgeschlossen werden.
3.Die Antwort empfangen und auswerten
Im Registerreiter "Empfangen" müssten dann folgende Datenblöcke definiert werden:
- Block 1
Typ: Beliebige Anzahl an Daten
Erklärung: Die ersten Daten sind für die Auswertung nicht von Bedeutung, daher können diese ignoriert werden. - Block 2
Typ: Text
Wert:<td>Temperature:</td><td>
Erklärung: Dieser Block dient zur Erkennung der Temperatur. - Block 3
Typ: Wert als Klartext
Kommunikationsobjekt für die aktuelle Temperatur
Erklärung: Nach "Block 2" wird die Temperatur erwartet, alles bis zum nächsten Block wird in das Kommunikationsobjekt geschrieben. - Block 4
Typ: Text
Wert: °C</td>
Erklärung: Mit diesem Block ist das Ende des Wertes erreicht. Alle Daten zwischen "Block 2" und "Block 4" werden als Temperatur erkannt. Leerzeichen, Tabulatoren und Zeilenumbrüche werden entfernt. - Block 5
Typ: Beliebige Anzahl an Daten
Erklärung: Die folgenden Daten sind für die Auswertung wieder nicht von Bedeutung und können daher ignoriert werden. - Block 6
Typ: Text
Wert: wind direction:</td><td>
Erklärung: Dieser Block dient zur Erkennung der Windrichtung. - Block 7
Typ: Text aus einer vordefinierten Liste
Liste: #north#east#south#west#
Erklärung: siehe Block 8 - Block 8
Typ: Text
Wert: </td>
Erklärung: Hier endet die Erkennung für Block 7. Der erkannte Wert zwischen "Block 6" und "Block 8" (in diesem Beispiel "north") wird in der in Block 7 definierten Liste gesucht. Der Wert befindet sich innerhalb der Liste an Position 1, daher wird in das Kommunikationsobjekt der Wert 1 geschrieben. - Fertig!
Verarbeitung beendet. Nun werden die Befehle für eine erfolgreiche Verarbeitung ausgeführt.