我们正在开发 SS7 CAMEL 应用程序。该应用程序基于 jboss 5.10GA 和 Mobicents/Restcomm 的 jss7 和 Restcomm 的 CAP 资源适配器。
在我们的 Sbb 中,我们从交换机接收 InitialDP 消息和分隔符。收到分隔符后,我们尝试将连接消息发送到交换机。
不幸的是,当我们在 onDelimiter 方法中收到的对话框上调用 .send() 方法时,没有发送任何要切换的消息,我们在 jboss 日志中可以看到:
TC-CONTINUE:没有 id 的对话/事务:67793592
public void onDelimiter(DialogDelimiter delimiter, ActivityContextInterface aci)
{
try
{
CAPDialogCircuitSwitchedCall dialog = (CAPDialogCircuitSwitchedCall) delimiter.getCAPDialog();
dialog.addRequestReportBCSMEventRequest(bcsmevents, extensions);
dialog.addCallInformationReportRequest(requestsTypes, null, null);
dialog.addConnectRequest(new DestinationRoutingAddressImpl(new ArrayList<CalledPartyNumberCap>(Arrays.asList(new CalledPartyNumberCapImpl(new CalledPartyNumberImpl("48602465380".getBytes()))))), null, new OriginalCalledNumberCapImpl(new OriginalCalledNumberImpl(cdr.getBNumber().substring(0,10).getBytes())), null, new CarrierImpl("9191".getBytes()), null, null, null, null, null, null, null, null, false, false, false, null, false);
dialog.addContinueRequest();
dialog.send();
(...)
}
}
如果我们的 sccp 规则有问题,那么以下地址的正确 sccp 设置应该是什么:
交换机:PC:6801,SSN:146,GT:4794733271,AI:18
我们的服务器:PC:5100,SSN:146,GT:442080000100,AI:18