gpt4 book ai didi

java - 如何在 Java 中自动应答所有 SIP 调用

转载 作者:行者123 更新时间:2023-12-02 04:59:26 25 4
gpt4 key购买 nike

我想自动应答所有 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();
}
}

提前致谢。

最佳答案

INVITE 服务器事务在 200 OK 后进入终止状态。这是正常的。您的电话已接听,您不必担心。

(参见 RFC 中的状态机图)

                           |INVITE
|pass INV to TU
INVITE V send 100 if TU won't in 200ms
send response+-----------+
+--------| |--------+101-199 from TU
| | Proceeding| |send response
+------->| |<-------+
| | Transport Err.
| | Inform TU
| |--------------->+
+-----------+ |
300-699 from TU | |2xx from TU |
send response | |send response |
| +------------------>+
| |
INVITE V Timer G fires |
send response+-----------+ send response |
+--------| |--------+ |
| | Completed | | |
+------->| |<-------+ |
+-----------+ |
| | |
ACK | | |
- | +------------------>+
| Timer H fires |
V or Transport Err.|
+-----------+ Inform TU |
| | |
| Confirmed | |
| | |
+-----------+ |
| |
|Timer I fires |
|- |
| |
V |
+-----------+ |
| | |
| Terminated|<---------------+
| |
+-----------+

Figure 7: INVITE server transaction

关于java - 如何在 Java 中自动应答所有 SIP 调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28433499/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com