Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
A função lineGenerateDigits inicia a geração dos dígitos especificados na chamada especificada como tons de banda usando o modo de sinalização especificado. Chamar essa função com um valor NULL
Sintaxe
LONG lineGenerateDigitsW(
HCALL hCall,
DWORD dwDigitMode,
LPCWSTR lpszDigits,
DWORD dwDuration
);
Parâmetros
hCall
Manipule para a chamada. O aplicativo deve ser um proprietário da chamada. O estado de chamada de hCall pode ser qualquer estado. O TAPI não impõe nenhum requisito de estado de chamada, no entanto, alguns Provedores de Serviços Tapi podem exigir que o hCall esteja no estado LINECALLSTATE_CONNECTED.
dwDigitMode
Formato a ser usado para sinalizar esses dígitos. Lembre-se de que dwDigitMode só pode ter um único sinalizador definido. Esse parâmetro usa uma das constantes LINEDIGITMODE_.
lpszDigits
Ponteiro para um buffer de caracteresencerrado nulo que contém os dígitos a serem gerados. Os caracteres válidos são aqueles especificados para o constantes
Além disso, a vírgula (,) também é um caractere válido. Uma vírgula injeta um atraso extra entre a sinalização dos dígitos anterior e próximo separados. A duração dessa pausa é definida pela configuração e os recursos do dispositivo de linha indicam essa duração. Várias vírgulas podem ser usadas para injetar pausas mais longas. Dígitos inválidos são ignorados durante a geração, em vez de serem relatados como erros.
A exclamação (!) é um caractere válido. Esse caractere causa uma operação "hookflash", conforme descrito para endereços discáveis.
dwDuration
A duração em milissegundos de dígitos DTMF e o espaçamento entre dígitos de pulso e DTMF. Um valor de 0 usa um valor padrão. O parâmetro
Valor de retorno
Retornará zero se a solicitação for bem-sucedida ou um número de erro negativo se ocorrer um erro. Os possíveis valores retornados são:
LINEERR_INVALCALLHANDLE, LINEERR_NOTOWNER, LINEERR_INVALCALLSTATE, LINEERR_OPERATIONUNAVAIL, LINEERR_INVALDIGITMODE, LINEERR_OPERATIONFAILED, LINEERR_INVALPOINTER, LINEERR_RESOURCEUNAVAIL, LINEERR_NOMEM, LINEERR_UNINITIALIZED.
Observações
A função lineGenerateDigits é considerada concluída com êxito quando a geração de dígitos foi iniciada com êxito, não quando todos os dígitos foram gerados. Em contraste com lineDial, que disca dígitos de forma dependente da rede, lineGenerateDigits garante produzir os dígitos como tons de banda inband sobre o canal de voz usando pulsos de discagem DTMF ou hookswitch ao usar pulso. A função lineGenerateDigits geralmente não é adequada para fazer chamadas ou discagem. Destina-se à sinalização de ponta a ponta em uma chamada estabelecida.
Depois que todos os dígitos em lpszDigits tiverem sido gerados ou após a geração de dígitos ter sido anulada ou cancelada, uma mensagem LINE_GENERATE será enviada ao aplicativo.
Apenas uma solicitação de geração de banda (geração de tom ou geração de dígito) tem permissão para estar em andamento por chamada em todos os aplicativos que são proprietários da chamada. A geração de dígito em uma chamada é cancelada iniciando outra solicitação de geração de dígito ou uma solicitação de geração de tom. Para cancelar a geração de dígito atual, o aplicativo pode invocar
Dependendo do provedor de serviços e do hardware, o aplicativo pode monitorar os dígitos gerados por ele mesmo. Se isso não for desejado, o aplicativo poderá desabilitar o monitoramento de dígitos ao gerar dígitos.
Nota
O cabeçalho tapi.h define lineGenerateDigits 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
Funções de serviço de linha suplementar