libisdn
|
00001 /***************************************************************************** 00002 00003 FileName: Q850.h 00004 00005 Contents: ITU-T Q.850 cause codes 00006 00007 License/Copyright: 00008 00009 Copyright (c) 2008, Stefan Knoblich, axsentis GmbH. All rights reserved. 00010 email: s.knoblich@axsentis.de 00011 00012 Redistribution and use in source and binary forms, with or without 00013 modification, are permitted provided that the following conditions are 00014 met: 00015 00016 * Redistributions of source code must retain the above copyright notice, 00017 this list of conditions and the following disclaimer. 00018 * Redistributions in binary form must reproduce the above copyright notice, 00019 this list of conditions and the following disclaimer in the documentation 00020 and/or other materials provided with the distribution. 00021 * Neither the name of the axsentis GmbH nor the names of its contributors 00022 may be used to endorse or promote products derived from this software 00023 without specific prior written permission. 00024 00025 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 00026 AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 00027 IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 00028 ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 00029 LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 00030 CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 00031 SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 00032 INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 00033 CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 00034 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 00035 POSSIBILITY OF SUCH DAMAGE. 00036 *****************************************************************************/ 00037 00038 #ifndef _Q850_H_ 00039 #define _Q850_H_ 00040 00046 enum { 00047 Q850_CAUSE_NONE = 0, 00048 Q850_CAUSE_UNALLOCATED = 1, 00049 Q850_CAUSE_NO_ROUTE_TRANSIT_NET = 2, 00050 Q850_CAUSE_NO_ROUTE_DESTINATION = 3, 00051 Q850_CAUSE_CHANNEL_UNACCEPTABLE = 6, 00052 Q850_CAUSE_CALL_AWARDED_DELIVERED = 7, 00053 Q850_CAUSE_NORMAL_CLEARING = 16, 00054 Q850_CAUSE_USER_BUSY = 17, 00055 Q850_CAUSE_NO_USER_RESPONSE = 18, 00056 Q850_CAUSE_NO_ANSWER = 19, 00057 Q850_CAUSE_SUBSCRIBER_ABSENT = 20, 00058 Q850_CAUSE_CALL_REJECTED = 21, 00059 Q850_CAUSE_NUMBER_CHANGED = 22, 00060 Q850_CAUSE_REDIRECTION_TO_NEW_DESTINATION = 23, 00061 Q850_CAUSE_EXCHANGE_ROUTING_ERROR = 25, 00062 Q850_CAUSE_DESTINATION_OUT_OF_ORDER = 27, 00063 Q850_CAUSE_INVALID_NUMBER_FORMAT = 28, 00064 Q850_CAUSE_FACILITY_REJECTED = 29, 00065 Q850_CAUSE_RESPONSE_TO_STATUS_ENQUIRY = 30, 00066 Q850_CAUSE_NORMAL_UNSPECIFIED = 31, 00067 Q850_CAUSE_NORMAL_CIRCUIT_CONGESTION = 34, 00068 Q850_CAUSE_NETWORK_OUT_OF_ORDER = 38, 00069 Q850_CAUSE_NORMAL_TEMPORARY_FAILURE = 41, 00070 Q850_CAUSE_SWITCH_CONGESTION = 42, 00071 Q850_CAUSE_ACCESS_INFO_DISCARDED = 43, 00072 Q850_CAUSE_REQUESTED_CHAN_UNAVAIL = 44, 00073 Q850_CAUSE_PRE_EMPTED = 45, 00074 Q850_CAUSE_FACILITY_NOT_SUBSCRIBED = 50, 00075 Q850_CAUSE_OUTGOING_CALL_BARRED = 52, 00076 Q850_CAUSE_INCOMING_CALL_BARRED = 54, 00077 Q850_CAUSE_BEARERCAPABILITY_NOTAUTH = 57, 00078 Q850_CAUSE_BEARERCAPABILITY_NOTAVAIL = 58, 00079 Q850_CAUSE_SERVICE_UNAVAILABLE = 63, 00080 Q850_CAUSE_BEARERCAPABILITY_NOTIMPL = 65, 00081 Q850_CAUSE_CHAN_NOT_IMPLEMENTED = 66, 00082 Q850_CAUSE_FACILITY_NOT_IMPLEMENTED = 69, 00083 Q850_CAUSE_SERVICE_NOT_IMPLEMENTED = 79, 00084 Q850_CAUSE_INVALID_CALL_REFERENCE = 81, 00085 Q850_CAUSE_INCOMPATIBLE_DESTINATION = 88, 00086 Q850_CAUSE_INVALID_MSG_UNSPECIFIED = 95, 00087 Q850_CAUSE_MANDATORY_IE_MISSING = 96, 00088 Q850_CAUSE_MESSAGE_TYPE_NONEXIST = 97, 00089 Q850_CAUSE_WRONG_MESSAGE = 98, 00090 Q850_CAUSE_IE_NONEXIST = 99, 00091 Q850_CAUSE_INVALID_IE_CONTENTS = 100, 00092 Q850_CAUSE_WRONG_CALL_STATE = 101, 00093 Q850_CAUSE_RECOVERY_ON_TIMER_EXPIRE = 102, 00094 Q850_CAUSE_MANDATORY_IE_LENGTH_ERROR = 103, 00095 Q850_CAUSE_PROTOCOL_ERROR = 111, 00096 Q850_CAUSE_INTERWORKING = 127 00097 }; 00098 00105 const char *Q850CauseGetName(const int cause); 00106 00107 #endif