mirror of
https://github.com/signalwire/freeswitch.git
synced 2025-08-13 17:38:59 +00:00
add pika isdn support
git-svn-id: http://svn.openzap.org/svn/openzap/trunk@345 a93c3328-9c30-0410-af19-c9cd2b2d52af
This commit is contained in:
@@ -81,10 +81,10 @@
|
||||
#pragma comment(lib, "Winmm")
|
||||
#endif
|
||||
|
||||
#define ZAP_ENUM_NAMES(_NAME, _STRINGS) static char * _NAME [] = { _STRINGS , NULL };
|
||||
#define ZAP_STR2ENUM_P(_FUNC1, _FUNC2, _TYPE) _TYPE _FUNC1 (char *name); char * _FUNC2 (_TYPE type);
|
||||
#define ZAP_ENUM_NAMES(_NAME, _STRINGS) static const char * _NAME [] = { _STRINGS , NULL };
|
||||
#define ZAP_STR2ENUM_P(_FUNC1, _FUNC2, _TYPE) _TYPE _FUNC1 (const char *name); const char * _FUNC2 (_TYPE type);
|
||||
#define ZAP_STR2ENUM(_FUNC1, _FUNC2, _TYPE, _STRINGS, _MAX) \
|
||||
_TYPE _FUNC1 (char *name) \
|
||||
_TYPE _FUNC1 (const char *name) \
|
||||
{ \
|
||||
int i; \
|
||||
_TYPE t = _MAX ; \
|
||||
@@ -98,7 +98,7 @@
|
||||
\
|
||||
return t; \
|
||||
} \
|
||||
char * _FUNC2 (_TYPE type) \
|
||||
const char * _FUNC2 (_TYPE type) \
|
||||
{ \
|
||||
if (type > _MAX) { \
|
||||
type = _MAX; \
|
||||
@@ -319,7 +319,15 @@ struct zap_caller_data {
|
||||
uint32_t raw_data_len;
|
||||
};
|
||||
|
||||
typedef enum {
|
||||
ZAP_TYPE_NONE,
|
||||
ZAP_TYPE_SPAN = 0xFF,
|
||||
ZAP_TYPE_CHANNEL
|
||||
} zap_data_type_t;
|
||||
|
||||
|
||||
struct zap_channel {
|
||||
zap_data_type_t data_type;
|
||||
uint32_t span_id;
|
||||
uint32_t chan_id;
|
||||
uint32_t physical_span_id;
|
||||
@@ -399,6 +407,7 @@ struct zap_analog_data {
|
||||
};
|
||||
|
||||
struct zap_span {
|
||||
zap_data_type_t data_type;
|
||||
uint32_t span_id;
|
||||
uint32_t chan_count;
|
||||
zap_span_flag_t flags;
|
||||
|
@@ -35,6 +35,66 @@
|
||||
#define ZAP_PIKA_H
|
||||
#include "openzap.h"
|
||||
#include "pikahmpapi.h"
|
||||
|
||||
|
||||
|
||||
|
||||
typedef enum {
|
||||
PIKA_SPAN_FRAMING_T1_D4,
|
||||
PIKA_SPAN_FRAMING_T1_ESF,
|
||||
PIKA_SPAN_FRAMING_E1_BASIC,
|
||||
PIKA_SPAN_FRAMING_E1_CRC4,
|
||||
PIKA_SPAN_INVALID
|
||||
} PIKA_TSpanFraming;
|
||||
#define PIKA_SPAN_STRINGS "T1_D4", "T1_ESF", "E1_BASIC", "E1_CRC4"
|
||||
ZAP_STR2ENUM_P(pika_str2span, pika_span2str, PIKA_TSpanFraming)
|
||||
|
||||
typedef enum {
|
||||
PIKA_SPAN_ENCODING_T1_AMI_ZS_NONE,
|
||||
PIKA_SPAN_ENCODING_T1_AMI_ZS_GTE,
|
||||
PIKA_SPAN_ENCODING_T1_AMI_ZS_BELL,
|
||||
PIKA_SPAN_ENCODING_T1_AMI_ZS_JAM8,
|
||||
PIKA_SPAN_ENCODING_T1_B8ZS,
|
||||
PIKA_SPAN_ENCODING_E1_AMI,
|
||||
PIKA_SPAN_ENCODING_E1_HDB3,
|
||||
PIKA_SPAN_ENCODING_INVALID
|
||||
} PIKA_TSpanEncoding;
|
||||
#define PIKA_SPAN_ENCODING_STRINGS "T1_AMI_ZS_NONE", "T1_AMI_ZS_GTE", "T1_AMI_ZS_BELL", "T1_AMI_ZS_JAM8", "T1_B8ZS", "E1_AMI", "E1_HDB3"
|
||||
ZAP_STR2ENUM_P(pika_str2span_encoding, pika_span_encoding2str, PIKA_TSpanEncoding)
|
||||
|
||||
typedef enum {
|
||||
PIKA_SPAN_LOOP_LENGTH_SHORT_HAUL,
|
||||
PIKA_SPAN_LOOP_LENGTH_LONG_HAUL,
|
||||
PIKA_SPAN_LOOP_INVALID
|
||||
} PIKA_TSpanLoopLength;
|
||||
#define PIKA_LL_STRINGS "SHORT_HAUL", "LONG_HAUL"
|
||||
ZAP_STR2ENUM_P(pika_str2loop_length, pika_loop_length2str, PIKA_TSpanLoopLength)
|
||||
|
||||
typedef enum {
|
||||
PIKA_SPAN_LBO_T1_LONG_0_DB,
|
||||
PIKA_SPAN_LBO_T1_LONG_7_DB,
|
||||
PIKA_SPAN_LBO_T1_LONG_15_DB,
|
||||
PIKA_SPAN_LBO_T1_LONG_22_DB,
|
||||
PIKA_SPAN_LBO_T1_SHORT_133_FT,
|
||||
PIKA_SPAN_LBO_T1_SHORT_266_FT,
|
||||
PIKA_SPAN_LBO_T1_SHORT_399_FT,
|
||||
PIKA_SPAN_LBO_T1_SHORT_533_FT,
|
||||
PIKA_SPAN_LBO_T1_SHORT_655_FT,
|
||||
PIKA_SPAN_LBO_E1_WAVEFORM_120_OHM,
|
||||
PIKA_SPAN_LBO_INVALID
|
||||
} PIKA_TSpanBuildOut;
|
||||
#define PIKA_LBO_STRINGS "T1_LONG_0_DB", "T1_LONG_7_DB", "T1_LONG_15_DB", "T1_LONG_22_DB", "T1_SHORT_133_FT", "T1_SHORT_266_FT", "T1_SHORT_399_FT", "T1_SHORT_533_FT", "T1_SHORT_655_FT", "E1_WAVEFORM_120_OHM"
|
||||
ZAP_STR2ENUM_P(pika_str2lbo, pika_lbo2str, PIKA_TSpanBuildOut)
|
||||
|
||||
typedef enum {
|
||||
PIKA_SPAN_COMMAND_MODE_MU_LAW = 1,
|
||||
PIKA_SPAN_COMMAND_MODE_A_LAW,
|
||||
PIKA_SPAN_COMMAND_MODE_INVALID
|
||||
} PIKA_TSpanCompandMode;
|
||||
#define PIKA_SPAN_COMMAND_MODE_STRINGS "MU_LAW", "A_LAW"
|
||||
ZAP_STR2ENUM_P(pika_str2command_mode, pika_command_mode2str, PIKA_TSpanCompandMode)
|
||||
|
||||
|
||||
/* Openzap PIKA hardware interface functions */
|
||||
zap_status_t pika_init(zap_io_interface_t **zint);
|
||||
zap_status_t pika_destroy(void);
|
||||
|
@@ -153,7 +153,10 @@ typedef enum {
|
||||
ZAP_ALARM_YELLOW = (1 << 3),
|
||||
ZAP_ALARM_RED = (1 << 4),
|
||||
ZAP_ALARM_BLUE = (1 << 5),
|
||||
ZAP_ALARM_NOTOPEN = ( 1 << 6)
|
||||
ZAP_ALARM_NOTOPEN = ( 1 << 6),
|
||||
ZAP_ALARM_AIS = ( 1 << 7),
|
||||
ZAP_ALARM_RAI = ( 1 << 8),
|
||||
ZAP_ALARM_GENERAL = ( 1 << 31)
|
||||
} zap_alarm_flag_t;
|
||||
|
||||
typedef enum {
|
||||
|
Reference in New Issue
Block a user