TSPI-berichten

Deze sectie bevat een lijst met de berichten in de Telefonieserviceproviderinterface (TSPI). Deze berichten worden gebruikt om TAPI op de hoogte te stellen van het optreden van asynchrone gebeurtenissen die spontaan optreden binnen de serviceprovider. De serviceprovider geeft deze gebeurtenissen door aan TAPI door een LINEEVENT- of PHONEEVENT-functie callback-functie aan te roepen, afhankelijk van of de serviceprovider een gebeurtenis rapporteert op een lijn, gesprek of telefoonapparaat. De LINEEVENT procedure voor het rapporteren van gebeurtenissen die plaatsvinden op een regel of aanroep, wordt aan de serviceprovider verstrekt op het moment dat de lijn wordt geopend met de functie TSPI_lineOpen. De PHONEEVENT- procedure voor het rapporteren van gebeurtenissen die op een telefoon plaatsvinden, wordt geleverd met de functie TSPI_phoneOpen.

Deze spontane gebeurtenissen worden ongevraagd door TAPI in de zin dat ze geen directe reactie op een verzoek zijn. Deze gebeurtenissen contrasteren met de rapportage-voltooiing van aanvragen die door TAPI zijn gedaan. Dergelijke voltooiingsevenementen worden gerapporteerd via de ASYNC_COMPLETION callback-functie.

De parameterprofielen voor de spontane gebeurtenisprocedures bevatten parameters waarmee het relevante object wordt geïdentificeerd waarvoor de gebeurtenis wordt gerapporteerd (telefoon, lijn of oproep). De identificatie heeft de vorm van een ondoorzichtige ingang waarvan de exacte interpretatie niet door TSPI wordt gepubliceerd. TAPI bepaalt intern de relatie tussen deze ondoorzichtige ingangen en de gegevensstructuren die worden gebruikt om de apparaten weer te geven.

Het parameterprofiel voor spontane gebeurtenisprocedures bevat ook een berichtparameter waarmee het type bericht wordt geïdentificeerd. Elk berichttype heeft een bijbehorende definitie die bepaalt welke ingangen zijn opgenomen, samen met andere parameters en de betekenis ervan. Er is een zeer sterke correspondentie tussen de berichten die worden weergegeven op TSPI-niveau en berichten die op TAPI-niveau worden weergegeven. Dit zijn de algemene correspondentieregels:

  • De set berichten is bijna identiek. Wanneer berichten overeenkomen, worden dezelfde berichtnaam en -waarde gebruikt op TSPI-niveau.
  • Ingangen die op TSPI-niveau worden weergegeven, zijn de ondoorzichtige typen die zijn gedefinieerd door de TSPI-specificatie. Deze typen (en hun interpretatie) verschillen van die op TAPI-niveau, hoewel ze verwijzen naar dezelfde klasse van het apparaat. Wanneer een TAPI-bericht bijvoorbeeld een HLINE-ingang bevat, bevat het bijbehorende TSPI-bericht meestal een HTAPILINE- ingang.
  • Er zijn geen dwCallbackInstance gegevens die zijn doorgegeven aan de callback.
  • De dwParam1, dwParam2en dwParam3 parameters zijn meestal identiek aan de bijbehorende parameters voor het TAPI-bericht.
  • Lijngeoriënteerde en oproepgerichte berichten worden doorgegeven aan een andere callbackprocedure dan telefoongeoriënteerde berichten.

Voor elk bericht bevat deze sectie de volgende items:

  • Het doel van het bericht
  • De callback-procedure waarnaar dit bericht wordt doorgegeven
  • Een beschrijving van de berichtparameters
  • Optionele opmerkingen over het gebruik van het bericht
  • Optionele verwijzingen naar andere functies, berichten en gegevensstructuren
  • Optionele opmerkingen die dit bericht vergelijken met de TAPI-interface

Bepaalde berichten worden gebruikt om TAPI op de hoogte te stellen van een wijziging in de status van een object. Deze berichten bieden de TAPI ondoorzichtige objectgreep en een indicatie van welk statusitem is gewijzigd. TAPI kan vervolgens een geschikte 'get status'-functie van het object aanroepen om de volledige status van het object te verkrijgen.

Wanneer er een gebeurtenis optreedt, kan een bericht wel of niet naar TAPI worden verzonden. Voor sommige gebeurtenistypen, zoals statuswijzigingen, geeft TAPI een set statuswijzigingen op waarin deze is geïnteresseerd. De serviceprovider wordt aangeraden de statuswijzigingsberichtengebeurtenissen te beperken die worden gerapporteerd aan de gebeurtenissen die in deze set zijn opgenomen. De serviceprovider is niet vereist om aan deze limiet te voldoen. Met andere woorden, het kan meer wijzigingen rapporteren dan strikt noodzakelijk is. Het moet echter proberen om prestatieredenen de limiet te observeren.

Het LINE_REPLY bericht wordt niet gebruikt op TSPI-niveau. Voltooiing van een asynchrone aanvraag wordt gerapporteerd met behulp van de ASYNC_COMPLETION callback.

Het PHONE_REPLY bericht wordt niet gebruikt op TSPI-niveau. Voltooiing van een asynchrone aanvraag wordt gerapporteerd met behulp van de ASYNC_COMPLETION callback.

Zie de volgende onderwerpen voor meer informatie: