diff options
Diffstat (limited to 'channels/h323/chan_h323.h')
-rw-r--r-- | channels/h323/chan_h323.h | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/channels/h323/chan_h323.h b/channels/h323/chan_h323.h index 13296ed1a..c8bd6a3d9 100644 --- a/channels/h323/chan_h323.h +++ b/channels/h323/chan_h323.h @@ -39,6 +39,10 @@ #define H323_TUNNEL_CISCO (1 << 0) #define H323_TUNNEL_QSIG (1 << 1) +#define H323_HOLD_NOTIFY (1 << 0) +#define H323_HOLD_Q931ONLY (1 << 1) +#define H323_HOLD_H450 (1 << 2) + /** call_option struct holds various bits * of information for each call */ typedef struct call_options { @@ -58,6 +62,7 @@ typedef struct call_options { int bridge; int nat; int tunnelOptions; + int holdHandling; struct ast_codec_pref prefs; } call_options_t; @@ -184,6 +189,9 @@ extern setcapabilities_cb on_setcapabilities; typedef void (*setpeercapabilities_cb)(unsigned, const char *, int, struct ast_codec_pref *); extern setpeercapabilities_cb on_setpeercapabilities; +typedef void (*onhold_cb)(unsigned, const char *, int); +extern onhold_cb on_hold; + /* debug flag */ extern int h323debug; @@ -224,7 +232,8 @@ extern "C" { rfc2833_cb, hangup_cb, setcapabilities_cb, - setpeercapabilities_cb); + setpeercapabilities_cb, + onhold_cb); int h323_set_capabilities(const char *, int, int, struct ast_codec_pref *, int); int h323_set_alias(struct oh323_alias *); int h323_set_gk(int, char *, char *); @@ -249,6 +258,7 @@ extern "C" { int h323_answering_call(const char *token, int); int h323_soft_hangup(const char *data); int h323_show_codec(int fd, int argc, char *argv[]); + int h323_hold_call(const char *token, int); #ifdef __cplusplus } |