A span is a collection of ports under a single control interface or communication channel, such as a T1/E1/PRI/BRI span.
More...
|
enum | interface_t {
IF_PSTN,
IF_SPAN,
IF_ISDN,
IF_SS7,
IF_INET,
IF_NONE,
IF_POTS =IF_PSTN
} |
| Telephony endpoint interface identifiers. More...
|
|
enum | calltype_t {
NONE,
INCOMING,
OUTGOING,
PICKUP,
FORWARDED,
RECALL,
DIRECT,
RINGING,
VIRTUAL
} |
| Type of call session being processed. More...
|
|
enum | bridge_t {
BR_TDM,
BR_INET,
BR_SOFT,
BR_GATE,
BR_NONE
} |
| Type of bridge used for joining ports. More...
|
|
enum | state_t {
STATE_INITIAL = 0,
STATE_IDLE,
STATE_RESET,
STATE_RELEASE,
STATE_BUSY,
STATE_DOWN,
STATE_RING,
STATE_PICKUP,
STATE_SEIZE,
STATE_ANSWER,
STATE_STEP,
STATE_EXEC,
STATE_THREAD,
STATE_CLEAR,
STATE_INKEY,
STATE_INPUT,
STATE_READ,
STATE_COLLECT,
STATE_DIAL,
STATE_XFER,
STATE_REFER,
STATE_HOLD,
STATE_RECALL,
STATE_TONE,
STATE_DTMF,
STATE_PLAY,
STATE_RECORD,
STATE_JOIN,
STATE_WAIT,
STATE_CALLING,
STATE_CONNECT,
STATE_RECONNECT,
STATE_HUNTING,
STATE_SLEEP,
STATE_START,
STATE_HANGUP,
STATE_LIBRESET,
STATE_WAITKEY,
STATE_LIBWAIT,
STATE_IRESET,
STATE_FINAL,
STATE_SUSPEND = STATE_DOWN,
STATE_STANDBY = STATE_DOWN,
STATE_LIBEXEC = STATE_EXEC,
STATE_RINGING = STATE_RING,
STATE_RUNNING = STATE_STEP,
STATE_THREADING = STATE_THREAD
} |
| Call processing states offered in core library. More...
|
|
enum | signal_t {
SIGNAL_EXIT = 0,
SIGNAL_ERROR,
SIGNAL_TIMEOUT,
SIGNAL_DTMF,
SIGNAL_0,
SIGNAL_1,
SIGNAL_2,
SIGNAL_3,
SIGNAL_4,
SIGNAL_5,
SIGNAL_6,
SIGNAL_7,
SIGNAL_8,
SIGNAL_9,
SIGNAL_STAR,
SIGNAL_POUND,
SIGNAL_A,
SIGNAL_OVERRIDE = SIGNAL_A,
SIGNAL_B,
SIGNAL_FLASH = SIGNAL_B,
SIGNAL_C,
SIGNAL_IMMEDIATE = SIGNAL_C,
SIGNAL_D,
SIGNAL_PRIORITY = SIGNAL_D,
SIGNAL_RING,
SIGNAL_TONE,
SIGNAL_EVENT,
SIGNAL_WINK,
SIGNAL_CHILD,
SIGNAL_FAIL,
SIGNAL_PICKUP,
SIGNAL_PART,
SIGNAL_INVALID,
SIGNAL_PARENT,
SIGNAL_WAIT,
SIGNAL_HANGUP = SIGNAL_EXIT
} |
| Signaled interpreter events. More...
|
|
enum | event_t {
MSGPORT_WAKEUP = 0,
MSGPORT_SHUTDOWN,
MSGPORT_LOGGING,
MSGPORT_REGISTER,
ENTER_STATE = 100,
EXIT_STATE,
EXIT_THREAD,
EXIT_TIMER,
EXIT_PARTING,
NULL_EVENT,
ERROR_STATE,
ENTER_HUNTING,
EXIT_HUNTING,
ENTER_RECONNECT,
EXIT_RECONNECT,
RECALL_RECONNECT,
EXIT_SCRIPT,
STEP_SCRIPT,
START_DIRECT = 200,
START_INCOMING,
START_OUTGOING,
START_RECALL,
START_FORWARDED,
START_RINGING,
START_HUNTING,
START_REFER,
STOP_SCRIPT,
STOP_DISCONNECT,
STOP_PARENT,
CANCEL_CHILD,
DETACH_CHILD,
CHILD_RUNNING,
CHILD_FAILED,
CHILD_INVALID,
CHILD_EXPIRED,
CHILD_BUSY,
CHILD_FAX,
CHILD_DND,
CHILD_AWAY,
CHILD_NOCODEC,
CHILD_OFFLINE,
START_SCRIPT = START_INCOMING,
START_SELECTED = START_OUTGOING,
START_TRANSFER = START_REFER,
ENTER_LIBEXEC = 300,
EXIT_LIBEXEC,
HEAD_LIBEXEC,
ARGS_LIBEXEC,
GOT_LIBEXEC,
READ_LIBEXEC,
DROP_LIBEXEC,
STAT_LIBEXEC,
PROMPT_LIBEXEC,
CLEAR_LIBEXEC,
WAIT_LIBEXEC,
RECORD_LIBEXEC,
REPLAY_LIBEXEC,
RESTART_LIBEXEC,
TONE_LIBEXEC,
XFER_LIBEXEC,
POST_LIBEXEC,
ERROR_LIBEXEC,
TIMER_EXPIRED = 400,
LINE_WINK,
LINE_PICKUP,
LINE_HANGUP,
LINE_DISCONNECT,
LINE_ON_HOOK,
LINE_OFF_HOOK,
RING_ON,
RING_OFF,
RING_STOP,
LINE_CALLER_ID,
RINGING_DID,
DEVICE_BLOCKED,
DEVICE_UNBLOCKED,
DEVICE_OPEN,
DEVICE_CLOSE,
DSP_READY,
RING_SYNC,
CALL_DETECT = 500,
CALL_CONNECTED,
CALL_RELEASED,
CALL_ACCEPTED,
CALL_ANSWERED,
CALL_HOLD,
CALL_HOLDING =CALL_HOLD,
CALL_NOHOLD,
CALL_DIGITS,
CALL_OFFERED,
CALL_ANI,
CALL_ACTIVE,
CALL_NOACTIVE,
CALL_BILLING,
CALL_RESTART,
CALL_SETSTATE,
CALL_FAILURE,
CALL_ALERTING,
CALL_INFO,
CALL_BUSY,
CALL_DIVERT,
CALL_FACILITY,
CALL_FRAME,
CALL_NOTIFY,
CALL_NSI,
CALL_RINGING,
CALL_DISCONNECT,
CALL_CLEARED,
CALL_PROCEEDING,
RESTART_FAILED,
RELEASE_FAILED,
START_RING = 600,
STOP_RING,
CLEAR_TIMESLOT,
START_FLASH,
STOP_FLASH,
DIAL_CONNECT,
DIAL_TIMEOUT,
DIAL_FAILED,
DIAL_INVALID,
DIAL_BUSY,
DIAL_FAX,
DIAL_PAM,
DIAL_DND,
DIAL_AWAY,
DIAL_OFFLINE,
DIAL_NOCODEC,
DIAL_MACHINE = DIAL_PAM,
AUDIO_IDLE = 700,
AUDIO_ACTIVE,
AUDIO_EXPIRED,
INPUT_PENDING,
OUTPUT_PENDING,
AUDIO_BUFFER,
TONE_IDLE,
DTMF_KEYDOWN,
DTMF_KEYSYNC,
DTMF_KEYUP,
TONE_START,
TONE_STOP,
AUDIO_START,
AUDIO_STOP,
DTMF_GENDOWN,
DTMF_GENUP,
AUDIO_SYNC,
AUDIO_RECONNECT,
AUDIO_DISCONNECT,
PEER_RECONNECT,
PEER_DISCONNECT,
PEER_REFER,
DTMF_GENTONE = DTMF_GENUP,
MAKE_TEST = 800,
MAKE_BUSY,
MAKE_IDLE,
MAKE_DOWN,
MAKE_UP,
MAKE_EXPIRED,
ENABLE_LOGGING,
DISABLE_LOGGING,
PART_EXPIRED,
PART_EXITING,
PART_DISCONNECT,
JOIN_PEER,
PEER_WAITING,
RELOCATE_REQUEST,
RELOCATE_ACCEPT,
RELOCATE_REJECT,
START_RELOCATE,
STREAM_ACTIVE,
STREAM_PASSIVE,
JOIN_RECALL,
DROP_RECALL,
DROP_REFER,
ENTER_RESUME = MAKE_UP,
ENTER_SUSPEND = MAKE_DOWN,
SYSTEM_DOWN = 900,
DRIVER_SPECIFIC = 1000
} |
| Primary event identifiers. More...
|
|
enum | result_t {
RESULT_SUCCESS = 0,
RESULT_TIMEOUT,
RESULT_INVALID,
RESULT_PENDING,
RESULT_COMPLETE,
RESULT_FAILED,
RESULT_BADPATH = 254,
RESULT_OFFLINE = 255
} |
|
typedef uint16_t | timeslot_t |
|
typedef int32_t | rpcint_t |
|
typedef rpcint_t | rpcbool_t |
|
typedef void(* | rpcmethod_t )(BayonneRPC *rpc) |
| A rpc method handler. More...
|
|
typedef bool(BayonneSession::* | Handler )(Event *event) |
| The current state handler in effect for a given channel to receive events. More...
|
|
enum | scrAccess {
scrPUBLIC,
scrPROTECTED,
scrPRIVATE,
scrFUNCTION,
scrLOCAL
} |
|
typedef enum scrAccess | scrAccess |
|
enum | symType {
symNORMAL = 0,
symCONST,
symDYNAMIC,
symFIFO,
symSEQUENCE,
symSTACK,
symCOUNTER,
symPOINTER,
symREF,
symARRAY,
symASSOC,
symINITIAL,
symNUMBER,
symLOCK,
symPROPERTY,
symORIGINAL,
symMODIFIED,
symTIMER,
symBOOL
} |
|
typedef enum symType | symType |
|
typedef bool(ScriptInterp::* | Method )(void) |
|
typedef const char
*(ScriptCommand::* | Check )(Line *line, ScriptImage *img) |
|
typedef bool(* | Cond )(ScriptInterp *interp, const char *v) |
|
typedef long(* | Function )(long *args, unsigned prec) |
|
typedef const char *(* | Meta )(ScriptInterp *interp, const char *token) |
|
typedef const char *(* | Parse )(ScriptCompiler *img, const char *token) |
|
typedef void(* | Init )(void) |
|
typedef struct ost::Script::_symbol | Symbol |
|
typedef struct ost::Script::_array | Array |
|
|
| BayonneSpan (BayonneDriver *driver, timeslot_t timeslots) |
| Create a span for a specified number of timeslots. More...
|
|
BayonneSession * | getTimeslot (timeslot_t id) |
| Get the session associated with the nth timeslot of the span. More...
|
|
timeslot_t | getFirst (void) |
| Get the first server timeslot of this span. More...
|
|
timeslot_t | getCount (void) |
| Return total number of server timeslots in this span. More...
|
|
unsigned | getId (void) |
| Get the id associated with this span. More...
|
|
BayonneDriver * | getDriver (void) |
| Get driver associated with this span. More...
|
|
unsigned | getAvail (void) |
| Get number of call slots still available. More...
|
|
virtual bool | suspend (void) |
| Suspend a span. More...
|
|
virtual bool | resume (void) |
| Resume a suspended span. More...
|
|
virtual bool | reset (void) |
| Reset a span. More...
|
|
void | md5_hash (char *out, const char *source) |
| Compute md5 hashes... More...
|
|
unsigned | getIndex (char **data, unsigned max) |
| Get an index array of ALL keywords that are stored by the current keydata object. More...
|
|
void | load (const char *keypath) |
| Load additional key values into the currrent object from the specfied config source (a config file/section pair). More...
|
|
void | load (Define *pairs) |
| Load default keywords into the current object. More...
|
|
void | loadPrefix (const char *prefix, const char *keypath) |
| Load additional key values into the currrent object from the specfied config source (a config file/section pair). More...
|
|
void | loadFile (const char *filepath, const char *keys=NULL, const char *pre=NULL) |
| Load additional keys into the current object using a real filename that is directly passed rather than a computed key path. More...
|
|
void | unlink (void) |
| Unlink the keydata object from the cache file stream. More...
|
|
int | getCount (const char *sym) |
| Get a count of the number of data "values" that is associated with a specific keyword. More...
|
|
const char * | getFirst (const char *sym) |
| Get the first data value for a given keyword. More...
|
|
const char * | getLast (const char *sym) |
| Get the last (most recently set) value for a given keyword. More...
|
|
bool | isKey (const char *sym) |
| Find if a given key exists. More...
|
|
const char * | getString (const char *sym, const char *def=NULL) |
| Get a string value, with an optional default if missing. More...
|
|
long | getLong (const char *sym, long def=0) |
| Get a long value, with an optional default if missing. More...
|
|
bool | getBool (const char *key) |
| Get a bool value. More...
|
|
double | getDouble (const char *key, double def=0.) |
| Get a floating value. More...
|
|
void | setValue (const char *sym, const char *data) |
| Set (replace) the value of a given keyword. More...
|
|
const char *const * | getList (const char *sym) |
| Return a list of all values set for the given keyword returned in order. More...
|
|
void | clrValue (const char *sym) |
| Clear all values associated with a given keyword. More...
|
|
const char * | operator[] (const char *keyword) |
| A convient notation for accessing the keydata as an associative array of keyword/value pairs through the [] operator. More...
|
|
|
static BayonneSpan * | get (unsigned id) |
| Get a span by a global span id. More...
|
|
static void | allocate (unsigned total=0) |
| Allocate the total number of spans this server will support. More...
|
|
static unsigned | getSpans (void) |
| Return total spans in use. More...
|
|
static void | snmptrap (unsigned id, const char *descr=NULL) |
|
static void | allocate (timeslot_t timeslots, ScriptCommand *pointer=NULL, timeslot_t overdraft=0) |
| Allocates the maximum number of timeslots the server will use as a whole and attaches a given server to the library. More...
|
|
static const char * | getRegistryId (const char *id) |
|
static BayonneDriver * | getDriverTag (const char *id) |
|
static Audio::Encoding | getEncoding (const char *cp) |
|
static void | allocateLocal (void) |
| Allocate local script engine sessions, if needed. More...
|
|
static void | addConfig (const char *cfgfile) |
| Add config file entry. More...
|
|
static void | waitLoaded (void) |
| Wait for live flag... More...
|
|
static unsigned long | uptime (void) |
| Get server uptime. More...
|
|
static ScriptCompiler * | reload (void) |
| Request active scripts to be recompiled from the library. More...
|
|
static void | down (void) |
| Used to down the server from the library. More...
|
|
static bool | service (const char *service) |
| Sets server service level from the library. More...
|
|
static const char * | getRunLevel (void) |
| Get service level. More...
|
|
static BayonneSession * | getSession (timeslot_t timeslot) |
| Returns a session pointer for a server timeslot. More...
|
|
static ScriptImage ** | getLocalImage (timeslot_t timeslot) |
| Returns a local image pointer for a server timeslot. More...
|
|
static BayonneSession * | startDialing (const char *dial, const char *name, const char *caller, const char *display, BayonneSession *parent=NULL, const char *manager=NULL, const char *secret=NULL) |
| Start a dialing session. More...
|
|
static BayonneSession * | getSid (const char *id) |
| Returns a session pointer for a string identifier. More...
|
|
static timeslot_t | toTimeslot (const char *id) |
| Returns a server timeslot number for a string identifier. More...
|
|
static timeslot_t | getTimeslotsUsed (void) |
| Return total library timeslots used (highest used). More...
|
|
static timeslot_t | getTimeslotCount (void) |
| Return total timeslots allocated for the server. More...
|
|
static timeslot_t | getAvailTimeslots (void) |
| Return remaining timeslots available to allocate driver ports into. More...
|
|
static Handler | getState (const char *name) |
| Map a state name into a handler. More...
|
|
static int | getDigit (char dtmf) |
| Convert a dtmf character into a 0-15 number reference. More...
|
|
static char | getChar (int dtmf) |
| Convert a dtmf digit number into it's ascii code. More...
|
|
static bool | matchDigits (const char *digits, const char *match, bool partial=false) |
| A function to support pattern matching and templates for digit strings. More...
|
|
static ScriptImage * | useImage (void) |
| Use the current compiled script image; mark as in use. More...
|
|
static void | endImage (ScriptImage *image) |
| Release a script image in use. More...
|
|
static bool | loadPlugin (const char *path) |
| Load a plugin module. More...
|
|
static bool | loadMonitor (const char *path) |
| Load a monitoring/management module. More...
|
|
static bool | loadAudio (const char *path) |
| Load a bgm/audio processing module for continues audio. More...
|
|
static void | errlog (const char *level, const char *fmt,...) |
|
static bool | getUserdata (void) |
|
static void | addTrap4 (const char *addr) |
|
static bool | isScript (Name *scr) |
|
static bool | isSymbol (const char *id) |
|
static bool | use (const char *name) |
|
static unsigned | getIndex (const char *id) |
|
static Symbol * | deref (Symbol *sym) |
|
static bool | commit (Symbol *sym, const char *value) |
|
static bool | append (Symbol *sym, const char *value) |
|
static bool | symindex (Symbol *sym, short offset) |
|
static const char * | extract (Symbol *sym) |
|
static unsigned | count (Symbol *sym) |
|
static unsigned | storage (Symbol *sym) |
|
static void | clear (Symbol *sym) |
|
static void | addFunction (const char *name, unsigned count, Function i) |
|
static void | addConditional (const char *name, Cond test) |
|
static bool | isPrivate (Name *scr) |
|
static bool | isFunction (Name *scr) |
|
static void | end (void) |
| static member to end keydata i/o allocations. More...
|
|
A span is a collection of ports under a single control interface or communication channel, such as a T1/E1/PRI/BRI span.
- Author
- David Sugar dyfet.nosp@m.@gnu.nosp@m.telep.nosp@m.hony.nosp@m..org Span management object.
Definition at line 2284 of file bayonne.h.