2016-04-07 5 views
2

私たちはSS7 CAMELアプリケーションに取り組んでいます。アプリケーションはjboss 5.10GA とMobicents/Restcommのjss7とRestcommのCAPリソースアダプタに基づいています。JSS7 - TC-CONTINUE:IDのダイアログ/トランザクションがありません:

私たちの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

Here's the boot.log file

Here's the server.log file

+0

ログを共有できますか? – Waqas

答えて

1

あなたはキャップRAでRestcomm jainsleeを使用していると思いますか?

server.logを添付できますか?

Brで、

TN

+0

はい、私はCAP RAでRestcomm jainsleeを使用しています。 jbossから元のメッセージにログを添付しました。 –

+0

こんにちは、残念です。アプリケーションがこのメッセージを受け取った後、Delimeter()のダイアログが閉じました。考え方は新しいDialogを作成して返信する –

+0

残念ながら、私たちのソリューションではダイアログはスイッチ側でのみ開始できます。だから私たちは外に新しいダイアログを作成することができません。 –

1

がこのメッセージ、 "TC-CONTINUE:idのダイアログなし/トランザクション:67793592" はプリミティブTCは、CONTINUEということは、TCAPスタックが、そのような地域のダイアログに来ました。処理は行われず、onDelimiter()メソッドは呼び出されませんでした。

ほとんどの理由は、TCAPダイアログが既にタイムアウトしていたことが考えられます。 - dialogTimeTimeoutスタックオプションを増やす(CAPなので何度も) - または "CAPDialogListener.onDialogTimeout(CAPDialog capDialog)"内にcapDialog.keepAlive()を呼び出します。 (この方法で、ダイアログが長時間保存されていないかどうか確認する必要があります)

+0

でそれを確認することができます私が手: java.lang.UnsupportedOperationExceptionが をorg.mobicents.slee.resource.cap.wrappers.CAPProviderWrapper.addCAPDialogListener(CAPProviderWrapper.java:71)で CAPProviderのインスタンスを作成する方法は次のとおりです。 コンテキストctx =(Context)new InitialContext()。lookup( "java:comp/env"); CAPProvider provider =(CAPProvider)ctx.lookup( "slee/resources/cap/2.0/provider"); 私が取得するCAPProviderは、CAPProviderWrapperのインスタンスです。 CAPProviderImplのインスタンスであるCAPProviderを取得する方法はありますか、それとも何か他のものがありませんか? –

関連する問題