Asterisk.org: Developer Documentation (28 Oct 2009)

Wed Oct 28 15:49:06 2009

## 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 *, 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, char *mclass)
void | ast_moh_stop (struct ast_channel *chan)
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 *, char *) | start_ptr,
|  | void(*)(struct ast_channel *) | stop_ptr,
|  | void(*)(struct ast_channel *) | cleanup_ptr |
| ) |  |  |

Definition at line 3902 of file channel.c.

References ast_moh_cleanup_ptr, ast_moh_start_ptr, and ast_moh_stop_ptr.

Referenced by load_module(), and reload().

    03906 {
    03907    ast_moh_start_ptr = start_ptr;
    03908    ast_moh_stop_ptr = stop_ptr;
    03909    ast_moh_cleanup_ptr = cleanup_ptr;
    03910 }

void ast_moh_cleanup | ( | struct ast_channel * | chan | ) |

Definition at line 3938 of file channel.c.

References ast_moh_cleanup_ptr.

Referenced by ast_channel_free().

    03939 {
    03940    if(ast_moh_cleanup_ptr)
    03941         ast_moh_cleanup_ptr(chan);
    03942 }

int ast_moh_start | ( | struct ast_channel * | chan,
|  | char * | mclass |
| ) |  |  |

Turn on music on hold on a given channel

Definition at line 3920 of file channel.c.

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

Referenced by __login_exec(), agent_hangup(), ast_park_call(), builtin_atxfer(), builtin_blindtransfer(), cb_events(), conf_run(), dial_exec_full(), do_parking_thread(), handle_request(), handle_setmusic(), moh0_exec(), moh1_exec(), moh3_exec(), pbx_builtin_waitexten(), process_sdp(), queue_exec(), retrydial_exec(), say_periodic_announcement(), say_position(), socket_read(), zt_handle_event(), and zt_hangup().

    03921 {
    03922    if (ast_moh_start_ptr)
    03923       return ast_moh_start_ptr(chan, mclass);
    03924
    03925    if (option_verbose > 2)
    03926       ast_verbose(VERBOSE_PREFIX_3 "Music class %s requested but no musiconhold loaded.\n", mclass ? mclass : "default");
    03927
    03928    return 0;
    03929 }

void ast_moh_stop | ( | struct ast_channel * | chan | ) |

Turn off music on hold on a given channel

Definition at line 3932 of file channel.c.

References ast_moh_stop_ptr.

Referenced by __zt_exception(), agent_new(), attempt_transfer(), builtin_atxfer(), builtin_blindtransfer(), cb_events(), conf_run(), dial_exec_full(), do_parking_thread(), handle_hd_hf(), handle_request(), handle_request_bye(), handle_request_refer(), handle_setmusic(), misdn_transfer_bc(), moh0_exec(), moh1_exec(), moh4_exec(), park_exec(), pbx_builtin_waitexten(), process_sdp(), queue_exec(), retrydial_exec(), say_periodic_announcement(), say_position(), socket_read(), ss_thread(), try_calling(), zt_handle_event(), and zt_hangup().

    03933 {
    03934    if(ast_moh_stop_ptr)
    03935       ast_moh_stop_ptr(chan);
    03936 }

void ast_uninstall_music_functions | ( | void |  | ) |

Definition at line 3912 of file channel.c.

References ast_moh_cleanup_ptr, ast_moh_start_ptr, and ast_moh_stop_ptr.

    03913 {
    03914    ast_moh_start_ptr = NULL;
    03915    ast_moh_stop_ptr = NULL;
    03916    ast_moh_cleanup_ptr = NULL;
    03917 }