CN1306720A - 虚拟电话通用可配置接口 - Google Patents

虚拟电话通用可配置接口 Download PDF

Info

Publication number
CN1306720A
CN1306720A CN99807098.XA CN99807098A CN1306720A CN 1306720 A CN1306720 A CN 1306720A CN 99807098 A CN99807098 A CN 99807098A CN 1306720 A CN1306720 A CN 1306720A
Authority
CN
China
Prior art keywords
data structure
virtual
virtual telephony
communication
phone
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN99807098.XA
Other languages
English (en)
Inventor
R·弗里齐格
R·D·奥尔森
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Voice Technologies Group Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Voice Technologies Group Inc filed Critical Voice Technologies Group Inc
Publication of CN1306720A publication Critical patent/CN1306720A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/42314Systems providing special services or facilities to subscribers in private branch exchanges
    • H04M3/42323PBX's with CTI arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M11/00Telephonic communication systems specially adapted for combination with other electrical systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/42314Systems providing special services or facilities to subscribers in private branch exchanges
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q3/00Selecting arrangements
    • H04Q3/42Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker
    • H04Q3/54Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised
    • H04Q3/545Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised using a stored programme
    • H04Q3/54508Configuration, initialisation
    • H04Q3/54516Initialization, software or data downloading
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q3/00Selecting arrangements
    • H04Q3/42Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker
    • H04Q3/54Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised
    • H04Q3/545Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised using a stored programme
    • H04Q3/54575Software application
    • H04Q3/54583Software development, e.g. procedural, object oriented, software generation, software testing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q3/00Selecting arrangements
    • H04Q3/58Arrangements providing connection between main exchange and sub-exchange or satellite
    • H04Q3/62Arrangements providing connection between main exchange and sub-exchange or satellite for connecting to private branch exchanges
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/253Telephone sets using digital voice transmission
    • H04M1/2535Telephone sets using digital voice transmission adapted for voice communication over an Internet Protocol [IP] network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13003Constructional details of switching devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/1305Software aspects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13093Personal computer, PC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13098Mobile subscriber
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13106Microprocessor, CPU
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13109Initializing, personal profile
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13196Connection circuit/link/trunk/junction, bridge, router, gateway
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13204Protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13209ISDN
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13216Code signals, frame structure
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/1322PBX
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13222PBX circuits in public exchange, centrex
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/1329Asynchronous transfer mode, ATM
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13299Bus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13362Asynchronous systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13389LAN, internet

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Physics & Mathematics (AREA)
  • Astronomy & Astrophysics (AREA)
  • General Physics & Mathematics (AREA)
  • Telephonic Communication Services (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)
  • Interface Circuits In Exchanges (AREA)

Abstract

一种利用虚拟电话(18)的电话通信系统,其中一般连接了电话交换机或类似的数字交换装置(12)、数字电话(14)以及诸如个人计算机(PC)或其它处理器之类的外部装置(16)。虚拟电话通用接口是可配置的,且包括一组虚拟电话数据结构(20)、内部虚拟电话应用程序接口(VPAPI)(22)、外部VPAPI(24)以及外部传递协议。通用接口把专有电话交换机或外部应用协议转换成通用格式,并在专有交换系统协议和各种应用的协议之间起到协议翻译器的作用。

Description

虚拟电话通用可配置接口
发明领域
本发明一般涉及电话通信系统,尤其,涉及一种装置,所述装置对于在许多不同类型的数字电话交换机之一上的数字线路提供通用软件接口。具有这种通用接口的电话是“虚拟电话”,它具有代表任何数字电话的大多数特征的灵活性,不管交换机的类型或在数字电话中的特征数目。
在不同的产品系列上已经存在各种形式的虚拟电话的一般概念。在某些情况中,已经使用虚拟电话来代表特定的数字电话,诸如Rolm Phone 400或Meridian 2616。这些电话代表它们各自交换机的电话的超集。在其它的情况中,已经使用虚拟电话仅代表数字电话的必要部分或子设备。
现有技术
电信系统的重要特征之一是系统的不同互连部分具有彼此有效地通信的能力。许多面向商业的电信系统具有使内部电话相互链接并和外部电话网络链接的PBX(专用小交换机)交换机。
虽则当今大多数供应商围绕可得到的运行通用操作系统(诸如UNIX)的通用处理器来建立PBX,并使用通用编程语言(诸如C或C++),但不幸的是不同供应商的交换装置使用专有通信协议。因此,实际上不可能把一个供应商的交换装置和另一个供应商的应用综合起来。
因此,变得极其希望能提供一种电信系统,该电信系统具有把专有PBX或外部应用协议转换成通用格式的特征,继而,在专有交换系统协议和各种应用的协议之间起到“协议翻译器”的作用。
在现有技术中已经揭示了许多解决该问题的方案。例如授予Barnett等人的美国专利第4,873,718号,“特征电话综合装置”揭示了一种装置和方法,用于把一个供应商的应用(话音邮件系统)综合到不同供应商的PBX环境中。在该专利中,通过给PBX的供应商的特征电话配备附加的电路来监视在PBX、特征电话和外部应用之间的电话通信,从而实现互连。所揭示的系统的一个明显的缺点是它没有能力在不同的PBX交换系统的许多可能的专有协议和外部应用之间提供通用接口。所揭示的发明仅提供PBX和话音邮件系统之间的综合,它不提供使PBX与各种不同的外部应用综合的可能性。此外,关于调用或调用状态变化的任何信息的交换仅发生在“单向”:从PBX到电话机。
美国专利第5,440,616号提供了一种比第4,873,718号专利有所改进的设备,该设备用于使发消息系统(话音、传真等)与PBX互连,所述设备提供全数字传输,并在发消息系统和PBX之间提供宽带宽和控制信息的冗余传输。第5,440,616号专利的设备包括数字话音终端适配器,所述适配器是硬件和仿真数字特征电话的软件的组合,它把发消息系统和PBX互连以提供发消息系统和PBX的完全综合。然而所揭示的适配器不把专有PBX或外部应用协议转换成普通的格式,因此不能在专有交换系统协议和各种应用的协议之间起到协议翻译器的作用。
授予Applegate等人的美国专利第5,255,314号,“交换附件综合装置”揭示了一种装置,该装置使用一个或多个数字电话线路的多个线路外部特征(appearance)来收集有关为附加话音邮件系统所设计的调用的信息。在接收到所需的信息后,该装置把调用传递到引向话音邮件系统的模拟电话线路上。再有,该装置在PBX交换机和话音邮件系统之间仅提供一个通信工具。所揭示的装置没有经由通用接口把任何类型的公知PBX交换机和任何类型的外部装置综合在一起。
发明概要
有利的是,本发明克服了存在于现有技术中的“协议转换”的难题。本发明的虚拟电话通用接口包括三个不同的模块:虚拟电话数据结构、程序接口以及主机接口。所有三个模块都可独立于特定类型的综合而工作。把虚拟电话的数据结构和程序接口软件做到嵌入式处理器内部,所述嵌入式处理器控制专用小交换机(PBX)的数字电话交换系统接口综合。对于每个综合,交换机和虚拟电话数据结构之间的接口是不同的,但是一旦实现接口,就可以把它再用于许多不同类型的应用。不管综合的类型如何,虚拟电话结构和外部应用之间的接口是相同的。
通过任何类型的传输媒体为外部接口提供了虚拟电话的实现。驻留在辅助PC上的电话应用可以示出虚拟电话的当前状态,还可以进行调用控制。这示出了通用外部接口并且还提供了一种诊断的方法。根据系统的配置,以不同的方法来实现至辅助PC的接口。可以通过串行端口、ISA总线、PCI总线、通用串行总线、以太网或任何其它类型可配置的传输来实现。使用内部设计的协议来进行虚拟电话和辅助PC之间的通信。实质上,虚拟电话在专用交换机消息和外部串行接口之间充当协议转换器。
本发明的虚拟电话在任何数字电话交换机和任何数目的终端装置之间提供了通用接口。虚拟电话代表某个理论电话的当前状态并具有按钮、光、钩键、显示器、振铃器和标准数字电话一般所具有的其它任何东西。虚拟电话的主要部件是一组代表任意给定时刻的电话状态的结构。可以通过一组虚拟电话应用程序接口(VPAPI)功能调用来访问虚拟电话结构。通过定制的虚拟电话主机接口向外部发送虚拟电话状态和事件。
当从交换机接收到分组时,抽象层分析数据并调用内部VPAPI功能。内部VPAPI功能负责更新虚拟电话结构和通过虚拟电话主机接口把有关任何状态变化的信息传递给辅助PC。使用内部设计的协议以通过诸如标准RS232通信端口之类的主机接口在虚拟电话和辅助PC之间提供通信。驻留在辅助PC上的电话应用可以示出虚拟电话的当前状态,并实现调用控制任务。所以实质上,虚拟电话的作用是专用交换机消息和外部接口之间的“协议翻译器”。
当从辅助PC接收到事件时,调用外部VPAPI功能以更新虚拟电话。把事件传递到抽象层,在抽象层处根据特定的虚拟电话综合把事件转换成命令格式。然后,接着把命令传递到交换机。
在阅读下面的详细描述并结合附图,本发明的上述和其它优点和特征将变得更清楚明了,其中:
附图简述
图1是本发明的电话通信系统的方框图;
图2是方框图,示出在不同类型的电话综合实现中的图1的系统;
图3是方框图,进一步示出图1和2的系统的虚拟电话应用程序接口;
图4是图1和2的系统中的抽象层的示例实现方框图;
图5是方框图,示出图1的系统的通用化形式。
较佳实施例的详述
电话通信系统
在图1中示出使用本发明的虚拟电话的电话通信系统,其中,通过本发明的配置18使PBX或类似的数字交换装置12、数字电话14以及诸如个人计算机(PC)或其它处理器之类的外部装置16相连。本发明的虚拟电话通用接口18包括一组虚拟电话结构20、相应的内部和外部虚拟电话应用程序接口22和24以及虚拟电话主机接口26。软件指定的硬件抽象层28在内部虚拟电话应用程序接口22、PBX12以及电话机14之间提供通信。
交换机12可以是PBX、KSU,通过中心站(诸如Centrex或ISDN)所提供的用武,它甚至不必是数字化的。数字电话14代表使用互连网协议(IP)、等时以太网、各种无线形式、ATM等新兴网络接口技术的电话之类的其它通信装置。可以把各种类型的附加电话(例如,与交换机有关的电话、模拟电话、无绳电话、会议电话)、调制解调器、传真机或计算机连接到主要通信装置14。
虚拟电话结构
通过例如保持理论(即虚拟)电话当前状态的“C”语言数据结构之类的数据结构组20来表示实际的虚拟电话。当在交换机12或附加数字电话14上发生事件时,这些结构中的数据可能变化,而通过抽象层28和VPAPI 22来传递数据。还有,如果经授权的外部装置16发出VPAPI命令,则虚拟电话结构信息可以改变。
虚拟电话结构18需要嵌入式微控制器地址范围内几个字节的RAM。结构20的当前状态与交换机12所认为的数字电话14的状态相匹配。由于处理器16中的应用程序可能削弱数字机14的控制,所以虚拟电话20和数字电话14不是始终具有匹配的状态。例如,如果把数字电话和无绳电话连接到同一线路,并且使话音按路由传送到无绳电话,则交换机认为话音是有效的,而数字电话不这样认为。
由于电话14驻留在交换机内部,所以从电话交换机12发送的消息提供了电话14的状态的表示。虚拟电话18把该状态翻译成与交换机或电话无关的形式,但该形式可表示任何想要的电话或通信装置。虚拟电话18是与协议和传输有关的。
把本发明的虚拟电话系统设计成符合不同类型的电话综合实现的需要。在软件系统的这三个主要部件(虚拟电话结构20、VPAPI 22、24和VPHI 26)中,并非在每个系统实施中都需要使用所有的部件。这在图2的概述中说明。
在第一典型实现中存在不需要主机接口的情况。当把外部通信装置34综合到系统中时,不使用主机协议。经由综合链路38通过VPAPI 24,微控制器内的系统软件可以直接控制外部装置36。
从图1的配置示出辅助PC 16经由RS232链路40连到主机接口26′。
在另一个例子中,使用所有的三个主要部件。外部通信装置是带有到虚拟电话系统的ISA链路46的计算机44。该主机计算机44运行TAPI应用程序。当接收到来自交换机12的消息时,抽象层28调用VPAPI功能,VPAPI功能更新虚拟电话结构20并把命令转换成主机系统44容易理解的通用协议。任意地,甚至不需要把数据保留在虚拟电话结构中。系统可以简单地起到协议转换器的作用。
在图2的例子中还示出经由TPC/IP协议链路52链接到虚拟电话系统的网络应用50。
首先将详细描述图1和2的虚拟电话系统18的虚拟电话数据结构20,接着描述虚拟电话应用程序接口22、24以及抽象层28。相应地,下面描述构成虚拟电话系统18的结构20的所有结构以及定义变量的说明。
主控制结构
下列“C”语言码说明主虚拟电话结构。使用该数据结构的一个实例来表示单个数字端口。typedef                                 /*主虚拟电话struct                                  结构*/VP_VOICE         voice;                /*话音状态*/VP_RINGER        ringer;               /*振铃器状态*/VP_RINGER        ringer;               /*LCD显示器状态*/BYTE             num_buttons;          /*实际使用的按钮数*/VP_BUTTON        button[VP_MAXBUTS];   /*按钮/灯状态*/BYTE             StandAlone;           /*无数字机操作*/BYTE             SwitchType;           /*所连接的交换机类型*/BYTE             DigSetType;           /*所配置的数字机类型,                                          如果*/BYTE            Connections;               /*实际连接到的电话单元*/BYTE            ActivePhone;               /*实际电话单元是有效的*/BYTE            TouchedPhone;              /*最后接触的实际电话单元*/BYTE            Carrier[2];                /*0=交换机1=数字机*/BYTE            PassThroughFlags;          /*事件块标志*/BYTE            Voicemux;                  /*承载信道方向*/VIRTUAL_PHONE;VP_VOICE        voice;                      指虚拟电话的话音控制元件。将在题为“话音控制结构”的章节中进行更详细的描述。VP_RINGER       ringer;                     指虚拟电话的振铃控制元件。将在题为“振铃控制结构”的章节中进行更详细的描述。VP_DISPLAY      display;                    指虚拟电话的显示器控制元件。将在题为“显示器控制结构”的章节中进行更详细的描述。BYTE           num_buttons;                 虚拟电话实际使用的虚拟按钮数目。虽然虚拟电话可以支持许多按钮,但是某些应用可能限制所使用的按钮数。VP_BUTTON      button[VP_MAXBUTS];          指虚拟电话的按钮控制元件。将在题为“按钮/灯”控制结构”的章节中进行                                       更详细的描述。BYTE    StandAlone;                     在为真时,系统进行操作而没有附加数字电话。当为假时,连接附加数字电话并操作。BYTE   SwitchType;                      连接到系统的PBX(或KSU)的品种。由下列定义来表示有效的电话类型:#define PBX_NONE                     0    /*没有连接PBX*/#define PBX_ATT                      1    /*连接At&T交换机*/#define PBX_M1                       2    /*连接Meridian交换机*/#define PBX_NORSTAR                  3    /*连接Norstar交换机*/#define PBX_ROLM                     4    /*连接Rolm交换机*/#define PBX_ISON                     5    /*连接ISON交换机*/BYTE       DigSetType;                   连接到系统的数字电话的类型。由下列定义来表示
                                      有效的电话类型:#define    SET_NONE                 0     /*仅当无PBX时*/#define    SET_UNKNOWN              1     /*连接,未知类型*/#define    SET_ROLM_400             10    /*Rolm电话400*/#define    SET_ROLM_240             11    /*Rolm电话240*/#define    SET_ROLM_120             12    /*Rolm电话120*/#define    SET_ROLM_600             13    /*Rolm电话600*/#define    SET_ROLM_300             14    /*Rolm电话300*/#define    SET_M1-2616              30    /*M1 2616*/#define    SET_NOR_7310             50    /*Norstar 7310*/#define    SET_NOR_7208             51    /*Norstar 7208*/#define    SET_NOR_7100             52    /*Norstar 7100*/#define    SET_NOR_7310BLF    53    /*Norstar 7310 BLF*/#define    SET_NOR_7324       54    /*Norstar 7324*/#define    SET_ATT_7405       70    /*At&T 7405*/#define    SET_ATT_7406       71    /*At&T 7406*/#define    SET_ATT_7407       72    /*At&T 7407*/#define    SET_ATT_7434       73    /*At&T 7434*/#define    SET_ISON_1         90    /*ISON1*/
BYTE          Connections;         对系统制造的所有实际电
                                话连接的屏蔽(mask)。任
                                何时刻可连接多个电话。
                                如果在该字段中设置由下
                                列定义所表示的位,则认
                                为连接相关联的单元。#define PHONE_NONE          0x00    /*没有连接电话*/#define PHONE_ADJUNCT       0x01    /*标准数字机*/#define PHONE_AUX           0x02    /*经由调试端口的电话应
                                用(app)*/#define PHONE_CONF          0x04    /*会议发言者电话*/BYTE            ActivePhone;       识别当前哪一个实际电话
                                单元有效。如果电话已控
                                制话音信道,则把它定义
                                为有效。BYTE           TouchedPhone;       识别操作者最后使用哪一
                                个实际电话。用此来确定
                                接收“有效”状态的单元。
                                该字段的有效值与以上对
                               “Connestions”字段所定
                                义的相同。
BYTE       Carrier[2]                   识别交换机和电话的载波
                                    状态。定义的第一集合检
                                    索单元,第二集合表示状
                                    态。#define    CARRIER_DEVICE_SWITCH        0/*交换机装置*/#define    CARRIER_DEVICE_ADJUNCT       1/*电话载波装置*/#define    CARRIER_LEVEL_LOSS           0/*无载波*/#define    CARRIER_LEVEL_GAIN           1/*载波*/#define    CARRIER_LEVEL_UNKNOWN        2/*未知载波状态*/BYTE       PassThroughFlags             一种位屏蔽,用于通知抽
                                    象层在交换机和电话之间
                                    应该传递哪一种类型的事
                                    件,而应该阻挡哪一种类
                                    型的事件。#define PASS_HOOK               0x01    /*来自数字机的钩键*/#define PASS_BUTTON             0x02    /*来自数字机的按钮*/#define PASS_LAMP               0x04    /*来自开关的灯更新*/#define PASS_DISPLAY            0x08    /*显示器更新开关*/#define PASS_RINGER             0x10    /*振铃更新开关*/BYTE       VoiceMux;                   识别每个可得到的承载信
                                    道的方向。这是位屏蔽,
                                    每一位表示每个信道。一
                                    般一位对应于一个话音信
                                    道,而且至少一位对应于
                                    可得到的数据信道。当该
                                    位为低时,把信道指向附
                                    加数字电话。当该位为高
                                    时,把信道指向其它装置。#define    VMUX_ADJUNCT     0           /*到数字机的信道*/#define    VMUX_AUX         1           /*到其它装置的信道*/#define    VMUX_VOICE       0x01        /*位0:话音信道*/#define    VMUX_DATA        0x02        /*位1:第一数据信道*/#define    VMUX_DATA1       0x02        /*位1:第一数据信道*/#define    VMUX_DATA2       0x04        /*位2:第二数据信道*/
话音控制结构
下列“C”语言码定义用于表示话音信道的状态的结构。把该结构的单个实例构造到主虚拟电话结构中。typedefstruct                           /*虚拟电话话音结构*/BYTE             active;               /*1=有效0=无效*/BYTE             unit;                 /*屏蔽有效单元VOICE_????*/BYTE             volume;               /*静音、低、高等*/VP_VOICEBYTE             active;               当为真时,当前话音路径
                                    有效。当为假时,话音路
                                    径无效。BYTE             unit;                 当前用作通信源的单元(在
                                    数字机的界限内)#define    VOICE_HANDSET    0x10         /*电话送受话器单元*/#define    VOICE_SPEAKER    0x20         /*电话扬声器单元*/#define    VOICE_HEADSET    0x30         /*电话送受话器单元*/BYTE          volume;                   系统操作所处的当前音级#define    VOICE_MUTE       0x01         /*静音*/#define    VOICE_NORMAL                      0x02  /*话音正常*/#define    VOICE_LOW                         0x03  /*话音低*/#define    VOICE_HIGH                        0x04  /*话音高*/
振铃控制结构
下列“C”语言码定义用于表示虚拟机的振铃状态的结构。把该结构的单个实例构造到主虚拟电话结构中。typedefstruct                                /*虚拟电话振铃结构*/BYTE          active;                       /*1=有效0=无效*/BYTE          cadence;                      /*当前调子(cadence)类型
                                         清单*/BYTE          tone;                         /*当前音调类型清单*/VP_RINGER;BYTE          active:                       当为真时,接通虚拟电话
                                         的振铃状态。一般,可以
                                         听到可听振铃指示。当为
                                         假时,断开振铃状态。BYTE          cadence;                      电话可以选择的许多不同
                                         类型的振铃调子模式之
                                         一。它在振铃状态有效时
                                         有效。#define    RINGER_CAD_OFF             1     /*振铃断开*/#define    RINGER_CAD_ON              2     /*振铃稳定接通*/#define    RINGER_CAD_2               3     /*振铃的某些通/断组合*/BYTE         tone;                         电话可以选择的许多不同
                                        的振铃音调之一。它在振
                                        铃状态有效时有效。#define    RINGER_TONE_OFF             1    /*音调断开*/#define    RINGER_TONE_A               2    /*音调A*/#define    RINGER_TONE_B               3    /*音调B*/#define    RINGER_TONE_C               4    /*音调C*/#define    RINGER_TONE_D               5    /*音调D*/#define    RINGER_TONE_E               6    /*音调E*/#define    RINGER_TONE_F               7    /*音调F*/#define    RINGER_TONE_G               8    /*音调G*/#define    RINGER_TONE_H               9    /*音调H*/
显示器控制结构
下列“C”语言码定义用于表示虚拟电话的LCD显示器的结构。把该结构的单个实例构造到主虚拟电话结构中。typedefstruct                               /*虚拟电话显示器结构*/BYTE       grid[VP_MAXROWS]                 /*显示器正文*/
       [VDP_MAXCOLS];VP_CURSOR  cursor[VPD_                      /*当前光标*/
       MAXCURSORS];BYTE       NumRows;                        /*在该页上的行数*/BYTE       NumColumns;                     /*在该页上的列数*/BYTE       NumCursors;                     /*可得到的光标数*/BYTE       IsStable;                       /*如果显示器已经稳定则
                                        为真*/BYTE       IsClear;                        /*如果显示器被清楚则为
                                        真*/VP_DISPLAY;BYTE       grid[VPD_MAXROWS]                包含有关虚拟电话的显示
       [VDP_MAXCOLS];                  器的特征的二维阵列。每
                                        个网格单元包括ASCⅡ格
                                    式的特征值。可以定义VPD_
                                    MAXROWS和[VDP_MAXCOL
                                    S],以支持各种尺寸的显
                                    示器。VP_CURSOR    cursor                     [VPD_MAXCURSORS];显示
                                    器使用的光标清单。某些
                                    显示器具有单个光标,某
                                    些具有多个光标。该结构
                                    对所有所使用的光标位置
                                    提供抽象层控制。BYTE         NumColumns;               用于当前虚拟电话实现的
                                    显示器上的列数BYTE         IsStable;                 它在显示器已稳定由抽象
                                    层所确定的时间周期时为
                                    真。仅当显示器趋向稳定
                                    时才把信息传递到主机。BYTE         IsClear;                  它在显示器被清除时为
                                    真。
下列“C”语言码定义用于表示虚拟电话的光标装置的结构。显示器功能可以使用数个光标,为了产生正确的显示必须保留这些光标。该结构是主显示器结构的一部分。typedefstruct                           /*虚拟电话光标结构*/{
     BYTE row;                     /*该光标的当前行*/
     BYTE col;                     /*该光标的当前列*/)VP_BUTTON;BYTE     row;                          在当前显示器内该光标的
                                    当前行。BYTE     col;                          在当前显示器内该光标的
                                         当前列。
按钮/灯控制结构
下列“C”语言码定义用于表示虚拟电话的按钮/灯装置的结构。主虚拟电话结构使用这些项目的清单来表示电话上所有可能的按钮/灯。typedefstruct                               /*虚拟电话按钮/灯结构*/BYTE           deviceMask;                 /*屏蔽示出下面4个哪一
                                        个有效*/BYTE           pressID;                    /*按钮按下信息的ID*/BYTE           releaseID;                  /*按钮放开信息的ID*/BYTE           lamp1ID;                    /*第一灯的ID*/BYTE           lamp2ID;                    /*第二灯的ID*/BYTE           buttonState;                /*按钮状态:1=向下0=
                                        向上*/BYTE           lamp1State;                 /*第一灯的状态*/BYTE           lamp2State;                 /*第二灯的状态*/VP_BUTTON;BYTE           deviceMask;                 识别按钮/灯的可用元件的
                                        屏蔽。在某些情况中,可
                                        以存在按钮而没有灯,而
                                        在其它的情况中,2个灯
                                        可涉及单个按钮。还有,
                                        某些按钮有按下和放开代
                                        码,而其它按钮只有按下
                                        代码。该屏蔽通过设置相
                                        关联的定义位而使字段
                                        “pressID”、“releaseID”、
                                        “lamp1ID”和“lamp2ID”
                                         生效。#define    VDP_MASKPRESS    0x01  /*“pressID”有效*/#define    VDP_MASKRELEASE  0x02  /*“releaseID”有效*/#define    VDP_MASKLAMP1    0x04  /*“lamp1ID”有效*/#define    VDP_MASKLAMP2    0x08  /*“lamp2ID”有效*/BYTE         pressID;            当按下按钮时发送到交换
                              机的有关原始综合的ID。
                              该字段仅当在
                             “deviceMask”字段中设
                              置VPB_MASKPRESS位时才
                              有效。一般,所有的键都
                              使该字段有效。BYTE        releaseID;           当放开按钮时发送到交换
                              机的有关原始综合的ID。
                              该字段仅当在
                             “deviceMask”字段中设
                              置VPB_MASKRELEASE位时
                              才有效。一般,键盘按钮
                              不使用放开ID。BYTE        lamp1ID;             在灯更新期间交换机发送
                              的有关原始综合的ID。该
                              字段仅当在“deviceMask”
                              字段中设置VPB_MASKLAMP1
                              位时才有效。没有相关光
                              的按钮(诸如键盘按钮)将
                              不使用该字段。BYTE        lamp2ID;             在灯更新期间交换机发送
                              的有关原始综合的ID。该
                              字段仅当在“deviceMask”
                              字段中设置VPB_MASKLAMP2
                              位时才有效。已知AT&T是
                                    使用按钮/灯装置的第二灯
                                    唯一综合。BYTE         buttonState;              按钮的当前状态。可以按
                                    下或放开所有的按钮。当
                                    摘机时,认为钩键是按下
                                    的,而当挂机时,是放开
                                    的。#define      BUTTON_PRESS         1     /*按钮按下*/#define      BUTTON_RELEASE       2     /*按钮放开*/BYTE            lamp1State;            第一(主要)灯的当前状
                                    态。灯可处于任何下述状
                                    态。#define         LAMP_STATE_OFF     1     /*灯断开*/#define         LAMP_STATE_ON      2     /*灯接通*/#define         LAMP_STATE_FLASH   3     /*灯闪烁*/#define         LAMP_STATE_FLUTTER 4     /*灯颤动*/#define         LAMP_STATE_WINK    5     /*灯闪亮(winking)*/#define         LAMP_STATE_KLICKER 6     /*灯摇曳(flickering)*/#define         LAMP_STATE_MISC1   7     /*灯混杂(misc)*/BYTE               lamp2State;          第二灯的状态(AT&T是使
                                     用它的唯一交换机)。灯可
                                     以处于如“lamp1State”
                                     字段中的任何状态。
按钮/灯索引描述
在主虚拟电话结构中,使用字段“VP_BUTTON button[VP_MAXBUTS]”来存储虚拟电话的按钮/灯信息。定义VP_MAXBUTS确定虚拟电话可包含的按钮/灯的最大数目。在虚拟电话的所有配置中都有标准按钮。还有随电话而不同的附加按钮。下面所示的值把这些索引定义到主虚拟电话内的按钮/灯控制结构阵列中。#define    KEY_HOOK        0    /*钩键键*/#define    KEY_HOLD        1    /*保持键*/#define    KEY_XFER        2    /*转接键*/#define    KEY_RELEASE     3    /*放开键*/#define    KEY_PAD         4    /*键盘0-9、*、#*/#define    KEY_NONFIXED    16   /*-未设置按钮的启动*/#define    KEY_PRIME       16   /*主要(prime)线路*/#define    KEY_OTHER       17   /**/KEY_HOOK             钩键。当按下时,认为是摘机。当放开时,认为是挂
                 机。所有的综合都有这个键。KEY_HOLD             标准保持键。某些综合有这个键。KEY_XFER             转接键。某些综合有这个键。KEY_RELEASE          放开键。某些综合有这个键。KEY_PAD              键盘键的启动。键的顺序按下面的次序。0到9,*,
                 和#。所有的综合都有这些键。KEY_NONFIXED         未设置的键的启动ID。可以定制配置在该索引处更
                 高级的键。KEY_PRIME            与主要线路相关联的键。当交换机具有为电话配置的
                 主要线路时,该索引应该指那个键。-KEY_OTHER           附加的键。配置是灵活的。
VPAPI(虚拟电话应用程序接口)
通过已知为VPAPI 22和24的一组对称功能可得到对虚拟电话结构的访问。VPAPI 22、24提供在虚拟电话数据结构20以及所有的装置(诸如交换机12、电话14以及外部装置16)之间传递数据的机构。仅通过该接口来改变数据结构20,而不直接通过外部功能16。可以修改该数据结构20的所有元素,并通过VPAPI 22、24读出。任何时候当抽象层软件28接收到来自交换机12、数字电话14或外部装置16的变化时,用指定更新请求的参数来调用VPAPI功能。VPAPI功能首先使命令请求有效,然后对虚拟电话结构进行适当的修改。
如图3中所示,对于来自不同供应商的不同交换机12a、12b、12c和12d以及电话14a、14b、14c、14d提供抽象层28a、28b、28c和28d。VAPI 22、24也提供虚拟电话数据结构20和诸如串行装置60、DSP 62、会议电话64和其它装置66之类的各种装置之间的数据传递。
任何时候当对虚拟电话结构20进行有效状态变化时,VPAPI 24调用负责把信息转换成通用协议的第二功能(主机接口26),并把它通过主机接口16发送给主机系统。
抽象层28(以及外部装置询问)经常需要有关虚拟电话当前状态的信息。对称的VPAPI 22、24功能就是用于这个目的和用于数据访问的所有方面。为了检索当前状态信息并把该信息传递到抽象层28和外部装置16,使用以“vp_Get”开始的功能。为了修改数据,使用“vp_Set”,它继而自动地调用以“vp_Send”开始的用于外部传递的功能。或者,例如,在虚拟电话结构中设置光状态,以灯ID和状态作为参数来调用“vp_SetLampState”。为了使抽象层28或外部装置16得到光状态,对对称功能“vp_GetLampState”进行调用。
抽象层28(以及外部装置询问)经常需要有关虚拟电话当前状态的信息。对称的VPAPI功能可用于这个目的。因此,在处理交换机和电话分组期间,抽象层28经常调用VPAPI功能22、24,以把数字电话14的当前状态保存在虚拟电话数据结构20中。主要使用“vp_Set”类型功能。当发生诸如通用无绳单元摘机之类的模拟事件时,应用程序码也可以对“vp_Set”进行调用,使系统处于摘机状态。还要注意,为了使模拟事件影响交换机,它必须通过例如“vprolm_Dobutton”形式的API功能而通过抽象层。
硬件抽象层28不是虚拟电话的一部分,而是用于使交换机12(和电话14)和虚拟电话18之间连接的系统部件。用于构造该块的规定随每个交换机类型而变化。在图4的例子中,示出ISDN交换机72和ISDN电话74使用的ISDN综合的建立。
可以根据国际标准ITU I系列和ITU G系列文件来建立硬件抽象的第一层80(物理层)。在ITU Q.920到Q.923文件中定义了第二层82(数据链路层)。在ITU Q.930到Q.939文件中定义了第三层84(网络层)。这些规定一起定义了如何建立在ISDN交换机上面所建立的虚拟电话支持的硬件抽象块28。
初始化功能
使用下列功能进行初始化,并一般仅在系统启动时调用这些功能。vp_init()                               执行一般的虚拟电话初始化,诸如分配数据和
                                    变量初始化。在启动期间主应用程序调用该功
                                    能一次。vp_init_pbx_type()                      执行对特定交换机专用的初始化。当调用
                                    VPAPI功能“vp_SetPbxType”时,虚拟电话
                                    系统自动地调用该功能。一般,它在启动时仅
                                    发生一次。vp_init_set_type()                      执行对特定数字电话专用的初始化。当调用
                                    VPAPI功能“vp_SetPbxType”时,虚拟电话
                                    系统自动地调用该功能。一般,它在启动时仅
                                    发生一次。
配置控制功能
使用这些功能来管理主应用程序和虚拟电话之间的系统配置信息。vp_SendPbxType(BYTE resp)vp_GetdPbxType(BYTE*type)vp_SetPbxType(BYTE type)
         上述三个功能以当前实际连接的交换机12类型对虚拟电话
         20进行配置。在主应用程序确定连接哪种交换机之后,它调
         用Set(设定)功能。Set功能自动地调用
         vp_init_pbx_type()。
type     表示交换机类型的下列定义的变量之一。
(类型)
         PBX_NONE             没有连接交换机(默认)
         PBX_ATT              连接AT&T交换机
         PBX_M1               连接Meridian交换机
         PBX_NORSTAR          连接Norstar交换机
         PBX_ROLM             连接Rolm交换机
resp     待传递到串行端口的数据类型。
(响应)
         QUERY_RESPONSE       无变化,串行分组是起因于询问
         DELTA_RESPONSE       虚拟电话的状态已经变化vp_SendSetType(BYTE resp)vp_GetSetType(BYTE*type)vp_SetSetType(BYTE type)
       上述三个功能以当前实际连接的数字电话类型对虚拟电话20
       进行配置。在主应用程序16确定连接哪种数字电话之后,
       它调用Set功能。Set功能自动地调用vp_init_set_type()。
type   表示交换机类型的下列定义的变量之一。
       SET_NONE               没有连接数字电话(默认)
       SET_UNKNOWN            连接未知类型的数字机
       SET_ROLM_400           连接Rolm RP400机
       SET_ROLM_240           连接Rolm RP240机
       SET_ROLM_120           连接Rolm RP120机
       SET_ROLM_600           连接Rolm 600系列机
     SET_ROLM_300    连接Rolm 300系列机
     SET_M1_2616     连接Meridian 2616机
     SET_NOR_7310    连接Norstar 7310机
     SET_NOR_7208    连接Norstar 7208机
     SET_NOR_7100    连接Norstar 7100机
     SET_NOR_7310BLF 连接Norstar 7310 BLF机
     SET_NOR_7324    连接Norstar 7324机resp    待传递到串行端26的数据类型。
     QUERY_RESPONSE  无变化,串行分组起因于询问
     DELTA_RESPONSE  虚拟电话的状态已经变化vp_SendConnectionsType(BYTE resp)vp_GetConnectionsType(BYTE*type)vp_SetConnectionsType(BYTE type)
      上述三个功能以当前实际地连接的电话清单对虚拟电话20
      进行配置。主应用程序16确定将访问该系统的电话单元的
      类型。一旦确定,则它用表示当前连接的屏蔽来调用该功能。mask    相应于多达8个电话单元而使用的位屏蔽。如果给定电话类(屏蔽)  型的位在屏蔽中为接通,则把该电话连接到系统中。
      PHONE_NONE       没有连接电话(默认)
      PHONE_ADJUNCT    连接兼容的数字电话
      PHONE_AUX        连接基于串行链路的电话
      PHONE_CS1000     连接模拟会议电话resp    待传递到串行端26的数据类型。
        QUERY_RESPONSE    无变化,串行分组起因于询问
        DELTA_RESPONSE    虚拟电话的状态已经变化
话音MUX(多路)控制功能
当同时把多个电话连接到系统时,必须保持实际使用的哪一个电话。虚拟电话20需要这个信息,从而它可以把话音数据引向适当的电话。一旦电话已“控制”话音,虚拟电话20责任阻挡其它单元采取危险的动作(诸如终止调用)。
虚拟电话20所关心的关键元件是当前控制的以及最后接触的单元。这些值使虚拟电话能无缝地(seamlessly)管理所连接的电话单元之间的调用控制。vp_SendActivePhone(BYTE resp)vp_GetActivePhone(BYTE*type)vp_SetActivePhone(BYTE type)
        上述三个功能以当前有效的电话14对虚拟电话20进行配
        置。如果话音路径有效且它指向该电话,则认为该电话是有
        效的。有效电话也是公知的有“控制”的电话。
type    当前已经控制的所连接的电话的电话类型ID。该电话类型必
        须在连接屏蔽清单中。
        PHONE_NONE       空闲,无电话有控制(默认)
        PHONE_ADJUNCT    兼容的数字电话已控制
        PHONE_AUX        基于串行链路的电话已控制
        PHONE_CS1000     模拟会议电话已控制
resp    待传递到串行端口的数据类型。
        QUERY_RESPONSE   无变化,串行分组起因于询问
         DELTA_RESPONSE    虚拟电话的状态已经变化vp_SendTouchedPhone(BYTE resp)vp_GetTouchedPhone(BYTE*type)vp_SetTouchedPhone(BYTE type)
        上述三个功能以最后接触的电话对虚拟电话20进行配置。
        当用户按下一特定电话上的按钮或摘机时,认为已接触该电
        话。当终止呼叫时,认为没有电话被接触。趋于有效的电话
        将始终是具有当前接触状态的电话。
type    电话类型标识符,如果所连接的电话是操作者最后使用的电
        话。
        PHONE_NONE       空闲,无电话有控制(默认)
        PHONE_ADJUNCT    兼容的数字电话已控制
        PHONE_AUX        基于串行链路的电话已控制
        PHONE_CS1000     模拟会议电话已控制resp      待传递到串行端口的数据类型。
        QUERY_RESPONSE   无变化,串行分组起因于询问
        DELTA_RESPONSE   虚拟电话的状态已经变化
话音控制功能
使用这些功能来管理虚拟电话20中所有有关信息的话音。把有关一电话的话音有效状态、音量以及实际单元都保持下来。vp_SendvoiceState(BYTE resp)vp_GetVoiceLevel(BYTE*level)vp_GetVoiceUnit(BYTE*unit)vp_GetVoiceVolume(BYTE*volume)vp_SetVoiceLevel(BYTE level)vp_SetVoiceUnit(BYTE unit)vp_SetVoiceVolume(BYTE volume)
       上述七个功能以当前话音状态对虚拟电话20进行配置。任
       何时候当交换机12激活(activate)或不激活话音路径时,
       调用这些功能。某些交换机或电话具有激活不同的音量及不
       同的单元上(诸如头戴式送受话器或扬声器电话)的话音路径
       的能力。level     当为真时,系统话音路径有效。当为假时,它无效。看(电平)    vp_GetActivePhone来确定哪个电话能控制话音路径。unit      操作者正在使用的电话上的单元。(单元)
       VOICE_HANDSET    在大多数电话上可找到的送受话器
       VOICE_SPEAKER    扬声器/麦克风(在某些电话上可找
                        到)
       VOICE_HEADSET    辅助头戴式送受话器(通常是装置中
                        的分开插头)volume    可以通过电话听到的话音的音量。(音量)
       VOICE_MUTE       话音有效,但音量是静音
       VOICE_NORMAL     正常话音音量
       VOICE_LOW        音量可听到,但比正常的低
       VOICE_HIGH       音量高于正常音量 resp       待传递到串行端口的数据类型。
        QUERY_RESPONSE    无变化,串行分组起因于询问
        DELTA_RESPONSE    虚拟电话的状态已经变化
振铃控制功能
使用这些功能来管理在虚拟电话20中有关振铃的所有信息。把振铃期间的振铃有效状态、调子以及音调都保留下来。vp_SendRingerState(BYTE resp)vp_GetRingerLevel(BYTE*level)vp_SetRingerCadence(BYTE*Cadence)vp_GetRingerTone(BYTE*tone)vp_SetRingerLevel(BYTE level)vp_SetRingerCadence(BYTE cadence)vp_SetRingerTone(BYTE tone)
        上述七个功能以当前振铃状态对虚拟电话20进行配置。任
        何时候当交换机12接通或断开可听见的振铃时,调用这些
        功能。不同的交换机使用不同的振铃调子和振铃音调。虚拟
        电话20保留该信息。level      当为真时,认为振铃有效。在某些交换机上,振铃可能在振
        铃周期的整个持续时间上是有效的。在其它交换机中,振铃
        可能仅在听到可听见的振铃声音时才有效。当为假时,振铃
        无效。cadence    交换机正在发送振铃信号的调子。(调子)
        RINGER_CAD_OFF    无振铃调子
     RINGER_CAD_ON    标准振铃调子有效
     RINGER_CAD_2     其它振铃调子有效tone    所听到的振铃的音调。(音调)
     RINGER_TONE_OFF  无可听见的音调
     RINGER_TONE_A    音调A
     RINGER_TONE_B    音调B
     RINGER_TONE_C    音调C
     RINGER_TONE_D    音调D
     RINGER_TONE_E    音调E
     RINGER_TONE_F    音调F
     RINGER_TONE_G    音调G
     RINGER_TONE_H    音调Hresp    待传递到串行端口的数据类型。
     QUERY_RESPONSE   无变化,串行分组起因于询问
     DELTA_RESPONSE   虚拟电话的状态已经变化
灯控制功能
使用这些功能来管理虚拟电话20中有关灯(LED或光)的所有信息。一般在给定的系统中存在许多灯。虚拟电话容易存储这些灯中任何灯的状态。也可把灯更新信息直接传递到主机系统。在此情况下,虚拟电话只传递信息而不保留信息。
在把灯存储在虚拟电话中的情况下,可以使用任何功能来读或写数据。在名称中带有“V”的功能需要灯的虚拟电话索引。其余的功能直接用原始ID进行工作。扩展功能“Ex”允许多个字节的原始ID信息。
当不把灯状态保留在虚拟电话结构中时,只能使用以原始ID进行工作的功能。这些功能将简单地把更新信息直接传递到主机而不在虚拟电话结构中存储任何信息。vp_SendLampState(BYTE resp,BYTE vid)vp_SendLampState(BYTE resp,BYTE len,BYTE*rawidlist,BYTE state)vp_GetLampState(BYTE vid,BYTE*state)vp_SetLampState(BYTE vid,BYTE state)vp_SetLampState(BYTE rawid,BYTE state)vp_SetLampState(BYTE len,BYTE*rawidlist,BYTE state)
rawid     从交换机发送的原始ID。虚拟电话进行检查,以查看是否(原始ID)   把该灯配置成所定义的电话的一部分。如果是这样,则进
          行查找,以得到正确按钮/灯索引的虚拟索引(vid)。
rawidlist 从交换机发送的原始ID清单。这在需要不止一个字节的
(原始ID   信息来核准灯时使用。使用“len”参数来确定该清单中
清单)     的字节数。
len      “rawidlist”中的字节数。
state     灯的状态。
(状态)
          LAMP_STATE_OFF      灯是暗的
          LAMP_STATE_ON       灯光是稳定地亮着
          LAMP_STATE_FLASH    灯以闪烁的形式亮着
          LAMP_STATE_FLUTTER  灯以颤动的形式亮着
          LAMP_STATE_WINK     灯以闪亮的形式亮着
          LAMP_STATE_FLICKER  灯以摇曳的形式亮着
          LAMP_STATE_MISC1    灯以未知的形式亮着
vid    在虚拟电话20内用于灯的ID。每个按钮/灯控制结构具有
       用于灯信息的字段。只把某些按钮/灯定义为虚拟电话20
       的一部分。该字段是虚拟电话的按钮/灯结构内的一种索
       引。(见按钮/灯索引描述这一章节)
resp   待传递到串行端26的数据类型。
       QUERY_RESPONSE    无变化,串行分组起因于询问
       DELTA_RESPONSE    虚拟电话的状态已经变化
按钮控制功能
使用这些功能来管理虚拟电话内与按钮和钩键有关的所有信息。一般在给定的系统上存在钩键和许多按钮。虚拟电话容易存储这些按钮中任何按钮的状态。也可把按钮按下/放开信息直接传递到主机系统。在此情况下,虚拟电话仅使信息通过而不保留信息。
把钩键看作一个按钮,并在虚拟电话中始终把它定义为按钮号零。
在把按钮存储在虚拟电话中的情况下,可以使用任何功能来读或写数据。在名称中带有“V”的功能需要按钮的虚拟电话索引。其余的功能直接用原始ID进行工作。扩展功能“Ex”允许多个字节的原始ID信息。
当不把按钮状态保留在虚拟电话结构中时,只可使用以原始ID工作的功能。这些功能简单地把更新信息直接传递到主机而不在虚拟电话结构中存储任何信息。vp_SendButtonState(BYTE resp,BYTE vid)vp_SendButtonState(BYTE resp,BYTE len,BYTE*rawwidlist,BYTE state)vp_GetButtonState(BYTE vid,BYTE*state)vp_SetButtonState(BYTE vid,BYTE state)vp_SetButtonState(BYTE rawid,BYTE state)vp_SetButtonState(BYTE len,BYTE*rawwidlist,BYTE state)
rawid      从交换机发送的原始ID。虚拟电话进行检查,以查看是否
           把该按钮配置成所定义的电话的一部分。如果是这样,则
           进行查找,以得到正确按钮/灯索引的虚拟索引(vid)。
rawidlist  从交换机发送的原始ID清单。这在需要不止一个字节的
           信息来核准按钮时使用。使用“len”参数来确定该清单
           中的字节数。
len       “rawidlist”中的字节数。
state      按钮或钩键的状态。可以按下或放开按钮。当摘机时,认
           为把钩键按下,而当挂机时放开。
           BUTTON_PRESS    已按下按钮
           BUTTON_RELEASE  已放开按钮
vid        在虚拟电话20内用于按钮或钩键的ID。每个按钮/灯控制
           结构具有用于按钮信息的字段。只把某些按钮/灯定义为
           虚拟电话20的一部分。该字段是虚拟电话的按钮/灯结构
           内的一种索引。(见按钮/灯索引描述这一章节)
resp       待传递到串行端口的数据类型。
           QUERY_RESPONSE    无变化,串行分组起因于询问
           DELTA_RESPONSE    虚拟电话的状态已经变化钩键控制功能钩键只是一个按钮。始终把按钮索引零固定于钩键。因为这样,对于钩键控制可以使用按钮API调用。然而,为了简单起见,为直接钩键控制提供一组API功能。vp_SendHookState(BYTE resp)vp_SetHookState(BYTE state)vp_GetHookState(BYTE*state)
state   钩键的状态。
        HOOK_OFF          摘机(类似于按钮按下)
        HOOK_ON           挂机(类似于按钮放开)
resp    待传递到串行端口的数据类型。
        QUERY_RESPONSE    无变化,串行分组起因于询问
        DELTA_RESPONSE    虚拟电话的状态已经变化
显示器控制功能
虚拟电话支持保持灵活显示的能力。这些功能给抽象层提供了以类似于交换机如何把信息放到显示器上的方式来建立显示的能力。
当从交换机接收到正文变化时,抽象层调用“更新”功能把这些正文变化发送到显示器。寻址是直接的(通过行号和列号),或根据光标位置。交换机经常用一个命令来清除单个行或甚至整个显示。对于这些任务中的每一个存在API功能。
经常,一给定的显示器存在不止一个光标。任何时候当给出光标类型命令的显示更新时,抽象层传递光标索引。API命令存在以保留每个当前光标位置。
当显示器已经稳定(没有变化)了给定的时间周期或交换机发送“显示器稳定”命令时,抽象层调用“vp_dDisplayIsStable”功能。这触发虚拟电话把显示内容发送到主机。vp_SendDisplay(BYTE resp)vp_dDisplayIsStable()vp_dClearDisplay()vp_dClearrow(BYTE row)vp_dSetCursorPosition(BYTE cindex,BYTE row,BYTE col)vp_dUpdateCharAtCursor(BYTE cindex,BYTE ch)vp_dUpdateTextAtCursor(BYTE cindex,BYTE*txt,BYTE len)vp_dUpdateCharAbsolute(BYTE row,BYTE col,BYTE ch)vp_dUpdateTextAbsolute(BYTE row,BYTE col,BYTE*txt,BYTE len)
cindex待用来执行该功能的光标索引。分开地保留该索引,所述索
(光标    引包括将要显示正文的行和列。
索引)
row      将显示正文的行号。
(行)
resp     待传递到串行端口的数据类型。
         QUERY_RESPONSE    无变化,串行分组起因于询问
         DELTA_RESPONSE    虚拟电话的状态已经变化
ch       待显示的ASCⅡ字符。
(字符)
txt      待显示的ASCⅡ正文串。
(正文)
len      待显示的ASCⅡ正文串中的字符数。
载波控制功能
虚拟电话保留交换机和附加数字电话的载波状态。通过下列功能可以得到该信息。vp_SendCarrier(BYTE resp,BYTE device)vp_SetCarrier(BYTE device,BYTE level)vp_GetCarrier(BYTE device,BYTE*level)
device  实际装置。
(装置)
        CARRIER_DEVICE_SWITCH    交换机
        CARRIER_DEVICE_ADJUNCT   附加数字电话
level   载波电平。
        CARRIER_LEVEL_LOSS      装置无载波
        CARRIER_LEVEL_GAIN      装置有载波
        CARRIER_LEVEL_NKNOWN    载波状态未知
resp    待传递到串行端口的数据类型。
        QUERY_RESPONSE          无变化,串行分组起因于询问
        DELTA_RESPONSE          虚拟电话的状态已经变化
通过控制功能
可阻挡交换机和数字电话之间某些类型的消息。通过标志设定允许哪写消息通过以及阻挡哪些消息。下面的API提供了该功能。vp_SendPassThroughFlags(BYTE resp)vp_SetPassThroughFlags(BYTE flags)vp_GetPassThroughFlags(BYTE*flags)
flags    每一位表示不同通过模式的位屏蔽。如果该位被设定,则允
(标志)   许消息通过。如果被清除,则阻挡该消息。
     PASS_HOOK      来自数字机的钩键
     PASS_BUTTON    来自数字机的按钮按下/放开
     PASS_LAMP      来自交换机的灯更新
     PASS_DISPLAY   来自交换机的显示器更新
     PASS_RINGER    来自交换机的振铃更新resp    待传递到串行端口的数据类型。
     QUERY_RESPONSE 无变化,串行分组起因于询问
     DELTA_RESPONSE 虚拟电话的状态已经变化
承载信道控制功能
通常可按路由把话音和数据信道传送到附加数字电话或其它装置。这些功能控制这些承载信道的按路由传送。系统可能想要指令虚拟电话把话音或数据信息发送到附加电话以外的单元,诸如会议电话或用于处理的DSP。
由于交换机和电话之间的数字数据链路一般提供话音信道和至少一个数据信道,所以这些功能使用位屏蔽来识别要控制哪些信道。vp_SendVoiceMux(BYTE resp)vp_SetVoiceMux(BYTE devicemask,BYTE unit)vp_SendVoiceMux(BYTE devicemask,BYTE*unit)
devicemask位屏蔽,每一位表示用命令指向的承载信道之一。
(装置屏蔽)
          VMUX_VOICE    话音信道
          VMUX_DATA     数据信道
          VMUX_DATA1    主数据信道
          VMUX_DATA2    辅助数据信道
unit      待指向的信道所在的装置
(单元)
          VMUX_ADJUNCT    附加数字电话
          VMUX_AUX        其它连接的单元(DSP、会议电话等)
 resp     待传递到串行端口的数据类型。
          QUERY_RESPONSE  无变化,串行分组起因于询问
          DELTA_RESPONSE  虚拟电话的状态已经变化
虚拟电话主机接口协议
在虚拟电话20和外部装置(即,主机系统)之间的通信是通过被称为虚拟电话主机接口协议(VPHIP)26的内部设计定制协议来完成的。任何时候虚拟电话发生变化,则把VPHIP分组送出到主机,以向虚拟电话结构反映此更新。这样使辅助PC 16在所有的时间中都保持最新的虚拟电话当前状态。
通过在链路上发送VPHIP分组,辅助PC还具有控制虚拟电话的能力。虚拟电话分析VPHIP分组并调用合适的VPAPI功能,接着该功能可以更新虚拟电话结构。
VPHIP的功能性和结构描述如下:
分组格式
所有分组属于下列格式:长度      描述              值1字节    标头(header)    见附注1字节    分组长度        变量1字节    分组描述        见下面章节变量     分组数据        见下面章节
标头字节遵循特定的规定。从交换机12起始的任何消息具有标头0x01。来自附加电话14的消息具有标头0x02。来自辅助PC 16的消息具有标头0x04。信息消息(诸如PBX类型)具有标头0x00。询问和对于询问的响应视标头的最高位而定,结果得到标头码0x08、0x81和0x82。
系统信息消息
使用系统信息分组以在内部虚拟电话20和辅助PC 16之间传送电话状态信息。所有的系统信息分组具有标头值0x00。
载波状态
使用这些分组类型来识别交换机或数字电话的载波情况。字节         描述              值0           标头              0x001           分组长度          42           载波(交换机)      0xB03           载波电平
          无载波                   0
          载波                     1
          未知情况                 2字节           描述              值0             标头              0x001             分组长度          42             载波(数字机)      0xB13             载波电平
            无载波                   0
            载波                     1
            未知情况                 2
附加电话类型
使用附加电话类型分组来识别实际地连接到接口板的数字电话(如果有的话)的类型。字节         描述             值0    标头              0x001    分组长度          42    附加电话类型      0xF13    电话索引
 无                0
 未知              1
 Rolm RP400        10
 Rolm RP240        11
 Rolm RP120        12
 Rolm RP600        13
 Rolm RP300        14
 M1 2616           30
 Norstar 7310      50
 Norstar 7208      51
 Norstar 7100      52
 Norstar 7310 BLF  53
 Norstar 7324      54
 AT&T 7405         70
 AT&T 7406         71
 AT&T 7407         72
 AT&T 7434         73
当前有效的电话
当同时把不止一个电话连到接口板时,经常需要知道哪个单元正在有效地与交换机12进行通信。这样就需要建立诸如话音按路由发送以及按钮滤波之类的事件。该分组返还当前有效的实际电话描述。字节          描述              值0             标头              0x001             分组长度          42             有效电话类型      0xF2 3         单元索引
       无              0x00
       附加数字机      0x01
       辅助            0x02
       会议电话        0x04
       将来使用        0x08…
最后接触的电话
当同时把不止一个电话连接到接口板时,用户可能操作任一个单元来进行调用和接收调用。知道哪个实际单元是最后接触的使得虚拟电话20能把话音和控制按路由传送到适当的单元。字节    描述               值0       标头               0x001       分组长度           42       所接触的电话类型   0xF33       单元索引
    无                 0x00
    附加数字机         0x01
    辅助               0x02
    会议电话           0x04
    将来使用           0x08…
实际连接
虚拟电话20可以同时支持数个控制和/或监视装置。使用该命令来传递当前的配置信息。把连接信息作为位屏蔽存储,所述位屏蔽提供多达8个实际装置的空间。字节         描述         值0            标头         0x001            分组长度     4 2         实际连接类型    0xF43         连接屏蔽
       无              0x00
       附加数字机      0x01
       辅助            0x02
       会议电话        0x04
       将来使用        0x08…
来自交换机的消息
从交换机12始发的所有消息都具有标头值0x01。
话音状态
使用话音状态分组把当前话音状态提供给辅助PC 16。还提供正在使用的实际单元以及音量。字节    描述                       值0       标头                       0x011       分组长度                   52       话音使能                   0x103       单元
    送受话器                   0x01
    扬声器                     0x02
    头戴式送受话器             0x044       音量
    静音                              0
    正常                              1
    低                                2
    高                                30       标头                 0x011       分组长度             32       话音禁止(disable)    0x11
话音使能命令(0x10)明确地激活话音信道而不管单元状态。话音禁止(0x11)明确地不激活话音。话音状态命令(0x12)是这两者的组合,其中使用在单元屏蔽中存在的位来确定话音是否有效。字节       描述                  值0          标头                  0x011          分组长度              52          话音状态              0x123          单元
        送受话器             0x01
        扬声器               0x02
        头戴式送受话器       0x044          音量
        静音                  0
        正常                  1
        低                    2
        高                    3
振铃器状态
使用振铃器状态分组把振铃器状态提供给辅助PC 16。除了振铃器状态之外,还提供调子和振铃音调。在某些交换机中,在呼叫方正试图连接时以可听见的声音来接通或断开振铃器。在可听见的振铃之间使振铃器处于“接通”状态而使虚拟电话使用“调子断开”状态可能是有利的。这将给出类似于对输入呼叫状态使用LED的反馈。字节        描述           值0           标头           0x011           分组长度       52           振铃器有效     0x203           调子
       断开                  0
       接通                  1
       #2                    24          音调
       断开                  1
       A                     2
       B                     3
       C                     4
       D                     5
       E                     6
       F                     7
       G                     8
       H                     9字节    描述                  值0       标头                  0x011       分组长度              32       振铃器无效            0x21
灯状态(通用)
使用灯状态分组把灯(LED)信息提供给辅助PC 16。在分组中传递内部虚拟电话灯ID(不是交换机的原始ID)以及闪烁速率。字节    描述           值0       标头           0x011       分组长度       52       灯更新         0x303       闪烁速率
     断开                  1
     接通                  2
     闪烁                  3
颤动                  4
闪亮                  5
摇曳                  6
混杂                  74    灯ID
主要线路              16
其它                  17
灯状态(原始)
使用原始灯状态分组把灯(LED)信息提供给辅助PC 16。在该分组中传递从交换机接收到的原始ID(而非内部虚拟电话ID)以及闪烁速率。
在灯具有多个字节的ID的情况中,在分组的末端放置附加的字节而且长度相应地变化。字节    描述            值0       标头            0x011       分组长度        4+原始ID字节数2       灯更新(原始)    0x313       闪烁速率
     断开           1
     接通           2
     闪烁           3
     颤动           4
     闪亮           5
     摇曳           6
     混杂           74    灯原始ID字节#15    [灯原始ID字节#2]
显示器状态使用显示器状态分组把显示器信息提供给辅助PC。在从交换机接收到这些分组时,这些分组允许更新部分显示。基本显示器分组提供正文和位置信息(可以从分组长度字节取得长度)。可以使用其它特定的分组,用于滚动辅助PC上的闪烁字符。字节    描述           值0     标头             0x011     分组长度         5+(正文长度)2     显示器更新       0x403     行               变量4     列               变量5…   正文            “变量串”
还可使用清除显示器分组以清除整个显示器或显示器的单个行。字节  描述           值0     标头           0x011     分组长度       42     清除显示       0x413     行
    所有行            0
    单个行            行号
来自电话的消息
从PBX始发的所有消息都具有标头值0x02。
按钮状态(通用)
以一组在所有交换机上使用的通用按钮来配置虚拟电话20。这些按钮(以及相关联的灯,如果有的话)具有固定的标识符。用本命令仅把有标识符的按钮指派给虚拟电话功能。
使用按钮状态分组把从附加电话始发的按钮按下/放开信息提供给辅助PC。字节   描述             值0      标头             0x021      分组长度         42      按钮按下(通用)   0x503      ID
       钩键                0(摘机)
       保持                1
       转接                2
       放开                3
       键盘(0-9,*,#)     4-15
       主要线路            16
       其它                17字节    描述           值0       标头           0x021       分组长度       42       按钮按下(通用) 0x513       ID
       钩键           0(挂机)
       保持           1
       转接           2
       放开           3
       键盘(0-9,*,#) 4-15
       主要线路       16
       其它           17…
按钮状态(原始)
在所有电话上的所有按钮具有定义的原始id(标识符)。使用本命令在接口上传输该原始id。可以使用本命令或通用按钮状态命令来传输按钮状态变化。
在按钮具有多个字节的ID的情况中,在分组的末端放置附加的字节而且长度相应地变化。
使用按钮状态分组把从附加电话起始的按钮按下/放开信息提供给辅助PC。字节 描述           值0    标头           0x021    分组长度       3+原始ID中的字节#2    按钮按下(原始) 0x523    原始ID字节#14    [原始ID字节#2]字节 描述           值0    标头           0x021    分组长度       3+原始ID中的字节#2    按钮放开(原始) 0x533    原始ID字节#14    [原始ID字节#2]钩键状态虚拟电话包含表示电话上的实际钩键的状态的单个钩键。当钩键状态变化时发送分组。字节  描述           值0     标头           0x021     分组长度       32     钩键向上       0x54字节  描述           值0     标头           0x021     分组长度       32     钩键向下       0x55
来自辅助PC(主机)的消息
从辅助PC 16始发的所有消息具有标头值0x04。在许多情况中,主机16可仿真来自交换机或数字电话的命令。可以从主机发送前面所定义的任何分组。标头就命令源向虚拟电话发信号,因此可采取适当的动作。
按钮控制和状态
以一组在所有交换机上使用的通用按钮来配置虚拟电话20。这些按钮(以及相关联的灯,如果有的话),具有固定的标识符。用本命令仅把有标识符的按钮指派给虚拟电话功能。
辅助PC 16使用按钮控制和状态分组向虚拟电话发送按钮状态请求。这些分组在虚拟电话上的效果与直接按下附加电话上的按钮的结果相同。本协议允许用于辅助按钮按下/放开仿真。
不管按钮变化起始于附加电话还是辅助PC 16,虚拟电话20保持当前按钮状态。任何时候当按钮状态变化时,使用这些相同的分组把新状态发送给辅助PC 16。
系统状态
当主机系统准备接收来自虚拟电话的消息时,它发送使能命令。这使得虚拟电话通过主机接口协议把所有的虚拟电话变化和系统消息都发送到主机。当主机被禁止时,虚拟电话仍保持状态电话状态,它只是阻挡把信息发送到主机。字节  描述           值0     标头           0x041     分组长度       42     系统状态       0x903     电平
  禁止            0
  使能            1
通过标志
主机系统有能力以请求在交换机和数字电话之间传递或阻挡某些类型的消息。虚拟电话负责保持这些标志并在单元之间仅发送指定的分组。
如果屏蔽中的位被设定,则使分组类型通过。如果清除屏蔽中的位,则阻挡它们。字节    描述          值0       标头          0x041       分组长度      42       钩键向上      0x913       标志
      来自装置的钩键        0x01
      来自装置的按钮        0x02
      来自交换机的灯更新    0x04
      来自交换机的显示器    0x08
      来自交换机的振铃器    0x10
拨号命令
主机可以请求虚拟电话拨出一串给定的数字。虚拟电话根据对于拨号命令的参数执行按钮按下/放开和必需的延迟。所拨的串可以包含任何键盘按钮和逗号。键盘按钮表示它们自己而逗号表示指定的延迟。
命令的数字持续期(字节3)表示以毫秒表示的按下键不放的长度。中间的数字持续期是键按下之间的长度。暂停持续期是暂停(逗号)字符的长度。
当虚拟电话完成拨号时,它把该分组的3字节版本发送回主机,其中只有标头、长短和命令字节。字节    描述          值0       标头          0x041       分组长度      6+所拨串中的数字#2       拨号命令      0x933       数字持续期4       中间数字持续期5       暂停持续期6       拨号字符串
承载信道方向
抽象层或主机系统有能力把话音多路(voice mux)引向它们所要求的装置。该装置一般是附加数字电话或辅助单元。虚拟电话保持话音多路方向。除了话音之外,可以控制许多另外的信道。使用本命令来传递所有承载信道的多路方向状态。
如果屏蔽中的位被设定,则把多路引向辅助单元。如果被清除,则把信道引向附加数字电话。字节    描述       值0       标头       0x041       分组长度   42       话音多路   0x933       装置屏蔽
    话音       0x01
    数据       0x02
    数据1      0x02
    数据2      0x04
询问
辅助PC 16可以在任何时刻向虚拟电话20询问当前状态。这是通过发送与每个状态类型的接收命令对称的命令来进行的。除了标头字节的最高位之外,这些命令与接收命令相同。当该位为高时,虚拟电话把此解释为一个询问并自动地以当前状态作响应。
例如,如果辅助PC 16正在请求振铃器状态,则它发送分组[81 04 20##](其中##是无关数据)。虚拟电话20将通过把[01 04 20##]或[01 04 21](其中##是有效数据)发送回辅助PC来作出响应。
有效询问命令标识符(ID)为:
0x54询问  钩键状态
0x91询问  通过标志状态
0xB0询问  交换机载波状态
0xB1询问  数字电话载波状态
0x10询问  话音状态
0x20询问  振铃器状态
0x30询问  灯状态
0x40询问  显示器状态
0x50询问  按钮状态
0xF0询问  交换机类型
0xF1询问  附加电话类型
0xF2询问  当前有效电话
0xF3询问  最后接触的电话
与以上描述相结合,表Ⅰ列出虚拟电话20的数据结构,而表Ⅱ列出各种串行命令。
表Ⅰ-虚拟电话结构typedef struct       /*虚拟电话话音结构*/{BYTE active;        /*1=有效0=无效*/BYTE unit;          /*屏蔽有效单元UPV_????*/BYTE volume;        /*话音静音、低、高等*/{VP_VOICE;typedef struct       /*虚拟电话振铃器结构*/BYTE active;        /*1=有效0=无效*/BYTE cadence;       /*当前调子类型清单*/BYTE tone;          /*当前音调类型清单*/{VP_RINGER;typedef struct       /*虚拟电话显示器结构*/BYTE row:           /*该光标的当前行*/BYTE col;          /*该光标的当前列*/}VP_CURSOR;typedef struct      /*虚拟电话显示器结构*/{VP_CURSOR;typedef struct      /*虚拟电话显示器结构*/BYTE                /*显示器正文*/grid[VPD_MAXROWS][VPD_MAXCOLS];BYTE cursor          /*当前光标*/{VPD_MAXROWS};BYTE NumRows;       /*在该页上的行数*/BYTE NumColumns;    /*在该页上的列数*/BYTE NumCursors;    /*可得到的光标数*/BYTE IsStable;      /*在显示器已稳定时为真*/BYTE IsClear;       /*在显示器当前清除时为真*/{VP_DISPLAY;typedef struct       /*虚拟电话按钮/灯结构*/BYTE deviceMask;    /*屏蔽示出下面哪4个有效*/BYTE pressID;       /*按钮按下信息的ID*/BYTE releaseID;     /*按钮放开信息的ID*/BYTE lamp1ID;       /*第一灯信息的ID*/BYTE lamp2ID;       /*第二灯信息的ID*/BYTE buttonState;   /*按钮状态;1=向下0=向上*/BYTE lamp1State;    /*第一灯的状态*/BYTE lamp2State;    /*第二灯的状态*/{VP_BUTTON;typedef struct       /*主虚拟电话结构*/{VP VOICE vioce;     /*话音状态*/VP_RINGER ringer;   /*振铃器状态*/VP_DISPLAY display; /*LCD显示器状态*/BYTE Hook Switch;    /*钩键状态*/BYTE num_buttons;    /*实际在使用的按钮数*/VP_BUTTON button      /*按钮/灯状态*/
[VP_MAXBUTS];BYTE StandAlone;     /*没有数字机的操作*/BYTE SwitchType;     /*所连接的交换机的类型*/BYTE DigSetType;     /*所配置的数字机的类型,如
                  果有的话*/BYTE Connections;    /*哪些电话单元是实际连接的*/BYTE ActivePhone;    /*哪个实际电话单元是有效*/BYTE TouchedPhone;   /*接触哪个实际电话单元*/BYTE Carrier(2);     /*0=交换机1=数字机*/BYTE                  /*事件块标志*/PassThroughFlags;BYTE VoiceMux;       /*承载信道方向*/{VIRTUAL_PHONE;
表Ⅱ-简要主机命令清单描述       标头   长度         命令  数据1    数据2    数据3话音使能      P    05          10    单元话音禁止      P    03          11                       音量话音状态      P    05          12    单元               音量振铃器使能    P    05          20    调子    音调振铃器禁止    P    03          21灯(通用)      P    05          30    状态    ID灯(原始)      P    04+计数     31    状态    原始ID#1   [原始
                                                    ID#2]显示器        P    05+正文长度 40    行    列           正文…显示器清除    P    03          41按钮按下(通用)SHX  04          50    ID按钮放开(通用)  SHX  04      51    ID按钮按下(原始)  SHX  03+计数 52    原始ID#1[原始
                                       ID#2…]按钮放开(原始)  SHX  03+计数 53    原始ID#1[原始
                                       ID#2]钩键向上        SHX  03      54钩键向下        SHX  03      55系统状态        HX   04      90    电平通过标志        HX   04      91    标志拨号命令        HX   09=数字 92    见注1承载信道控制    HX   04      93    装置屏蔽载波状态-PBX    X    04      B0    电平载波状态-SET    X    04      B1    电平PBX类型         X    04      F0    类型SET类型         X    04      F1    类型有效电话        X    04      F2    单元接触的电话      X    04      F3    单元实际连接        X     04     F4    屏蔽P-PBX产生的消息             注1:用于拨号命令的参数S-SET产生的消息             数据1:数字持续期(高字节)H-Host产生的消息            数据2:数字持续期(低字节)X-Firmware系统产生的消息    数据3:中间数字持续期(高字节)
                        数据4:中间数字持续期(低字节)
                        数据5:暂停持续期(高字节)
                        数据6:暂停持续期(低字节)
                        数据7:?拨号串
本发明的系统可以图5的系统的形式来统一,它包括媒体控制代理(proxy)100、通信交换机102和通信装置或终端104。交换机12类似于图1中的PBX 12,终端104类似于图1中的电话14,媒体控制代理100是图1的虚拟电话18的统一形式。把媒体控制代理(MCP)100用作某些通信交换系统(即,交换机12)和某些终端(即,终端104)之间的网关。MCP的主要目的是桥接服务器装置(交换机)102和用户(终端104)之间通信协议的任何间隙。
通信装置104是发出和/或接收包括声音和图象的媒体的任何装置,装置104可以是实际终端或计算机硬件(包括驻留在系统中的应用程序)中的实际终端的仿真。
在图5的最小配置中,MCP 100驻留在交换机102和终端104之间。MCP 100在信道110和112上传递承载信道数据(话音、视频等)。处理控制信道114和116上的信息并转换成终端104可理解的协议。根据所连接的终端的类型,这可以是专用于终端的专有协议,或可以是为与大量装置通信而设计的MCP的标准协议。可以把控制信道116看为是一个应用程序接口(API)。
MCP 100翻译它从交换机102的控制信道114接收到的信息,并保持交换机102所定义的终端104的状态。就交换机102而论,MCP 100是终端104。MCP 100还在控制信道114上把数据发送到交换机102。它根据交换机102本地的协议来进行。交换机102翻译来自MCP 100的任何消息,如同那些来自终端104的消息。
可把MCP 100配置成实现许多不同的功能。要点是它有能力既和交换机的本地终端进行通信,而且还可以和无限选择的终端或通信装置进行通信。把在交换机和本地终端之间使用的原始连接的固定(有时是专有的)控制协议转换成支持任何给定终端所必需的任何通信方法。
可以连到MCP 100的终端类型如此灵活,从而数据和控制信道所驻留的媒体类型也是没有限制的。如同计算机总线上的连接,直接的专有连接是可能的。还可在新的或现有的网络上按路由传送数据和控制信道。支持无线通信的装置。事实上,建立该系统,使之可配置成操作要求传递的任何终端。MCP100管理任何这样的配置的数据准备。
因此可以明白,本发明实现它所预定的目的。提供一种电话通信系统,它把专有PBX或外部应用协议转换成通用的格式,并因此在专有交换系统协议和各种应用协议之间起到翻译器的专用。本发明的虚拟电话通用接口是可配置的,并可以独立于特定类型的综合而工作,以及提供任何数字电话交换机和任何数目的终端装置之间的通用接口。把虚拟电话接口中的变化传送给外部处理器,接着,外部处理器可以命令虚拟电话接口中的变化。
已经详细地描述了本发明的实施例,但是只为了示意的目的,并不受其限制。

Claims (40)

1.在一种包括至少一个电话交换机和至少一个通信装置的通信系统中:一种虚拟电话通用可配置接口起到所述电话交换机的协议的协议翻译器的作用,从而使能所述交换机和所述通信装置之间的通信。
2.如权利要求1所述的系统,其特征在于,所述虚拟电话通用可配置接口包括用于提供一组虚拟电话数据结构的装置,所述虚拟电话数据结构组用于表示在任意给定时刻电话交换机所知的电话状态。
3.如权利要求1所述的系统,其特征在于,所述虚拟电话通用可配置接口包括用于提供虚拟电话应用程序接口的装置,所述虚拟电话应用程序接口用于在所述电话交换机和所述通信装置之间提供数据通信。
4.如权利要求1所述的系统,其特征在于,所述虚拟电话通用可配置接口包括用于提供通信协议的装置,所述通信协议用于所述电话交换机和所述通信装置之间的电话控制信息传递。
5.如权利要求1所述的系统,其特征在于,所述虚拟电话通用可配置接口包括:
(a)用于提供一组虚拟电话数据结构的装置,所述虚拟电话数据结构组用于表示在任何给定的时刻电话交换机所知的电话状态;以及
(b)用于提供程序接口的装置,所述程序接口用于访问所述数据结构。
6.如权利要求5所述的系统,其特征在于,用于提供访问所述数据结构用的程序接口的所述装置包括虚拟电话应用程序接口,所述虚拟电话应用程序接口用于在所述虚拟电话数据结构组与所述交换机和所述通信装置之间提供数据通信。
7.在一种包括至少一个电话交换机、至少一个电话以及用于处理有关所述电话交换机和所述电话的操作的应用的计算机的电话通信系统中:一种虚拟电话通用可配置接口在所述电话交换机的协议和所述应用的协议之间用作协议翻译器。
8.如权利要求7所述的系统,其特征在于,所述虚拟电话通用接口包括:
(a)用于提供一组虚拟电话数据结构的装置,所述虚拟电话数据结构组用于表示在任意给定时刻电话交换机所知的电话状态;
(b)用于提供程序接口的装置,所述程序接口用于访问所述数据结构;以及
(c)用于提供协议的装置,所述协议用于建立所述计算机和所述数据结构之间的通信。
9.如权利要求8所述的系统,其特征在于,用于提供访问所述数据结构用的程序接口的所述装置包括:
(a)内部虚拟电话应用程序接口,用于在所述虚拟电话数据结构组与所述交换机和所述通信装置之间提供数据通信;以及
(b)外部虚拟电话应用程序接口,用于在所述虚拟电话数据结构组和所述计算机之间提供数据通信。
10.如权利要求9所述的系统,其特征在于,还包括通信协议,用于在所述外部虚拟电话应用程序接口和所述计算机之间提供通信。
11.在一种包括至少一个电话交换机、至少一个电话以及外部应用装置的电话通信系统中,一种虚拟电话接口包括:
(a)用于提供一组虚拟电话数据结构的装置,所述虚拟电话数据结构组用于表示在任意给定时刻电话交换机所知的电话状态;
(b)用于提供一组对称功能的装置,所述功能用于在所述虚拟电话数据结构与所述电话交换机和所述电话之间以及在所述虚拟电话数据结构及与所述外部应用装置相关联的通信媒体之间传递数据,所述功能组是改变所述虚拟电话数据结构的唯一装置;
(c)用于在所述对称功能组与所述电话交换机和所述电话之间提供通信的装置;以及
(d)在所述对称功能组和与所述外部应用装置相关联的所述通信媒体之间提供通信的装置。
12.如权利要求11所述的虚拟电话接口,其特征在于,所述外部应用装置包括计算机。
13.如权利要求7所述的虚拟电话接口,其特征在于,用于提供对称功能组的所述装置包括:
(a)内部虚拟电话应用程序接口,用于在所述虚拟电话数据结构组和所述电话交换机和所述电话之间提供数据通信;以及
(b)外部虚拟电话应用程序接口,用于在所述虚拟电话数据结构组和所述外部应用装置之间提供数据通信。
14.如权利要求13所述的虚拟电话接口,其特征在于,还包括通信媒体,用于在所述外部虚拟电话应用程序接口和所述外部应用装置之间提供通信。
15.一种用于在包括至少一个电话交换机和至少一个通信装置的系统中提供通信的方法,所述方法包括下列步骤:
(a)提供虚拟电话通用可配置接口,使之用作所述电话交换机的协议的协议翻译器;以及
(b)利用所述虚拟电话通用可配置接口来使能所述电话交换机和所述通信装置之间的通信。
16.如权利要求15所述的方法,其特征在于,提供虚拟电话通用可配置接口的步骤包括提供虚拟电话数据结构组,所述虚拟电话数据结构组用于表示在任意给定时刻电话交换机所知的电话状态。
17.如权利要求15所述的方法,其特征在于,提供虚拟电话通用可配置接口的步骤包括提供虚拟电话应用程序接口,所述虚拟电话应用程序接口用于在所述电话交换机和所述通信装置之间提供数据通信。
18.如权利要求15所述的方法,其特征在于,提供虚拟电话通用可配置接口的步骤包括:
(a)提供一组虚拟电话数据结构,所述虚拟电话数据结构组用于表示在任意给定时刻电话交换机所知的电话状态;以及
(b)提供用于访问所述结构的程序接口。
19.如权利要求18所述的方法,其特征在于,提供访问所述数据结构的程序接口的步骤包括提供虚拟电话应用程序接口,所述虚拟电话应用程序接口用于在所述虚拟电话数据结构组和所述交换机和所述通信装置之间提供数据通信。
20.一种用于表示一个或多个任何类型的数字电话的特征的方法,该方法无关于在操作上与所述一个或电话相关联的电话交换机的类型,也与所述一个或多个电话中的特征数目无关,所述方法包括下列步骤:
(a)提供一组虚拟电话数据结构,所述虚拟电话数据结构表示任意给定时刻所述一个或多个电话的状态;
(b)提供外部装置,所述外部装置产生有关所述电话交换机和所述一个或多个电话的操作的应用;以及
(c)根据由所述外部装置发出的命令来改变所述数据结构。
21.如权利要求20所述的方法,其特征在于,还包括响应于所述电话交换机和所述一个或多个电话中的事件来改变所述数据结构。
22.如权利要求21所述的方法,其特征在于,还包括提供一组对称的功能,所述对称功能组发出功能调用,所述功能调用用于从所述外部装置以及从所述电话交换机和所述一个或多个电话访问所述数据结构。
23.如权利要求20所述的方法,其特征在于,根据所述外部装置发出的命令改变所述数据结构的步骤包括:
(a)接收来自所述外部装置的命令;
(b)响应于提供功能调用的所述命令调用一对称功能;
(c)根据特定的虚拟电话综合把功能调用转换成命令格式,以改变一个或多个所述数据结构;以及
(d)把所述命令格式传递到所述电话交换机。
24.如权利要求21所述的方法,其特征在于,响应于所述电话交换机中的事件改变所述数据结构的步骤包括:
(a)接收来自所述电话交换机的一个分组;
(b)利用所述分组中的数据调用一对称功能;
(c)利用所述对称功能发出的功能调用更新一个或多个所述数据结构;以及
(d)把有关所述更新的信息传递到所述外部装置。
25.一种用于表示一个或多个任何类型的数字电话的特征的方法,所述方法无关于在操作上与所述一个或多个电话相关联的电话交换机的类型,也与所述一个或多个电话中的特征数目无关,所述方法包括下列步骤:
(a)提供虚拟电话数据结构组,所述虚拟电话数据结构组提供任意给定时刻电话交换机所知的数字电话的状态。
(b)提供外部处理器,用于产生有关所述电话交换机和所述一个或多个电话的操作的应用;
(c)响应于所述电话交换机和所述一个或多个电话中的事件改变所述数据结构;以及
(d)响应于所述处理器发出的有关所述应用的命令改变所述数据结构。
26.如权利要求25所述的方法,其特征在于,还包括:
(a)响应于所述电话交换机和所述一个或多个电话中的事件把有关所述数据结构变化的信息传递到所述外部处理器;以及
(b)响应于所述处理器发出的命令把有关所述数据结构的变化的信息传递到所述电话交换机。
27.如权利要求25所述的方法,其特征在于,还包括提供一组对称功能,所述对称功能组发出功能调用,所述功能调用用于从所述外部处理器和从所述电话交换机和所述一个或多个电话访问所述数据结构。
28.如权利要求27所述的方法,其特征在于,只能通过所述对称功能组改变所述数据结构。
29.在包括至少一个通信交换机和至少一个通信装置的通信系统中:一种在所述通信交换机和所述通信装置之间用作网关的媒体控制代理,以桥接所述通信交换机和所述通信装置之间通信协议的任何空隙,从而使能所述通信交换机和所述通信装置之间的通信。
30.如权利要求29所述的系统,其特征在于,所述媒体控制代理包括用于把所述通信交换机和所述通信装置之间的原始连接的固定控制协议转换成支持任何给定通信装置的通信方法的装置。
31.如权利要求29所述的系统,其特征在于,把第一数据承载信道和第一控制信道都连接到所述通信交换机和所述媒体控制代理,并把第二数据承载信道和第二控制信道都连接到所述媒体控制代理和所述通信装置。
32.如权利要求31所述的系统,其特征在于,所述媒体控制代理包括用于使数据在所述第一和第二数据承载信道上通过的装置。
33.如权利要求31所述的系统,其特征在于,所述媒体控制代理包括用于处理所述第一和第二控制信道上的信息以使之转换成所述通信装置理解的协议的装置。
34.一种用于在包括至少一个通信交换机和至少一个通信装置的系统中提供通信的方法,所述方法包括下列步骤:
(a)提供在所述通信交换机和所述通信装置之间用作网关的媒体控制代理,以桥接所述通信交换机和所述通信装置之间通信协议的任何空隙;以及
(b)利用所述媒体控制代理来使能所述通信交换机和所述通信装置之间的通信。
35.如权利要求34所述的方法,其特征在于,提供媒体控制代理的所述步骤包括把所述通信交换机和所述通信装置之间的原始连接的固定控制协议与支持任何给定通信装置的通信方法相结合。
36.如权利要求34所述的方法,其特征在于,提供媒体控制代理的所述步骤包括使承载信道数据在所述通信交换机和所述通信装置之间通过。
37.如权利要求34所述的方法,其特征在于,提供媒体控制代理的所述步骤包括处理来自所述通信交换机的控制信息以转换成所述通信装置理解的协议。
38.如权利要求34所述的方法,其特征在于,提供媒体控制代理的所述步骤包括翻译从所述通信交换机接收到的控制信息,并保持由通信交换机所定义的通信装置的状态。
39.如权利要求34所述的方法,其特征在于,提供媒体控制代理的所述步骤包括以所述通信交换机的本地协议,在所述媒体控制代理和所述通信交换机之间的控制信道上,把数据发送到所述通信交换机,从而所述通信交换机翻译来自所述媒体控制代理的消息,就象翻译来自所述通信装置的消息。
40.一种以数据结构编码的计算机可读存储装置,用于提供虚拟电话通用可配置接口,所述虚拟电话通用可配置接口用作电话交换机的协议的协议翻译器,从而使能所述交换机和通信装置之间的通信,所述数据结构具有条目,其中每个条目包含任意给定时刻电话交换机所知的通信装置状态的表示。
CN99807098.XA 1998-04-09 1999-04-06 虚拟电话通用可配置接口 Pending CN1306720A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/057,681 US6208724B1 (en) 1998-04-09 1998-04-09 Virtual telephone
US09/057,681 1998-04-09

Publications (1)

Publication Number Publication Date
CN1306720A true CN1306720A (zh) 2001-08-01

Family

ID=22012102

Family Applications (1)

Application Number Title Priority Date Filing Date
CN99807098.XA Pending CN1306720A (zh) 1998-04-09 1999-04-06 虚拟电话通用可配置接口

Country Status (7)

Country Link
US (3) US6208724B1 (zh)
EP (1) EP1072145A4 (zh)
JP (1) JP2002511713A (zh)
CN (1) CN1306720A (zh)
AU (1) AU3474099A (zh)
CA (1) CA2327740C (zh)
WO (1) WO1999053672A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100336362C (zh) * 2001-11-30 2007-09-05 大卫·马修·史密斯 避开数字交换系统中通用控制和交换机阵列的方法和设备

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6041109A (en) * 1995-12-29 2000-03-21 Mci Communications Corporation Telecommunications system having separate switch intelligence and switch fabric
US6996096B2 (en) * 1997-02-14 2006-02-07 Canon Kabushiki Kaisha Communication apparatus and a method of controlling a communication apparatus
US6418461B1 (en) 1997-10-06 2002-07-09 Mci Communications Corporation Intelligent call switching node in an intelligent distributed network architecture
US6208724B1 (en) * 1998-04-09 2001-03-27 Dialogic Corporation Virtual telephone
US6343116B1 (en) * 1998-09-21 2002-01-29 Microsoft Corporation Computer telephony application programming interface
US7251315B1 (en) * 1998-09-21 2007-07-31 Microsoft Corporation Speech processing for telephony API
JP2001154966A (ja) * 1999-11-29 2001-06-08 Sony Corp コンピュータ・ネットワーク上で構築・提供される共有仮想空間上で複数ユーザが参加可能な仮想会話を支援する会話支援システム及び会話支援方法、並びに、プログラム記憶媒体
US6704580B1 (en) * 2000-03-14 2004-03-09 Intel Corporation Cellular telephone docking system
KR100386597B1 (ko) * 2001-06-26 2003-06-09 엘지전자 주식회사 통신 프로토콜 변환장치 및 방법
US6694134B1 (en) 2002-03-18 2004-02-17 Interwave Communications International, Ltd. Terminal device emulator
WO2004021204A1 (en) * 2002-08-29 2004-03-11 United States Postal Services Shared services platform
US20060034481A1 (en) * 2003-11-03 2006-02-16 Farhad Barzegar Systems, methods, and devices for processing audio signals
US7450570B1 (en) 2003-11-03 2008-11-11 At&T Intellectual Property Ii, L.P. System and method of providing a high-quality voice network architecture
US8019449B2 (en) * 2003-11-03 2011-09-13 At&T Intellectual Property Ii, Lp Systems, methods, and devices for processing audio signals
KR100713416B1 (ko) * 2004-09-02 2007-05-04 삼성전자주식회사 복수의 프로토콜을 지원하는 리피터 장치 및 그장치에서의 프로토콜 변환을 위한 제어 방법
US20060090166A1 (en) * 2004-09-30 2006-04-27 Krishna Dhara System and method for generating applications for communication devices using a markup language
US8763081B2 (en) * 2006-04-03 2014-06-24 Bridgeport Networks, Inc. Network based authentication
US20080262910A1 (en) * 2007-04-20 2008-10-23 Utbk, Inc. Methods and Systems to Connect People via Virtual Reality for Real Time Communications
US20080263460A1 (en) * 2007-04-20 2008-10-23 Utbk, Inc. Methods and Systems to Connect People for Virtual Meeting in Virtual Reality
US8601386B2 (en) * 2007-04-20 2013-12-03 Ingenio Llc Methods and systems to facilitate real time communications in virtual reality
US20080263459A1 (en) * 2007-04-20 2008-10-23 Utbk, Inc. Methods and Systems to Determine Availability for Real Time Communications via Virtual Reality
US8824652B2 (en) 2011-10-12 2014-09-02 World Emergency Network - Nevada, Ltd. Controlled recorded 3-way calling
CN103703693A (zh) 2011-05-31 2014-04-02 世界紧急网络-内华达公司 作为通过蜂窝网络的单向记录的发射器的移动电话
US9998603B2 (en) * 2011-06-30 2018-06-12 World Emergency Network—Nevada, Ltd. Attaching multiple phone lines to a single mobile or landline phone
EP2727323B1 (en) 2011-06-30 2018-12-19 World Emergency Network - Nevada, Ltd. Attaching multiple phone lines to a single mobile or landline phone
US10447837B2 (en) 2015-04-15 2019-10-15 World Emergency Network—Nevada, Ltd. International one-way recorded transmitter over a cellular network
US10136247B2 (en) 2015-10-20 2018-11-20 Microsoft Technology Licensing, Llc Physical and virtual phone mobility
GB2564352B (en) 2016-03-30 2021-10-13 Callyo 2009 Corp Virtual numbers for intelligence operations

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4748656A (en) 1986-03-21 1988-05-31 American Telephone And Telegraph Company Personal computer--as an interface between a telephone station set and a business communication system
WO1988002206A1 (en) 1986-09-16 1988-03-24 Standard Telephones And Cables Pty. Ltd. Communication interface
US4873718A (en) * 1987-07-16 1989-10-10 Octel Communications Corp. Feature telephone integration device
US5255314A (en) * 1991-03-29 1993-10-19 At&T Bell Laboratories Switch adjunct integration arrangement
US5337351A (en) * 1992-02-28 1994-08-09 Nec America, Inc. Feature interaction arbitrator
US5448631A (en) * 1992-10-13 1995-09-05 U S West Advanced Technologies, Inc. Apparatus for handling features in a telephone network
US5404396A (en) * 1993-08-27 1995-04-04 Telefonaktiebolaget Lm Ericsson Feature interaction manager
SE502275C2 (sv) * 1994-01-25 1995-09-25 Ellemtel Utvecklings Ab Sätt att optimera kapaciteten i ett telekomsystem
US5440616A (en) * 1994-02-10 1995-08-08 Rolm Company Method and apparatus for interconnecting a messaging system and a private branch exchange
SE502423C2 (sv) * 1994-02-15 1995-10-16 Ellemtel Utvecklings Ab System för hantering av interaktion mellan tilläggstjänster i ett telekommunikationssystem
US5655015A (en) 1994-02-18 1997-08-05 Aurora Systems, Inc. Computer-telephone integration system
US5655014A (en) 1994-02-18 1997-08-05 Aurora Systems, Inc. Switching device independent computer-telephone integration system
US5642410A (en) * 1994-02-18 1997-06-24 Aurora Systems, Inc. Call processor for a computer telephone integration system
JPH07264287A (ja) * 1994-03-18 1995-10-13 Fujitsu Ltd インテリジェントネットワークと通信管理ネットワークを統合した通信システム
JPH08163611A (ja) * 1994-12-07 1996-06-21 Toshiba Corp 電子交換装置および交換機能を備えた汎用計算機
KR100412172B1 (ko) * 1994-12-19 2004-03-30 코닌클리케 필립스 일렉트로닉스 엔.브이. 통신교환기
GB9502182D0 (en) * 1995-02-03 1995-03-22 Plessey Telecomm Telecommunications service interactions
WO1997000570A1 (en) * 1995-06-16 1997-01-03 Harris Corporation Dynamically negotiated application program interface method
US5826030A (en) * 1995-11-30 1998-10-20 Excel Switching Corporation Telecommunication switch having a universal API with a single call processing message including user-definable data and response message each having a generic format
US5911123A (en) * 1996-07-31 1999-06-08 Siemens Information And Communications Networks, Inc. System and method for providing wireless connections for single-premises digital telephones
JP3322176B2 (ja) * 1997-07-08 2002-09-09 日本電気株式会社 呼処理信号中継方式
US6014440A (en) * 1997-07-21 2000-01-11 Northern Telecom Limited Inter-half call protocol negotiation techniques
US6134246A (en) * 1998-01-26 2000-10-17 Samsung Electronics Co., Ltd. Inverse multiplexing within asynchronous transfer mode communication networks
US6985478B2 (en) * 1998-02-17 2006-01-10 Genesys Telecommunications Laboratories, Inc. Using XML expressed primitives for platform and system-independent call modeling
US6208724B1 (en) * 1998-04-09 2001-03-27 Dialogic Corporation Virtual telephone

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100336362C (zh) * 2001-11-30 2007-09-05 大卫·马修·史密斯 避开数字交换系统中通用控制和交换机阵列的方法和设备

Also Published As

Publication number Publication date
US20010053155A1 (en) 2001-12-20
EP1072145A4 (en) 2004-11-10
WO1999053672A1 (en) 1999-10-21
US6920210B2 (en) 2005-07-19
JP2002511713A (ja) 2002-04-16
CA2327740C (en) 2009-06-30
US6956936B2 (en) 2005-10-18
EP1072145A1 (en) 2001-01-31
US20010016037A1 (en) 2001-08-23
CA2327740A1 (en) 1999-10-21
AU3474099A (en) 1999-11-01
US6208724B1 (en) 2001-03-27

Similar Documents

Publication Publication Date Title
CN1306720A (zh) 虚拟电话通用可配置接口
CN1306780C (zh) 网络电话系统及其方法
CN1193570C (zh) 协同处理呼入的移动电话和无线电通信装置
CN1227862C (zh) 多媒体信息通信系统
CN1199417C (zh) 多业务通信系统及方法
CN1201533C (zh) 因特网电话网络系统、网络访问方法及通话装置适配器
CN1615646A (zh) 通信装置
CN1507725A (zh) 因特网通信系统、因特网通信方法、对话管理服务器、通信适配器、通信中继服务器及程序
CN1565105A (zh) 手持无线会议技术
CN1204810A (zh) 遥控方法、服务器及记录介质
CN1701568A (zh) 通过无线网络的多模式网络交互
CN1509510A (zh) 用于具有可再充电电池的功率负荷设备的供电设备
CN1399839A (zh) 包括一个或多个有程序设计功能的电话通信设备的分布式通信网络
CN1230833A (zh) 多媒体信息通信系统
CN1235421C (zh) 智能终端应用协议
CN1507202A (zh) 设备管理系统、设备管理终端、网络设备、终端程序、设备程序以及设备管理方法
CN1322429A (zh) 信号转换器、服务器、网络信息系统及其控制方法和电话终端装置
CN1692612A (zh) 提供集成通讯id的系统和方法
CN1545303A (zh) 承载和控制相分离的通信网络中多方会议业务的实现方法
CN1201557C (zh) 交互式显示系统
CN1714538A (zh) 用于使远程接入电话网络适应国家差异的系统和方法
CN1115057C (zh) 数字按钮电话系统
CN101047525A (zh) 智能型ivr接口网关数据处理方法
CN1193574C (zh) 固定电话网的信息提供系统
CN1918592A (zh) 装置之间的协作方法、装置协作的控制系统、装置协作控制程序以及终端装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: INTEL CORP

Free format text: FORMER OWNER: VOICE TECH GROUP INC

Effective date: 20040211

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20040211

Address after: California, USA

Applicant after: Intel Corporation

Address before: New York, USA

Applicant before: Voice Tech Group Inc

REG Reference to a national code

Ref country code: HK

Ref legal event code: GR

Ref document number: 1061124

Country of ref document: HK

C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication