Developing Zoom App to Record and Analyze Short Video Clips

Hi everyone,

I am looking to develop a Zoom application that records a 5-second video of each participant when they join a call. The video should be saved as raw data from the camera feed and then uploaded to my analysis modules, with the results displayed on a dashboard.

I’m not sure whether I need to use the Meeting SDK or the Video SDK for this purpose. From what I understand, the Video SDK might offer more control over raw video data. Could someone confirm this and provide any insights or resources on how to achieve this functionality?

Any guidance on where to start, or examples of similar implementations, would be greatly appreciated.

Thank you!

Hi @itay,

For this specific use-case, the Video SDK is your best option, as it offers the most ability to customize your application. You can use the record method to begin recording at the userAdded event, then implement something like a setTimeOut to stop the recording at a specified time. Keep in mind, access to raw data is only available on the following patforms: android, iOS, linux, mac, windows.

You’d then add in your functionality (via an API, for example) to upload the saved data to your module. Hope this helps, but please let us know if you have further questions.

Thanks,
Rehema

2 Likes

@itay, if your participants are joining a Zoom call from the normal Zoom client, you would need to use the Meeting SDK to access the raw data.

The Video SDK lets you build your own video conferencing solution, it doesn’t let you hook into the raw data from a Zoom meeting.

To use the Meeting SDK to get the raw video stream from the Zoom meeting, you would need to build a Meeting Bot. You can check out the Meeting Bot starter kit from Zoom as a starting point, linked below :point_down:

1 Like

Hi Rehema,

Thank you for getting back to me. I apologize if my initial post wasn’t clear. I am looking to build an app/plugin that can be published on the Zoom Marketplace. My goal is to have a dashboard integrated within the Zoom UI to showcase the results, which should be accessible to anyone using the plugin.

From my understanding, the Video SDK is more suited for building standalone applications than integrated Zoom ecosystem plugins. Please confirm if my understanding is correct. If there are any other resources or suggestions for achieving this within the Zoom ecosystem, I would greatly appreciate it.

Thanks,
Itay

Hi Amanda,

Thank you for the information. I did try working with the recall bot, and while it’s a great tool, it doesn’t fit perfectly with my vision of a seamless plugin. I want to avoid using a bot to join the call, as this adds a bit of friction and complexity to the user experience. Additionally, the recall bot records the entire call, whereas I need to record an about 5-second video of each participant individually.

If I am unable to achieve this without using a bot, I will certainly consider the recall bot as a fallback.

Thanks,
Itay

Hey @itay, you can have the bot record for only 5 seconds by calling the Remove Bot endpoint after 5 seconds.

To get the separate video recordings per participant you would call the Retrieve Recordings endpoint.

However, if you don’t want a bot in the call, you could use Zoom’s native recording functionality, and it should also be able to record separate video recordings per participant if you configure that in your Zoom settings.

2 Likes

Hi @amanda-recallai ,

First of all, thank you. I did some searching, and it seems you can’t go around having a user or a bot to get data and recordings from the call.

I would like to talk with you more, if possible, about building such an application and making it easy for people to use.

I think the recall bot is the best option as it works with all of the big platforms. I will confirm with you if certain things are possible. I first want to start with Zoom and build a dashboard I can put on the marketplace.

When I join a call, I would like to immediately start recording the people in the call, each participant individually, with raw data. If a new participant joins, the bot will join again, record, and leave. After that, I will process the recordings with my API and display the results.

It should all be seamless, Live, and automatic; the user only needs to activate the plugin, and he will get the results after 5-10 seconds while on the call.

Looking forward to your insights.

Thank you!

@itay, this is totally possible and here is how you would do it.

  1. When you create the Zoom marketplace app, you should make sure you set up your app to receive webhooks, so you can listen to when participants join meetings.
  2. When you get a webhook notification that a participant joins a call, call the Create Bot endpoint with the meeting URL and a bot will join the call and start recording.
  3. After 5-10 seconds, call the Remove Bot endpoint.
  4. You will receive a done webhook event from Recall.ai when the recording is available. You should receive this webhook within 10 seconds after the bot leaves the call.
  5. Call the Retrieve Bot endpoint after you receive the done webhook. The response will return the video MP4 recording of each participant.

However, without knowing your exact use case it’s harder to know if a different method would work better, so if you could share your specific use case we can help more.

If you don’t want to share your use case on a public forum, you can email support@recall.ai and we are happy to help.

1 Like