Confbridge participant management

Hi,
Any suggestion for managing participants.
In our classroom case we want only one participant should active and able to speak at a time and rest should be in mute mode, or how can I fetch channel id to assign with variable to try to implement with dialplan.

thanks

How is the speaker determined?

  1. Choose off a web page?
  2. Caller presses a key which enters them into a queue of ‘who speaks next?’
  3. Round robin?
  4. Least recently spoke?

Can the moderator yank the ‘talking stick?’

Fetching IDs and setting talk state could be an AGI and/or AMI kind of thing.

Thanks @sedwards for your reply.
let me share my exercise to make easy and without moderator involvement to manage students.

[fancybridge6]
type=bridge
max_members=4
mixing_interval=10
internal_sample_rate=auto
record_conference=no

[fancyuser6]
type=user
music_on_hold_when_empty=yes
admin=yes
music_on_hold_class=default
announce_user_count=yes
announce_user_count_all=yes
;announce_join_leave=yes
;announcement=
;wait_marked=yes
startmuted=yes
dsp_drop_silence=yes
denoise=yes

[fancy_user_menu2]
type=menu
;*=playback_and_continue(conf-usermenu)
;*1=toggle_mute
;'1=toggle_mute
*2=playback(beep)
2=playback(beep)
6=dialplan_exec(addaudio,77777,1)
7=dialplan_exec(addaudio1,77777,1)

extension.conf
exten => 6661,1,ConfBridge(601,fancybridge6,fancyuser6,fancy_user_menu2)

[addaudio]
exten => 77777,1,Playback(long-buzzer1)
;exten => 77777,n,Set(CONFBRIDGE(bridge,record_file)=/var/spool/asterisk/test1.wav)
exten => 77777,n,System(asterisk -x ‘confbridge record start 601’)
exten => 77777,n,System(asterisk -x ‘confbridge unmute 601 ${CHANNEL}’)
exten => 77777,n,System(echo -e “sleep 1m\nasterisk -x ‘confbridge mute 601 ${CHANNEL}’\nasterisk -x ‘confbridge record stop 601’” > /tmp/abcdef.sh)
;exten => 77777,n,System(/usr/bin/sh /tmp/abcdef.sh)
;same => n,Playback(beep)
;same => n,System(asterisk -x “confbridge list 1234”)

[addaudio1]
;exten => 77777,1,Playback(long-buzzer1)
exten => 77777,1,System(asterisk -x ‘confbridge record stop 601’)
exten => 77777,n,System(asterisk -x ‘confbridge mute 601 ${CHANNEL}’)

My need is like all participant should mute and only one by one participant can speak by press 6 and 7 as u can see only for 1 or 2 minutes. And other important need is only one participant can enter for speaking by pressing 6. Hope you understand my requirement.