Migrating Asterisk 11 To 13: Some Callers Get No Ringback Tone Any More

Home » Asterisk Users » Migrating Asterisk 11 To 13: Some Callers Get No Ringback Tone Any More
Asterisk Users 6 Comments

Hello!

I migrated asterisk 11 to 13 as user of FreePBX 12.0.76.2.

As customer of German Telekom, I have three numbers and therefore three trunks – each number is bound to one trunk.

After migration, some callers complained about missing ringback tone:
they didn’t hear any ring tone and where surprised that they suddenly got me anyway :-). The connection afterwards was as expected.

Deeper investigation yielded, that a few caller groups have been affected by this problem:

– All POTS customers of German Telekom
– VoIP customer of T-Systems (usually companies which transfered their
telephone system)

Not affected have been callers like All-IP customers of German Telekom or any tested mobile caller or caller using other telecommunications companies.

To make it even more strange: Calls coming from T-Systems customer via call forwarding have been working fine, too.

And:
The ringback tone wasn’t missing, if the second number (the second trunk) of the asterisk installation was used!

The only difference between those two trunks is: The first trunk is configured to a ring group – the second trunk is configured directly to an extension.

My solution after long time of digging around:
I added progressinband=never to sip_general_additional.conf

But this solution confuses me, because

http://www.voip-info.org/wiki/view/Asterisk+sip+progressinband

tells:

progressinband=never

Whenever ringing occurs, send “180 ringing” as long as “200 OK” has not yet been sent. This is the default behaviour of Asterisk.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Why do I have to provide it especially if it is the default behavior?
Why did it work without this option with asterisk 11? Why is there suddenly a difference in behavior between binding a trunk to a ring group or an extension?

Puzzled, regards, Michael Maier

6 thoughts on - Migrating Asterisk 11 To 13: Some Callers Get No Ringback Tone Any More

  • Michael Maier wrote:

    I’m not really sure what would be different, as that would be a FreePBX
    construct and not of Asterisk itself. If you provide a SIP debug of the non-working case I can see if anything is out of the ordinary in the signaling.

  • Ok – but this doesn’t seem to answer my main question:

    Why must

    progressinband=never

    be applied especially if asterisk uses it by default? The big difference between w/ and w/o it is:

    w/o the option progrssinband=never just the sip-package
    183 Session Progress is sent.

    w/ the option set, the additional sip-packages
    100 Trying
    180 Ringing
    180 Ringing are sent.

    If progrssinband=never is the default, the Ringing package should be sent always, shouldn’t it?

    If I remove the option progrssinband=never via FreePBX, I can’t find any other value provided to progrssinband in /etc/asterisk/*.

    Why does it work always correctly w/ the second trunk, which is connected directly to the extension?

    Is it possible to switch off the standard behavior of asterisk /
    progrssinband for ring groups only by setting some other options?

    Thanks, kind regards, Michael

  • Whoops, email client auto-filled dev previously. Let’s try this again.

    Michael Maier wrote:

    > Ok – but this doesn’t seem to answer my main question:
    >
    > Why must
    >
    > progressinband=never
    >
    > be applied especially if asterisk uses it by default? The big difference
    > between w/ and w/o it is:

    The default in 13 is “no” which still allows early media through. That option has a complicated past.

    >
    > w/o the option progrssinband=never just the sip-package
    > 183 Session Progress
    > is sent.

    Yes, because it’s doing inband progress using a media stream.

    >
    > w/ the option set, the additional sip-packages
    > 100 Trying
    > 180 Ringing
    > 180 Ringing
    > are sent.
    >
    > If progrssinband=never is the default, the Ringing package should be
    > sent always, shouldn’t it?

    It’s not the default.

    >
    > If I remove the option progrssinband=never via FreePBX, I can’t find any
    > other value provided to progrssinband in /etc/asterisk/*.
    >
    >
    > Why does it work always correctly w/ the second trunk, which is
    > connected directly to the extension?

    FreePBX may not use inband progress for that scenario, causing it to send out of band ringing instead.

    >
    > Is it possible to switch off the standard behavior of asterisk /
    > progrssinband for ring groups only by setting some other options?

    Asterisk does not have the concept of ring groups, this is a FreePBX
    construct. Asterisk itself does allow the option to be set on an individual basis for the entries in sip.conf.

  • I don’t know the default setting for progressinband in the code, but it is documented in Asterisk 11’s sip.conf.sample as defaulting to never.
    Maybe the docs were fixed since Asterisk 11.

    from 11.21.x sip.conf.sample:

    ;progressinband=never ; If we should generate in-band ringing always
    ; use ‘never’ to never use in-band signalling, even in cases
    ; where some buggy devices might not render it
    ; Valid values: yes, no, never Default:
    never

  • Eric Wieling wrote:

    The behavior change to actually do what the option was documented to do. As part of that the default was changed to reflect the past behavior, thus why it was changed to no. The commit itself:

    chan_sip: make progressinband default to no

    After the “progressinband” value setting of “never” was updated to never send a 183 this separated its use from the “no” value. Since “never” was the default, but most users probably expect “no” this patch updates the default for the “progressinband” setting to “no.”

    This was tracked under ASTERISK-24835[1].

    [1] https://issues.asterisk.org/jira/browse/ASTERISK-24835

  • But “never” option therefore sends 180 Ringing which I was missing. The new default “no” doesn’t send 180 Ringing any more … .

    This makes sense! I migrated from

    asterisk11-11.8.1-40_CentOS6.x86_64,

    which had the default progressinband=never to

    asterisk13-core-13.7.2-1.shmz65.1.94.x86_64

    which had the new default.

    POTS callers advertise support for early media – mobile callers on the other hand don’t advertise it, therefore mobile wasn’t a problem because early media (183) isn’t triggered (and used!) at all.

    Two strange things being left:

    1. Why does progressinband=no work, if there is *no* ringgroup between trunk and extension. This seems to be a “feature” of FreePBX.

    2. Why is early media used even if the caller doesn’t advertise it? Are there other triggers like P-Early-Media?

    Another basic question:
    What do I need early media exactly for? I’m only using SIP phones –
    nothing else. Couldn’t it be completely disabled for these trunks? Or would it break things like voice mail service e.g.? How can I disable it completely even if it is advertised by the caller?

    Thanks, Michael