Função lineParkA (tapi.h)

A função linePark estaciona a chamada especificada de acordo com o modo de parque especificado.

Sintaxe

LONG lineParkA(
  HCALL       hCall,
  DWORD       dwParkMode,
  LPCSTR      lpszDirAddress,
  LPVARSTRING lpNonDirAddress
);

Parâmetros

hCall

Manipule para a chamada a ser estacionada. O aplicativo deve ser um proprietário da chamada. O estado de chamada de hCall deve ser conectado.

dwParkMode

Modo de parque com o qual a chamada deve ser estacionada. Esse parâmetro pode ter apenas um único conjunto de sinalizadores e usa uma das constantes LINEPARKMODE_.

lpszDirAddress

Ponteiro para um cadeia de caracteresterminada nula que indica o endereço em que a chamada deve ser estacionada ao usar o parque direcionado. O endereço está no formato de número discável. Esse parâmetro é ignorado para o parque não redirecionado.

lpNonDirAddress

Ponteiro para uma estrutura do tipo VARSTRING. Para o parque não redirecionado, o endereço em que a chamada está estacionada é retornado nessa estrutura. Esse parâmetro é ignorado para o parque direcionado. Dentro da estrutura de VARSTRING , dwStringFormat deve ser definido como STRINGFORMAT_ASCII (um buffer de cadeia de caracteres ASCII que contém uma cadeia de caracteresnulaterminada) e o NULL terminante deve ser contabilizado no dwStringSize. Antes de chamar linePark, o aplicativo deve definir o dwTotalSize membro dessa estrutura para indicar a quantidade de memória disponível para TAPI para retornar informações.

Valor de retorno

Retorna um identificador de solicitação positivo se a função for concluída de forma assíncrona ou um número de erro negativo se ocorrer um erro. O parâmetro dwParam2 da mensagem LINE_REPLY correspondente é zero se a função for bem-sucedida ou se for um número de erro negativo se ocorrer um erro. Os possíveis valores retornados são:

LINEERR_INVALADDRESS, LINEERR_NOTOWNER, LINEERR_INVALCALLHANDLE, LINEERR_OPERATIONUNAVAIL, LINEERR_INVALCALLSTATE, LINEERR_OPERATIONFAILED, LINEERR_INVALPARKMODE, LINEERR_RESOURCEUNAVAIL, LINEERR_INVALPOINTER, LINEERR_STRUCTURETOOSMALL, LINEERR_NOMEM, LINEERR_UNINITIALIZED.

Observações

Com o parque direcionado, o aplicativo determina o endereço no qual deseja estacionar a chamada. Com o parque não redirecionado, a opção determina o endereço e fornece isso ao aplicativo. Em ambos os casos, uma chamada estacionada pode ser desaparada especificando esse endereço.

A chamada estacionada normalmente entra no estado ocioso depois de ter sido estacionada com êxito e o aplicativo deve desalocar seu identificador para a chamada. Se o aplicativo executar um lineUnpark na chamada estacionada, um novo identificador de chamada será criado para a chamada não inicializada, mesmo que o aplicativo não tenha desalocado seu identificador de chamada antigo.

Algumas opções podem lembrar o usuário depois que uma chamada estiver estacionada por algum tempo. O aplicativo vê uma oferecendo chamada com um motivo de chamada definido para lembrete.

Em um parque não redirecionado, se o membro dwTotalSize na estrutura VARSTRING não especificar uma quantidade suficiente de memória para receber o endereço do parque, a mensagem de resposta correspondente retornará um valor de erro LINEERR_STRUCTURETOOSMALL. Nesses casos, não há como recuperar o endereço completo do parque. Quando um valor de erro LINEERR_STRUCTURETOOSMALL é retornado, o dwNeededSize membro da estrutura NonDirAddress não contém um valor válido. Se um valor de erro LINEERR_STRUCTURETOOSMALL for recebido de umde linePark não redirecionado, aumente o tamanho do buffer e chame linePark novamente até que ele retorne o êxito ou um resultado LINEERR_XXX diferente.

Nota

O cabeçalho tapi.h define linePark como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante do pré-processador UNICODE. A combinação do uso do alias neutro de codificação com código que não é neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Conventions for Function Prototypes.

Requisitos

Requisito Valor
da Plataforma de Destino Windows
cabeçalho tapi.h
biblioteca Tapi32.lib
de DLL Tapi32.dll

Consulte também

LINE_REPLY

Visão geral do parque

Funções de serviço de linha suplementar

visão geral de referência do TAPI 2.2

VARSTRING

lineUnpark