Método ITAddress::CreateCall (tapi3if.h)
El método CreateCall crea un nuevo objeto Call que se puede usar para realizar una llamada saliente y devuelve un puntero a la interfaz ITBasicCallControl del objeto. La llamada recién creada está en estado CS_IDLE y no tiene ningún medio o terminal seleccionado.
Los valores de entrada aceptables para la dirección de llamada, el tipo de dirección y los tipos de medios son específicos del proveedor de servicios de telefonía que admite la dirección actual. Para obtener información sobre los CSP enviados con Windows 2000, consulte Acerca del proveedor de servicios de telefonía (TSP). Para los CSP de terceros, consulte la documentación proporcionada por el vendedor.
Sintaxis
HRESULT CreateCall(
[in] BSTR pDestAddress,
[in] long lAddressType,
[in] long lMediaTypes,
[out] ITBasicCallControl **ppCall
);
Parámetros
[in] pDestAddress
Esta cadena BSTR contiene una dirección de destino. El formato es específico del proveedor. Este puntero puede ser NULL para las direcciones sin marcado (por ejemplo, con un teléfono frecuente) o cuando se realiza toda la marcación mediante ITBasicCallControl::D ial. NULL en combinación con un valor pGroupIDNULL en ITBasicCallControl::P ickup da como resultado una recogida de grupo. Los proveedores de servicios que tienen funcionalidades de multiplexación inversa pueden permitir que una aplicación especifique varias direcciones a la vez.
[in] lAddressType
Contiene una constante de tipo de dirección , como LINEADDRESSTYPE_PHONENUMBER, que describe el formato de la dirección. El valor debe ser válido para esta dirección. Use ITAddressCapabilities::get_AddressCapability con AddressCap establecido en AC_ADDRESSTYPES para comprobar el valor.
[in] lMediaTypes
Identifica el tipo de medio o los tipos implicados en la sesión de llamada.
[out] ppCall
Puntero a la interfaz ITBasicCallControl .
Valor devuelto
Este método puede devolver uno de estos valores.
Valor | Significado |
---|---|
|
El método se realizó correctamente. |
|
El tipo de dirección, lAddressType, no es válido o especifica más de un tipo de dirección. |
|
Existe memoria insuficiente para realizar la operación. |
|
El parámetro ppCall no es un puntero válido. |
Comentarios
La aplicación debe usar SysAllocString para asignar memoria para el parámetro pDestAddress y usar SysFreeString para liberar la memoria cuando la variable ya no sea necesaria.
Cuando el tipo de dirección es LINEADDRESSTYPE_SDP, la aplicación debe llamar al método ITSDP::get_IsValid en pDestAddress para comprobar que la información de SDP contenida se construye correctamente según RFC 2327.
Las llamadas que se usan como llamadas de consulta, como durante una conferencia, transferencia o operación de reenvío, deben crearse mediante este método.
TAPI llama al método AddRef en la interfaz ITBasicCallControl devuelta por ITAddress::CreateCall. La aplicación debe llamar a Release en la interfaz ITBasicCallControl para liberar recursos asociados a él.
Requisitos
Requisito | Value |
---|---|
Plataforma de destino | Windows |
Encabezado | tapi3if.h (incluya Tapi3.h) |
Library | Uuid.lib |
Archivo DLL | Tapi3.dll |