Anrufwarteschlangen und Routenpunkte
Eine Anrufwarteschlange oder ein Routenpunkt ist eine spezielle Adresse innerhalb des Schalters, an der Anrufe vorübergehend ausstehend gehalten werden. Dieses Merkmal wird durch die Bits LINEADDRCAPFLAGS_QUEUE und LINEADDRCAPFLAGS_ROUTEPOINT im dwAddrCapFlags-Member in LINEADDRESSCAPS dargestellt. Alle Aufrufe, die für eine solche Adresse angezeigt werden, warten auf die Aktion der Anwendung, und es kann Standardaktionen geben, die ausgeführt werden (z. B. Übertragung an einen Agent oder Trunk), wenn die Anwendung innerhalb eines definierten Zeitraums keine Aktion ausführt. Die Anwendung muss vom Systemadministrator so konfiguriert werden, dass er weiß, welche Aktionen er in Bezug auf Aufrufe ausführen sollte, die in jeder Warteschlangen- oder Routenpunktadresse angezeigt werden, und wie viel Zeit zur Verfügung steht, um über die zu ergreifende Aktion zu entscheiden.
Anwendungen können die Anzahl der in einer Warteschlange oder einem Routenpunkt ausstehenden Aufrufe mithilfe von lineGetAddressStatus ermitteln. Die lineGetCallInfo-Funktion kann verwendet werden, um Informationen wie Aufruf-ID, so genannte ID, eingehenden oder ausgehenden Ursprung usw. abzurufen und von der Anwendung verwendet werden, um Entscheidungen über die Anrufbehandlung zu treffen. Anrufe können umgeleitet, blind übertragen, gelöscht usw. oder einfach automatisch aus der Warteschlange an ein Ziel übergeben werden. Ein Aufruf geht an LINECALLSTATE_DISCONNECTED, wenn er abgebrochen wird. Anrufe gehen im Leerlauf , wenn sie die Warteschlange verlassen. lineGetCallInfo kann verwendet werden, um den Umleitungsbezeichner zu lesen, um zu bestimmen, wohin sie übertragen wurden.
Einige Schalter ermöglichen Anrufe in einer Warteschlange oder in der Warteschleife, um eine bestimmte Behandlung zu erhalten, z. B. Stille, Ringback, Gebucht-Signal, Musik oder Hören einer aufgezeichneten Ankündigung. Mit der lineSetCallTreatment-Funktion kann die Anwendung die Behandlung steuern. Die Struktur, die durch die Elemente dwCallTreatmentListSize und dwCallTreatmentListOffset in LINEADDRESSCAPS getrennt ist, ermöglicht Es Anwendungen, die unterstützten Behandlungen zu bestimmen. Das dwCallTreatment-Element in LINECALLINFO gibt die aktuelle Behandlung an, und eine LINE_CALLINFO Nachricht mit LINECALLINFOSTATE_TREATMENT gibt an, wann sich dies ändert. Das LINECALLFEATURE_SETTREATMENT Bit im dwCallFeatures-Member in LINECALLSTATUS gibt an, wann die Anwendung die Behandlung ändern darf. Der LINECALLTREATMENT_ Satz von Konstanten definiert einen begrenzten Satz vordefinierter Anrufbehandlungen; Dienstanbieter können viele weitere definieren.