ConfBridge Profiles -- User, Bridge, and Menu

Configuration Asterisk 18+ -- Last reviewed 2026-03-29 confbridge conference configuration profiles dtmf Found this useful? Upvote it. ×

ConfBridge Profiles: User, Bridge, and Menu

ConfBridge uses three profile types to control conference behavior: user profiles (per-participant settings), bridge profiles (room-level settings), and menus (DTMF key mappings). These are defined in confbridge.conf and referenced by name in the dialplan.

User Profiles (confbridge.conf)

[default_user]
type = user
admin = no
startmuted = no
announce_user_count = yes
announce_join_leave = yes
music_on_hold_when_empty = yes
music_on_hold_class = default
dtmf_passthrough = no
wait_marked = no
end_marked = no

[admin_user]
type = user
admin = yes
marked = yes
announce_user_count = yes
announce_join_leave = yes

Bridge Profiles (confbridge.conf)

[default_bridge]
type = bridge
max_members = 50
record_conference = no
internal_sample_rate = auto
mixing_interval = 20
video_mode = none
; sound_join = confbridge-join
; sound_leave = confbridge-leave

[recorded_bridge]
type = bridge
max_members = 20
record_conference = yes
record_file_timestamp = yes
mixing_interval = 20

DTMF Menu Profiles (confbridge.conf)

[user_menu]
type = menu
*1 = toggle_mute
*4 = decrease_listening_volume
*6 = increase_listening_volume
*7 = decrease_talking_volume
*9 = increase_talking_volume
*8 = leave_conference
* = playback_and_continue(conf-usermenu)

[admin_menu]
type = menu
*1 = toggle_mute
*2 = admin_toggle_conference_lock
*3 = admin_kick_last
*4 = decrease_listening_volume
*6 = increase_listening_volume
*7 = decrease_talking_volume
*9 = increase_talking_volume
9 = participant_count

Using Profiles in Dialplan

[conferences]
; Basic conference: default user, default bridge, user menu
exten => *85,1,Answer()
 same => n,ConfBridge(${EXTEN:1},default_bridge,default_user,user_menu)
 same => n,Hangup()

; Admin joins with admin profile and admin menu
exten => *86,1,Answer()
 same => n,ConfBridge(${EXTEN:1},default_bridge,admin_user,admin_menu)
 same => n,Hangup()

How it works

  1. ConfBridge(room,bridge_profile,user_profile,menu): All four arguments are optional. If omitted, default_bridge and default_user are used. The room name can be anything. rooms are created on first join and destroyed when empty.
  2. User profiles: admin = yes grants admin privileges (kick users, lock conference). marked = yes designates the user as a "marked" participant. Other users with wait_marked = yes will hear music on hold until a marked user joins.
  3. Bridge profiles: max_members caps the room size. record_conference = yes auto-records from the first join to the last leave. video_mode controls video distribution (follow_talker, sfu for multi-stream, none to disable).
  4. Menu profiles: Map DTMF sequences to actions. Actions include toggle_mute, admin_kick_last, admin_toggle_conference_lock, leave_conference, playback(), dialplan_exec(), and volume controls.
  5. playback_and_continue: Plays a prompt while continuing to collect DTMF input. Use this for a "help" key that reads the menu options without interrupting DTMF detection.

Tips

User Notes

No notes yet. Be the first to contribute a tip or example.

Contribute a note

Share a tip, gotcha, or practical example. Keep it under 2000 characters. No questions (use the Asterisk community forums for support). Wrap code in backticks.

Moderated before publishing. Email never shown.

Related Snippets