JSS7 - TC-CONTINUE: нет диалога / транзакции для идентификатора:
Мы работаем над приложением SS7 CAMEL. Приложение основано на jboss 5.10GA и Mssicents/Restcomm's jss7 и Restcomm CAP Resource Adapter.
В нашем Sbb мы получаем сообщение InitialDP и разделитель от коммутатора. После получения разделителя мы пытаемся отправить сообщение о соединении коммутатору.
К сожалению, когда мы вызываем метод.send() в диалоге, который мы получаем в методе onDelimiter, сообщение для переключения не отправляется, и в журнале 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 для следующих адресов:
Переключатель: ПК: 6801, SSN: 146, GT: 4794733271, AI: 18
Наш сервер: ПК: 5100, SSN: 146, GT: 442080000100, AI: 18
2 ответа
Это сообщение "TC-CONTINUE: нет диалога / транзакции для id: 67793592" означает, что примитив TC-CONTINUE поступил в стек TCAP, но такого локального диалога нет. Обработка не была выполнена, и метод onDelimiter() не был вызван.
Наиболее вероятная причина заключается в том, что диалог TCAP уже истек. Вам нужно: - либо увеличить параметры стека dialogTimeout (много раз, потому что это CAP) - либо внутри "CAPDialogListener.onDialogTimeout(CAPDialog capDialog)" invoke capDialog.keepAlive(); (таким образом, вам нужно проверить, не сохраняется ли диалог слишком долго)
Я думаю, что вы используете Restcomm Jainslee с крышкой RA?
Можете ли вы приложить server.log?
Br,
Теннесси