38 #ifndef CCXX_BAYONNE_H_
39 #define CCXX_BAYONNE_H_
41 #ifndef CCXX_SCRIPT3_H_
42 #include <cc++/script3.h>
45 #ifndef CCXX_CCAUDIO2_H_
46 #include <cc++/audio2.h>
49 #ifndef CCXX_SOCKET_H_
50 #include <cc++/socket.h>
53 #define BAYONNE_RELEASE 1 // release check sequence
54 #define NO_TIMESLOT 0xffff
57 #define MAX_LIBINPUT 256
58 #define MAX_PATHNAME 256
59 #define MIN_AUDIOFEED (120 * 8) // 120 millisecond starting
60 #define MAX_AUDIOFEED (600 * 8) // 600 millisecond buffer
61 #define RPC_MAX_PARAMS 96
64 #define PFD_INVALID INVALID_HANDLE_VALUE
66 #define PFD_INVALID -1
69 #if SCRIPT_RIPPLE_LEVEL < 2
70 #error "ccscript 3 0.8.0 or later required"
74 #define SLOG_DEBUG(x, ...) slog.debug(x, __VA_ARGS__)
76 #define SLOG_DEBUG(x, ...)
110 StreamingBuffer(
const char *
id, timeout_t size = 600, Rate rate = rate8khz);
113 virtual Linear putBuffer(timeout_t duration);
114 virtual void clearBuffer(timeout_t duration);
131 virtual bool isActive(
void);
139 virtual unsigned long getPosition(timeout_t framing);
148 virtual Linear getBuffer(
unsigned long *mark, timeout_t duration);
162 StaticKeydata(
const char *path, Keydata::Define *defkeys = NULL,
const char *homepath = NULL);
165 {
return getLast(
id);};
168 {
return getLong(
id);};
171 {
return getBool(
id);};
191 const char *homepath;
193 Keydata::Define *defkeys;
194 void loadConfig(
void);
197 virtual void updateConfig(Keydata *keydata);
200 DynamicKeydata(
const char *keypath, Keydata::Define *def = NULL,
const char *homepath = NULL);
202 const char *getString(
const char *key,
char *buf,
size_t size);
203 long getValue(
const char *key);
204 bool isKey(
const char *key);
205 bool getBoolean(
const char *key);
207 static void reload(
void);
222 const char *updatedString(
const char *
id);
223 long updatedValue(
const char *
id);
224 timeout_t updatedSecTimer(
const char *
id);
225 timeout_t updatedMsecTimer(
const char *
id);
226 bool updatedBoolean(
const char *
id);
232 {StaticKeydata::setValue(
id, val);};
236 const char *getString(
const char *key,
char *buf,
size_t size);
237 timeout_t getSecTimer(
const char *key);
238 timeout_t getMsecTimer(
const char *key);
239 long getValue(
const char *key);
240 bool isKey(
const char *key);
241 bool getBoolean(
const char *key);
254 static SOCKET trap_so4;
255 static unsigned trap_count4;
256 static struct sockaddr_in trap_addr4[8];
259 static SOCKET trap_so6;
260 static unsigned trap_count6;
261 static struct sockaddr_in6 trap_addr6[8];
265 static char dtmf_keymap[256];
267 static void snmptrap(
unsigned id,
const char *descr = NULL);
402 STATE_SUSPEND = STATE_DOWN,
403 STATE_STANDBY = STATE_DOWN,
404 STATE_LIBEXEC = STATE_EXEC,
405 STATE_RINGING = STATE_RING,
406 STATE_RUNNING = STATE_STEP,
407 STATE_THREADING = STATE_THREAD
434 SIGNAL_OVERRIDE = SIGNAL_A,
436 SIGNAL_FLASH = SIGNAL_B,
438 SIGNAL_IMMEDIATE = SIGNAL_C,
440 SIGNAL_PRIORITY = SIGNAL_D,
456 SIGNAL_HANGUP = SIGNAL_EXIT
516 START_SCRIPT = START_INCOMING,
517 START_SELECTED = START_OUTGOING,
518 START_TRANSFER = START_REFER,
570 CALL_HOLDING=CALL_HOLD,
615 DIAL_MACHINE = DIAL_PAM,
641 DTMF_GENTONE = DTMF_GENUP,
670 ENTER_RESUME = MAKE_UP,
671 ENTER_SUSPEND = MAKE_DOWN,
679 DRIVER_SPECIFIC = 1000
691 RESULT_BADPATH = 254,
832 static void detach(
Ring *list);
844 static unsigned long stamp;
852 volatile unsigned long iCount, oCount;
880 static unsigned count;
960 timeout_t
total, silence, intersilence;
972 const char *pathv[4];
989 unsigned count,
size, required;
1012 timeout_t
on, off, interdigit;
1016 unsigned char digits[64];
1070 static void allocate(
timeslot_t timeslots, ScriptCommand *pointer = NULL,
timeslot_t overdraft = 0);
1072 static const char *getRegistryId(
const char *
id);
1076 static Audio::Encoding getEncoding(
const char *cp);
1081 static void allocateLocal(
void);
1086 static void addConfig(
const char *cfgfile);
1094 void md5_hash(
char *out,
const char *source);
1099 static void waitLoaded(
void);
1106 static unsigned long uptime(
void);
1113 static ScriptCompiler *reload(
void);
1118 static void down(
void);
1126 static bool service(
const char *service);
1133 static const char *getRunLevel(
void);
1150 static ScriptImage **getLocalImage(
timeslot_t timeslot);
1164 const char *name,
const char *caller,
const char *display,
1166 const char *secret = NULL);
1185 static timeslot_t toTimeslot(
const char *
id);
1219 static Handler getState(
const char *name);
1227 static int getDigit(
char dtmf);
1235 static char getChar(
int dtmf);
1247 static bool matchDigits(
const char *digits,
const char *match,
bool partial =
false);
1254 static ScriptImage *useImage(
void);
1262 static void endImage(ScriptImage *image);
1270 static bool loadPlugin(
const char *path);
1278 static bool loadMonitor(
const char *path);
1286 static bool loadAudio(
const char *path);
1288 static void errlog(
const char *level,
const char *fmt, ...);
1290 static bool getUserdata(
void);
1292 static void addTrap4(
const char *addr);
1294 static void addTrap6(
const char *addr);
1319 } zeroconf_family_t;
1333 {
return zeroconf_first;};
1341 {
return zeroconf_next;};
1349 {
return zeroconf_type;};
1357 {
return zeroconf_port;};
1360 {
return zeroconf_family;};
1379 BayonneConfig(
const char *
id, Keydata::Define *def,
const char *path);
1381 void setEnv(
const char *
id);
1383 static void rebuild(ScriptImage *img);
1400 static const char *getToken(
BayonneSession *s, Line *l,
unsigned *idx);
1401 static unsigned addItem(
BayonneSession *s,
unsigned count,
const char *text);
1456 virtual unsigned digits(
BayonneSession *sessiob,
unsigned count,
const char *
string);
1466 virtual unsigned spell(
BayonneSession *session,
unsigned count,
const char *
string);
1476 virtual unsigned sayorder(
BayonneSession *session,
unsigned count,
const char *
string);
1486 virtual unsigned number(
BayonneSession *session,
unsigned count,
const char *
string);
1497 virtual unsigned saynumber(
BayonneSession *session,
unsigned count,
const char *
string);
1507 virtual unsigned saycount(
BayonneSession *session,
unsigned count,
const char *
string);
1517 virtual unsigned sayhour(
BayonneSession *session,
unsigned count,
const char *
string);
1527 virtual unsigned saytime(
BayonneSession *session,
unsigned count,
const char *
string);
1537 virtual unsigned weekday(
BayonneSession *session,
unsigned count,
const char *
string);
1547 virtual unsigned sayday(
BayonneSession *session,
unsigned count,
const char *
string);
1557 virtual unsigned saydate(
BayonneSession *session,
unsigned count,
const char *
string);
1567 virtual unsigned saybool(
BayonneSession *session,
unsigned count,
const char *
string);
1577 virtual unsigned phone(
BayonneSession *session,
unsigned count,
const char *
string);
1587 virtual unsigned extension(
BayonneSession *session,
unsigned count,
const char *
string);
1596 virtual const char *speak(
BayonneSession *session, Line *line = NULL);
1620 char *getContinuation(
void);
1640 const char *extension, *
voicelib, *libext, *prefixdir, *offset;
1643 char var_position[14];
1657 const char *getFilename(
const char *name,
bool write =
false);
1671 void play(
const char **list, Mode mode = modeRead);
1680 void record(
const char *name, Mode mode = modeCreate,
const char *annotation = NULL);
1688 const char *getVoicelib(
const char *iso);
1747 void shutdown(
void);
1756 virtual timeout_t getTimeout(Event *event);
1760 size_t onWait(
void *buf);
1761 size_t onPost(
void *buf);
1762 size_t onPeek(
void *buf);
1799 timeout_t pickup_timer, hangup_timer,
seize_timer, ring_timer, hunt_timer;
1807 virtual void reloadDriver(
void);
1813 virtual void startDriver(
void);
1818 virtual void stopDriver(
void);
1824 void relistIdle(
void);
1835 virtual bool isAuthorized(
const char *userid,
const char *secret);
1837 virtual bool deregister(
const char *
id);
1838 virtual bool reregister(
const char *
id,
const char *uri,
const char *secret, timeout_t expires);
1851 BayonneDriver(Keydata::Define *pairs,
const char *key,
const char *
id,
bool virt =
false);
1874 {
return trunkDriver;}
1880 {
return firstDriver;}
1889 static BayonneDriver *authorize(
const char *userid,
const char *secret);
1895 {
return nextDriver;};
1898 {
return firstDriver;};
1904 {
return protoDriver;}
1918 virtual bool suspend(
void);
1925 virtual bool resume(
void);
1930 virtual void reregister(
void);
1939 virtual const char *registerScript(ScriptImage *image, Line *line);
1948 virtual const char *assignScript(ScriptImage *image, Line *line);
1981 static BayonneDriver *loadProtocol(
const char *
id,
unsigned timeslots = 0);
1990 static unsigned list(
char **items,
unsigned max);
1995 static void start(
void);
2000 static void stop(
void);
2005 static void reload(
void);
2070 {
return reset_timer;};
2078 {
return release_timer;};
2086 {
return hangup_timer;};
2094 {
return pickup_timer;};
2102 {
return seize_timer;};
2110 {
return hunt_timer;};
2118 {
return flash_timer;};
2126 {
return interdigit_timer;};
2136 {
return ring_timer;};
2144 {
return answer_count;};
2177 {
return audio_stack;};
2185 {
return audio_priority;};
2193 {
return audio_level;};
2201 {logevents = output;};
2209 inline bool isSpanable(
unsigned span);
2221 virtual bool getDestination(
const char *target,
const char *dial,
char *output,
size_t size);
2238 virtual bool isExternal(
const char *dest);
2246 virtual bool isRegistered(
const char *dest);
2254 virtual bool isAvailable(
const char *dest);
2263 virtual bool isReachable(
const char *proxy);
2274 virtual unsigned getRegistration(regauth_t *data,
unsigned count,
const char *
id = NULL);
2333 static void allocate(
unsigned total = 0);
2381 {
return count - used;}
2388 virtual bool suspend(
void);
2395 virtual bool resume(
void);
2402 virtual bool reset(
void);
2417 class Image :
public ScriptImage
2420 inline Image() : ScriptImage(NULL, NULL) {};
2421 unsigned gatherPrefix(
const char *prefix,
const char **list,
unsigned max);
2425 virtual const char *submit(
const char **data);
2427 virtual ScriptCompiler *compiler(
void);
2429 virtual unsigned destinations(Image *img,
const char **array,
unsigned max);
2431 virtual bool isDestination(Image *img,
const char *name);
2435 bool scriptEvent(ScriptInterp *interp,
const char *evt);
2437 bool digitEvent(ScriptInterp *interp,
const char *evt);
2439 BayonneBinder(
const char *
id);
2445 virtual Name *getIncoming(ScriptImage *img,
BayonneSession *s, Event *event);
2448 static const char *submitRequest(
const char **data);
2450 static ScriptCompiler *getCompiler(
void);
2452 static unsigned gatherDestinations(ScriptImage *img,
const char **index,
unsigned max);
2454 static bool isDestination(
const char *name);
2493 bool offhook, dtmf, answered,
starting, holding, connecting, referring;
2510 bool requiresDTMF(
void);
2516 void enterCall(
void);
2525 void exitCall(
const char *reason);
2532 virtual bool enableDTMF(
void);
2537 virtual void disableDTMF(
void);
2547 virtual const char *checkAudio(
bool live);
2555 virtual bool filterPosting(
Event *event);
2557 virtual bool enterCommon(
Event *event);
2558 virtual bool enterInitial(
Event *event);
2559 virtual bool enterFinal(
Event *event);
2560 virtual bool enterIdle(
Event *event);
2561 virtual bool enterReset(
Event *event);
2562 virtual bool enterRelease(
Event *event);
2563 virtual bool enterRinging(
Event *event);
2564 virtual bool enterPickup(
Event *event);
2565 virtual bool enterAnswer(
Event *event);
2566 virtual bool enterSeize(
Event *event);
2567 virtual bool enterHunting(
Event *event);
2568 virtual bool enterHangup(
Event *event);
2569 virtual bool enterTone(
Event *event);
2570 virtual bool enterReconnect(
Event *event);
2571 virtual bool enterDTMF(
Event *event);
2572 virtual bool enterPlay(
Event *event);
2573 virtual bool enterRecord(
Event *event);
2574 virtual bool enterJoin(
Event *event);
2575 virtual bool enterWait(
Event *event);
2576 virtual bool enterDial(
Event *event);
2577 virtual bool enterBusy(
Event *event);
2578 virtual bool enterStandby(
Event *event);
2579 virtual bool enterXfer(
Event *event);
2580 virtual bool enterRefer(
Event *event);
2581 virtual bool enterHold(
Event *event);
2582 virtual bool enterRecall(
Event *event);
2590 void renameRecord(
void);
2591 bool stateInitial(
Event *event);
2592 bool stateFinal(
Event *event);
2593 bool stateIdle(
Event *event);
2594 bool stateIdleReset(
Event *event);
2595 bool stateReset(
Event *event);
2596 bool stateRelease(
Event *event);
2597 bool stateBusy(
Event *event);
2598 bool stateStandby(
Event *event);
2599 bool stateRinging(
Event *event);
2600 bool statePickup(
Event *event);
2601 bool stateAnswer(
Event *event);
2602 bool stateSeize(
Event *event);
2603 bool stateHunting(
Event *event);
2604 bool stateRunning(
Event *event);
2605 bool stateLibexec(
Event *event);
2606 bool stateLibreset(
Event *event);
2607 bool stateLibwait(
Event *event);
2608 bool stateWaitkey(
Event *event);
2609 bool stateThreading(
Event *event);
2610 bool stateHangup(
Event *event);
2611 bool stateCollect(
Event *event);
2612 bool stateSleep(
Event *event);
2613 bool stateStart(
Event *event);
2614 bool stateClear(
Event *event);
2615 bool stateInkey(
Event *event);
2616 bool stateInput(
Event *event);
2617 bool stateRead(
Event *event);
2618 bool stateDial(
Event *event);
2619 bool stateXfer(
Event *event);
2620 bool stateRefer(
Event *event);
2621 bool stateHold(
Event *event);
2622 bool stateRecall(
Event *event);
2623 bool stateTone(
Event *event);
2624 bool stateDTMF(
Event *event);
2625 bool statePlay(
Event *event);
2626 bool stateRecord(
Event *event);
2627 bool stateJoin(
Event *event);
2628 bool stateWait(
Event *event);
2629 bool stateConnect(
Event *event);
2630 bool stateReconnect(
Event *event);
2631 bool stateCalling(
Event *event);
2639 bool putEvent(
Event *event);
2646 void libWrite(
const char *
string);
2648 void libClose(
const char *
string);
2650 bool isLibexec(
const char *tsid);
2652 timeout_t getLibexecTimeout(
void);
2654 const char *getWritepath(
char *buf = NULL,
size_t len = 0);
2656 void incIncomingAttempts(
void);
2658 void incOutgoingAttempts(
void);
2660 void incIncomingComplete(
void);
2662 void incOutgoingComplete(
void);
2664 void incActiveCalls(
void);
2666 void decActiveCalls(
void);
2675 {
return state.peering;};
2692 const char *getExternal(
const char *option);
2701 bool addSymbol(
const char *
id,
const char *value);
2709 bool clearSymbol(
const char *
id);
2719 static const char *getGlobal(
const char *
id);
2720 static bool setGlobal(
const char *
id,
const char *value);
2721 static bool sizeGlobal(
const char *
id,
unsigned size);
2722 static bool addGlobal(
const char *
id,
const char *value);
2723 static bool clearGlobal(
const char *
id);
2732 ScriptInterp *getInterp(
const char *
id);
2740 ScriptSymbols *getSymbols(
const char *
id);
2754 Name *attachStart(
Event *event);
2759 unsigned getId(
void);
2776 void setRunning(
void);
2784 bool setReconnect(
const char *enc, timeout_t framing);
2790 bool recallReconnect(
void);
2796 void setConnecting(
const char *evname = NULL);
2825 {
return translator;};
2831 {connecting =
true;};
2841 {
return state.libaudio;};
2846 void finalize(
void);
2857 char var_duration[12];
2858 char var_callid[12];
2862 char var_recall[16];
2863 char var_joined[16];
2865 char var_timeslot[8];
2868 char var_spantsid[12];
2891 const char *getDigits(
void);
2903 {
return var_joined;};
2906 {
return starttime;};
2911 void initialevent(
void);
2916 void initialize(
void);
2927 {
return time_joined;};
2943 virtual timeout_t getRemaining(
void) = 0;
2951 virtual void startTimer(timeout_t timer) = 0;
2957 virtual void stopTimer(
void) = 0;
2964 virtual void setOffhook(
bool state);
2969 virtual void makeIdle(
void);
2976 void part(event_t reason);
2984 virtual bool postEvent(Event *event);
2987 bool matchLine(Line *line);
2994 virtual void queEvent(Event *event);
2999 virtual void startThread(
void);
3004 virtual void enterThread(ScriptThread *thr);
3009 virtual void exitThread(
const char *msg);
3014 virtual void clrAudio(
void);
3019 virtual timeout_t getToneFraming(
void);
3024 virtual const char *audioEncoding(
void);
3029 virtual const char *audioExtension(
void);
3034 virtual timeout_t audioFraming(
void);
3042 const char *getAudio(
bool live =
true);
3048 void branching(
void);
3110 bool isJoined(
void);
3117 bool isAssociated(
void);
3132 bool isDisconnecting(
void);
3139 timeout_t getJoinTimer(
void);
3147 bool signalScript(signal_t signal);
3154 virtual bool peerLinear(
void);
3165 virtual bool peerAudio(Audio::Encoded encoded);
3176 virtual bool setPeering(Audio::Encoding encoding, timeout_t framing);
3178 const char *getKeyString(
const char *
id);
3179 bool getKeyBool(
const char *
id);
3180 long getKeyValue(
const char *
id);
3181 timeout_t getSecTimeout(
const char *
id);
3182 timeout_t getMSecTimeout(
const char *
id);
3183 timeout_t getTimeoutValue(
const char *opt = NULL);
3184 timeout_t getTimeoutKeyword(
const char *kw);
3185 const char *getExitKeyword(
const char *def);
3186 const char *getMenuKeyword(
const char *def);
3188 unsigned getInputCount(
const char *digits,
unsigned max);
3197 uint32 newTid(
void);
3213 bool digitEvent(
const char *event);
3216 {
return scriptEvent(evt);}
3223 char getDigit(
void);
3251 bool parseCall(
char *cp);
3283 const char *getParamId(
unsigned short param,
unsigned short offset);
3284 const char *getIndexed(
unsigned short param,
unsigned short offset = 0);
3285 const char *getNamed(
unsigned short param,
const char *member);
3286 const char *getMapped(
const char *map,
const char *member);
3288 friend size_t xmlwrite(
char **buf,
size_t *max,
const char *fmt, ...);
3289 bool buildResponse(
const char *fmt, ...);
3290 void sendSuccess(
void);
3291 void sendFault(
int code,
const char *
string);
3294 {result.code = code; result.string = string;};
3296 bool invokeXMLRPC(
void);
3299 size_t xmlwrite(
char **buf,
size_t *max,
const char *fmt, ...);
3317 friend void startServices(
void);
3318 friend void stopServices(
void);
3326 virtual void stopService(
void);
3331 virtual void startService(
void);
3357 static void start(
void);
3362 static void stop(
void);
3390 virtual void releaseEngine(
void) = 0;
3396 virtual void disconnectEngine(
void) = 0;
3406 virtual bool stepEngine(
void) = 0;
bridge_t getBridge(void)
Return bridge type for joins.
Definition: bayonne.h:3071
timeslot_t getCount(void)
Return total number of server timeslots in this span.
Definition: bayonne.h:2356
Definition: bayonne.h:553
Definition: bayonne.h:569
bool drop
Definition: bayonne.h:1023
unsigned pos
Definition: bayonne.h:1013
Definition: bayonne.h:417
Definition: bayonne.h:544
bool isHolding(void)
Definition: bayonne.h:3126
BayonneSession * child
Definition: bayonne.h:807
const char * logstate
Definition: bayonne.h:793
const char * pos
Definition: bayonne.h:965
Definition: bayonne.h:604
Definition: bayonne.h:690
Definition: bayonne.h:432
Definition: bayonne.h:650
tpport_t getPort(void)
Get the binding service port number.
Definition: bayonne.h:1356
static BayonneTranslator * init_translator
Definition: bayonne.h:306
Definition: bayonne.h:376
unsigned getAvail(void)
Get available timeslots.
Definition: bayonne.h:2228
Definition: bayonne.h:557
uint16 evseq
Definition: bayonne.h:2491
Definition: bayonne.h:656
static char * status
Definition: bayonne.h:281
Definition: bayonne.h:547
class __EXPORT BayonneRPC
Definition: bayonne.h:87
timeout_t synctimer
Definition: bayonne.h:1004
Definition: bayonne.h:566
Definition: bayonne.h:389
char * dtmf_digits
Definition: bayonne.h:2870
Definition: bayonne.h:503
short argc
Definition: bayonne.h:3248
Definition: bayonne.h:579
static BayonneDriver * getPrimary(void)
Return the first loaded driver.
Definition: bayonne.h:1879
static timeout_t exec_timer
Definition: bayonne.h:302
BayonneDriver * msgdriver
Definition: bayonne.h:1738
rpcmethod_t method
Definition: bayonne.h:866
Definition: bayonne.h:486
Definition: bayonne.h:539
const char * name
Definition: bayonne.h:786
static BayonneSpan ** index
Definition: bayonne.h:2293
uint32 tseq
Definition: bayonne.h:2492
time_t starttime
Definition: bayonne.h:2494
bool authorized
Definition: bayonne.h:3262
Definition: bayonne.h:382
static unsigned compile_count
Definition: bayonne.h:303
const char * tranid
Definition: bayonne.h:3275
Definition: bayonne.h:424
uint16 seq
Definition: bayonne.h:725
volatile unsigned short active_calls
Definition: bayonne.h:1841
const char * getSessionId(void)
Definition: bayonne.h:2896
Definition: bayonne.h:400
Traffic call_complete
Definition: bayonne.h:2301
Definition: bayonne.h:374
void clearEngine(BayonneSession *s)
Definition: bayonne.h:3416
Definition: bayonne.h:427
Definition: bayonne.h:361
static BayonneDriver * trunkDriver
Definition: bayonne.h:1779
bool trigger
Definition: bayonne.h:964
timeslot_t timeslot
Definition: bayonne.h:724
Definition: bayonne.h:487
Definition: bayonne.h:452
Definition: bayonne.h:565
const char * string
Definition: bayonne.h:3269
Definition: bayonne.h:574
BayonneSession * replace
Definition: bayonne.h:752
unsigned getAnswerCount(void)
Get the number of rings to wait before answering.
Definition: bayonne.h:2143
Definition: bayonne.h:603
class __EXPORT BayonneService
Definition: bayonne.h:85
Definition: bayonne.h:599
static BayonneTranslator * first
Definition: bayonne.h:1396
Definition: bayonne.h:363
bool stringEvent(const char *evt)
Definition: bayonne.h:3215
Definition: bayonne.h:582
Definition: bayonne.h:538
int result
Definition: bayonne.h:763
static timeout_t reset_timer
Definition: bayonne.h:301
uint8 seq
Definition: bayonne.h:2490
static ScriptImage ** localimages
Definition: bayonne.h:280
bool getBoolean(const char *id)
Definition: bayonne.h:170
bool isDTMF(void)
Definition: bayonne.h:2671
unsigned index
Definition: bayonne.h:1027
static Mutex serialize
A mutex to serialize any direct console I/O operations.
Definition: bayonne.h:1049
timeout_t interdigit
Definition: bayonne.h:982
BayonneTranslator * translator
Translator in effect for this session.
Definition: bayonne.h:2745
void setEngine(BayonneSession *s)
Set vm session.
Definition: bayonne.h:3422
#define MAX_LIST
Definition: bayonne.h:56
Traffic call_complete
Definition: bayonne.h:1840
const char * getString(const char *id)
Definition: bayonne.h:164
Definition: bayonne.h:610
timeout_t hunt_timer
Definition: bayonne.h:1025
Definition: bayonne.h:3241
interface_t iface
Definition: bayonne.h:2495
Definition: bayonne.h:600
Definition: bayonne.h:430
Definition: bayonne.h:625
Definition: bayonne.h:620
bool exit
Definition: bayonne.h:787
void transportFault(unsigned code, const char *string)
Definition: bayonne.h:3293
Definition: bayonne.h:390
static BayonneDriver * lastDriver
Definition: bayonne.h:1778
const char * getName(void)
Get the name of the driver.
Definition: bayonne.h:2060
Definition: bayonne.h:444
Definition: bayonne.h:607
Definition: bayonne.h:365
Definition: bayonne.h:494
unsigned count
Definition: bayonne.h:952
Definition: bayonne.h:442
Definition: bayonne.h:628
Name * menu
Definition: bayonne.h:935
timeslot_t getCount(void)
Get the total number of timeslots this driver uses.
Definition: bayonne.h:2036
const char * errmsg
Definition: bayonne.h:769
Definition: bayonne.h:608
Definition: bayonne.h:506
static timeslot_t getAvailTimeslots(void)
Return remaining timeslots available to allocate driver ports into.
Definition: bayonne.h:1209
static const char * path_tmpfs
Definition: bayonne.h:290
Definition: bayonne.h:576
Definition: bayonne.h:528
Definition: bayonne.h:439
BayonneSession * current
Definition: bayonne.h:751
timeslot_t timeslot
Definition: bayonne.h:2489
BayonneMsgport * getMsgport(void)
Return the message port bound with this driver.
Definition: bayonne.h:2168
Bayonne RPC arguments, may be passed through to binders from webservice sessions for extensions to so...
Definition: bayonne.h:3235
unsigned ring_count
Definition: bayonne.h:2871
unsigned getId(void)
Get the id associated with this span.
Definition: bayonne.h:2364
static std::ostream * logging
Definition: bayonne.h:288
Definition: bayonne.h:501
Audio::Level level
Definition: bayonne.h:959
Definition: bayonne.h:484
Definition: bayonne.h:655
Definition: bayonne.h:482
unsigned long attempts_oCount
Definition: bayonne.h:709
const char * voicelib
Definition: bayonne.h:2869
Definition: bayonne.h:568
const char * note
Definition: bayonne.h:968
BayonneTranslator * getTranslator(void)
Get the current language translator.
Definition: bayonne.h:2824
bool hangup
Definition: bayonne.h:1002
Definition: bayonne.h:419
Generic Bayonne master class to reference various useful data types and core static members used for ...
Definition: bayonne.h:251
Definition: bayonne.h:612
Line * select
Definition: bayonne.h:1026
Definition: bayonne.h:580
Definition: bayonne.h:450
static unsigned idle_count
Definition: bayonne.h:292
const char ** list
Definition: bayonne.h:1619
void startConnecting(void)
Start connecting child...
Definition: bayonne.h:2830
const char * userid
Definition: bayonne.h:3263
Definition: bayonne.h:510
Definition: bayonne.h:630
const char * ignore
Definition: bayonne.h:987
Definition: bayonne.h:495
Definition: bayonne.h:481
static ScriptSymbols * globalSyms
Definition: bayonne.h:2480
Definition: bayonne.h:551
Definition: bayonne.h:639
Definition: bayonne.h:577
Definition: bayonne.h:558
Audio::Level getAudioLevel(void)
Get the audio level for silence detection.
Definition: bayonne.h:2192
Definition: bayonne.h:425
Definition: bayonne.h:588
Definition: bayonne.h:638
void * data
Definition: bayonne.h:808
BayonneSpan * next
Definition: bayonne.h:2297
unsigned msgtail
Definition: bayonne.h:1740
static timeout_t step_timer
Definition: bayonne.h:300
The principle driver node for a given collection of spans and sessions of a given Bayonne driver fami...
Definition: bayonne.h:1772
bool starting
Definition: bayonne.h:2493
Definition: bayonne.h:605
unsigned code
Definition: bayonne.h:3268
const char * method
Definition: bayonne.h:3274
static RPCNode * getFirst(void)
Definition: bayonne.h:886
static BayonneSession ** timeslots
Definition: bayonne.h:279
const char * ring_id
Definition: bayonne.h:826
Definition: bayonne.h:497
Definition: bayonne.h:433
const char * name
Definition: bayonne.h:865
timeout_t framing
Definition: bayonne.h:799
Definition: bayonne.h:1316
Definition: bayonne.h:527
static time_t reload_time
Definition: bayonne.h:297
The primary session object representing a server timeslot and active communication endpoint in Bayonn...
Definition: bayonne.h:2464
static BayonneZeroconf * zeroconf_first
Definition: bayonne.h:1308
event_t
Primary event identifiers.
Definition: bayonne.h:464
Definition: bayonne.h:611
size_t xmlwrite(char **buf, size_t *max, const char *fmt,...)
timeout_t reset_timer
Definition: bayonne.h:1800
Definition: bayonne.h:499
Definition: bayonne.h:536
Definition: bayonne.h:336
unsigned count
Definition: bayonne.h:827
BayonneSpan * span
Definition: bayonne.h:2488
static BayonneSpan * first
Definition: bayonne.h:2290
int pid
Definition: bayonne.h:944
Definition: bayonne.h:545
static time_t start_time
Definition: bayonne.h:296
A list of each state and a description.
Definition: bayonne.h:915
static unsigned getSpans(void)
Return total spans in use.
Definition: bayonne.h:2340
Definition: bayonne.h:369
timeout_t seize_timer
Definition: bayonne.h:1799
Definition: bayonne.h:479
static BayonneTranslator * getFirst(void)
Get first translator.
Definition: bayonne.h:1428
static const char * path_prompts
Definition: bayonne.h:289
volatile unsigned short active_calls
Definition: bayonne.h:2302
Definition: bayonne.h:660
Definition: bayonne.h:567
Definition: bayonne.h:364
std::ostream * logtrace
Definition: bayonne.h:2483
class __EXPORT BayonneSpan
Definition: bayonne.h:84
Definition: bayonne.h:560
Definition: bayonne.h:629
A core class to support language translation services in Bayonne phrasebook.
Definition: bayonne.h:1393
#define MAX_LIBINPUT
Definition: bayonne.h:57
static Traffic total_call_complete
Definition: bayonne.h:1060
Definition: bayonne.h:316
static timeslot_t getTimeslotsUsed(void)
Return total library timeslots used (highest used).
Definition: bayonne.h:1192
tpport_t zeroconf_port
Definition: bayonne.h:1311
Definition: bayonne.h:532
Definition: bayonne.h:594
calltype_t type
Definition: bayonne.h:2497
Definition: bayonne.h:702
class __EXPORT BayonneDriver
Definition: bayonne.h:82
static timeslot_t ts_count
Definition: bayonne.h:286
Definition: bayonne.h:392
static BayonneDriver * firstDriver
Definition: bayonne.h:1777
void setLogging(std::ostream *output)
Set driver logging.
Definition: bayonne.h:2200
Definition: bayonne.h:530
Definition: bayonne.h:448
const char * exit
Definition: bayonne.h:966
static bool shutdown_flag
Definition: bayonne.h:294
const char * name
Definition: bayonne.h:932
Definition: bayonne.h:661
Definition: bayonne.h:592
interface_t getInterface(void)
Return interface type of this session.
Definition: bayonne.h:3063
Definition: bayonne.h:396
Definition: bayonne.h:622
Definition: bayonne.h:445
Definition: bayonne.h:428
static bool protocols
Definition: bayonne.h:1782
Definition: bayonne.h:330
Definition: bayonne.h:331
Definition: bayonne.h:593
Definition: bayonne.h:498
Definition: bayonne.h:534
Encoding encoding
Definition: bayonne.h:1641
char * syncdigit
Definition: bayonne.h:1003
The event data structure includes the event identifier and any paramaters.
Definition: bayonne.h:721
const char * getPrefix(void)
Definition: bayonne.h:892
BayonneSession * pid
Definition: bayonne.h:805
Definition: bayonne.h:423
Definition: bayonne.h:583
state_t
Call processing states offered in core library.
Definition: bayonne.h:358
timeout_t getFlashTimer(void)
Get the programmed flash timer to signal trunk flash.
Definition: bayonne.h:2117
std::ostream * logevents
Definition: bayonne.h:1793
Definition: bayonne.h:394
const char * getSessionParent(void)
Definition: bayonne.h:2899
Definition: bayonne.h:483
bool compress
Definition: bayonne.h:963
static BayonneDriver * getProtocol(void)
Return primary protocol driver...
Definition: bayonne.h:1903
timeout_t framing
Definition: bayonne.h:1642
BayonneDriver * driver
Definition: bayonne.h:2485
bool running
Definition: bayonne.h:1791
Definition: bayonne.h:1317
Definition: bayonne.h:493
Definition: bayonne.h:589
const char * signature
Definition: bayonne.h:868
zeroconf_family_t getFamily(void)
Definition: bayonne.h:1359
Definition: bayonne.h:476
const char * name
Definition: bayonne.h:917
timeslot_t getFirst(void)
Get the first server timeslot of this span.
Definition: bayonne.h:2348
Definition: bayonne.h:372
Definition: bayonne.h:318
Traffic call_complete
Definition: bayonne.h:2669
ScriptEngine * vm
Definition: bayonne.h:2499
Definition: bayonne.h:337
class __EXPORT BayonneTranslator
Definition: bayonne.h:86
const char * resuri
Definition: bayonne.h:3277
Definition: bayonne.h:437
static timeslot_t getTimeslotCount(void)
Return total timeslots allocated for the server.
Definition: bayonne.h:1200
Definition: bayonne.h:502
timeslot_t used
Definition: bayonne.h:2298
Definition: bayonne.h:388
Definition: bayonne.h:636
bridge_t bridge
Definition: bayonne.h:2496
Definition: bayonne.h:512
Definition: bayonne.h:418
BayonneSession * peer
Definition: bayonne.h:806
Handler handler
Definition: bayonne.h:918
zeroconf_family_t zeroconf_family
Definition: bayonne.h:1322
Definition: bayonne.h:348
unsigned answer_count
Definition: bayonne.h:1801
Definition: bayonne.h:526
rpcint_t rpcbool_t
Definition: bayonne.h:276
Definition: bayonne.h:533
static ThreadLock reloading
A mutex to serialize reload requests.
Definition: bayonne.h:1054
BayonneTranslator * translator
Current language translator in effect for the current set of autio prompts.
Definition: bayonne.h:1633
Definition: bayonne.h:429
static const char * init_voicelib
Definition: bayonne.h:307
static BayonneTranslator langNone
Definition: bayonne.h:2479
Definition: bayonne.h:537
const char * getId(void)
Get the id string.
Definition: bayonne.h:1603
time_t getJoined(void)
Return time this call is joined or 0 if not child node.
Definition: bayonne.h:2926
const char * getTid(void)
Get the current transaction identifier string for the session.
Definition: bayonne.h:3204
Definition: bayonne.h:488
char * buffer
Definition: bayonne.h:3257
unsigned getSpansUsed(void)
Get the number of span objects used by driver.
Definition: bayonne.h:2052
const char * getType(void)
Get the binding protocol description, usually "_svc._proto".
Definition: bayonne.h:1348
unsigned getSpanFirst(void)
Get the first span id used.
Definition: bayonne.h:2044
#define RPC_MAX_PARAMS
Definition: bayonne.h:61
Definition: bayonne.h:634
Definition: bayonne.h:443
bool refer
Definition: bayonne.h:946
Definition: bayonne.h:454
Definition: bayonne.h:399
class __EXPORT BayonneMsgport
Definition: bayonne.h:81
Definition: bayonne.h:635
Definition: bayonne.h:435
BayonneDriver * nextDriver
Definition: bayonne.h:1786
calltype_t getType(void)
Return call type on session.
Definition: bayonne.h:3079
static Semaphore oink
Definition: bayonne.h:1781
Definition: bayonne.h:649
unsigned long complete_oCount
Definition: bayonne.h:710
Definition: bayonne.h:575
Definition: bayonne.h:529
Definition: bayonne.h:647
static Mutex globalLock
Definition: bayonne.h:2481
timeout_t duration
Definition: bayonne.h:774
Offers interface bridge for embedded scripting engines through an abstract interface.
Definition: bayonne.h:3373
Definition: bayonne.h:471
static BayonneDriver * getTrunking(void)
Return primary trunk driver, if driver trunking...
Definition: bayonne.h:1873
Line * lib
Definition: bayonne.h:937
unsigned getCount(void)
Definition: bayonne.h:3280
bool isOffhook(void)
Return hook state.
Definition: bayonne.h:3055
Definition: bayonne.h:426
static unsigned getCount(void)
Definition: bayonne.h:898
This is an internal ring class for synchronized ringing.
Definition: bayonne.h:816
Definition: bayonne.h:383
Definition: bayonne.h:378
Definition: bayonne.h:333
const char * sequence
Definition: bayonne.h:1000
static const char * trap_community
Definition: bayonne.h:308
Definition: bayonne.h:525
signal_t
Signaled interpreter events.
Definition: bayonne.h:414
const char * fname
Definition: bayonne.h:761
Definition: bayonne.h:664
BayonneDriver * getNext(void)
Get next driver...
Definition: bayonne.h:1894
Definition: bayonne.h:513
uint16 getEventSequence(void)
Get event sequence id.
Definition: bayonne.h:2716
Bayonne Msgports are used to queue and post session events which normally have to be passed through a...
Definition: bayonne.h:1709
timeout_t getHangupTimer(void)
Get the hangup timer for hang time before going idle.
Definition: bayonne.h:2085
Bayonne specific dynamic keydata class.
Definition: bayonne.h:183
This is a structure used to initialize XMLRPC method tables.
Definition: bayonne.h:863
Definition: bayonne.h:658
BayonneDriver * driver
Definition: bayonne.h:2296
Definition: bayonne.h:370
State state
Definition: bayonne.h:2874
Definition: bayonne.h:505
Definition: bayonne.h:631
BayonneDriver * getDriver(void)
Get driver associated with this span.
Definition: bayonne.h:2372
timeout_t getReleaseTimer(void)
Get the release timer when releasing a trunk.
Definition: bayonne.h:2077
int pfd
Definition: bayonne.h:941
Handler logstate
Definition: bayonne.h:931
const char * zeroconf_type
Definition: bayonne.h:1310
Bayonnne specific static keydata class.
Definition: bayonne.h:159
int digit
Definition: bayonne.h:775
timeslot_t getSlot(void)
Return server timeslot this session uses.
Definition: bayonne.h:3087
unsigned size
Definition: bayonne.h:989
static unsigned ts_ext
Definition: bayonne.h:284
static BayonneDriver * protoDriver
Definition: bayonne.h:1780
const char * status
Definition: bayonne.h:707
Definition: bayonne.h:362
timeout_t duration
Definition: bayonne.h:1005
Definition: bayonne.h:319
Definition: bayonne.h:626
Definition: bayonne.h:477
Definition: bayonne.h:496
timeslot_t timeslot
Definition: bayonne.h:1788
Definition: bayonne.h:591
static BayonneSpan * last
Definition: bayonne.h:2291
libaudio_t * libaudio
Definition: bayonne.h:945
RPCNode * getNext(void)
Definition: bayonne.h:889
Definition: bayonne.h:552
size_t bufsize
Definition: bayonne.h:3258
Definition: bayonne.h:347
const char * voicelib
Definition: bayonne.h:1640
BayonneZeroconf * zeroconf_next
Definition: bayonne.h:1309
Definition: bayonne.h:398
Definition: bayonne.h:480
unsigned long position
Definition: bayonne.h:105
static unsigned ts_trk
Definition: bayonne.h:283
Definition: bayonne.h:663
long lastnum
Definition: bayonne.h:961
Definition: bayonne.h:646
size_t audio_stack
Definition: bayonne.h:1796
A bayonne config class, used for special purposes, especially during script compiles.
Definition: bayonne.h:1370
zeroconf_family_t
Definition: bayonne.h:1314
Definition: bayonne.h:640
Definition: bayonne.h:550
Definition: bayonne.h:395
Definition: bayonne.h:320
const char * dialing
Definition: bayonne.h:738
static timeslot_t ts_limit
Definition: bayonne.h:285
Definition: bayonne.h:606
BayonneMsgport * msgport
Definition: bayonne.h:2486
Definition: bayonne.h:524
const char * protocol
Definition: bayonne.h:3261
Definition: bayonne.h:379
char flag
Definition: bayonne.h:919
A span is a collection of ports under a single control interface or communication channel...
Definition: bayonne.h:2284
static ScriptCommand * server
Definition: bayonne.h:282
int getAudioPriority(void)
Get the thread priority to use for audio threads for this driver.
Definition: bayonne.h:2184
const char * agent_id
Definition: bayonne.h:3260
Definition: bayonne.h:478
Definition: bayonne.h:507
const char * tid
Definition: bayonne.h:757
unsigned stack
Definition: bayonne.h:936
const char * getSessionJoined(void)
Definition: bayonne.h:2902
Definition: bayonne.h:469
BayonneDriver * getDriver(void)
Return driver associated with this session.
Definition: bayonne.h:2934
BayonneTranslator * next
Definition: bayonne.h:1397
Definition: bayonne.h:514
class __EXPORT BayonneSession
Definition: bayonne.h:83
Definition: bayonne.h:346
static bool stopping
Definition: bayonne.h:1792
BayonneTranslator * getNext()
Get next translator.
Definition: bayonne.h:1436
timeslot_t getFirst(void)
Get first server timeslot this driver uses.
Definition: bayonne.h:2028
Definition: bayonne.h:654
timeout_t lastdigit
Definition: bayonne.h:983
Definition: bayonne.h:509
unsigned spans
Definition: bayonne.h:1790
#define MAX_PATHNAME
Definition: bayonne.h:58
Definition: bayonne.h:334
RPCDefine * getMethods(void)
Definition: bayonne.h:895
Line * select
Definition: bayonne.h:746
timeout_t total
Definition: bayonne.h:960
Definition: bayonne.h:651
Definition: bayonne.h:366
Definition: bayonne.h:332
const char * name
Definition: bayonne.h:1787
Definition: bayonne.h:602
Definition: bayonne.h:500
Definition: bayonne.h:623
An intermediary binder class for Bayonne engine.
Definition: bayonne.h:2411
Definition: bayonne.h:380
Definition: bayonne.h:321
Definition: bayonne.h:384
Definition: bayonne.h:548
libaudio_t * getLibaudio(void)
Get the libaudio object.
Definition: bayonne.h:2840
const char * msg
Definition: bayonne.h:781
Definition: bayonne.h:648
const char * getInitial(const char *id)
Definition: bayonne.h:229
Definition: bayonne.h:546
Definition: bayonne.h:422
const char * prefix
Definition: bayonne.h:3273
static Traffic total_call_attempts
master traffic counters for call attempts and call completions.
Definition: bayonne.h:1059
timeout_t timeout
Definition: bayonne.h:933
Definition: bayonne.h:393
const char * id
Definition: bayonne.h:1398
Definition: bayonne.h:335
Definition: bayonne.h:613
Definition: bayonne.h:381
This is a class used for collecting statistics for call traffic measurement, such as might be used by...
Definition: bayonne.h:841
Definition: bayonne.h:657
Definition: bayonne.h:666
Streaming buffer for audio, to be used in bgm audio sources.
Definition: bayonne.h:96
timeout_t getInterdigit(void)
Get default dtmf interdigit timer to use.
Definition: bayonne.h:2125
timeout_t getHuntTimer(void)
Get the hunting timer.
Definition: bayonne.h:2109
timeslot_t tsfirst
Definition: bayonne.h:1741
Definition: bayonne.h:662
Definition: bayonne.h:688
Definition: bayonne.h:508
Definition: bayonne.h:637
Definition: bayonne.h:573
Definition: bayonne.h:368
Line line
Definition: bayonne.h:697
Bayonne specific reloaded keydata class.
Definition: bayonne.h:218
Definition: bayonne.h:421
Definition: bayonne.h:687
Definition: bayonne.h:317
static bool isStopping(void)
Return is stopping flag.
Definition: bayonne.h:1867
Definition: bayonne.h:609
static const char * path_tmp
Definition: bayonne.h:291
const char * route
Definition: bayonne.h:988
Bayonne services are used for threaded modules which may be installed at runtime. ...
Definition: bayonne.h:3309
BayonneSession * lastIdle
Definition: bayonne.h:1784
Definition: bayonne.h:397
Event * msglist
Definition: bayonne.h:1739
Definition: bayonne.h:470
unsigned count
Definition: bayonne.h:3247
Audio::Mode mode
Definition: bayonne.h:958
This is a little class used to associate XMLRPC call method tables with our server.
Definition: bayonne.h:875
Definition: bayonne.h:377
timeout_t interval
Definition: bayonne.h:953
const char * err
Definition: bayonne.h:780
event_t seizure
Definition: bayonne.h:2498
bool flashing
Definition: bayonne.h:1001
Definition: bayonne.h:689
Offers core Bayonne audio processing in a self contained class.
Definition: bayonne.h:1615
ScriptImage * img
Definition: bayonne.h:735
time_t updated
Definition: bayonne.h:711
const char * remote
Definition: bayonne.h:704
Definition: bayonne.h:375
result_t
Definition: bayonne.h:683
Definition: bayonne.h:653
timeout_t on
Definition: bayonne.h:1012
const char * dial
Definition: bayonne.h:1021
unsigned getAvail(void)
Get number of call slots still available.
Definition: bayonne.h:2380
Definition: bayonne.h:559
Definition: bayonne.h:590
Definition: bayonne.h:571
Definition: bayonne.h:686
Definition: bayonne.h:584
Definition: bayonne.h:581
Definition: bayonne.h:627
Definition: bayonne.h:511
ScriptEngine * getEngine(void)
Definition: bayonne.h:2683
Definition: bayonne.h:386
Definition: bayonne.h:652
const char * type
Definition: bayonne.h:706
timeslot_t getTimeslot(void)
Definition: bayonne.h:2680
static volatile unsigned short total_active_calls
Definition: bayonne.h:1061
void setInitial(const char *id, const char *val)
Definition: bayonne.h:231
Definition: bayonne.h:587
BayonneAudio audio
Definition: bayonne.h:3225
Definition: bayonne.h:387
Definition: bayonne.h:659
Script::Name * scr
Definition: bayonne.h:736
Definition: bayonne.h:523
unsigned short call_limit
Definition: bayonne.h:708
const char * userid
Definition: bayonne.h:705
time_t getSessionStart(void)
Definition: bayonne.h:2905
result_t result
Definition: bayonne.h:943
Definition: bayonne.h:367
static unsigned long getStamp(void)
Definition: bayonne.h:849
Definition: bayonne.h:665
const char * help
Definition: bayonne.h:867
Definition: bayonne.h:504
BayonneSession * peer
Definition: bayonne.h:1024
static timeslot_t ts_used
Definition: bayonne.h:287
Definition: bayonne.h:585
Definition: bayonne.h:373
static unsigned idle_limit
Definition: bayonne.h:293
const char * menu
Definition: bayonne.h:967
size_t bufused
Definition: bayonne.h:3259
Definition: bayonne.h:453
bool isPeering(void)
Definition: bayonne.h:2674
static AtomicCounter libexec_count
Definition: bayonne.h:309
const char * action
Definition: bayonne.h:3276
BayonneSession * peer
Definition: bayonne.h:2487
Definition: bayonne.h:556
Definition: bayonne.h:531
std::ostream * output
Definition: bayonne.h:792
long getValue(const char *id)
Definition: bayonne.h:167
bool exitkey
Definition: bayonne.h:962
size_t getAudioStack(void)
Get the size of the stack for audio threads.
Definition: bayonne.h:2176
Ring * ring
Definition: bayonne.h:2484
Definition: bayonne.h:371
Definition: bayonne.h:549
const char * defVoicelib(void)
Definition: bayonne.h:2893
BayonneSession * session
Definition: bayonne.h:828
int audio_priority
Definition: bayonne.h:1795
BayonneSpan * getSpan(void)
Definition: bayonne.h:2677
Definition: bayonne.h:391
AudioTone * tone
Current tone object to use for generation of audio tones, dtmf dialing sequences, etc...
Definition: bayonne.h:1627
Audio::Level audio_level
Definition: bayonne.h:1797
Script::Name * script
Definition: bayonne.h:829
static volatile bool image_loaded
Definition: bayonne.h:304
Definition: bayonne.h:555
static BayonneZeroconf * getFirst(void)
Get the first zeroconf binding, used by zeroconf plugins.
Definition: bayonne.h:1332
Definition: bayonne.h:554
This class is used to bind services that are to be published with zeroconf, such as by the avahi modu...
Definition: bayonne.h:1305
static bool useProtocols(void)
Return flag for protocols active.
Definition: bayonne.h:1861
bool peering
Definition: bayonne.h:934
timeout_t getRingTimer(void)
Get the timer to wait for next ring before deciding a call has dissapeared.
Definition: bayonne.h:2135
BayonneSession * parent
Definition: bayonne.h:737
Definition: bayonne.h:349
Definition: bayonne.h:633
Definition: bayonne.h:632
Definition: bayonne.h:449
BayonneDriver * driver
Definition: bayonne.h:3264
Definition: bayonne.h:624
Definition: bayonne.h:695
Definition: bayonne.h:572
Definition: bayonne.h:447
Definition: bayonne.h:535
AudioCodec * getCodec(void)
Get audio codec used.
Definition: bayonne.h:1695
Definition: bayonne.h:385
timeout_t getPickupTimer(void)
Get the pickup timer to wait for channel pickup.
Definition: bayonne.h:2093
unsigned id
Definition: bayonne.h:2295
BayonneMsgport * msgport
Definition: bayonne.h:1785
const char * var
Definition: bayonne.h:984
Definition: bayonne.h:601
bool isIdle(void)
Return if the session is currently idle.
Definition: bayonne.h:3095
Definition: bayonne.h:485
BayonneZeroconf * getNext(void)
Get the next zeroconf binding to iterate an object list.
Definition: bayonne.h:1340
Definition: bayonne.h:621
const char * format
Definition: bayonne.h:986
Linear data
Definition: bayonne.h:106
const char * ref
Definition: bayonne.h:1033
Definition: bayonne.h:586
const char * encoding
Definition: bayonne.h:798
int32_t rpcint_t
Definition: bayonne.h:274
unsigned avail
Definition: bayonne.h:1789
time_t time_joined
Definition: bayonne.h:2872
timeout_t getResetTimer(void)
Get the reset timer for this driver when resetting a thread in the step state.
Definition: bayonne.h:2069
uint16_t timeslot_t
Definition: bayonne.h:273
Definition: bayonne.h:431
static unsigned spans
Definition: bayonne.h:2292
Definition: bayonne.h:578
timeout_t getSeizeTimer(void)
Get the sieze time to wait for dialtone on outbound call.
Definition: bayonne.h:2101
event_t id
Definition: bayonne.h:723
static BayonneDriver * getRoot(void)
Definition: bayonne.h:1897