In diesem Beispiel soll demonstriert werden, wie ein DTMF Menü realisiert werden kann. Der HS/FS soll bei Anruf -von einer zuvor definierten Nummer- eine Menüstruktur vorlesen, durch die sich der Anrufer durch Drücken der Telefontasten navigieren kann.
Die Auswahl von Untermenüpunkten und das Ausführen von Befehlen soll ermöglicht werden.
Befehle können im Untermenü direkt oder nach Bestätigung ausgeführt werden.
Projekteinstellungen
Zusammenhänge
- K.-Objekte
- Sprachansagen
- Telefonbedienung (Einrichten eines Arbeitzplatzes)
- Logiken
Telefonbedienung
Zunächst muss unter
EIB-Steuerung\Telefonbedienung ein
Arbeitsplatz eingerichtet werden.
Dem angelegten Arbeitsplatz müssen noch
Name und
Rufnummer zugeordnet werden. Der HS/FS hebt bei jedem Anruf dieser Nummer ab. Im Register
Sprachmeldung/DTMF werden zusätzlich die Sprachunterstützung aktiviert und die
Zielnummer (die Nummer, unter der der HS/FS erreichbar ist) angegeben. Als Sprachansage müssen eine
Willkommensansage, sowie eine Ansage für das Untermenü und die Befehlsausführung erstellt werden, die gleichzeitig den Anrufer über die gültigen Optionen unterrichtet.
Beispielansage: "Willkommen im Wohnhaus, 1 für Wohnzimmer, 2 für Aussenbereich"
Die Pause beträgt hierbei
2 Sek., die Ansagedauer
30 Sek.. Die Pause definiert die Zeit zwischen 2 Ansagen. Die Ansagedauer definiert, wie lange die jeweilige Ansage ausgegeben werden soll. Der HS/FS verhält sich dabei wie folgt: Ausgeben der Ansage -> 2 Sek. Pause -> erneute Ausgabe der Ansage... Diese Prozedur findet 30 Sekunden lang statt. Danach trennt der HS/FS die Verbindung, sofern keine Taste betätigt wurde.
Um die Tastencodes des Anrufers auswerten zu können, wird ein
K.-Objekt benötigt, in das der Statuscode der jeweils gedrückten Taste vom HS/FS geschrieben wird. Das K.-Objekt muss vom Typ
8-Bit (0..255/EIS 2,6) sein und wird im aktuellen Register der Option
DTMF-Objekt zugeordnet.
Über das Ansageobjekt (K.-Objekt vom Typ
14-Byte Text) wird die Ansage dynamisch verändert. Dazu muss das K.-Objekt mit einem gültigen
Sprachansage-Schlüssel beschrieben werden. In diesem Beispiel erledigen diese Aufgabe die Bausteine
DTMF_Menuestruktur und
DTMF_Trigger.
Aufbau der Logik
Um die Eingaben des Anrufers nun korrekt zu interpretieren, muss die Logik entsprechend erstellt werden. Dazu werden in diesem Beispiel 3 Arbeitsblätter benötigt (Hauptmenü, Wohnzimmer-Menü, Aussenbereich-Menü).
Die Eingangs-Box des Arbeitsblattes
Hauptmenü enthält das
DTMF-Objekt. Als zunächst einzigen Baustein wird
DTMF_Menuestruktur benötigt. Das
DTMF-Objekt der Eingangs-Box wird mit dem Eingang
E1 DTMF des Bausteins verknüpft. Eingang
E2 Ansage wird fest (Doppelklick auf den Eingang) mit dem Ansage-Schlüssel der oben erstellten
Willkommensansage belegt. Bei Initialisierung des Bausteins wird dieser Ansageschlüssel auf Ausgang
A10 Ansage gesendet. Die Eingänge
E3 A1, sowie
E4 A2 werden ebenfalls fest mit einer
1 belegt.
Die 1 ist notwendig, um dem Baustein mitzuteilen, dass er die Ziffern 1 und 2 (=> A1 und A2) werten soll, alle anderen DTMF Ziffern werden ignoriert (für nähere Informationen siehe Doku des Logikbausteins).
Je nachdem welche Taste man nun drückt (es werden nur Taste 1 und Taste 2, sowie die Rückkehrtaste 0 berücksichtigt), wird der jeweilige Ausgang angesprochen (A1 oder A2 oder Neustart des Bausteins). Die Rückkehrtaste 0 wird von den
DTMF Bausteinen fest vorgegeben und kann nicht variiert werden.
Das Ansageobjekt muss nun noch weitergeleitet werden, um es beim Empfang eines Wertes auf Eingang
E1 DTMF oder bei der Bausteininitialisierung auszugeben. Dazu muss Ausgang
A10 Ansage mit dem zuvor angelegten Ansageobjekt verbunden werden. Trifft nun an Eingang
E1 DTMF ein Telegramm ein oder wird der Baustein initialisiert, so wird der Wert von Eingang
E2 Ansage auf Ausgang
A10 Ansage weitergeleitet und belegt somit das Sprachansage K.-Objekt. Dies wiederum löst die Sprachausgabe mit der Meldung des belegenden
Sprachansage-Schlüssels aus.
Ausgang
A1 1 wird nun mit dem Konnektor zum Arbeitsblatt des
Wohnzimmer Untermenüs verbunden. Ausgang
A2 2 wird entsprechend mit dem Konnektor des Arbeitsblattes
Aussenbereich Untermenü verbunden.
Exemplarisch wird der Aufbau des
Aussenbereich-Untermenüs beschrieben.
Zunächst muss auf dem Arbeitsblatt für das
Aussenbereich Untermenü ein
DTMF_Trigger Baustein angelegt werden.
Eingang
E2 Ansage des neuen Bausteins wird wieder mit einem gültigen
Sprachansage-Schlüssel (dem des Aussenbereich Untermenüs) fest belegt. Zusätzlich wird Eingang
E3 Ansage Bestätigung fest mit einem gültigen
Sprachansage-Schlüssel für die Ansage der Bestätigungs-Aufforderung belegt. Um die
Bestätigung zu aktivieren, wird Eingang
E4 Bestätigung fest eine
1 zugewiesen.
Hinweis: Bitte beachten Sie, dass der hier angegebene Sprachansage-Schlüssel bei Eingang E2 Ansage sich im Regelfall von dem zuvor im Hauptmenü verwendeten unterscheidet, da im Untermenü andere Optionen zur Auswahl stehen als im Hauptmenü.
Aus Gründen der Einfachheit beschränken wir uns auch hier wieder lediglich auf die Optionen
- 1 - Licht an
- 2 - Licht aus
- 0 - Zurück in das Hauptmenü
Hinweis: Bitte beachten Sie, dass im
Untermenü Aussenbereich alle Eingaben zusätzlich mit einem * quittiert oder per # abgebrochen werden können.
Ausgang
A10 Ansage muss wie bereits zuvor mit dem
Ansageobjekt verknüpft werden.
Abschließend müssen noch die jeweiligen Befehle zugeordnet werden. Dazu müssen die Ausgänge
A1 1 und
A2 2 des
DTMF_Triggers mit zwei unterschiedlichen -in der
Ausgangs-Box angelegten- Befehlen verbunden. Diese Befehle bedienen sich des Befehls
Setze auf Konstante, um ein K.-Objekt
Licht wahlweise auf
- 0 - Licht aus, oder
- 1 - Licht ein
zu setzen. Somit wird beim Empfangen des
DTMF-Codes 1 bzw. 2, nach erfolgreicher Bestätigung per *, durch das Senden eines Wertes auf Ausgang
A1 1 bzw A2 2 der jeweilige Befehl ausgelöst. Die Rückkehroption wird vom
DTMF_Trigger Baustein implementiert und muß nicht extra erstellt zu werden.
Zusammenfassung der gültigen DTMF Tasten
- Hauptmenü
1 - springt in das Untermenü Wohnzimmer
2 - springt in das Untermenü Aussenbereich
- Untermenü Wohnzimmer
1 - Licht umschalten
2 - Jalousie ab
3 - Jalousie auf
4 - Jalousie stopp
0 - springt zurück in das Hauptmenü
- Untermenü Aussenbereich
1 - Licht an
2 - Licht aus
0 - springt zurück in das Hauptmenü
Hinweis: Bitte beachten Sie, dass im Untermenü Aussenbereich alle Eingaben zusätzlich mit einem * quittiert oder per # abgebrochen werden können.