Move cause 200 to cause 26, as specified in Q.850.

Also cleanup the formatting and add a few more that seem like good candidates.

(closes issue #16157)
 Reported by: wimpy


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@262513 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Tilghman Lesher
2010-05-11 21:25:05 +00:00
parent d8dea9e76a
commit 2c10997e99

View File

@@ -33,125 +33,126 @@ In SIP, we have a conversion table to convert between SIP
return codes and Q.931 both ways. This is to improve SIP/ISDN return codes and Q.931 both ways. This is to improve SIP/ISDN
compatibility. compatibility.
These are the current codes, based on the Q.931 These are the current codes, based on the Q.850/Q.931
specification: specification:
- AST_CAUSE_UNALLOCATED 1 - AST_CAUSE_UNALLOCATED 1
- AST_CAUSE_NO_ROUTE_TRANSIT_NET 2 - AST_CAUSE_NO_ROUTE_TRANSIT_NET 2
- AST_CAUSE_NO_ROUTE_DESTINATION 3 - AST_CAUSE_NO_ROUTE_DESTINATION 3
- AST_CAUSE_CHANNEL_UNACCEPTABLE 6 - AST_CAUSE_MISDIALLED_TRUNK_PREFIX 5
- AST_CAUSE_CALL_AWARDED_DELIVERED 7 - AST_CAUSE_CHANNEL_UNACCEPTABLE 6
- AST_CAUSE_NORMAL_CLEARING 16 - AST_CAUSE_CALL_AWARDED_DELIVERED 7
- AST_CAUSE_USER_BUSY 17 - AST_CAUSE_PRE_EMPTED 8
- AST_CAUSE_NO_USER_RESPONSE 18 - AST_CAUSE_NUMBER_PORTED_NOT_HERE 14
- AST_CAUSE_NO_ANSWER 19 - AST_CAUSE_NORMAL_CLEARING 16
- AST_CAUSE_CALL_REJECTED 21 - AST_CAUSE_USER_BUSY 17
- AST_CAUSE_NUMBER_CHANGED 22 - AST_CAUSE_NO_USER_RESPONSE 18
- AST_CAUSE_DESTINATION_OUT_OF_ORDER 27 - AST_CAUSE_NO_ANSWER 19
- AST_CAUSE_INVALID_NUMBER_FORMAT 28 - AST_CAUSE_CALL_REJECTED 21
- AST_CAUSE_FACILITY_REJECTED 29 - AST_CAUSE_NUMBER_CHANGED 22
- AST_CAUSE_RESPONSE_TO_STATUS_ENQUIRY 30 - AST_CAUSE_REDIRECTED_TO_NEW_DESTINATION 23
- AST_CAUSE_NORMAL_UNSPECIFIED 31 - AST_CAUSE_ANSWERED_ELSEWHERE 26
- AST_CAUSE_NORMAL_CIRCUIT_CONGESTION 34 - AST_CAUSE_DESTINATION_OUT_OF_ORDER 27
- AST_CAUSE_NETWORK_OUT_OF_ORDER 38 - AST_CAUSE_INVALID_NUMBER_FORMAT 28
- AST_CAUSE_NORMAL_TEMPORARY_FAILURE 41 - AST_CAUSE_FACILITY_REJECTED 29
- AST_CAUSE_SWITCH_CONGESTION 42 - AST_CAUSE_RESPONSE_TO_STATUS_ENQUIRY 30
- AST_CAUSE_ACCESS_INFO_DISCARDED 43 - AST_CAUSE_NORMAL_UNSPECIFIED 31
- AST_CAUSE_REQUESTED_CHAN_UNAVAIL 44 - AST_CAUSE_NORMAL_CIRCUIT_CONGESTION 34
- AST_CAUSE_PRE_EMPTED 45 - AST_CAUSE_NETWORK_OUT_OF_ORDER 38
- AST_CAUSE_FACILITY_NOT_SUBSCRIBED 50 - AST_CAUSE_NORMAL_TEMPORARY_FAILURE 41
- AST_CAUSE_OUTGOING_CALL_BARRED 52 - AST_CAUSE_SWITCH_CONGESTION 42
- AST_CAUSE_INCOMING_CALL_BARRED 54 - AST_CAUSE_ACCESS_INFO_DISCARDED 43
- AST_CAUSE_BEARERCAPABILITY_NOTAUTH 57 - AST_CAUSE_REQUESTED_CHAN_UNAVAIL 44
- AST_CAUSE_BEARERCAPABILITY_NOTAVAIL 58 - AST_CAUSE_FACILITY_NOT_SUBSCRIBED 50
- AST_CAUSE_BEARERCAPABILITY_NOTIMPL 65 - AST_CAUSE_OUTGOING_CALL_BARRED 52
- AST_CAUSE_CHAN_NOT_IMPLEMENTED 66 - AST_CAUSE_INCOMING_CALL_BARRED 54
- AST_CAUSE_FACILITY_NOT_IMPLEMENTED 69 - AST_CAUSE_BEARERCAPABILITY_NOTAUTH 57
- AST_CAUSE_INVALID_CALL_REFERENCE 81 - AST_CAUSE_BEARERCAPABILITY_NOTAVAIL 58
- AST_CAUSE_BEARERCAPABILITY_NOTIMPL 65
- AST_CAUSE_CHAN_NOT_IMPLEMENTED 66
- AST_CAUSE_FACILITY_NOT_IMPLEMENTED 69
- AST_CAUSE_INVALID_CALL_REFERENCE 81
- AST_CAUSE_INCOMPATIBLE_DESTINATION 88 - AST_CAUSE_INCOMPATIBLE_DESTINATION 88
- AST_CAUSE_INVALID_MSG_UNSPECIFIED 95 - AST_CAUSE_INVALID_MSG_UNSPECIFIED 95
- AST_CAUSE_MANDATORY_IE_MISSING 96 - AST_CAUSE_MANDATORY_IE_MISSING 96
- AST_CAUSE_MESSAGE_TYPE_NONEXIST 97 - AST_CAUSE_MESSAGE_TYPE_NONEXIST 97
- AST_CAUSE_WRONG_MESSAGE 98 - AST_CAUSE_WRONG_MESSAGE 98
- AST_CAUSE_IE_NONEXIST 99 - AST_CAUSE_IE_NONEXIST 99
- AST_CAUSE_INVALID_IE_CONTENTS 100 - AST_CAUSE_INVALID_IE_CONTENTS 100
- AST_CAUSE_WRONG_CALL_STATE 101 - AST_CAUSE_WRONG_CALL_STATE 101
- AST_CAUSE_RECOVERY_ON_TIMER_EXPIRE 102 - AST_CAUSE_RECOVERY_ON_TIMER_EXPIRE 102
- AST_CAUSE_MANDATORY_IE_LENGTH_ERROR 103 - AST_CAUSE_MANDATORY_IE_LENGTH_ERROR 103
- AST_CAUSE_PROTOCOL_ERROR 111 - AST_CAUSE_PROTOCOL_ERROR 111
- AST_CAUSE_INTERWORKING 127 - AST_CAUSE_INTERWORKING 127
The range 128-255 is private cause codes. Our private causes are:
- AST_CAUSE_ANSWERED_ELSEWHERE 200
For more information: For more information:
- \ref app_dial.c - \ref app_dial.c
*/ */
/*! \name Causes for disconnection (from Q.931) /*! \name Causes for disconnection (from Q.850/Q.931)
These are the internal cause codes used in Asterisk. * These are the internal cause codes used in Asterisk.
\ref AstCauses * \ref AstCauses
*/ */
/*@{ */ /*@{ */
#define AST_CAUSE_UNALLOCATED 1 #define AST_CAUSE_UNALLOCATED 1
#define AST_CAUSE_NO_ROUTE_TRANSIT_NET 2 #define AST_CAUSE_NO_ROUTE_TRANSIT_NET 2
#define AST_CAUSE_NO_ROUTE_DESTINATION 3 #define AST_CAUSE_NO_ROUTE_DESTINATION 3
#define AST_CAUSE_CHANNEL_UNACCEPTABLE 6 #define AST_CAUSE_MISDIALLED_TRUNK_PREFIX 5
#define AST_CAUSE_CALL_AWARDED_DELIVERED 7 #define AST_CAUSE_CHANNEL_UNACCEPTABLE 6
#define AST_CAUSE_NORMAL_CLEARING 16 #define AST_CAUSE_CALL_AWARDED_DELIVERED 7
#define AST_CAUSE_USER_BUSY 17 #define AST_CAUSE_PRE_EMPTED 8
#define AST_CAUSE_NO_USER_RESPONSE 18 #define AST_CAUSE_NUMBER_PORTED_NOT_HERE 14
#define AST_CAUSE_NO_ANSWER 19 #define AST_CAUSE_NORMAL_CLEARING 16
#define AST_CAUSE_SUBSCRIBER_ABSENT 20 #define AST_CAUSE_USER_BUSY 17
#define AST_CAUSE_CALL_REJECTED 21 #define AST_CAUSE_NO_USER_RESPONSE 18
#define AST_CAUSE_NUMBER_CHANGED 22 #define AST_CAUSE_NO_ANSWER 19
#define AST_CAUSE_SUBSCRIBER_ABSENT 20
#define AST_CAUSE_CALL_REJECTED 21
#define AST_CAUSE_NUMBER_CHANGED 22
#define AST_CAUSE_REDIRECTED_TO_NEW_DESTINATION 23
#define AST_CAUSE_ANSWERED_ELSEWHERE 26
#define AST_CAUSE_DESTINATION_OUT_OF_ORDER 27 #define AST_CAUSE_DESTINATION_OUT_OF_ORDER 27
#define AST_CAUSE_INVALID_NUMBER_FORMAT 28 #define AST_CAUSE_INVALID_NUMBER_FORMAT 28
#define AST_CAUSE_FACILITY_REJECTED 29 #define AST_CAUSE_FACILITY_REJECTED 29
#define AST_CAUSE_RESPONSE_TO_STATUS_ENQUIRY 30 #define AST_CAUSE_RESPONSE_TO_STATUS_ENQUIRY 30
#define AST_CAUSE_NORMAL_UNSPECIFIED 31 #define AST_CAUSE_NORMAL_UNSPECIFIED 31
#define AST_CAUSE_NORMAL_CIRCUIT_CONGESTION 34 #define AST_CAUSE_NORMAL_CIRCUIT_CONGESTION 34
#define AST_CAUSE_NETWORK_OUT_OF_ORDER 38 #define AST_CAUSE_NETWORK_OUT_OF_ORDER 38
#define AST_CAUSE_NORMAL_TEMPORARY_FAILURE 41 #define AST_CAUSE_NORMAL_TEMPORARY_FAILURE 41
#define AST_CAUSE_SWITCH_CONGESTION 42 #define AST_CAUSE_SWITCH_CONGESTION 42
#define AST_CAUSE_ACCESS_INFO_DISCARDED 43 #define AST_CAUSE_ACCESS_INFO_DISCARDED 43
#define AST_CAUSE_REQUESTED_CHAN_UNAVAIL 44 #define AST_CAUSE_REQUESTED_CHAN_UNAVAIL 44
#define AST_CAUSE_PRE_EMPTED 45 #define AST_CAUSE_FACILITY_NOT_SUBSCRIBED 50
#define AST_CAUSE_FACILITY_NOT_SUBSCRIBED 50 #define AST_CAUSE_OUTGOING_CALL_BARRED 52
#define AST_CAUSE_OUTGOING_CALL_BARRED 52 #define AST_CAUSE_INCOMING_CALL_BARRED 54
#define AST_CAUSE_INCOMING_CALL_BARRED 54 #define AST_CAUSE_BEARERCAPABILITY_NOTAUTH 57
#define AST_CAUSE_BEARERCAPABILITY_NOTAUTH 57 #define AST_CAUSE_BEARERCAPABILITY_NOTAVAIL 58
#define AST_CAUSE_BEARERCAPABILITY_NOTAVAIL 58 #define AST_CAUSE_BEARERCAPABILITY_NOTIMPL 65
#define AST_CAUSE_BEARERCAPABILITY_NOTIMPL 65 #define AST_CAUSE_CHAN_NOT_IMPLEMENTED 66
#define AST_CAUSE_CHAN_NOT_IMPLEMENTED 66 #define AST_CAUSE_FACILITY_NOT_IMPLEMENTED 69
#define AST_CAUSE_FACILITY_NOT_IMPLEMENTED 69 #define AST_CAUSE_INVALID_CALL_REFERENCE 81
#define AST_CAUSE_INVALID_CALL_REFERENCE 81 #define AST_CAUSE_INCOMPATIBLE_DESTINATION 88
#define AST_CAUSE_INCOMPATIBLE_DESTINATION 88 #define AST_CAUSE_INVALID_MSG_UNSPECIFIED 95
#define AST_CAUSE_INVALID_MSG_UNSPECIFIED 95
#define AST_CAUSE_MANDATORY_IE_MISSING 96 #define AST_CAUSE_MANDATORY_IE_MISSING 96
#define AST_CAUSE_MESSAGE_TYPE_NONEXIST 97 #define AST_CAUSE_MESSAGE_TYPE_NONEXIST 97
#define AST_CAUSE_WRONG_MESSAGE 98 #define AST_CAUSE_WRONG_MESSAGE 98
#define AST_CAUSE_IE_NONEXIST 99 #define AST_CAUSE_IE_NONEXIST 99
#define AST_CAUSE_INVALID_IE_CONTENTS 100 #define AST_CAUSE_INVALID_IE_CONTENTS 100
#define AST_CAUSE_WRONG_CALL_STATE 101 #define AST_CAUSE_WRONG_CALL_STATE 101
#define AST_CAUSE_RECOVERY_ON_TIMER_EXPIRE 102 #define AST_CAUSE_RECOVERY_ON_TIMER_EXPIRE 102
#define AST_CAUSE_MANDATORY_IE_LENGTH_ERROR 103 #define AST_CAUSE_MANDATORY_IE_LENGTH_ERROR 103
#define AST_CAUSE_PROTOCOL_ERROR 111 #define AST_CAUSE_PROTOCOL_ERROR 111
#define AST_CAUSE_INTERWORKING 127 #define AST_CAUSE_INTERWORKING 127
/* Private Cause codes for Asterisk */
#define AST_CAUSE_ANSWERED_ELSEWHERE 200
/* Special Asterisk aliases */ /* Special Asterisk aliases */
#define AST_CAUSE_BUSY AST_CAUSE_USER_BUSY #define AST_CAUSE_BUSY AST_CAUSE_USER_BUSY
#define AST_CAUSE_FAILURE AST_CAUSE_NETWORK_OUT_OF_ORDER #define AST_CAUSE_FAILURE AST_CAUSE_NETWORK_OUT_OF_ORDER
#define AST_CAUSE_NORMAL AST_CAUSE_NORMAL_CLEARING #define AST_CAUSE_NORMAL AST_CAUSE_NORMAL_CLEARING
#define AST_CAUSE_NOANSWER AST_CAUSE_NO_ANSWER #define AST_CAUSE_NOANSWER AST_CAUSE_NO_ANSWER
#define AST_CAUSE_CONGESTION AST_CAUSE_NORMAL_CIRCUIT_CONGESTION #define AST_CAUSE_CONGESTION AST_CAUSE_NORMAL_CIRCUIT_CONGESTION
#define AST_CAUSE_UNREGISTERED AST_CAUSE_SUBSCRIBER_ABSENT #define AST_CAUSE_UNREGISTERED AST_CAUSE_SUBSCRIBER_ABSENT
#define AST_CAUSE_NOTDEFINED 0 #define AST_CAUSE_NOTDEFINED 0
#define AST_CAUSE_NOSUCHDRIVER AST_CAUSE_CHAN_NOT_IMPLEMENTED #define AST_CAUSE_NOSUCHDRIVER AST_CAUSE_CHAN_NOT_IMPLEMENTED
/*@{ */ /*@} */
#endif /* _ASTERISK_CAUSES_H */ #endif /* _ASTERISK_CAUSES_H */