Conference
Join the caller into a named conference room.
Conference
The Conference verb joins the caller into a named conference room, allowing multiple participants to talk simultaneously.
Example
{
"voxml_version": "1.0",
"instructions": [
{
"verb": "Say",
"text": "Joining you to the team meeting."
},
{
"verb": "Conference",
"name": "team-meeting-2026-04-09"
}
]
}Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| name | string | yes | — | Unique conference room name |
| muted | boolean | no | false | Join with microphone muted |
| start_on_enter | boolean | no | true | Start conference when this participant joins |
| end_on_exit | boolean | no | false | End conference when this participant leaves |
| max_participants | integer | no | 250 | Maximum number of participants |
| wait_url | string | no | — | VoxML URL to execute while waiting |
| status_callback_url | string | no | — | URL to POST conference events to |
| record | boolean | no | false | Record the conference |
| beep | boolean | no | true | Play beep when participants join/leave |
Basic Conference
Create or join a conference room:
{
"verb": "Conference",
"name": "support-room-1"
}Conference rooms are created automatically when the first participant joins. The name parameter identifies which room to join.
Muted Participants
Join with microphone muted (listen-only mode):
{
"verb": "Conference",
"name": "webinar-2026",
"muted": true
}Conference Lifecycle
Start on Enter
By default, conferences start when any participant joins. To require a specific participant (e.g., moderator) to start the conference:
{
"verb": "Conference",
"name": "moderated-meeting",
"start_on_enter": true
}For regular participants:
{
"verb": "Conference",
"name": "moderated-meeting",
"start_on_enter": false,
"wait_url": "https://example.com/conference-wait"
}The wait_url returns VoxML to play while waiting for the conference to start:
{
"voxml_version": "1.0",
"instructions": [
{
"verb": "Say",
"text": "Please wait. The conference will begin when the moderator joins.",
"loop": 0
}
]
}End on Exit
End the entire conference when a specific participant (e.g., host) leaves:
{
"verb": "Conference",
"name": "team-call",
"end_on_exit": true
}When this participant hangs up, all other participants are disconnected.
Recording
Record the entire conference:
{
"verb": "Conference",
"name": "client-meeting",
"record": true,
"status_callback_url": "https://example.com/conference-events"
}Status Callbacks
Monitor conference events:
{
"verb": "Conference",
"name": "team-call",
"status_callback_url": "https://example.com/conference-status"
}TryVox POSTs events to status_callback_url:
conference-start- Conference startedconference-end- Conference endedparticipant-join- Participant joinedparticipant-leave- Participant left
Example callback payload:
{
"conference_name": "team-call",
"event": "participant-join",
"call_uuid": "call_abc123",
"participant_count": 3,
"timestamp": 1234567890
}Maximum Participants
Limit the number of participants:
{
"verb": "Conference",
"name": "small-meeting",
"max_participants": 10
}When the limit is reached, additional callers will not be able to join.
Join/Leave Beeps
Disable beeps when participants join or leave:
{
"verb": "Conference",
"name": "quiet-conference",
"beep": false
}Use Cases
Team Meeting
{
"verb": "Conference",
"name": "daily-standup",
"record": true,
"beep": true,
"max_participants": 20
}Moderated Webinar
Host configuration:
{
"verb": "Conference",
"name": "webinar-april-2026",
"start_on_enter": true,
"end_on_exit": true,
"record": true
}Attendee configuration:
{
"verb": "Conference",
"name": "webinar-april-2026",
"muted": true,
"start_on_enter": false,
"wait_url": "https://example.com/webinar-wait"
}Support Conference
{
"verb": "Conference",
"name": "support-escalation-123",
"status_callback_url": "https://example.com/track-support",
"record": true,
"max_participants": 5
}Best Practices
- Use unique, descriptive conference names
- Include date/time in name for scheduled meetings
- Set
max_participantsto prevent overload - Enable
recordfor important meetings - Use
end_on_exitfor moderators/hosts - Implement
status_callback_urlfor monitoring - Use
wait_urlto provide updates to waiting participants - Consider disabling
beepfor large conferences