JTAPI Java Telephony API
接触了JTAPI开发一段时间,刚开始接触时,非常头大,很多概念不好理解。 先列个框架,记录一下自己的学习过程。
一、JTAPI (Java Telephony API )
在JTAPI之前,每个公司都是各自的一套CTI开发接口。为了统一业界标准,SUN公司推出了jtapi标准接口。该接口定义了呼叫中心中的很多对象,如Address,Agent, Terminal, call等,这些对象是对业界呼叫中心中各个组件的抽象。因此,不管是在cisco,avaya还是华为的CTI平台,都是一一对应起来的,而对于jtapi接口的应用开发者来说,屏蔽了底层的复杂的对象。
二、JTAPI主要对象。
刚开始接触JTAPI时,被里面一堆对象搞得头大,对于没接触过呼叫中心的开发者来说,可能更难理解了。对象之间的关系也不是很好明白。
1. JtapiPeer.
看了半天SUN的文档,还不是很理解。个人认为这个对象其实蛮简单的,就是JTAPI接口的入口。在基于JTAPI接口开发时,需要先获取或创建这样一个对象。 一般来说,这个对象与一个呼叫中心是一一对应的(1:1),实现上只需创建一个单实例对象。
2. Provider.
这个对象比较重要,和其他几个对象都有关联(看下接口方法应该会比较清楚)。这个对象可以创建多个,与每个坐席一一对应。
3. Address
可以理解为电话号码,接入码或IP地址
4.Terminal
可以理解为物理上的电话,是一个逻辑概念。 与Address是1对多的关系,如1个电话号码对应多个电话。
5. call
一个逻辑概念,理解为一个呼叫过程。
6.Agent
指坐席了。
三、JTAPI主要对象的关系
四、JTAPI的实现
JTAPI是一套标准接口,并没有具体的实现,因此在实现接口之前,该套接口还不具备任何功能,更谈不上用该接口实现打电话的功能了。 JTAPI的实现一般和CTI平台是配套的,每个公司的实现肯定是不同的。
五、JTAPI的应用
在实现了JTAPI接口后,才能真正调用该接口做事,如呼出,接听来话等。。。
后续再更新。。。。
相关文档:
Properties props=System.getProperties(); //系统属性
System.out.println("Java的运行环境版本:"+props.getProperty("java.version"));
System.out.println("Java的运行环境供应商:"+props.getProperty("java.vendor"));
System.out.println("Java供应商的URL:"+props.getProperty("java.vendor.url"));
Syste ......
import java.io.File;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.Iterator;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
public class ReadSetting {
......
/*
ArrayList是最常用的List实现类,内不是通过数组实现的,它允许对元素进行快速随机访问。数组的缺点是每个元素之间不能含有“空隙”,当数组大小不满足时需要增加存储能力,就要将已有数组数据复制到新的存储空间中。当从ArrayList的中间位置插入或者删除元素时,需要对数组进行复制、移动,代价比较高。因 ......
1、java.lang包:java的核心类库,包含了运行java程序必不可少的系统类,如基本数据类型、基本数学函数、字符串处理、线程、异常处理类等,系统缺省加载这个包
2、java.io包:java语言的标准输入/输出类库,如基本输入/输出流、文件输入/输出、过滤输入/输出流等等
3、java.util包:包含如处理时间的date类,处理变成数 ......