[asterisk-dev] [Code Review] 4572: RFC: Refactor Qualify and res_pjsip/endpt_send_request

Jean-Denis Girard jd.girard at sysnux.pf
Mon Apr 6 16:56:15 CDT 2015


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hi,

Though I'm following ASTERISK-24863, I may have missed something: what
is this change replaced by?


Thanks,
- -- 
Jean-Denis Girard

SysNux                Systèmes   Linux   en   Polynésie   française
http://www.sysnux.pf/ Tél: +689 40.50.10.40 / GSM: +689 87.79.75.27

Le 06/04/2015 04:46, George Joseph a écrit :
> This is an automatically generated e-mail. To reply, visit:
> https://reviewboard.asterisk.org/r/4572/
> 
> 
>   This change has been discarded.
> 
> 
> Review request for Asterisk Developers.
> By George Joseph.
> 
> /Updated April 6, 2015, 8:46 a.m./
> 
> *Bugs: * ASTERISK-24863
> <https://issues.asterisk.org/jira/browse/ASTERISK-24863>
> *Repository: * Asterisk
> 
> 
>   Description
> 
> This review is based on the discussion here
> http://lists.digium.com/pipermail/asterisk-dev/2015-March/073921.html
> 
> -------------------------------------
> Right now when a contact is qualified, it's immediately marked as
> UNAVAILABLE.  If a response to the OPTIONS message comes back, it's
> marked as AVAILABLE again and the round trip time calculated.   The
> status flapping even in normal operation makes generating events
> tricky because the subscriber will see up/down events even if the
> contact is really AVAILABLE.   Now the pjsip transaction will
> eventually time out at an unconfigurable 32 seconds and call the
> callback but 32 seconds is a long time.  This is also an issue if the
> qualify_frequency is less than 32 seconds since they'll be multiple
> pjsip transactions in progress for the same contact.
> 
> <snip>
> 
> So, I'm proposing pulling libpjsip/pjsip_endpt_send_request up into
> res_pjsip.   It's 2 short function and a pjsip_module structure with
> no access to any private pjsip stuff.   Now we'll have the ability to
> terminate the transaction AND it seems that there's a timeout member
> of pjsip_transaction which I'm hoping (but haven't tested) will
> eliminate the need to add timeout processing in pjsip_options.
> 
> The result of all of this is that we'll be able to generate events for
> contact status (ASTERISK-24863) which in turn will help is provide
> functionality like marking an endpoint unavailable when all of its
> contacts are unavailable.
> -------------------------------------
> 
> Both Josh and Mark had comments in the thread so this is an RFC ONLY r
eview.
> It covers the pull up of libpjsip/pjsip_endpt_send_request but I've al
so added the
> use case which is creating and processing a new aor/contact option cal
led
> 'qualify_timeout'.  I'll split the final submission into 2 pieces.
> 
> 
>   Testing
> 
> All existing pjsip related tests complete.  I'll also have to add even
t generation on contact status change and the tests based on it.
> 
> 
>   Diffs
> 
>   * branches/13/res/res_pjsip/pjsip_options.c (433794)
>   * branches/13/res/res_pjsip/location.c (433794)
>   * branches/13/res/res_pjsip.c (433794)
>   * branches/13/include/asterisk/res_pjsip.h (433794)
> 
> View Diff <https://reviewboard.asterisk.org/r/4572/diff/>
> 
> 
> 

-----BEGIN PGP SIGNATURE-----

iEYEARECAAYFAlUjAP8ACgkQuu7Rv+oOo/jHAACgrLQSb1fYFB3XEOSlGGATsXmD
XA4AnR2EwCvc+fz6clwFeyF4Ep1uy4eg
=H7uU
-----END PGP SIGNATURE-----



More information about the asterisk-dev mailing list