TryVox

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

ParameterTypeRequiredDefaultDescription
namestringyesUnique conference room name
mutedbooleannofalseJoin with microphone muted
start_on_enterbooleannotrueStart conference when this participant joins
end_on_exitbooleannofalseEnd conference when this participant leaves
max_participantsintegerno250Maximum number of participants
wait_urlstringnoVoxML URL to execute while waiting
status_callback_urlstringnoURL to POST conference events to
recordbooleannofalseRecord the conference
beepbooleannotruePlay 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 started
  • conference-end - Conference ended
  • participant-join - Participant joined
  • participant-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_participants to prevent overload
  • Enable record for important meetings
  • Use end_on_exit for moderators/hosts
  • Implement status_callback_url for monitoring
  • Use wait_url to provide updates to waiting participants
  • Consider disabling beep for large conferences

On this page