[Freeswitch-users] Require Timer on re-invite from FS to A-LEG

Anthony Minessale anthony.minessale at gmail.com
Mon Sep 17 19:11:25 MSD 2012


Just because it says its not recommended does not mean it says you should
intentionally drop a call because of it.
If you can make it work by turning off in the var then that is your
solution.  As I have already said, there are several real-world situations
where it breaks things going either way hence our solution was to make it
work both ways.


On Mon, Sep 17, 2012 at 10:00 AM, Mike Burlingame <mike.burlingame at me.com>wrote:

> PaeTec and Global Crossing both feel that we should not be including the
> require based on the RFC posted below - I have read over the RFC and tend
> to agree based on my limited knowledge of the timer RFC
>
> Based on what they are saying because the invite from them state that
> timers are supported that we should remember this and not be putting in a
> require
>
> ------------------
> From carriers
> -------------------
>
> Please see below…section 8.1 of RFC 4028****
>
>
>
> From RFC4028:****
>
>
>
>    The proxy MUST remember, for the duration of the transaction, whether**
> **
>
>    the request contained the Supported header field with the value****
>
>    'timer'.  If the request did not contain a Supported header field****
>
>    with the value 'timer', the proxy *MAY* insert a Require header field**
> **
>
>    with the value 'timer' into the request.  However, this is*NOT****
>
>    RECOMMENDED*.  This allows the proxy to insist on a session timer for**
> **
>
>    the session.  This header field is not needed if a Supported header****
>
>    field was in the request; in this case, the proxy would already be****
>
>    sure the session timer can be used for the session.****
>
>
>
>
>
> Section 7.1 of RFC 4028****
>
>
>
> A UAC that supports the session timer extension defined here MUST****
>
>    include a Supported header field in each request (except ACK),****
>
>    listing the option tag 'timer' [2<http://tools.ietf.org/html/rfc4028#ref-2>].
> It MUST do so even if the UAC is****
>
>    not requesting usage of the session timer for this session.****
>
>
>
>    The UAC MAY include a Require header field in the request with the****
>
>    value 'timer' to indicate that the UAS must support the session timer**
> **
>
>    to participate in the session.  This does not mean that the UAC is****
>
>    requiring the UAS to perform the refreshes, only that it is requiring**
> **
>
>    the UAS to support the extension.  In addition, the UAC MAY include a**
> **
>
>    Proxy-Require header field in the request with the value 'timer' to****
>
>    indicate that proxies must support the session timer in order to****
>
>    correctly process the request.  However, usage of either Require or****
>
>    Proxy-Require by the UAC is NOT RECOMMENDED.  They are not needed,****
>
>    since the extension works even when only the UAC supports the****
>
>    extension.  The Supported header field containing 'timer' MUST still***
> *
>
>    be included, even if the Require or Proxy-Require header fields are****
>
>    present containing 'timer'****
>
>
>
> Sent from my iPhone 4S
>
> On Sep 14, 2012, at 5:29 PM, Anthony Minessale <
> anthony.minessale at gmail.com> wrote:
>
> It's Wong to not accept it. IIRC...there is a better case for why it
> should be there than for it not being there.  It's a rather dumb thing for
> some of these commercial switches to even care about....I don't want to set
> a precedence here that I will perpetually change our sip stack and chase
> after every interop case... Make sure the param is set, I believe it
> disables it completely going against the rfc but I can't check till
> Monday.  This is part of Sofia not FS itself.
> On Sep 14, 2012 7:19 PM, "Mike Burlingame" <mike.burlingame at me.com> wrote:
>
>> Thanks that seem to help the high session timer value however the
>> require: timer is still present
>>
>> Invite from B-Leg --> FreeSwitch
>> recv 913 bytes from udp/[Outbound_Carrier_Proxy]:5060 at 23:50:28.717807:
>>
>>  ------------------------------------------------------------------------
>>    INVITE sip:18665551212 at FreeSwitch:5060 SIP/2.0
>>    Via: SIP/2.0/UDP Outbound_Carrier_Proxy;branch=z9hG4bKcb3e.af955752.0
>>    Via: SIP/2.0/UDP
>> Carrier_IP:5060;branch=z9hG4bK80qcmt0080p0ntsfn2j0sbd83gel1.1
>>    Allow-Events: message-summary, refer, dialog, line-seize, presence,
>> call-info, as-feature-event
>>    Max-Forwards: 68
>>    Call-ID: 28526ec2-4570-428b-960e-a065b7fcdfac
>>    From: <sip:18665551212 at Carrier_IP>;tag=10.152.0.77+1+63320+3c304bf3
>>    To: "BURLINGAME MIKE" <sip:13605551212 at X.X.X.X>;tag=B688eNFc2yv3e
>>    CSeq: 219015274 INVITE
>>    Expires: 180
>>    Contact: <sip:19999218665551212 at Carrier_IP:5060;transport=udp>
>>    Organization: MetaSwitch
>>    Supported: 100rel, resource-priority
>>    Content-Length: 193
>>    Content-Type: application/sdp
>>
>>    v=0
>>    o=- 3341834898 3341834898 IN IP4 Carrier_IP
>>    s=-
>>    c=IN IP4 Carrier_IP
>>    t=0 0
>>    m=audio 29864 RTP/AVP 18 0 101
>>    a=rtpmap:101 telephone-event/8000
>>    a=ptime:20
>>    a=silenceSupp:off - - - -
>>
>>
>>
>> Invite from FreeSwitch --> A-Leg
>> send 1000 bytes to udp/[ULC]:5060 at 23:50:28.718781:
>>
>>  ------------------------------------------------------------------------
>>    INVITE sip:mod_sofia at A-LEG_IP:5070 SIP/2.0
>>    Via: SIP/2.0/UDP FreeSwitch;rport;branch=z9hG4bKjFHtgQ8r4p0Sg
>>    Route: <sip:ULC;lr=on>
>>    Max-Forwards: 47
>>    From: <sip:18665551212 at ULC>;tag=aXFgDty84N6gK
>>    To: "BURLINGAME MIKE" <sip:13605551212 at A-LEG_IP>;tag=XeZZ4FrX4gXeg
>>    Call-ID: 71f58b05-5d2c-4f09-a390-66bf9698eff5
>>    CSeq: 33497250 INVITE
>>    Contact: <sip:18665551212 at FreeSwitch:5060;transport=udp>
>>    User-Agent: FreeSwitch
>>    Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, MESSAGE, INFO, UPDATE, NOTIFY
>>    Require: timer
>>    Supported: timer, precondition, path, replaces
>>    Session-Expires: 3600;refresher=uas
>>    Min-SE: 120
>>    Content-Type: application/sdp
>>    Content-Disposition: session
>>    Content-Length: 193
>>    P-hint: outbound
>>    X-FS-Support: update_display,send_info
>>
>>    v=0
>>    o=- 3341834898 3341834898 IN IP4 Carrier_IP
>>    s=-
>>    c=IN IP4 Carrier_IP
>>    t=0 0
>>    m=audio 29864 RTP/AVP 18 0 101
>>    a=rtpmap:101 telephone-event/8000
>>    a=ptime:20
>>    a=silenceSupp:off - - - -
>>
>>
>> On Sep 14, 2012, at 4:42 PM, Michael Collins <msc at freeswitch.org> wrote:
>>
>> Mike, try comma separating the values instead of using two sets of {}:
>>
>> add_action("bridge","{sip_wait_for_aleg_ack=true,sip_require_timer=false}[sip_contact_user=$ext,sip_auth_username=".$tp_username.",sip_auth_password=".$tp_password.$x_lrn."]sofia/fs/".$tp_trunkprefix.$ext."@".$tp_providerip.";fs_path=sip:OUT_PROXY");
>>
>> -MC
>>
>> On Fri, Sep 14, 2012 at 3:38 PM, Mike Burlingame <mike.burlingame at me.com>wrote:
>>
>>> I have that set in the bridge command however does not seem to be
>>> working as expected.
>>>
>>>
>>> add_action("bridge","{sip_wait_for_aleg_ack=true}{sip_require_timer=false}[sip_contact_user=$ext,sip_auth_username=".$tp_username.",sip_auth_password=".$tp_password.$x_lrn."]sofia/fs/".$tp_trunkprefix.$ext."@".$tp_providerip.";fs_path=sip:OUT_PROXY");
>>>
>>>
>>>
>>> On Sep 14, 2012, at 3:16 PM, Anthony Minessale <
>>> anthony.minessale at gmail.com> wrote:
>>>
>>> set {sip_require_timer=false} in your outbound calls or globally
>>>
>>>
>>> On Fri, Sep 14, 2012 at 5:10 PM, Mike Burlingame <mike.burlingame at me.com
>>> > wrote:
>>>
>>>> it seems if I get an re-invite from the B-Leg FS add's requires timer
>>>> and changes the session timer to a high value to the re-invite going to the
>>>> A-Leg come to find out Acme Packets at our ULC's do not like this and send
>>>> us back a 420 Bad Extension and the call is disconnected with Reason:
>>>> Q.850;cause=127;text="INTERWORKING"
>>>>
>>>> The ULC are stating we need to only have it in our supported and do not
>>>> pass them a require.
>>>>
>>>> Re-Invite from B-Leg to FS
>>>>
>>>>  ------------------------------------------------------------------------
>>>>    INVITE sip:16025551212;phone-context=+1 at FS_SERVER:5070 SIP/2.0
>>>>    Via: SIP/2.0/UDP OpenSIPs_DID_Proxy;branch=z9hG4bK8288.10e55fe5.0
>>>>    Via: SIP/2.0/UDP
>>>> B-LEG_IP:5060;branch=z9hG4bKve7vp6002gr1gfsh72k0sb1gv1ek1.1
>>>>    Call-Id: f8330599-d298-4233-92bb-5d622e85aa6d
>>>>    Contact: <sip:18475551212 at B-LEG_IP:5060;transport=udp>
>>>>    Content-Length: 217
>>>>    Content-Type: application/sdp
>>>>    CSeq: 33480808 INVITE
>>>>    From: <sip:18475551212 at B-LEG_IP>;tag=100052073
>>>>    Max-Forwards: 92
>>>>    Session-Expires: 3600;refresher=uas
>>>>    Supported: timer
>>>>    To: <sip:116025551212 at OpenSIPs_DID_Proxy>;tag=Dj92X5t8065FQ
>>>>    User-Agent: FreeSwitch
>>>>
>>>>    v=0
>>>>    o=- 3308986892 0 IN IP4 B-LEG_IP
>>>>    s=Media Server
>>>>    c=IN IP4 B-LEG_IP
>>>>    t=0 0
>>>>    m=audio 51246 RTP/AVP 0 101
>>>>    a=rtpmap:0 PCMU/8000
>>>>    a=rtpmap:101 telephone-event/8000
>>>>    a=fmtp:101 0-15
>>>>    a=ptime:20
>>>>
>>>>  ------------------------------------------------------------------------
>>>>
>>>> Re-Invite from FS to A-Leg
>>>>
>>>> ------------------------------------------------------------------------
>>>>    INVITE sip:16025551212 at DID_CARRIER:5060;transport=udp SIP/2.0
>>>>    Via: SIP/2.0/UDP FS_SERVER:5070;rport;branch=z9hG4bKj8yevKKS0X0mK
>>>>    Route: <sip:OpenSIPS_DID_CARRIER_Proxy;lr=on>
>>>>    Max-Forwards: 97
>>>>    From: <sip:18475551212;phone-context=+1 at OpenSIPS_DID_CARRIER_Proxy
>>>> :5060;user=phone>;tag=c9Favaa53XFXB
>>>>    To: <sip:16025551212;phone-context=+1 at DID_CARRIER
>>>> :5060;user=phone>;tag=SDd626401-gK095bbb72
>>>>    Call-ID: SDd626401-b06f59c4aa359462042e25890d7b5bfd-v3000i1
>>>>    CSeq: 33480811 INVITE
>>>>    Contact: <
>>>> sip:18475551212;phone-context=+1 at FS_SERVER:5070;transport=udp>
>>>>    User-Agent: FreeSwitch
>>>>    Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, MESSAGE, INFO, UPDATE,
>>>> NOTIFY
>>>>    Require: timer
>>>>    Supported: timer, precondition, path, replaces
>>>>    Session-Expires: 64800;refresher=uas
>>>>    Min-SE: 64800
>>>>    Content-Type: application/sdp
>>>>    Content-Disposition: session
>>>>    Content-Length: 235
>>>>    X-FS-Support: update_display,send_info
>>>>
>>>>    v=0
>>>>    o=- 3308979701 3213293310682935904 IN IP4 B-LEG_IP
>>>>    s=Media Server
>>>>    c=IN IP4 B-LEG_IP
>>>>    t=0 0
>>>>    m=audio 51246 RTP/AVP 0 101
>>>>    a=rtpmap:0 PCMU/8000
>>>>    a=rtpmap:101 telephone-event/8000
>>>>    a=fmtp:101 0-15
>>>>    a=ptime:20
>>>>
>>>>  ------------------------------------------------------------------------
>>>>
>>>>
>>>>
>>>> _________________________________________________________________________
>>>> Professional FreeSWITCH Consulting Services:
>>>> consulting at freeswitch.org
>>>> http://www.freeswitchsolutions.com
>>>>
>>>> 
>>>> 
>>>>
>>>> Official FreeSWITCH Sites
>>>> http://www.freeswitch.org
>>>> http://wiki.freeswitch.org
>>>> http://www.cluecon.com
>>>>
>>>> FreeSWITCH-users mailing list
>>>> FreeSWITCH-users at lists.freeswitch.org
>>>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>>>> UNSUBSCRIBE:
>>>> http://lists.freeswitch.org/mailman/options/freeswitch-users
>>>> http://www.freeswitch.org
>>>>
>>>
>>>
>>>
>>> --
>>> Anthony Minessale II
>>>
>>> FreeSWITCH http://www.freeswitch.org/
>>> ClueCon http://www.cluecon.com/
>>> Twitter: http://twitter.com/FreeSWITCH_wire
>>>
>>> AIM: anthm
>>> MSN:anthony_minessale at hotmail.com
>>> GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com
>>> IRC: irc.freenode.net #freeswitch
>>>
>>> FreeSWITCH Developer Conference
>>> sip:888 at conference.freeswitch.org
>>> googletalk:conf+888 at conference.freeswitch.org
>>> pstn:+19193869900
>>> _________________________________________________________________________
>>> Professional FreeSWITCH Consulting Services:
>>> consulting at freeswitch.org
>>> http://www.freeswitchsolutions.com
>>>
>>> 
>>> 
>>>
>>> Official FreeSWITCH Sites
>>> http://www.freeswitch.org
>>> http://wiki.freeswitch.org
>>> http://www.cluecon.com
>>>
>>> FreeSWITCH-users mailing list
>>> FreeSWITCH-users at lists.freeswitch.org
>>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
>>> http://www.freeswitch.org
>>>
>>>
>>>
>>> _________________________________________________________________________
>>> Professional FreeSWITCH Consulting Services:
>>> consulting at freeswitch.org
>>> http://www.freeswitchsolutions.com
>>>
>>> 
>>> 
>>>
>>> Official FreeSWITCH Sites
>>> http://www.freeswitch.org
>>> http://wiki.freeswitch.org
>>> http://www.cluecon.com
>>>
>>> FreeSWITCH-users mailing list
>>> FreeSWITCH-users at lists.freeswitch.org
>>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
>>> http://www.freeswitch.org
>>>
>>>
>>
>>
>> --
>> Michael S Collins
>> Twitter: @mercutioviz
>> http://www.FreeSWITCH.org <http://www.freeswitch.org/>
>> http://www.ClueCon.com <http://www.cluecon.com/>
>> http://www.OSTAG.org <http://www.ostag.org/>
>>
>>
>> _________________________________________________________________________
>> Professional FreeSWITCH Consulting Services:
>> consulting at freeswitch.org
>> http://www.freeswitchsolutions.com
>>
>> 
>> 
>>
>> Official FreeSWITCH Sites
>> http://www.freeswitch.org
>> http://wiki.freeswitch.org
>> http://www.cluecon.com
>>
>> FreeSWITCH-users mailing list
>> FreeSWITCH-users at lists.freeswitch.org
>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
>> http://www.freeswitch.org
>>
>>
>>
>> _________________________________________________________________________
>> Professional FreeSWITCH Consulting Services:
>> consulting at freeswitch.org
>> http://www.freeswitchsolutions.com
>>
>> 
>> 
>>
>> Official FreeSWITCH Sites
>> http://www.freeswitch.org
>> http://wiki.freeswitch.org
>> http://www.cluecon.com
>>
>> FreeSWITCH-users mailing list
>> FreeSWITCH-users at lists.freeswitch.org
>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
>> http://www.freeswitch.org
>>
>> _________________________________________________________________________
> Professional FreeSWITCH Consulting Services:
> consulting at freeswitch.org
> http://www.freeswitchsolutions.com
>
> 
> 
>
> Official FreeSWITCH Sites
> http://www.freeswitch.org
> http://wiki.freeswitch.org
> http://www.cluecon.com
>
> FreeSWITCH-users mailing list
> FreeSWITCH-users at lists.freeswitch.org
> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
> http://www.freeswitch.org
>
>
> _________________________________________________________________________
> Professional FreeSWITCH Consulting Services:
> consulting at freeswitch.org
> http://www.freeswitchsolutions.com
>
> 
> 
>
> Official FreeSWITCH Sites
> http://www.freeswitch.org
> http://wiki.freeswitch.org
> http://www.cluecon.com
>
> FreeSWITCH-users mailing list
> FreeSWITCH-users at lists.freeswitch.org
> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
> http://www.freeswitch.org
>
>


-- 
Anthony Minessale II

FreeSWITCH http://www.freeswitch.org/
ClueCon http://www.cluecon.com/
Twitter: http://twitter.com/FreeSWITCH_wire

AIM: anthm
MSN:anthony_minessale at hotmail.com
GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com
IRC: irc.freenode.net #freeswitch

FreeSWITCH Developer Conference
sip:888 at conference.freeswitch.org
googletalk:conf+888 at conference.freeswitch.org
pstn:+19193869900
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20120917/f595992b/attachment-0001.html 


Join us at ClueCon 2011 Aug 9-11, 2011
More information about the FreeSWITCH-users mailing list