From bdcafc1ab45dbb7b0a7e0754c41ccf10e8cb4533 Mon Sep 17 00:00:00 2001 From: Tilghman Lesher Date: Mon, 18 May 2009 20:52:33 +0000 Subject: Recorded merge of revisions 195366 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r195366 | tilghman | 2009-05-18 15:24:13 -0500 (Mon, 18 May 2009) | 8 lines Add a similar dependency on SMDI for voicemail as already exists for ADSI. (closes issue #14846) Reported by: pj Patches: 20090413__bug14846__1.4.diff.txt uploaded by tilghman (license 14) 20090507__issue14846__1.6.0.diff.txt uploaded by tilghman (license 14) 20090507__issue14846__1.6.1.diff.txt uploaded by tilghman (license 14) ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@195370 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- include/asterisk/monitor.h | 22 ++++++++++++++-------- include/asterisk/smdi.h | 42 ++++++++++++++++++++++++++++-------------- 2 files changed, 42 insertions(+), 22 deletions(-) (limited to 'include') diff --git a/include/asterisk/monitor.h b/include/asterisk/monitor.h index 7f32b6994..4014939bb 100644 --- a/include/asterisk/monitor.h +++ b/include/asterisk/monitor.h @@ -24,6 +24,7 @@ #define _ASTERISK_MONITOR_H #include "asterisk/channel.h" +#include "asterisk/optional_api.h" enum AST_MONITORING_STATE { AST_MONITOR_RUNNING, @@ -50,22 +51,27 @@ struct ast_channel_monitor { }; /* Start monitoring a channel */ -int ast_monitor_start(struct ast_channel *chan, const char *format_spec, - const char *fname_base, int need_lock, int stream_action); +AST_OPTIONAL_API(int, ast_monitor_start, (struct ast_channel *chan, const char + *format_spec, const char *fname_base, int need_lock, int stream_action), + { return -1; }); /* Stop monitoring a channel */ -int ast_monitor_stop(struct ast_channel *chan, int need_lock); +AST_OPTIONAL_API(int, ast_monitor_stop, (struct ast_channel *chan, int + need_lock), { return -1; }); /* Change monitoring filename of a channel */ -int ast_monitor_change_fname(struct ast_channel *chan, - const char *fname_base, int need_lock); +AST_OPTIONAL_API(int, ast_monitor_change_fname, (struct ast_channel *chan, + const char *fname_base, int need_lock), { return -1; }); -void ast_monitor_setjoinfiles(struct ast_channel *chan, int turnon); +AST_OPTIONAL_API(void, ast_monitor_setjoinfiles, (struct ast_channel *chan, + int turnon), { return; }); /* Pause monitoring of a channel */ -int ast_monitor_pause(struct ast_channel *chan); +AST_OPTIONAL_API(int, ast_monitor_pause, (struct ast_channel *chan), + { return -1; }); /* Unpause monitoring of a channel */ -int ast_monitor_unpause(struct ast_channel *chan); +AST_OPTIONAL_API(int, ast_monitor_unpause, (struct ast_channel *chan), + { return -1; }); #endif /* _ASTERISK_MONITOR_H */ diff --git a/include/asterisk/smdi.h b/include/asterisk/smdi.h index 8f098abdd..9dbec6288 100644 --- a/include/asterisk/smdi.h +++ b/include/asterisk/smdi.h @@ -37,6 +37,7 @@ #include "asterisk/config.h" #include "asterisk/module.h" #include "asterisk/astobj.h" +#include "asterisk/optional_api.h" #define SMDI_MESG_DESK_NUM_LEN 3 #define SMDI_MESG_DESK_TERM_LEN 4 @@ -84,7 +85,8 @@ struct ast_smdi_md_message { */ struct ast_smdi_interface; -void ast_smdi_interface_unref(struct ast_smdi_interface *iface); +AST_OPTIONAL_API(void, ast_smdi_interface_unref, (struct ast_smdi_interface + *iface), { return; }); /*! * \brief Get the next SMDI message from the queue. @@ -96,7 +98,8 @@ void ast_smdi_interface_unref(struct ast_smdi_interface *iface); * * \return the next SMDI message, or NULL if there were no pending messages. */ -struct ast_smdi_md_message *ast_smdi_md_message_pop(struct ast_smdi_interface *iface); +AST_OPTIONAL_API(struct ast_smdi_md_message *, ast_smdi_md_message_pop, (struct + ast_smdi_interface *iface), { return NULL; }); /*! * \brief Get the next SMDI message from the queue. @@ -110,7 +113,8 @@ struct ast_smdi_md_message *ast_smdi_md_message_pop(struct ast_smdi_interface *i * \return the next SMDI message, or NULL if there were no pending messages and * the timeout has expired. */ -struct ast_smdi_md_message *ast_smdi_md_message_wait(struct ast_smdi_interface *iface, int timeout); +AST_OPTIONAL_API(struct ast_smdi_md_message *, ast_smdi_md_message_wait, + (struct ast_smdi_interface *iface, int timeout), { return NULL; }); /*! * \brief Put an SMDI message back in the front of the queue. @@ -121,7 +125,8 @@ struct ast_smdi_md_message *ast_smdi_md_message_wait(struct ast_smdi_interface * * should be used if a message was popped but is not going to be processed for * some reason, and the message needs to be returned to the queue. */ -void ast_smdi_md_message_putback(struct ast_smdi_interface *iface, struct ast_smdi_md_message *msg); +AST_OPTIONAL_API(void, ast_smdi_md_message_putback, (struct ast_smdi_interface + *iface, struct ast_smdi_md_message *msg), { return; }); /*! * \brief Get the next SMDI message from the queue. @@ -133,7 +138,8 @@ void ast_smdi_md_message_putback(struct ast_smdi_interface *iface, struct ast_sm * * \return the next SMDI message, or NULL if there were no pending messages. */ -struct ast_smdi_mwi_message *ast_smdi_mwi_message_pop(struct ast_smdi_interface *iface); +AST_OPTIONAL_API(struct ast_smdi_mwi_message *, ast_smdi_mwi_message_pop, + (struct ast_smdi_interface *iface), { return NULL; }); /*! * \brief Get the next SMDI message from the queue. @@ -147,9 +153,11 @@ struct ast_smdi_mwi_message *ast_smdi_mwi_message_pop(struct ast_smdi_interface * \return the next SMDI message, or NULL if there were no pending messages and * the timeout has expired. */ -struct ast_smdi_mwi_message *ast_smdi_mwi_message_wait(struct ast_smdi_interface *iface, int timeout); -struct ast_smdi_mwi_message *ast_smdi_mwi_message_wait_station(struct ast_smdi_interface *iface, - int timeout, const char *station); +AST_OPTIONAL_API(struct ast_smdi_mwi_message *, ast_smdi_mwi_message_wait, + (struct ast_smdi_interface *iface, int timeout), { return NULL; }); +AST_OPTIONAL_API(struct ast_smdi_mwi_message *, + ast_smdi_mwi_message_wait_station, (struct ast_smdi_interface *iface, int + timeout, const char *station), { return NULL; }); /*! * \brief Put an SMDI message back in the front of the queue. @@ -160,7 +168,8 @@ struct ast_smdi_mwi_message *ast_smdi_mwi_message_wait_station(struct ast_smdi_i * should be used if a message was popped but is not going to be processed for * some reason, and the message needs to be returned to the queue. */ -void ast_smdi_mwi_message_putback(struct ast_smdi_interface *iface, struct ast_smdi_mwi_message *msg); +AST_OPTIONAL_API(void, ast_smdi_mwi_message_putback, (struct ast_smdi_interface + *iface, struct ast_smdi_mwi_message *msg), { return; }); /*! * \brief Find an SMDI interface with the specified name. @@ -170,26 +179,31 @@ void ast_smdi_mwi_message_putback(struct ast_smdi_interface *iface, struct ast_s * actually returns an ASTOBJ reference and should be released using * #ASTOBJ_UNREF(iface, ast_smdi_interface_destroy). */ -struct ast_smdi_interface *ast_smdi_interface_find(const char *iface_name); +AST_OPTIONAL_API(struct ast_smdi_interface *, ast_smdi_interface_find, + (const char *iface_name), { return NULL; }); /*! * \brief Set the MWI indicator for a mailbox. * \param iface the interface to use. * \param mailbox the mailbox to use. */ -int ast_smdi_mwi_set(struct ast_smdi_interface *iface, const char *mailbox); +AST_OPTIONAL_API(int, ast_smdi_mwi_set, (struct ast_smdi_interface *iface, + const char *mailbox), { return -1; }); /*! * \brief Unset the MWI indicator for a mailbox. * \param iface the interface to use. * \param mailbox the mailbox to use. */ -int ast_smdi_mwi_unset(struct ast_smdi_interface *iface, const char *mailbox); +AST_OPTIONAL_API(int, ast_smdi_mwi_unset, (struct ast_smdi_interface *iface, + const char *mailbox), { return -1; }); /*! \brief ast_smdi_md_message destructor. */ -void ast_smdi_md_message_destroy(struct ast_smdi_md_message *msg); +AST_OPTIONAL_API(void, ast_smdi_md_message_destroy, + (struct ast_smdi_md_message *msg), { return; }); /*! \brief ast_smdi_mwi_message destructor. */ -void ast_smdi_mwi_message_destroy(struct ast_smdi_mwi_message *msg); +AST_OPTIONAL_API(void, ast_smdi_mwi_message_destroy, (struct + ast_smdi_mwi_message *msg), { return; }); #endif /* !ASTERISK_SMDI_H */ -- cgit v1.2.3