Estructura LINEADDRESSCAPS (tapi.h)
La estructura LINEADDRESSCAPS describe las funciones de una dirección especificada. La función lineGetAddressCaps y la función TSPI_lineGetAddressCaps devuelven la estructura LINEADDRESSCAPS .
Sintaxis
typedef struct lineaddresscaps_tag {
DWORD dwTotalSize;
DWORD dwNeededSize;
DWORD dwUsedSize;
DWORD dwLineDeviceID;
DWORD dwAddressSize;
DWORD dwAddressOffset;
DWORD dwDevSpecificSize;
DWORD dwDevSpecificOffset;
DWORD dwAddressSharing;
DWORD dwAddressStates;
DWORD dwCallInfoStates;
DWORD dwCallerIDFlags;
DWORD dwCalledIDFlags;
DWORD dwConnectedIDFlags;
DWORD dwRedirectionIDFlags;
DWORD dwRedirectingIDFlags;
DWORD dwCallStates;
DWORD dwDialToneModes;
DWORD dwBusyModes;
DWORD dwSpecialInfo;
DWORD dwDisconnectModes;
DWORD dwMaxNumActiveCalls;
DWORD dwMaxNumOnHoldCalls;
DWORD dwMaxNumOnHoldPendingCalls;
DWORD dwMaxNumConference;
DWORD dwMaxNumTransConf;
DWORD dwAddrCapFlags;
DWORD dwCallFeatures;
DWORD dwRemoveFromConfCaps;
DWORD dwRemoveFromConfState;
DWORD dwTransferModes;
DWORD dwParkModes;
DWORD dwForwardModes;
DWORD dwMaxForwardEntries;
DWORD dwMaxSpecificEntries;
DWORD dwMinFwdNumRings;
DWORD dwMaxFwdNumRings;
DWORD dwMaxCallCompletions;
DWORD dwCallCompletionConds;
DWORD dwCallCompletionModes;
DWORD dwNumCompletionMessages;
DWORD dwCompletionMsgTextEntrySize;
DWORD dwCompletionMsgTextSize;
DWORD dwCompletionMsgTextOffset;
DWORD dwAddressFeatures;
DWORD dwPredictiveAutoTransferStates;
DWORD dwNumCallTreatments;
DWORD dwCallTreatmentListSize;
DWORD dwCallTreatmentListOffset;
DWORD dwDeviceClassesSize;
DWORD dwDeviceClassesOffset;
DWORD dwMaxCallDataSize;
DWORD dwCallFeatures2;
DWORD dwMaxNoAnswerTimeout;
DWORD dwConnectedModes;
DWORD dwOfferingModes;
DWORD dwAvailableMediaModes;
} LINEADDRESSCAPS, *LPLINEADDRESSCAPS;
Miembros
dwTotalSize
Tamaño total asignado a esta estructura de datos, en bytes.
dwNeededSize
Tamaño de esta estructura de datos necesaria para contener toda la información devuelta, en bytes.
dwUsedSize
Tamaño de la parte de esta estructura de datos que contiene información útil, en bytes.
dwLineDeviceID
Identificador de dispositivo del dispositivo de línea con el que está asociada esta dirección.
dwAddressSize
Tamaño del campo de dirección, en bytes.
dwAddressOffset
Desplazamiento desde el principio de la estructura hasta el campo de dirección de tamaño variable. DwAddressSize especifica el tamaño del campo.
dwDevSpecificSize
Tamaño del campo específico del dispositivo, en bytes.
dwDevSpecificOffset
Desplazamiento desde el principio de la estructura hasta el campo específico del dispositivo de tamaño variable. DwDevSpecificSize especifica el tamaño del campo.
dwAddressSharing
Modo de uso compartido de la dirección. Este miembro puede ser una de las LINEADDRESSSHARING_ constantes.
dwAddressStates
Los estados de dirección cambian para los que la aplicación puede recibir una notificación en el mensaje LINE_ADDRESSSTATE. Este miembro usa una o varias de las constantes de LINEADDRESSSTATE_.
dwCallInfoStates
Elementos de información de llamadas que son significativos para todas las llamadas de esta dirección. Una aplicación puede recibir notificaciones sobre los cambios en algunos de estos estados en LINE_CALLINFO mensajes. Este miembro usa una o varias de las constantes de LINECALLINFOSTATE_.
dwCallerIDFlags
Tipos de información de identificador de entidad que se pueden proporcionar para las llamadas en esta dirección. El autor de la llamada es el originador de la sesión. Una o varias de las constantes LINECALLPARTYID_.
dwCalledIDFlags
Tipos de información de identificador de entidad que se pueden proporcionar para las llamadas en esta dirección. Aquí, "llamado" hace referencia al destino original. Una o varias de las constantes LINECALLPARTYID_.
dwConnectedIDFlags
Tipos de información de identificador de entidad que se pueden proporcionar para las llamadas en esta dirección. Una o varias de las constantes LINECALLPARTYID_.
dwRedirectionIDFlags
Tipos de información de identificador de entidad que se pueden proporcionar para las llamadas en esta dirección. Aquí, "redireccionamiento" es el nuevo destino. Una o varias de las constantes LINECALLPARTYID_.
dwRedirectingIDFlags
Tipos de información de identificador de entidad que se pueden proporcionar para las llamadas en esta dirección. Aquí, "redireccionamiento" es la dirección que invocó el redireccionamiento. Una o varias de las constantes LINECALLPARTYID_.
dwCallStates
Estados de llamada que se pueden notificar para las llamadas en esta dirección. Este miembro usa una o varias de las constantes de LINECALLSTATE_.
dwDialToneModes
Modos de tono de marcado que se pueden notificar para las llamadas realizadas en esta dirección. Este miembro solo es significativo si se puede notificar el estado de llamada de tono de marcado . Este miembro usa una o varias de las constantes LINEDIALTONEMODE_.
dwBusyModes
Modos ocupados que se pueden notificar para las llamadas realizadas en esta dirección. Este miembro solo es significativo si se puede notificar el estado de llamada ocupado . Este miembro usa una o varias de las constantes de LINEBUSYMODE_.
dwSpecialInfo
Tipos de información especiales que se pueden notificar para las llamadas realizadas en esta dirección. Este miembro solo es significativo si se puede notificar el estado de llamada specialInfo . Este miembro usa una o varias de las constantes de LINESPECIALINFO_.
dwDisconnectModes
Modos de desconexión que se pueden notificar para las llamadas realizadas en esta dirección. Este miembro solo es significativo si se puede notificar el estado de llamada desconectado . Este miembro usa una o varias de las constantes de LINEDISCONNECTMODE_.
dwMaxNumActiveCalls
Número máximo de apariencias de llamada activas que la dirección puede controlar. Este número no incluye llamadas en espera o llamadas en espera pendientes de transferencia o conferencia.
dwMaxNumOnHoldCalls
Número máximo de apariencias de llamada en la dirección que puede estar en espera.
dwMaxNumOnHoldPendingCalls
Número máximo de apariciones de llamadas en la dirección que pueden estar en espera pendiente de transferencia o conferencia.
dwMaxNumConference
Número máximo de partes que pueden unirse a una sola llamada de conferencia en esta dirección.
dwMaxNumTransConf
Número de partes (incluido "self") que se pueden agregar en una llamada de conferencia que se inicia como una llamada de consulta genérica mediante lineSetupTransfer.
dwAddrCapFlags
Marcas de bits empaquetadas que describen una variedad de funcionalidades de dirección. Este miembro usa una o varias de las constantes de LINEADDRCAPFLAGS_.
dwCallFeatures
Cambiar las funcionalidades o características disponibles para todas las llamadas de esta dirección mediante las constantes LINECALLFEATURE_. Este miembro representa las características relacionadas con la llamada que pueden estar disponibles en una dirección (disponibilidad estática en lugar de disponibilidad dinámica). Invocar una característica compatible requiere que la llamada esté en el estado adecuado y el dispositivo de línea subyacente que se abra en un modo compatible. Un cero en una posición de bits indica que la característica correspondiente nunca está disponible. Una indica que la característica correspondiente puede estar disponible si la aplicación tiene los privilegios adecuados para la llamada y la llamada está en el estado adecuado para que la operación sea significativa. Este miembro permite a una aplicación detectar qué características de llamada pueden ser (y que nunca pueden ser) compatibles con la dirección.
dwRemoveFromConfCaps
Funcionalidades de dirección para quitar llamadas de una llamada de conferencia. Este miembro usa una de las constantes LINEREMOVEFROMCONF_.
dwRemoveFromConfState
Usa las constantes LINECALLSTATE_ para especificar el estado de la llamada después de que se haya quitado de una llamada de conferencia.
dwTransferModes
Funcionalidades de dirección para resolver solicitudes de transferencia. Este miembro usa una de las constantes LINETRANSFERMODE_.
dwParkModes
Diferentes modos de estacionamiento de llamadas disponibles en esta dirección. Este miembro usa una de las constantes LINEPARKMODE_.
dwForwardModes
Diferentes modos de reenvío disponibles para esta dirección. Este miembro usa las constantes LINEFORWARDMODE_.
dwMaxForwardEntries
Número máximo de entradas que se pueden pasar a lineForward en el parámetro lpForwardList .
dwMaxSpecificEntries
Número máximo de entradas en el parámetro lpForwardList pasado a lineForward que puede contener instrucciones de reenvío basadas en un identificador de llamada específico (reenvío selectivo de llamadas). Este miembro es cero si no se admite el reenvío de llamadas selectivo.
dwMinFwdNumRings
Número mínimo de anillos que se pueden establecer para determinar cuándo una llamada se considera oficialmente "sin respuesta".
dwMaxFwdNumRings
Número máximo de anillos que se pueden establecer para determinar cuándo una llamada se considera oficialmente "sin respuesta". Si no se puede establecer este número de anillos, dwMinFwdNumRings y dwMaxNumRings son iguales .
dwMaxCallCompletions
Número máximo de solicitudes de finalización de llamadas simultáneas que pueden estar pendientes en este dispositivo de línea. Cero implica que la finalización de llamadas no está disponible.
dwCallCompletionConds
Condiciones de llamada diferentes en las que se puede solicitar la finalización de la llamada. Este miembro usa una o varias de las constantes de LINECALLCOMPLCOND_.
dwCallCompletionModes
Modo en el que se puede completar la llamada. Este miembro usa una de las constantes LINECALLCOMPLMODE_.
dwNumCompletionMessages
Número de mensajes de finalización de llamadas que se pueden seleccionar al usar la opción LINECALLCOMPLMODE_MESSAGE. Los mensajes individuales se identifican mediante valores del intervalo cero a uno menor que dwNumCompletionMessages.
dwCompletionMsgTextEntrySize
Tamaño de cada una de las descripciones de texto de finalización de llamadas especificadas por dwCompletionMsgTextSize y dwCompletionMsgTextOffset, en bytes.
dwCompletionMsgTextSize
Tamaño del texto de finalización de la llamada, en bytes.
dwCompletionMsgTextOffset
Desplazamiento desde el principio de esta estructura de datos al campo de tamaño variable que contiene texto descriptivo sobre cada uno de los mensajes de finalización de llamadas. Cada mensaje es dwCompletionMsgTextEntrySize bytes long. El formato de cadena de estas descripciones textuales se indica mediante dwStringFormat en las funcionalidades del dispositivo de la línea. DwCompletionMsgTextSize especifica el tamaño del campo.
dwAddressFeatures
Características disponibles para esta dirección mediante las constantes de LINEADDRFEATURE_. Invocar una característica admitida requiere que la dirección esté en el estado adecuado y el dispositivo de línea subyacente que se abra en un modo compatible. Un cero en una posición de bits indica que la característica correspondiente nunca está disponible. Una indica que la característica correspondiente puede estar disponible si la dirección está en el estado adecuado para que la operación sea significativa. Este miembro permite a una aplicación detectar qué características de dirección pueden ser (y que nunca pueden ser) compatibles con la dirección.
dwPredictiveAutoTransferStates
Estado o estados de llamada en los que se puede establecer una llamada realizada por un marcador predictivo para transferir automáticamente la llamada a otra dirección; una o varias de las constantes de LINECALLSTATE_. El valor 0 indica que la transferencia automática basada en el estado de llamada no está disponible.
dwNumCallTreatments
Número de entradas de la matriz de estructuras LINECALLTREATMENTENTRY delimitadas por dwCallTreatmentListSize y dwCallTreatmentListOffset.
dwCallTreatmentListSize
Tamaño de la matriz de tratamiento de llamadas, en bytes.
dwCallTreatmentListOffset
Desfase desde el principio de la estructura a una matriz de estructuras LINECALL TREATMENTENTRY , especifique los tratamientos de llamada admitidos en la dirección (que se pueden seleccionar mediante lineSetCall Treatment). El valor es dwNumCallTreatments veces SIZEOF(LINECALLTREATMENTENTRY). El tamaño del campo se especifica mediante dwCallTreatmentListSize.
dwDeviceClassesSize
Tamaño de la lista de clases de dispositivo admitidas, en bytes.
dwDeviceClassesOffset
Desplazamiento desde el principio de la estructura a una cadena que consta de los identificadores de clase de dispositivo admitidos en esta dirección para su uso con lineGetID. Los elementos están separados por caracteres NULL y el último identificador de clase va seguido de dos caracteres NULL . El tamaño del campo se especifica mediante dwDeviceClassesSize.
dwMaxCallDataSize
Número máximo de bytes que una aplicación puede establecer en LINECALLINFO mediante lineSetCallData.
dwCallFeatures2
Funcionalidades o características de conmutación adicionales disponibles para todas las llamadas de esta dirección mediante las constantes de LINECALLFEATURE2_. Es una extensión del miembro dwCallFeatures .
dwMaxNoAnswerTimeout
Valor máximo en segundos que se puede establecer en el miembro dwNoAnswerTimeout de LINECALLPARAMS al realizar una llamada. Un valor de 0 indica que el proveedor de servicios no admite el abandono automático de llamadas sin responder o que el valor de tiempo de espera no es ajustable por las aplicaciones.
dwConnectedModes
LINECONNECTEDMODE_ valores que pueden aparecer en el miembro dwCallStateMode de LINECALLSTATUS y en LINE_CALLSTATE mensajes para las llamadas en esta dirección.
dwOfferingModes
LINEOFFERINGMODE_ valores que pueden aparecer en el miembro dwCallStateMode de LINECALLSTATUS y en LINE_CALLSTATE mensajes para las llamadas en esta dirección.
dwAvailableMediaModes
Tipos de medios (modos) que se pueden invocar en nuevas llamadas creadas en esta dirección, cuando el miembro dwAddressFeatures indica que se pueden realizar nuevas llamadas. Si este miembro es cero, indica que el proveedor de servicios no sabe o no puede indicar qué tipos de medios están disponibles, en cuyo caso cualquiera o todos los tipos de medios indicados en el miembro dwMediaModes de LINEDEVCAPS pueden estar disponibles.
Comentarios
Las extensiones específicas del dispositivo deben usar el área de tamaño variable DevSpecific (dwDevSpecificSize y dwDevSpecificOffset) de esta estructura de datos.
Las aplicaciones anteriores se compilan sin este miembro en la estructura LINEADDRESSCAPS y usan sizeOF(LINEADDRESSCAPS) más pequeños que el nuevo tamaño. La aplicación pasa un parámetro dwAPIVersion con la función lineGetAddressCaps , que TAPI puede usar para obtener instrucciones para controlar esta situación. Si la aplicación pasa un miembro dwTotalSize menor que el tamaño de la parte fija de la estructura tal y como se define en el miembro dwAPIVersion especificado, se devuelve LINEERR_STRUCTURETOOSMALL. Si la aplicación ha asignado suficiente memoria, antes de llamar a TSPI_lineGetAddressCaps, TAPI establece los miembros dwNeededSize y dwUsedSize en el tamaño fijo de la estructura tal como existía en la versión de API especificada.
Los nuevos proveedores de servicios (que admiten la nueva versión de API) deben examinar la versión de API pasada. Si la versión de la API es menor que la versión más alta admitida por el proveedor, el proveedor de servicios no debe rellenar los campos que no se admiten en versiones anteriores de la API, ya que estos caerían en la parte variable de la estructura anterior.
Las nuevas aplicaciones deben ser conscientes de la versión de api negociada y no examinar el contenido de los campos de la parte fija más allá del final original de la parte fija de la estructura para la versión de API negociada.
Los miembros dwPredictiveAutoTransferStates a través de dwAvailableMediaModes solo están disponibles para las aplicaciones que solicitan una versión de API de 2.0 o posterior al llamar a lineGetAddressCaps.
Requisitos
Encabezado | tapi.h |