1

すべての sip 呼び出しに自動的に応答したい。トライやリンギングで応答するとトランザクションは進行中の状態ですが、OK 応答を送信するとトランザクションは終了状態になります。これは私のコードです:

public void processRequest(RequestEvent requestReceivedEvent)
{
    Address contactAddress = myAddressFactory.createAddress("sip:" + myIP + ":" + myPort);
    myContactHeader = myHeaderFactory.createContactHeader(contactAddress);
    Request req = requestReceivedEvent.getRequest();
    myGUI.display("<<< " + req.toString());
    String method = req.getMethod(); //bad request type.                 
    FromHeader from = (FromHeader) req.getHeader("From");
    Response response = null;
    try
    { //Reply with OK                 
        response = myMessageFactory.createResponse(200, req);
        ToHeader toHeader = (ToHeader) response.getHeader(ToHeader.NAME);
        toHeader.setTag("888"); //Identifier, specific to your application                 
        ServerTransaction st = mySipProvider.getNewServerTransaction(req);
        response.addHeader(myContactHeader);
        st.sendResponse(response);
        System.out.println("Ok response: " + st.getState());

    }
    catch (Exception e)
    {
        e.printStackTrace();
    }
}

前もって感謝します。

4

1 に答える 1