ISDN技术介绍:API简述

    API(Application Program Interface)从事技术开发的人员一定知道这是什么东西,形象地说就是应用程序接口,提供自身应用和其他软/硬件的连接。

    作为一个普通用户,你也有必要了解有关API技术,因为它牵涉到您的应用。让我们一同来学习ISDN中的API技术。

一、四种典型的API:

WinISDN: 专门用于ISDN和Windows;
CAPI: 用于ISDN和一系列操作系统的一般用途;
TAPI: 用于电话和windows的一般用途;
TSAPI: 用于LAN和采用Novell Netware 的电话交换,以及AT&T交换设计或实现。

二、WinISDN
(1)我想知道什么是WinISDN?
    和你一样最初我也这么问自己这个问题,翻阅了大量书刊后,并参考了有关书籍给出这么一定定义:WinISDN是Microsoft Windows软件产品和ISDN卡接口的软件定义。它由一个标准应用编程接口(API)集组成,这些API集可以为ISDN卡建立一个设备驱动程序 WinISDN.dll。

    WinISDN是最简单的API,仅用于WINDOWS和满足基本电话功能的需要。WinISDN最初用于简化ISDN上的数据通信。WINISDN.dll透明地封装任何HDLC帧格式的分组,不仅支持ISDN B信道上传送HDLC分组,还支持话音和图象应用的流数据。WinISDN 驱动器允许应用程序使用拨号开始一个连接,一次获得一个数据块而不是一次一个字节的串行通信形式。从而允许应用程序利用作为TCP/IP通信软件包一部分的PPP,而无须作为驱动器的一部分。

| 应用层    |
| 表示层    |      
| 会话层    |
| 传输层    |    
| 网络层    |
  <-------- TCP/IP

<-------------------WinISDN
| 数据链路层 |
| 物理层 |
   <-------- ISDN硬件

(2) WinISDN编程函数

通过下列功能WinISDN能够设置和管理基本电话呼叫:
ISDNOpen()
ISDNConnect()
ISDNRead()
ISDNWrite()
ISDNDisconnect()
ISDNClose()

如果采用WinISDN来编程设置呼叫,首先要复位ISDN交换机,而后使用适当的入口参数来调用功能。


WinISDN同时支持TAPI和CAPI,其基本功能包括:
ISDNOpen()
ISDNClose()
ISDNConnect()
ISDNDisconnect()
ISDNListenConnection()
ISDNAccept()
ISDNReject()
ISDNRead()
ISDNWrite()
ISDNGetEventMark()
ISDNSetEventMark()


除了上述基本功能外,WinISDN还拥有扩展功能集以支持ISDN补充业务。扩展功能如下所示:
ISDNGetStatus()
ISDNFlush()
ISDNSetRequest()
ISDNGetIndication()
ISDNReadCallcontrol()
ISDNWriteCallcontrol()
ISDNGetConfiguration()
ISDNSetConfiguration()
ISDNGetBoardEventMark()
ISDNSetBoardEventMark()
ISDNReadInfoElement()

这些扩展功能允许电话业务中所谓的三方呼叫控制。