Summary:ASTERISK-12516: Asterisk reports dialstatus as "CONGESTION" when received a 480 "Temporarily unavailable"
Reporter:Richard Wilkinson (rickead2000)Labels:
Date Opened:2008-08-04 08:03:52Date Closed:2008-08-13 16:22:07
Versions:Frequency of
Description:Asterisk currently sets the dialstatus to be "CONGESTION" when a 403 "Temporarily unavailable" is received.  It then sends on a 503 "Service unavailable" to the other party.  For compliance with the RFC I believe asterisk should be sending back the 480 Temp. unavail to the 3rd party as it received it and probably should be setting the dialstatus to "NOANSWER"


Console output....

-- Got SIP response 480 "Temporarily not available" back from xx.xx.xx.xx
   -- SIP/test-091e5090 is circuit-busy
 == Everyone is busy/congested at this time (1:0/1/0)
 == Auto fallthrough, channel 'SIP/xx.xx.xx.xx-b7b1ba60' status is 'CONGESTION'

SIP Message sent to other party....

SIP/2.0 503 Service Unavailable.
Comments:By: Richard Wilkinson (rickead2000) 2008-08-04 08:04:55

Edit: -- Sorry above should read 480 "Temporarily unavailable" - NOT 403!! (It's been a long day!!)

By: David Woolley (davidw) 2008-08-04 09:32:33

I believe the reason that it returns Congestion is that Dial can have multiple destinations, with different failure reasons and congestions sums up the idea that there is no usable onward route.

However, ASTERISK-12221 also seems relevant, and that seems to take the position that one can more accurately reflect the called line state in the, common, degenerate case of only one destination for the Dial application.

PS Which RFC?  The main SIP RFC doesn't apply to back to back end systems, but the RFC mentioned in ASTERISK-12221 probably is relevant.

By: Jason Parker (jparker) 2008-08-13 16:22:05

Previously, if your device was not registered, it would have responded as you mention below.  It will now use an UNREGISTERED cause code which is nearly the same as NOANSWER.