00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef CHAN_MISDN_CONFIG_H
00023 #define CHAN_MISDN_CONFIG_H
00024
00025 #define BUFFERSIZE 512
00026
00027 enum misdn_cfg_elements {
00028
00029
00030 MISDN_CFG_FIRST = 0,
00031 MISDN_CFG_GROUPNAME,
00032 MISDN_CFG_ALLOWED_BEARERS,
00033 MISDN_CFG_FAR_ALERTING,
00034 MISDN_CFG_RXGAIN,
00035 MISDN_CFG_TXGAIN,
00036 MISDN_CFG_TE_CHOOSE_CHANNEL,
00037 MISDN_CFG_PMP_L1_CHECK,
00038 MISDN_CFG_REJECT_CAUSE,
00039 MISDN_CFG_ALARM_BLOCK,
00040 MISDN_CFG_HDLC,
00041 MISDN_CFG_CONTEXT,
00042 MISDN_CFG_LANGUAGE,
00043 MISDN_CFG_MUSICCLASS,
00044 MISDN_CFG_CALLERID,
00045 MISDN_CFG_INCOMING_CALLERID_TAG,
00046 MISDN_CFG_APPEND_MSN_TO_CALLERID_TAG,
00047 MISDN_CFG_METHOD,
00048 MISDN_CFG_DIALPLAN,
00049 MISDN_CFG_LOCALDIALPLAN,
00050 MISDN_CFG_CPNDIALPLAN,
00051 MISDN_CFG_TON_PREFIX_UNKNOWN,
00052 MISDN_CFG_TON_PREFIX_INTERNATIONAL,
00053 MISDN_CFG_TON_PREFIX_NATIONAL,
00054 MISDN_CFG_TON_PREFIX_NETWORK_SPECIFIC,
00055 MISDN_CFG_TON_PREFIX_SUBSCRIBER,
00056 MISDN_CFG_TON_PREFIX_ABBREVIATED,
00057 MISDN_CFG_PRES,
00058 MISDN_CFG_SCREEN,
00059 MISDN_CFG_DISPLAY_CONNECTED,
00060 MISDN_CFG_DISPLAY_SETUP,
00061 MISDN_CFG_ALWAYS_IMMEDIATE,
00062 MISDN_CFG_NODIALTONE,
00063 MISDN_CFG_IMMEDIATE,
00064 MISDN_CFG_SENDDTMF,
00065 MISDN_CFG_ASTDTMF,
00066 MISDN_CFG_HOLD_ALLOWED,
00067 MISDN_CFG_EARLY_BCONNECT,
00068 MISDN_CFG_INCOMING_EARLY_AUDIO,
00069 MISDN_CFG_ECHOCANCEL,
00070 MISDN_CFG_CC_REQUEST_RETENTION,
00071 MISDN_CFG_OUTGOING_COLP,
00072 #ifdef MISDN_1_2
00073 MISDN_CFG_PIPELINE,
00074 #endif
00075
00076 #ifdef WITH_BEROEC
00077 MISDN_CFG_BNECHOCANCEL,
00078 MISDN_CFG_BNEC_ANTIHOWL,
00079 MISDN_CFG_BNEC_NLP,
00080 MISDN_CFG_BNEC_ZEROCOEFF,
00081 MISDN_CFG_BNEC_TD,
00082 MISDN_CFG_BNEC_ADAPT,
00083 #endif
00084 MISDN_CFG_NEED_MORE_INFOS,
00085 MISDN_CFG_NOAUTORESPOND_ON_SETUP,
00086 MISDN_CFG_NTTIMEOUT,
00087 MISDN_CFG_BRIDGING,
00088 MISDN_CFG_JITTERBUFFER,
00089 MISDN_CFG_JITTERBUFFER_UPPER_THRESHOLD,
00090 MISDN_CFG_CALLGROUP,
00091 MISDN_CFG_PICKUPGROUP,
00092 MISDN_CFG_MAX_IN,
00093 MISDN_CFG_MAX_OUT,
00094 MISDN_CFG_L1_TIMEOUT,
00095 MISDN_CFG_OVERLAP_DIAL,
00096 MISDN_CFG_MSNS,
00097 MISDN_CFG_FAXDETECT,
00098 MISDN_CFG_FAXDETECT_CONTEXT,
00099 MISDN_CFG_FAXDETECT_TIMEOUT,
00100 MISDN_CFG_PTP,
00101 MISDN_CFG_LAST,
00102
00103
00104 MISDN_GEN_FIRST,
00105 #ifndef MISDN_1_2
00106 MISDN_GEN_MISDN_INIT,
00107 #endif
00108 MISDN_GEN_DEBUG,
00109 MISDN_GEN_TRACEFILE,
00110 MISDN_GEN_BRIDGING,
00111 MISDN_GEN_STOP_TONE,
00112 MISDN_GEN_APPEND_DIGITS2EXTEN,
00113 MISDN_GEN_DYNAMIC_CRYPT,
00114 MISDN_GEN_CRYPT_PREFIX,
00115 MISDN_GEN_CRYPT_KEYS,
00116 MISDN_GEN_NTKEEPCALLS,
00117 MISDN_GEN_NTDEBUGFLAGS,
00118 MISDN_GEN_NTDEBUGFILE,
00119 MISDN_GEN_LAST
00120 };
00121
00122 enum misdn_cfg_method {
00123 METHOD_STANDARD = 0,
00124 METHOD_ROUND_ROBIN,
00125 METHOD_STANDARD_DEC
00126 };
00127
00128
00129 int misdn_cfg_init(int max_ports, int reload);
00130 void misdn_cfg_reload(void);
00131 void misdn_cfg_destroy(void);
00132
00133 void misdn_cfg_update_ptp( void );
00134
00135
00136
00137
00138 void misdn_cfg_get(int port, enum misdn_cfg_elements elem, void* buf, int bufsize);
00139
00140
00141 enum misdn_cfg_elements misdn_cfg_get_elem (const char *name);
00142
00143
00144 void misdn_cfg_get_name (enum misdn_cfg_elements elem, void *buf, int bufsize);
00145
00146
00147 void misdn_cfg_get_desc (enum misdn_cfg_elements elem, void *buf, int bufsize, void *buf_default, int bufsize_default);
00148
00149
00150 void misdn_cfg_get_ports_string(char *ports);
00151
00152
00153 void misdn_cfg_get_config_string(int port, enum misdn_cfg_elements elem, char* buf, int bufsize);
00154
00155
00156 int misdn_cfg_get_next_port(int port);
00157 int misdn_cfg_get_next_port_spin(int port);
00158
00159 int misdn_cfg_is_msn_valid(int port, char* msn);
00160 int misdn_cfg_is_port_valid(int port);
00161 int misdn_cfg_is_group_method(char *group, enum misdn_cfg_method meth);
00162
00163 #if 0
00164 char *misdn_cfg_get_next_group(char *group);
00165 int misdn_cfg_get_next_port_in_group(int port, char *group);
00166 #endif
00167
00168 struct ast_jb_conf *misdn_get_global_jbconf(void);
00169
00170 #endif