Mon Mar 31 07:41:58 2008

Asterisk developer's documentation


musiconhold.h File Reference

Music on hold handling. More...

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

void ast_install_music_functions (int(*start_ptr)(struct ast_channel *, const char *, const char *), void(*stop_ptr)(struct ast_channel *), void(*cleanup_ptr)(struct ast_channel *))
void ast_moh_cleanup (struct ast_channel *chan)
int ast_moh_start (struct ast_channel *chan, const char *mclass, const char *interpclass)
 Turn on music on hold on a given channel.
void ast_moh_stop (struct ast_channel *chan)
 Turn off music on hold on a given channel.
void ast_uninstall_music_functions (void)


Detailed Description

Music on hold handling.

Definition in file musiconhold.h.


Function Documentation

void ast_install_music_functions ( int(*)(struct ast_channel *, const char *, const char *)  start_ptr,
void(*)(struct ast_channel *)  stop_ptr,
void(*)(struct ast_channel *)  cleanup_ptr 
)

Definition at line 4329 of file channel.c.

References ast_moh_cleanup_ptr, ast_moh_start_ptr, and ast_moh_stop_ptr.

Referenced by load_module(), and reload().

04332 {
04333    ast_moh_start_ptr = start_ptr;
04334    ast_moh_stop_ptr = stop_ptr;
04335    ast_moh_cleanup_ptr = cleanup_ptr;
04336 }

void ast_moh_cleanup ( struct ast_channel chan  ) 

Definition at line 4366 of file channel.c.

References ast_moh_cleanup_ptr.

Referenced by ast_channel_free().

04367 {
04368    if (ast_moh_cleanup_ptr)
04369       ast_moh_cleanup_ptr(chan);
04370 }

int ast_moh_start ( struct ast_channel chan,
const char *  mclass,
const char *  interpclass 
)

Turn on music on hold on a given channel.

Parameters:
chan The channel structure that will get music on hold
mclass The class to use if the musicclass is not currently set on the channel structure.
interpclass The class to use if the musicclass is not currently set on the channel structure or in the mclass argument.
Return values:
0 success
non-zero failure

Definition at line 4346 of file channel.c.

References ast_moh_start_ptr, ast_verbose(), option_verbose, and VERBOSE_PREFIX_3.

Referenced by alsa_indicate(), app_exec(), conf_run(), feature_exec_app(), gtalk_indicate(), handle_setmusic(), iax2_indicate(), local_indicate(), mgcp_indicate(), misdn_indication(), moh0_exec(), moh1_exec(), moh3_exec(), oh323_indicate(), oss_indicate(), phone_indicate(), queue_exec(), retrydial_exec(), say_periodic_announcement(), say_position(), sip_indicate(), skinny_indicate(), and zt_indicate().

04347 {
04348    if (ast_moh_start_ptr)
04349       return ast_moh_start_ptr(chan, mclass, interpclass);
04350 
04351    if (option_verbose > 2) {
04352       ast_verbose(VERBOSE_PREFIX_3 "Music class %s requested but no musiconhold loaded.\n", 
04353          mclass ? mclass : (interpclass ? interpclass : "default"));
04354    }
04355 
04356    return 0;
04357 }

void ast_moh_stop ( struct ast_channel chan  ) 

Turn off music on hold on a given channel.

Turn off music on hold on a given channel

Definition at line 4360 of file channel.c.

References ast_moh_stop_ptr.

Referenced by alsa_indicate(), app_exec(), ast_quiet_chan(), conf_run(), do_bridge_masquerade(), feature_exec_app(), gtalk_indicate(), handle_setmusic(), iax2_indicate(), local_indicate(), mgcp_indicate(), misdn_indication(), misdn_transfer_bc(), moh0_exec(), moh1_exec(), moh4_exec(), oh323_indicate(), oss_indicate(), phone_indicate(), queue_exec(), retrydial_exec(), say_periodic_announcement(), say_position(), sip_indicate(), skinny_indicate(), steal_channel(), try_calling(), and zt_indicate().

04361 {
04362    if (ast_moh_stop_ptr)
04363       ast_moh_stop_ptr(chan);
04364 }

void ast_uninstall_music_functions ( void   ) 

Definition at line 4338 of file channel.c.

References ast_moh_cleanup_ptr, ast_moh_start_ptr, and ast_moh_stop_ptr.

04339 {
04340    ast_moh_start_ptr = NULL;
04341    ast_moh_stop_ptr = NULL;
04342    ast_moh_cleanup_ptr = NULL;
04343 }


Generated on Mon Mar 31 07:41:59 2008 for Asterisk - the Open Source PBX by  doxygen 1.5.1