Compartir a través de


Colas de llamadas y puntos de ruta

Una cola de llamadas o un punto de ruta es una dirección especial dentro del conmutador donde las llamadas se mantienen temporalmente pendientes de acción. Esta característica se representa mediante los bits LINEADDRCAPFLAGS_QUEUE y LINEADDRCAPFLAGS_ROUTEPOINT en el miembro dwAddrCapFlags en LÍNEADDRESSCAPS. Todas las llamadas que aparecen en dicha dirección están esperando la acción de la aplicación y puede haber acciones predeterminadas que se realicen (por ejemplo, transferencia a un agente o tronco) si la aplicación no realiza ninguna acción dentro de un período de tiempo definido. El administrador del sistema debe configurar la aplicación para que sepa qué acciones debe realizar con respecto a las llamadas que aparecen en cada dirección de cola o punto de ruta, y la cantidad de tiempo disponible para decidir la acción que se debe realizar.

Las aplicaciones pueden determinar el número de llamadas pendientes en una cola o punto de ruta mediante lineGetAddressStatus. La función lineGetCallInfo se puede usar para obtener información como el identificador de llamada, el identificador, el origen entrante o saliente, etc., y la aplicación puede tomar decisiones sobre el control de llamadas; Las llamadas se pueden redirigir, transferir ciegamente, quitar, etc., o simplemente permitir que se pasen automáticamente de la cola a un destino. Una llamada va a LINECALLSTATE_DISCONNECTED si se abandona. Las llamadas van inactivas cuando salen de la cola; lineGetCallInfo se puede usar para leer el identificador de redireccionamiento para determinar dónde se transfirieron.

Algunos conmutadores permiten llamadas en una cola o en espera para recibir un tratamiento determinado, como silencio, anillo invertido, señal ocupada, música o escuchando un anuncio grabado. La función lineSetCall Treatment permite a la aplicación controlar el tratamiento. La estructura delimitada por el dwCall TreatmentListSize y dwCall TreatmentListOffset miembros de LINEADDRESSCAPS permite a las aplicaciones determinar los tratamientos admitidos. El miembro dwCall Treatment de LINECALLINFO indica el tratamiento actual y un mensaje de LINE_CALLINFO con LINECALLINFOSTATE_TREATMENT indica cuándo cambia. El LINECALLFEATURE_SETTREATMENT bit del dwCallFeatures miembro de LINECALLSTATUS indica cuándo se permite que la aplicación cambie el tratamiento. El conjunto LINECALLTREATMENT_ de constantes define un conjunto limitado de tratamientos de llamadas predefinidos; los proveedores de servicios pueden definir muchos más.