2

SIP アプリケーションで SIP メッセージから SDP を推定する必要があります。私は次のようなことをしようとしました:

protected void doInvite(SipServletRequest req) throws ServletException, IOException {
String = req.getContent().toString();
}

しかし、それは私に SDP を返しません。問題を解決するためのアドバイスはありますか?ありがとうございました!

4

3 に答える 3

3

これは通常、Content-Type ヘッダーに依存しますが、これが INVITE であることを考えると、Content-Type が application/sdp であると想定しています。その場合、次のことは試しましたか?

文字列 sdp = 新しい文字列 (req.getContent())

于 2015-08-20T07:50:25.553 に答える
2

しかし、それは私に SDP を返しません。問題を解決するためのアドバイスはありますか?

SDP を取得するには、次のことを試してください。doInvite メソッドで、session_progress に SDP をパックするために使用しています。

@Override
protected void doInvite(SipServletRequest request) throws ServletException, IOException {
    byte[] sdpOffer = request.getRawContent();

    try {
        SipServletResponse response = request.createResponse(SipServletResponse.SC_SESSION_PROGRESS);
        response.setContent(sdpOffer, "application/sdp");
        response.send();
        logger.info("SESSION_PROGRESS sent");
    } catch (Exception exp) {
        logger.error("exception in sending SP", exp);
    }
}

注: コードは完全ではありません。Session_Progress で応答する場合は、他のことも行う必要があります。

于 2016-10-27T08:02:59.670 に答える