Skip to main content


The meeting.recording object can be used start and stop recordings in a meeting. You can also get the current status of a recording using this API.

The meeting.recording object has the following properties:

  • recordingState: Indicates the current recording state of the meeting.

Start a recording

To start a recording, you can call the start method in the meeting.recording object. The valid states are IDLE, STARTING, RECORDING, and STOPPING.


Stop a recording

Call meeting.recording.stop() to stop the active recording.


Pause a recording

Call meeting.recording.pause() to pause the active recording.


Resume a paused recording

Call meeting.recording.resume() to resume the paused recording.


Get active recording state

The meeting.recording.recordingState property describes the current state of the recording. The valid states are IDLE, STARTING, RECORDING, and STOPPING.

Listen to recording state changes

The changes to meeting.recording.recordingState can be listened by implementing onMeetingRecordingStateUpdated from DyteRecordingEventsListener. You can attach this observer by calling meeting.addRecordingEventsListener(listener).

meeting.addRecordingEventsListener(object : DyteRecordingEventsListener {
override fun onMeetingRecordingStarted() {
// on recording started

override fun onMeetingRecordingEnded() {
// on recording ended

override fun onMeetingRecordingStateUpdated(state: DyteRecordingState) {
// on recording state update

override fun onMeetingRecordingStopError(e: Exception) {
// when local user tried to end recording but it fails

override fun onMeetingRecordingPauseError(e: Exception) {
// error in pausing the active recording

override fun onMeetingRecordingResumeError(e: Exception) {
// error in resuming a paused recording