Mensagens TSPI
Esta seção contém uma lista das mensagens na TSPI (Interface do Provedor de Serviços de Telefonia). Essas mensagens são usadas para notificar o TAPI sobre a ocorrência de eventos assíncronos que ocorrem espontaneamente dentro do provedor de serviços. O provedor de serviços passa esses eventos para TAPI chamando uma função de retorno de chamada LINEEVENT ou PHONEEVENT , dependendo se o provedor de serviços está relatando um evento em um dispositivo de linha, chamada ou telefone. O procedimento LINEEVENT para relatar eventos que ocorrem em uma linha ou chamada é fornecido ao provedor de serviços no momento em que a linha é aberta com a função TSPI_lineOpen . O procedimento PHONEEVENT para relatar eventos que ocorrem em um telefone é fornecido com a função TSPI_phoneOpen .
Esses eventos espontâneos não são solicitados pelo TAPI no sentido de que não são uma resposta direta a nenhuma solicitação. Esses eventos contrastam com aqueles que relatam a conclusão de solicitações feitas pelo TAPI. Esses eventos de conclusão são relatados por meio da função de retorno de chamada ASYNC_COMPLETION .
Os perfis de parâmetro para os procedimentos de evento espontâneo incluem parâmetros que identificam o objeto relevante para o qual o evento está sendo relatado (telefone, linha ou chamada). A identificação está na forma de um identificador opaco cuja interpretação exata não é publicada pelo TSPI. O TAPI determina internamente a relação entre essas alças opacas e as estruturas de dados usadas para representar os dispositivos.
O perfil de parâmetro para procedimentos de evento espontâneo também inclui um parâmetro de mensagem que identifica o tipo da mensagem. Cada tipo de mensagem tem uma definição correspondente que determina os identificadores incluídos, juntamente com outros parâmetros e seus significados. Há uma correspondência muito forte entre as mensagens que aparecem no nível do TSPI e aquelas que aparecem no nível do TAPI. Estas são as regras gerais de correspondência:
- O conjunto de mensagens é quase idêntico. Onde as mensagens correspondem, o mesmo nome e valor da mensagem é usado no nível do TSPI.
- Os identificadores que aparecem no nível do TSPI são os tipos opacos definidos pela especificação de TSPI. Esses tipos (e sua interpretação) diferem daqueles no nível tapi, embora se refiram à mesma classe de dispositivo. Por exemplo, quando uma mensagem TAPI inclui um identificador HLINE, a mensagem TSPI correspondente normalmente incluiria um identificador HTAPILINE .
- Não há dados dwCallbackInstance passados para o retorno de chamada.
- Os parâmetros dwParam1, dwParam2 e dwParam3 geralmente são idênticos aos parâmetros correspondentes para a mensagem TAPI.
- As mensagens orientadas a linhas e orientadas a chamadas são passadas para um procedimento de retorno de chamada diferente das mensagens orientadas por telefone.
Para cada mensagem, esta seção lista os seguintes itens:
- A finalidade da mensagem
- O procedimento de retorno de chamada para o qual essa mensagem é passada
- Uma descrição dos parâmetros da mensagem
- Comentários opcionais sobre como usar a mensagem
- Referências opcionais a outras funções, mensagens e estruturas de dados
- Comentários opcionais comparando essa mensagem com a interface TAPI
Determinadas mensagens são usadas para notificar o TAPI sobre uma alteração no status de um objeto. Essas mensagens fornecem o identificador de objeto opaco TAPI e uma indicação de qual item status foi alterado. O TAPI pode, posteriormente, chamar uma função "obter status" apropriada do objeto para obter a status completa do objeto.
Quando ocorre um evento, uma mensagem pode ou não ser enviada para TAPI. Para alguns tipos de evento, como status alterações, TAPI especifica um conjunto de status alterações nas quais ele está interessado. O provedor de serviços é aconselhado a limitar os eventos de mensagem de alteração de status que ele relata aos incluídos neste conjunto. O provedor de serviços não precisa cumprir esse limite. Em outras palavras, ele pode relatar mais alterações do que são estritamente necessárias. No entanto, ele deve tentar observar o limite por motivos de desempenho.
A mensagem LINE_REPLY não é usada no nível do TSPI. A conclusão de uma solicitação assíncrona é relatada usando o retorno de chamada ASYNC_COMPLETION .
A mensagem PHONE_REPLY não é usada no nível do TSPI. A conclusão de uma solicitação assíncrona é relatada usando o retorno de chamada ASYNC_COMPLETION .
Para obter mais informações, consulte estes tópicos: