Routing Abfrage
Die Routing Abfrage wird über ein IVR Objekt realisiert, mit folgenden Eigenschaften.
Funktion
Die Funktionsweise des Objekts ist wie folgt:
- Das System bestimmt, anhand der Einstellungen der Routing Applikation, ob es sich um ein Test-Call handelt.
- Bei Testcalls, wird die Test Datenquelle für die Abfrage genutzt. Bei Produktionscalls, wird die Produktions-Datenquelle genutzt.
Hinweis: Ein Testcall in der IVR wird mit der Einstellung "Testrufnummer" im Stammdaten der Routing-Applikation bewirkt.
- Bei Testcalls, wird die Test Datenquelle für die Abfrage genutzt. Bei Produktionscalls, wird die Produktions-Datenquelle genutzt.
- Anschließend ruft die Objektimplementierung die Funktion EXEC pkg_rtma.set_mandant(x) auf, um den Mandanten zu bestimmen, mit der im Objekt eingestellten Mandanten ID.
- Als letztes, wird die angegebene Query ausgeführt. Die Query kann beliebige Variablen enthalten, beispielsweise $caller.
Voraussetzungen
Installierter und konfigurierter Oracle Instant Client auf den jtel Server, für Produktion (mindestens) sowie Test-Datenbank (Optional). Siehe auch Oracle ODBC Driver.
Systemparameter
Folgende Systemparameter beeinflussen die Operation des Objekts:
Parameter | Bedeutung |
---|---|
Nexus.RIS.DSN.Production | Name der ODBC Datenquelle, für Produktions-Calls. |
Nexus.RIS.DSN.Production.Connect | ODBC Connection-String für die Verbindung zur Produktionsdatenbank. Beispiel: DSN=nexus_prod;UID=prod_user;PWD=topsecret |
Nexus.RIS.DSN.Test | Name der ODBC Datenquelle, für Test-Calls. |
Nexus.RIS.DSN.Test.Connect | ODBC Connection-String für die Verbindung zur Testdatenbank. Beispiel: DSN=nexus_prod;UID=prod_user;PWD=topsecret |
Parameter
Parameter | Bedeutung |
---|---|
Mandanten ID | Die ID des Mandanten, der beim Aufruf auf EXEC pkg_rtma.set_mandant(x) für den Parameter x (Mandanten ID) genutzt wird. Dieser Aufruf erfolgt transparent im Objekt selbst. |
Variablenpräfix | Ein Präfix, der allen Variablen aus der Query-Rückgabe vorangesetzt wird. Beispielsweise, gibt die Query ein Feld "ISVIP" zurück, und als Präfix wird "nexus" verwendet, so deklariert das Objekt eine Variable mit Namen nexus.ISVIP |
Abfrage | Die auszuführende Abfrage. Beispielsweise: SELECT COUNT(*) AS RecordCount, MIN(pers.pers_kz_vip) AS isVIP FROM person pers, pat_kontakt kont WHERE pers.piz = kont.kont_piz AND kont_nummer = '$caller'; |
Variablen
Sämtliche Felder, die aus der Query zurückgegeben werden, werden in Variablen gespeichert. Es wird immer nur der erste Datensatz gespeichert, falls Mehrfachtreffer zurückgegeben werden.
Aus den Beispiel oben, werden folgende Variablen deklariert:
- nexus.RECORDCOUNT
- nexus.ISVIP
Hinweis: Oracle gibt über ODBC die Feldnamen immer in Großbuchstaben zurück. Die Variablen werden dementsprechend mit Großbuchstaben angelegt, unabhängig der Schreibweise im Query selbst.
Objektausgänge
Ausgang | Nutzen wenn |
---|---|
Gefunden | 1 oder mehrere Datensätze vom Query zurückgegeben. |
Nicht gefunden | 0 Datensätze vom Query zurückgegeben. |
Fehler | Ein Fehler erfolgte in der Abfrage oder die Verbindung zu der Datenbank. |