Temporizadores de Eventos de Mídia
Muitos aplicativos dependem da relação de tempo entre eventos de mídia (por exemplo, dígitos DTMF recebidos) para determinar a natureza de uma operação solicitada. Por exemplo, em um aplicativo de caixa postal, dois dígitos DTMF "1" consecutivos podem significar "fazer backup de dois segmentos" ou "reproduzir desde o início da mensagem", dependendo do tempo decorrido entre os dois dígitos. Em um ambiente de cliente/servidor, se a detecção de DTMF estiver sendo executada em um processador separado daquele no qual o aplicativo está em execução, a latência na rede local torna muito provável que a relação de tempo entre eventos de mídia seja distorcida, com o resultado de que essas diferenças baseadas em tempo podem ser perdidas ou se tornar não confiáveis.
Para resolve esse problema, várias mensagens TAPI podem ser carimbo de data/hora. Como é o tempo relativo entre esses eventos que é importante, a "hora do relógio" do evento não é importante e o tempo de sub-segundo está envolvido, esses carimbos de data/hora usam o "tempo de resolução de milissegundos desde que o Windows começou" retornado pela função GetTickCount . Os aplicativos devem estar cientes de que essa é a contagem de tiques no servidor (ou no computador em que o provedor de serviços que gerencia diretamente o hardware está em execução) e não é necessariamente o mesmo computador no qual o aplicativo está sendo executado; Assim, os carimbos de data/hora nessas mensagens TAPI só podem ser comparados entre si e não com o valor retornado por GetTickCount no processador no qual o aplicativo está em execução.
As mensagens TAPI que podem ser carimbo de data/hora são: LINE_GATHERDIGITS, LINE_GENERATE, LINE_MONITORDIGITS, LINE_MONITORMEDIA e LINE_MONITORTONE. A contagem de tiques é inserida no dwParam3 dessas mensagens. Se o carimbo de data/hora não for compatível com o provedor de serviços (que é indicado pela configuração do provedor de serviços dwParam3 nessas mensagens como 0), o próprio TAPI inserirá a contagem de tiques em dwParam3 de todas essas mensagens (ela pode ser distorcida um pouco, mas menos do que se o aplicativo fizesse o mesmo depois que as mensagens tivessem atravessado um esquema de comunicação entre processos).