Webhooks and Events - Android
Event associated with Recording
- onRecordingStateChanged - Whenever meeting recording state changes, then 
onRecordingStateChangedevent will trigger. 
- Kotlin
 - Java
 
private val meetingEventListener: MeetingEventListener = object : MeetingEventListener() {
  override fun onRecordingStateChanged(recordingState: String) {
    when (recordingState) {
        "RECORDING_STARTING" -> {
            Log.d("onRecordingStateChanged", "Meeting recording is starting")
        }
        "RECORDING_STARTED" -> {
            Log.d("onRecordingStateChanged", "Meeting recording is started")
        }
        "RECORDING_STOPPING" -> {
            Log.d("onRecordingStateChanged", "Meeting recording is stopping")
        }
        "RECORDING_STOPPED" -> {
            Log.d("onRecordingStateChanged", "Meeting recording is stopped")
        }
    }
  }
}
override fun onCreate(savedInstanceState: Bundle?) {
  //...
  // add listener to meeting
  meeting!!.addEventListener(meetingEventListener)
}
private final MeetingEventListener meetingEventListener = new MeetingEventListener() {
  @Override
  public void onRecordingStateChanged(String recordingState) {
      switch (recordingState) {
          case "RECORDING_STARTING":
              Log.d("onRecordingStateChanged", "Meeting recording is starting");
              break;
          case "RECORDING_STARTED":
              Log.d("onRecordingStateChanged", "Meeting recording is started");
              break;
          case "RECORDING_STOPPING":
              Log.d("onRecordingStateChanged", "Meeting recording is stopping");
              break;
          case "RECORDING_STOPPED":
              Log.d("onRecordingStateChanged", "Meeting recording is stopped");
              break;
      }
  }
}
@Override
protected void onCreate(Bundle savedInstanceState) {
  //...
  // add listener to meeting
  meeting.addEventListener(meetingEventListener);
}
Webhook associated with Recording
recording-starting
- A "Recording Starting" webhook is triggered when the recording process for a meeting is initiated.
 
Example
{
    "webhookType": "recording-starting",
    "data": {
        "meetingId": "jvsg-8rjn-j304",
        "sessionId": "613731342f27f56e4fc4b6d0",
    },
}
recording-started
- Recording started webhook will be received when successfully recording is started in meeting
 
Example
{
    "webhookType": "recording-started",
    "data": {
        "meetingId": "jvsg-8rjn-j304",
        "sessionId": "613731342f27f56e4fc4b6d0",
    },
}
recording-stopping
- A "Recording Stopping" webhook is triggered when the recording end process for a meeting is initiated.
 
Example
{
    "webhookType": "recording-stopping",
    "data": {
        "meetingId": "jvsg-8rjn-j304",
        "sessionId": "613731342f27f56e4fc4b6d0",
    },
}
recording-stopped
- Recording stopped webhook will be received when recording is successfully stopped in meeting.
 
Example
{
    "webhookType": "recording-stopped",
    "data": {
        "meetingId": "jvsg-8rjn-j304",
        "sessionId": "613731342f27f56e4fc4b6d0",
        "filePath" : "/encoded/videos/62d148951a1eb20029fc9b05.mp4",
        "fileUrl" : "https://cdn.videosdk.live/encoded/videos/62d148951a1eb20029fc9b05.mp4",
    },
}
recording-failed
- A "Recording Failed" webhook is generated when the recording process encounters an interruption or issue during either the starting or stopping phases.
 
Example
{
    "webhookType": "recording-failed",
    "data": {
        "meetingId": "jvsg-8rjn-j304",
        "sessionId": "613731342f27f56e4fc4b6d0",
    },
}
Got a Question? Ask us on discord

