Note that there are some explanatory texts on larger screens.

plurals
  1. POJava - JAIN SIP INVITE does not return response
    text
    copied!<pre><code>public void call(Response response) { try { cseq++; current_process = cseq + " INVITE"; ArrayList viaHeaders = new ArrayList(); ViaHeader viaHeader = this.headerFactory.createViaHeader(this.ip, 5060, "udp", null); viaHeaders.add(viaHeader); // The "Max-Forwards" header. MaxForwardsHeader maxForwardsHeader = this.headerFactory .createMaxForwardsHeader(70); // The "Call-Id" header. CallIdHeader callIdHeader = this.sipProvider.getNewCallId(); // The "CSeq" header. CSeqHeader cSeqHeader = this.headerFactory.createCSeqHeader(cseq, "INVITE"); Address fromAddress = addressFactory.createAddress("sip:" + username + '@' + server); Address toAddress = addressFactory.createAddress("sip:"+this.toPrefix+this.toNumber+'@'+this.toUri); FromHeader fromHeader = this.headerFactory.createFromHeader( fromAddress, String.valueOf(this.tag)); // The "To" header. ToHeader toHeader = this.headerFactory.createToHeader(toAddress, null); ContentLengthHeader contentLength = this.headerFactory.createContentLengthHeader(300); ContentTypeHeader contentType = this.headerFactory.createContentTypeHeader("application", "sdp"); String sdpData = "v=0\n" + "o=user1 392867480 292042336 IN IP4 192.168.10.31\n" + "s=-\n" + "c=IN IP4 192.168.10.31\n" + "t=0 0\n" + "m=audio 8000 RTP/AVP 0 8 101\n" + "a=rtpmap:0 PCMU/8000\n" + "a=rtpmap:8 PCMA/8000\n" + "a=rtpmap:101 telephone-event/8000\n" + "a=sendrecv"; byte[] contents = sdpData.getBytes(); // this.contactHeader = this.headerFactory // .createContactHeader(contactAddress); request = this.messageFactory.createRequest("sip:"+this.toPrefix+this.toNumber+'@' + this.toUri + " SIP/2.0\r\n\r\n"); request.addHeader(viaHeader); request.addHeader(maxForwardsHeader); request.addHeader(toHeader); request.addHeader(fromHeader); request.addHeader(callIdHeader); request.addHeader(cSeqHeader); request.addHeader(contactHeader); request.addHeader(contentLength); request.addHeader(contentType); if (response != null) { retry = true; System.out.println("DEBUG: Response: "+response); } inviteTid = sipProvider.getNewClientTransaction(request); // send the request out. inviteTid.sendRequest(); this.dialog = inviteTid.getDialog(); // Send the request statelessly through the SIP provider. // this.sipProvider.sendRequest(request); // Display the message in the text area. logger.debug("Request sent:\n" + request.toString() + "\n\n"); } catch (Exception e) { // If an error occurred, display the error. e.printStackTrace(); logger.debug("Request sent failed: " + e.getMessage() + "\n"); } } </code></pre> <p>And this is the processResponse:</p> <pre><code>@Override public void processResponse(ResponseEvent responseEvent) { System.out.println(responseEvent.getResponse()); int statusCode = responseEvent.getResponse().getStatusCode(); if (statusCode &gt; 400 &amp;&amp; statusCode &lt; 410) { if(statusCode == 401 &amp;&amp; current_process.contains("REGISTER")) { register(responseEvent.getResponse()); } else if(statusCode == 401 &amp;&amp; current_process.contains("INVITE")) { System.out.println("Invite 401"); } else if(statusCode == 200) { System.out.println("Registered"); call(null); } else { System.out.println("Other code: "+ statusCode); } } </code></pre> <p>I have successfully registered the account to the server, but when it began the INVITE request, there is no response returned.</p> <p>Below is the response I got (including the REGISTER responses), in the end you will see that my outgoing INVITE request doesn't return any responses.</p> <pre><code>DEBUG - Request sent: REGISTER sip:sip.dialnow.com SIP/2.0 Via: SIP/2.0/UDP 192.168.10.31:5060;branch=z9hG4bK-343133-c591d8f797a179ed25a2114311df1854 Max-Forwards: 70 To: &lt;sip:Frax01@sip.dialnow.com&gt; From: &lt;sip:Frax01@sip.dialnow.com&gt;;tag=706572717 Call-ID: 6e49a1b2631c4b107199a8b7d9c5ee52@192.168.10.31 CSeq: 1 REGISTER Contact: &lt;sip:Frax01@192.168.10.31:5060;transport=UDP&gt; Expires: 120 Content-Length: 0 SIP/2.0 401 Unauthorized Via: SIP/2.0/UDP 192.168.10.31:5060;branch=z9hG4bK-343133-c591d8f797a179ed25a2114311df1854 From: &lt;sip:Frax01@sip.dialnow.com&gt;;tag=706572717 To: &lt;sip:Frax01@sip.dialnow.com&gt; Contact: &lt;sip:77.72.169.129:5060&gt; Call-ID: 6e49a1b2631c4b107199a8b7d9c5ee52@192.168.10.31 CSeq: 1 REGISTER Server: (Very nice Sip Registrar/Proxy Server) Allow: ACK,BYE,CANCEL,INVITE,REGISTER,OPTIONS,INFO,MESSAGE WWW-Authenticate: Digest realm="sip.dialnow.com",nonce="2849852658",algorithm=MD5 Content-Length: 0 12d2ad0d764601c0573be88a3d94a2d8 8b3a241c08615fba24fb161a2a344cc9 40810f9cf3d19138dc0875dea15e3970 DEBUG - Request sent: REGISTER sip:sip.dialnow.com SIP/2.0 Via: SIP/2.0/UDP 192.168.10.31:5060;branch=z9hG4bK-343133-3ccb8a78b8614638665f0af2a998a686 Max-Forwards: 70 To: &lt;sip:Frax01@sip.dialnow.com&gt; From: &lt;sip:Frax01@sip.dialnow.com&gt;;tag=706572717 Call-ID: 50baef7c3a407e50d4d539a1e35cff41@192.168.10.31 CSeq: 2 REGISTER Contact: &lt;sip:Frax01@192.168.10.31:5060;transport=UDP&gt; Expires: 120 Authorization: Digest realm="sip.dialnow.com",nonce="2849852658",username="Frax01",uri="sip:sip.dialnow.com",algorithm=MD5,response="40810f9cf3d19138dc0875dea15e3970" Content-Length: 0 SIP/2.0 100 Trying Via: SIP/2.0/UDP 192.168.10.31:5060;branch=z9hG4bK-343133-3ccb8a78b8614638665f0af2a998a686 From: &lt;sip:Frax01@sip.dialnow.com&gt;;tag=706572717 To: &lt;sip:Frax01@sip.dialnow.com&gt; Contact: &lt;sip:77.72.169.129:5060&gt; Call-ID: 50baef7c3a407e50d4d539a1e35cff41@192.168.10.31 CSeq: 2 REGISTER Server: (Very nice Sip Registrar/Proxy Server) Allow: ACK,BYE,CANCEL,INVITE,REGISTER,OPTIONS,INFO,MESSAGE Content-Length: 0 Other code: 100 SIP/2.0 200 Ok Via: SIP/2.0/UDP 192.168.10.31:5060;branch=z9hG4bK-343133-3ccb8a78b8614638665f0af2a998a686 From: &lt;sip:Frax01@sip.dialnow.com&gt;;tag=706572717 To: &lt;sip:Frax01@sip.dialnow.com&gt; Contact: &lt;sip:Frax01@192.168.10.31:5060;transport=udp&gt;;expires=120 Call-ID: 50baef7c3a407e50d4d539a1e35cff41@192.168.10.31 CSeq: 2 REGISTER Server: (Very nice Sip Registrar/Proxy Server) Allow: ACK,BYE,CANCEL,INVITE,REGISTER,OPTIONS,INFO,MESSAGE Content-Length: 0 Registered DEBUG - Request sent: INVITE sip:6281386725319@dialnow.com SIP/2.0 Via: SIP/2.0/UDP 192.168.10.31:5060;branch=z9hG4bK-343133-e18f3eca8f76bd0a4378a12dd6e7a0d7 Max-Forwards: 70 To: &lt;sip:6281386725319@dialnow.com&gt; From: &lt;sip:Frax01@sip.dialnow.com&gt;;tag=706572717 Call-ID: 66341e5e43e50e106a7fbf2866c0a1d3@192.168.10.31 CSeq: 3 INVITE Contact: &lt;sip:Frax01@192.168.10.31:5060;transport=UDP&gt; Content-Type: application/sdp Content-Length: 300 </code></pre> <p>As you can see it just stopped after the INVITE request is sent.</p> <p>Thank you in advance,</p> <p>Adam.</p> <hr> <p>Further information:</p> <p>I have tried user2932861's suggestions to no luck. I have tried using my public IP address but it's still stuck at the INVITE request. Also, I have set my SDP content, below is my SDP content:</p> <pre><code> ContentTypeHeader contentType = this.headerFactory.createContentTypeHeader("application", "sdp"); String sdpData = "v=0\n" + "o=user1 392867480 292042336 IN IP4 *my IP*\n" + "s=-\n" + "c=IN IP4 *my IP*\n" + "t=0 0\n" + "m=audio 8000 RTP/AVP 0 8 101\n" + "a=rtpmap:0 PCMU/8000\n" + "a=rtpmap:8 PCMA/8000\n" + "a=rtpmap:101 telephone-event/8000\n" + "a=sendrecv"; byte[] contents = sdpData.getBytes(); request.setContent(contents, contentType); </code></pre> <p>Note: the IP address is censored.</p> <p>Thank you in advance!</p> <hr> <p>As a matter of fact, it didn't exactly return NO responses at all, after a while being silent (not returning anything), the console would show "transaction timeout." Any idea why this is happening?</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload