Opened 10 years ago

Closed 5 years ago

#817 closed enhancement (fixed)

Callback to allow application to respond to re-INVITE manually (thanks Ruud Klaver for the patch)

Reported by: bennylp Owned by: bennylp
Priority: normal Milestone: release-2.2
Component: pjsua-lib Version: trunk
Keywords: Cc:
Backport to 1.x milestone: Backported: no

Description (last modified by bennylp)

Currently PJSIP automatically responds incoming re-INVITE. The patch adds callback to notify application about re-INVITE and allows it to respond accordingly.

See the following for the discussions:

Attachments (5)

pjsip-2421-sip_inv-on_rx_reinvite.patch (2.9 KB) - added by bennylp 10 years ago.
Patch to add the callback (thanks Ruud Klaver)
sdp_neg_cancel_remote_offer_r2669.patch (4.4 KB) - added by bennylp 10 years ago.
This patch adds capability to cancel remote offer state in the SDP negotiator. It's useful if application has set the remote offer, but then decides to reject the re-INVITE.
pjsip-2553-sip_inv-terminate-reinvite-tsx-on-cancel.patch (780 bytes) - added by bennylp 10 years ago.
Patch from Ruud Klaver to cancel incoming re-INVITE on incoming CANCEL
pjsip-2553-sip_inv-cancel_sdp_neg_on_sending_negative_reply_to_reinvite.patch (584 bytes) - added by bennylp 10 years ago.
Patch from Ruud Klaver to cancel negotiator state when we're sending negative response to re-INVITE
pjsip-2830-allow_cancel_reinvite.patch (3.2 KB) - added by bennylp 9 years ago.
From Saúl Ibarra Corretgé: this patch should complete the missing part. The attached patch builds and sends a CANCEL request to an ongoing re-INVITE. I made the patch and tested on PJSIP 1.0.x version, but AFAIS there should be no problem in applying it to latest trunk.

Download all attachments as: .zip

Change History (17)

Changed 10 years ago by bennylp

Patch to add the callback (thanks Ruud Klaver)

Changed 10 years ago by bennylp

This patch adds capability to cancel remote offer state in the SDP negotiator. It's useful if application has set the remote offer, but then decides to reject the re-INVITE.

comment:1 Changed 10 years ago by bennylp

  • Description modified (diff)

Changed 10 years ago by bennylp

Patch from Ruud Klaver to cancel incoming re-INVITE on incoming CANCEL

Changed 10 years ago by bennylp

Patch from Ruud Klaver to cancel negotiator state when we're sending negative response to re-INVITE

comment:2 Changed 10 years ago by bennylp

  • Milestone changed from release-1.3 to release-1.4

comment:3 Changed 10 years ago by bennylp

  • Milestone changed from release-1.4 to release-1.5

comment:4 Changed 10 years ago by bennylp

  • Milestone changed from release-1.5 to release-1.6

Changed 9 years ago by bennylp

From Saúl Ibarra Corretgé: this patch should complete the missing part. The attached patch builds and sends a CANCEL request to an ongoing re-INVITE. I made the patch and tested on PJSIP 1.0.x version, but AFAIS there should be no problem in applying it to latest trunk.

comment:5 Changed 9 years ago by bennylp

  • Milestone changed from release-1.6 to release-1.7

comment:6 Changed 9 years ago by bennylp

  • Milestone changed from release-1.7 to Known-Issues-and-Ideas

Moving this to known issues.

comment:7 Changed 6 years ago by ming

In 4562:

Re #817: Initial work for allowing application to respond to re-INVITE manually.

Patches integrated in this fix (with some modifications for adjustment to the current trunk):

  • sip_inv-on_rx_reinvite.patch


Move the place where to call the callback so the callback will still be called when the re-invite contains no SDP

  • sdp_neg_cancel_remote_offer


pjmedia_sdp_neg_cancel_remote_offer() is no longer necessary since pjmedia_sdp_neg_cancel_offer() can already handle that. Only integrate the chart for sdp negotiation doc.

  • sip_inv-terminate-reinvite-tsx-on-cancel
  • sip_inv-cancel_sdp_neg_on_sending_negative_reply_to_reinvite
  • pjsip-allow_cancel_reinvite

comment:8 Changed 6 years ago by ming

  • Backported unset
  • Component changed from pjsip to pjsua-lib
  • Milestone changed from Known-Issues-and-Ideas to release-2.2

comment:9 Changed 6 years ago by bennylp

In 4565:

More re #817: added logging

comment:10 Changed 6 years ago by ming

In 4583:

Re #817: Fix replying to re-INVITE after it was cancelled (thanks to Saúl Ibarra Corretgé for the patch)

comment:11 Changed 5 years ago by bennylp

Note that this implementation is still lacking manual reinvite notification at pjsua level, although it's still unclear either whether such notification can be implemented.

comment:12 Changed 5 years ago by bennylp

  • Resolution set to fixed
  • Status changed from new to closed
Note: See TracTickets for help on using tickets.