RestComm SipServlet を使用して IMS アプリケーション サーバーを開発しようとしています。最初の私の目的は、特別なことを何もせずに、コール フローに AS を挿入することだけです。
アプリケーション サーバーは、最初の招待を doStuff して転送するだけです。問題は、RestComm による sip スタックがルートを Invite から削除せず、それをルート ヘッダーに追加しないため、招待が AS にルーティングされて再びループが発生することです。SipRequest を編集してルート ヘッダーを削除しようとすると、システム ヘッダーを変更できないため、AS は 500 で応答します。
ここにコードのスニペットがあります
@Override
protected final void doInvite(SipServletRequest request)
throws ServletException, IOException {
//DO STUFF
System.out.println("RECEIVED AN INVITE");
// These lines generate a 500
// request.removeHeader("route");
// request.removeHeader("route");
ProxyImpl p = (ProxyImpl) request.getProxy(true);
p.setRecordRoute(false);
p.setSupervised(true);
p.setParallel(true);
p.proxyTo(request.getRequestURI());
p.startProxy();
}
私は夢中になっています:/誰かが私にいくつかの提案をしてくれることを願っています...