Home

Resources

Products

Developers

Main • CallEndCauses

Call end causes and errors

A telephone call can fail or end abnormally. To express the cause of a call end each protocol has its own way of encoding it, usually by a protocol spcific numeric value.

To provide protocol independence Yate translates these cause codes in keywords that attempt to be protocol agnostic. When the keyword is translated back into protocol specific codes hopefully an adequate translation is choosen.

Many of the cause codes are protocol specific and have no equivalent in other protocols. For telephony the most important encoding is Q.850 defining cause and location codes for ISDN.

You should also note that some of these call termination codes are not errors but part of normal operation of one or another protocol. Some of these codes are also used for operations after the call is established.

KeywordSIPH.323IAXISDNSS7Description
Call initiation
noroute404????No route to destination could be found
noconn503????Could not connect to outgoing channel or network
noauth401????Caller is not authenticated
nomedia415????Failed to negotiate media channed
noanswer487????Called party did not answer
busy486????Called party is busy
congestion480????Temporary network congestion
offline404????Called party or network is offline
rejected406????Call rejected by called party or network
forbidden403????Call is not authorized
incomplete484????Called party number or address is incomplete
looping483????Call loop detected
failure500????Generic local server or interoperation failure
During the call
timeoutBYE????Call duration exceeded limit
nocall481????Referenced call could not be found on server
pending491????Another operation is in progress on the same call

SIP specifics

After the INVITE completes successfully the codes are sent in the Reason: header of the BYE transaction.

H.323 specifics

The H.323 protocol stack has several ways of sending codes at different layers. Not always a Q.850 code is available - for example if the TCP/IP communication cannot be established.

IAX specifics

There are no cause cods in IAX, only textual messages sent with the REJECT or HANGUP packet.

3 May 2010:
Yate 3.0.0 alpha 3 released. Featuring the new Jabber server and wideband audio.
Download NOW

8 March 2010:
Yate 2.2 released. Mostly bug fixes. Dahdi compatible. Latest 2 release before 3.0.

6-7 February 2010:
Yate booth at FOSDEM 2010. Free CD with Freesentral available.

2 Nov 2009:
Yate 2.1 launched. Can replace a Cisco PGW2200 to control a Cisco AS54xx.

6 Aug 2008:
Yate and OpenSIPS (former OpenSER) join to build IP based clusters.

4 Aug 2008:
Yate 2 launched.

10 Jul 2008:
Yate presentation in Germany.

Feb 2008:
Yate 2.0.0 alpha 2 released. New routing module allows sending ENUM routed or forked calls to numbers of registered phones. More...

21 Jan 2008:
Yate 2 alpha released. Major changes, new ISDN, SS7 and MGCP stack. Added analogic and RBS support.

3 September:
Yate 1.3 released. Minor fixes and improvments mainly in client and SIP.

14 August:
Yate based ISDN passive recording system released by Trisys.

16 April:
Yate 1.2 released. Added Jingle and XML support, PBX improved.

25 September:
YateAdmin 1 released.

25 September:
Yate 1.1 released. Fallback routing from a database, fax support in Linux and bug fixes. Changelog and Download availables.

11 July 2006:
O'Reilly published an article about prototyping telephony applications with Yate and Python.

10 July 2006:
Yate 1 released. Includes YIAX, YSIP, YRTP and many new features.

June 1st 2006:
New Yate website launched


EditHistoryBacklinksRecent ChangesSearch