首頁>>廠商>>CT中間件廠商>>朗深技術(shù)

UniMedia MSIX座席Jar包用Java調(diào)用實例解析

2009/05/31

目標功能

  在Java應用中實現(xiàn)來話通知和電話應答。

Java調(diào)用實例

package MsiDemo;
import javax.swing.*;
import lioncen.cti.jmsi.*;
import lioncen.cti.jmsi.object.*;
import lioncen.cti.jmsi.engine.*;

public class MsiDemo extends JFrame
{
private JButton jButtonInit = null;
private JButton jButtonLogin = null;
private JButton jButtonAnswer = null;

public static MSI msi = null;
public static MsiDemo msiDemo = null;

public MsiDemo()
{
super();

this.setTitle("Msi Demo");
this.setLocation(200, 200);
this.setSize(300, 200);

JPanel jContentPane = new JPanel();
jContentPane.add(getJButtonInit());
jContentPane.add(getJButtonLogin());
jContentPane.add(getJButtonAnswer());
this.setContentPane(jContentPane);

this.addWindowListener(new java.awt.event.WindowAdapter()
{
public void windowClosing(java.awt.event.WindowEvent e)
{
System.exit(0);
}
};
}

public static void main(String[] args)
{
msi = new MSI();
MSI.msiLog.setDebug(true);
msi.ctiEventListener = new MyMSIEventHandler();

msiDemo = new MsiDemo();
msiDemo.setVisible(true);
}

private JButton getJButtonLogin()
{
if (jButtonLogin == null)
{
jButtonLogin = new JButton();
jButtonLogin.setText("Login");
jButtonLogin.addActionListener(
new java.awt.event.ActionListener()
{
public void actionPerformed(
java.awt.event.ActionEvent e)
{
int ret = msi.login(1000, true, false,
"2000", "5", "xms", "");
if (ret == CTIConst.RET_FAIL)
{
System.out.println("登錄失敗:"
+ msi.getLastErrorString());
}
else
{
System.out.println("登錄成功!");
}
}
});
}
return jButtonLogin;
}

private JButton getJButtonInit()
{
if (jButtonInit == null)
{
jButtonInit = new JButton();
jButtonInit.setText("Init");
jButtonInit.addActionListener(
new java.awt.event.ActionListener()
{
public void actionPerformed(
java.awt.event.ActionEvent e)
{
msi.setConnInfo("192.168.1.1", 10089);
msi.setDN("1000");
msi.start();
}
});
}
return jButtonInit;
}

private JButton getJButtonAnswer()
{
if (jButtonAnswer == null)
{
jButtonAnswer = new JButton();
jButtonAnswer.setText("Answer");
jButtonAnswer.addActionListener(
new java.awt.event.ActionListener()
{
public void actionPerformed(
java.awt.event.ActionEvent e)
{
int ret = msi.setHookStatus(2);
if (ret == CTIConst.RET_FAIL)
{
System.out.println("摘機失敗:"
+ msi.getLastErrorString());
}
else
{
System.out.println("摘機成功!");
}
}
});
}
return jButtonAnswer;
}

}


class MyMSIEventHandler extends MSIEventAdapter
{
public void callIncome(String AlertingDN, String CallingDN, String CalledDN, String UUD)
{
System.out.println("來電話了!");
}
}

說明:

  1. 先初始化控件,然后登錄座席,登錄成功后打內(nèi)線電話1000或通過ACD分配到1000,應答來話即可;

  2. SetConnInfo/SetDN/Start等函數(shù)都有返回值,可以判斷是否成功;

  3. 具體API以及事件的用法請參考開發(fā)文檔。

CTI論壇報道



相關(guān)閱讀:
UniMedia 中間件典型應用-外線座席呼叫中心 2009-09-23
UniMedia IDE集成環(huán)境訪問網(wǎng)絡服務器實例解析 2009-09-23
UniMedia MSIX座席控件Javascript調(diào)用實例 2009-09-23
基于UniMedia融合媒體中間件的企業(yè)通信平臺 2009-07-27
PBX常用功能 2009-06-10
前郭尔| 辰溪县| 封开县| 衡水市| 左权县| 额尔古纳市| 军事| 华坪县| 台南县| 平南县| 昌乐县| 藁城市| 兴安县| 云阳县| 白城市| 阿坝县| 西丰县| 阳朔县| 宜兰县| 临海市| 云安县| 荣昌县| 元江| 响水县| 株洲县| 加查县| 石柱| 阳高县| 宝清县| 龙泉市| 阿拉善右旗| 渭南市| 岚皋县| 碌曲县| 萨嘎县| 松阳县| 岚皋县| 茶陵县| 高雄县| 云和县| 蕉岭县|