我可以从响应事件中获取账单或发起呼叫的持续时间吗?我需要原始调用最终数据。
OriginateAction originateAction = new OriginateAction();
originateAction.setChannel("SIP/xxxxxx");
originateAction.setContext("xxxxx");
originateAction.setExten("xxxxx");
originateAction.setCallerId("xxxxx");
originateAction.setAsync(Boolean.TRUE);
originateAction.setPriority(1);
managerConnection.sendAction(new StatusAction());
ManagerResponse mr = managerConnection.sendAction(originateAction);
//ResponseEvents mr = managerConnection.sendEventGeneratingAction(originateAction);
System.out.println(mr.getResponse());
int billsec = ???
您需要
在拨号计划中标记CDR(用户字段)或CDR(帐户代码)
之后,您可以根据自己的请求在mysql或其他数据库中收集cdr。
不,一旦通过管理器发起呼叫,控件就在星号拨号计划中 - 不再使用您的 JAVA 程序。为了提取该信息,您需要在拨号计划内向"h"分机添加适当的处理程序。根据 DIALSTATUS,它将允许您访问 DIALEDTIME 和 ANSWEREDTIME 变量,这些变量将包含您正在寻找的信息。