Tone output support in Asterisk


Can anybody help me in understanding what all tone output (from the below list) is supported in asterisk

  1. Dial Tone
  2. Special Dial Tone
  3. Ring Back Tone
  4. Busy Tone
  5. Howler Tone
  6. Incoming Indicator Tone

I would also like to know how can I configure these tones and which piece of the asterisk code is used for generating the Tone.

Thanks & Regards,

See indications.conf.sample.

Howler would require special support in the analogue card, as it is louder than the normal D/A converter can generate. I don’t believe Asterisk has support for this, and the standard analogue cards probably don’t support it.

You missed congestion (aka fast busy in the US). You also missed special information tone.

Is incoming indicator call waiting?

Note, for VoIP most of these tones are generated in the phone, itself.

You can define your own tones as well, atlhough they will have to be explicitly invoked from the dialplan.

Thank you very much for your prompt reply.

Does that mean that except the Howler tone I can generate all the other tones in the software?

Let me explain my use case:
I have an analog phone connected to my gateway, and the gateway will be running the asterisk stack. The analog phone will communicate via SLIC interface on the gateway to the asterisk stack and then over to the internet. The SLIC interface can receive and transmit PCM data, so I want all the tone generation logic in my asterisk software. Is it possible to do that, if yes can you please give me some pointers to do this?

Thanks & Regards,

It will play most or all of those tones at appropriate times, however I haven’t used it with analogue hardware, so I can’t guarantee that there aren’t any holes.

In addition, during call setup, you can force the playing of any of those tones, and also any other tone that can be described by indications.conf:

[quote]; The tonelist itself is defined by a comma-separated sequence of elements.
; Each element consist of a frequency (f) with an optional duration (in ms)
; attached to it (f/duration). The frequency component may be a mixture of two
; frequencies (f1+f2) or a frequency modulated by another frequency (f1*f2).
; The implicit modulation depth is fixed at 90%, though.
; If the list element starts with a !, that element is NOT repeated,
; therefore, only if all elements start with !, the tonelist is time-limited,
; all others will repeat indefinitely.
; concisely:
; element = [!]freq[+|freq2][/duration]
; tonelist = element[,element]

; Please note that SPACES ARE NOT ALLOWED in tone lists![/quote]

[quote] -= Info about application ‘PlayTones’ =-

Play a tone list

PlayTones(arg): Plays a tone list. Execution will continue with the next step immediately,
while the tones continue to play.
Arg is either the tone name defined in the indications.conf configuration file, or a directly
specified list of frequencies and durations.
See the sample indications.conf for a description of the specification of a tone

Use the StopPlayTones application to stop the tones playing. [/quote]

Thank you for the reply.

Can you also tell me if I can add any custom tone in asterisk, like I want to play a tone while my gateway firmware is getting updated is this possible, if yes how can I do that?

Thanks & Regards,

I already answered that. Obviously Asterisk has to be running for this to happen.

I am a bit confused regarding your reply on the howler tone. Would like to clarify a few points on the same:

As you said that we can support any custom tone in asterisk provided asterisk is running, can I do the following to support howler tone?

Can we have a tone file which will have a recorded howler tone and then we can make an entry in the asterisk configuration file indications.conf which can then be used by the application to play the howler tone.


Only at reduced volume. A real howler eventually exceeds the dynamic range of the codec.

Also, you will probably need third party control (Asterisk Manager Interface) to connect the called party to the dialplan after the calling party has cleared. It may be impossible, because the low level logic may already have cleared the called party.


I have few more queries related to tone support.

  1. Does asterisk supports acceptance tone. This tone means that the network notifies the originating terminal that it has received the service request.
  2. Disconnect tone
  3. Reorder tone. This tone means the failure to communicate with SIP server.
  4. Incoming indicator tone. This tone means there is another incoming call during a call.

Thanks & Regards,

I get the feeling that you are trying to match an existing system too precisely, without looking at how it is used. My feeling is you have reached the stage where you need to pay a consultant, or to install a trial system (possibly SIP only) and experiment.

I don’t understand your re-order bit. If Asterisk is the SIP server, it obviously cannot generate tones. If the SIP server is down stream, why can it not be an ISDN connections, etc., etc.?