[asterisk-dev] [Code Review] 3106: res_pjsip_session: If a reinvite without an SDP is received, unhold the call.

Mark Michelson reviewboard at asterisk.org
Tue Jan 7 09:50:55 CST 2014


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/3106/#review10520
-----------------------------------------------------------

Ship it!


I think this unconditional behavior is fine since there is precedent in other places in the code to unconditionally queue unhold frames. 

- Mark Michelson


On Jan. 6, 2014, 10:15 p.m., Jonathan Rose wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviewboard.asterisk.org/r/3106/
> -----------------------------------------------------------
> 
> (Updated Jan. 6, 2014, 10:15 p.m.)
> 
> 
> Review request for Asterisk Developers, Joshua Colp and Mark Michelson.
> 
> 
> Repository: Asterisk
> 
> 
> Description
> -------
> 
> Some devices apparently perform unhold by simply issuing a reinvite on the dialog without an SDP. This patch adds that functionality to our PJSIP session control.
> It might be worthwhile to add some method of not queing unhold if the call isn't already on hold in the first place, but my testing so far hasn't revealed it as being necessary.
> 
> 
> Diffs
> -----
> 
>   /trunk/res/res_pjsip_session.c 404854 
> 
> Diff: https://reviewboard.asterisk.org/r/3106/diff/
> 
> 
> Testing
> -------
> 
> Created a phone_B.xml similar to the ones used for this case in review 3105 (phone_B_unhold_sans_sdp.xml). This would hold the call then unhold the call by sending a reinvite without an SDP
> 
> pjsip endpoint:
> 
> [sippbert]
> type=aor
> contact=sip:sippbert at 127.0.0.3:5065
> 
> [sippbert]
> type=endpoint
> aors=sippbert
> context=default
> disallow=all
> allow=ulaw
> direct_media=no
> 
> 
> With the patch in place, this held and unheld the call as it should have.  Without the patch, the hold would work (naturally since it's just a normal hold), but the invite without the SDP would not unhold the call.
> 
> It's worth noting that if an unhold in this fashion is issued while the call is already active/not on hold will still produce unhold events. I'm unsure if this is a problem that needs to be addressed. Testing hasn't revealed this being a problem yet, but I don't believe many test scenarios exist which use reinvites without SDP.
> 
> 
> Thanks,
> 
> Jonathan Rose
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-dev/attachments/20140107/900a662e/attachment.html>


More information about the asterisk-dev mailing list