ZoomCord
Tagline
Zoom meetings, a command away!
Inspiration
Setting up Zoom meetings is a tedious process. It involves so many steps!?
- Opening Zoom
- Creating a meeting
- Clicking on participants
- Copying the invite link
- Sending to everyone
At the MLH Fellowship, we use Zoom Video Conferencing platform for most regular Pod events, activities & workshops, and pair programming among small groups of participants. All the MLH staff and Pod mentors have access to their own Zoom license to host meetings. Also, most of the real-time communication for the MLH fellowship takes place over Discord. So, our team decided to build a discord bot that integrates with Zoom API that helps schedule zoom meetings through the discord app. This has main two purposes:
- Inviting everyone to a zoom meeting is as easy as “/zoom” command.
- Streamlining the entire workflow through Discord, so the fellows do not have to search their emails for invite links.

What it does
ZoomCord is a Discord bot to streamline your entire workflow within Discord, So, if your company or team is using Discord as the central communication platform with meetings on Zoom, then ZoomCord will let you manage those meetings via Discord. So, it’s as easy as typing the “/zoomcord” command and it will automatically create and share the meeting link with everyone.
- Start or join Zoom Meetings with one command.
- See real-time how long the Zoom Meeting has been running and its current status right in Discord.
- Keep an eye on who joins or leaves your Zoom Meeting.
- See the meeting and participant summary for your Zoom Meeting after it ends.
How we built it
The bot is written entirely in Julia and is being served using a server written in Genie.jl. Genie is a full-stack MVC web framework for developing modern web applications in Julia. There are two versions of the bot, one using JWT authentication meant for hackathon purposes and one using OAuth meant for production uses. The OAuth workflow requires a manual approval process from Zoom API, much like submitting an application to Apple’s AppStore or Google’s PlayStore which takes time.

The OAuth version of the bot is containerised using Docker, being served over HTTPS using Caddy since it is a Zoom API requirement. We are using DigitalOcean for managing the deployment of both the web service and discord bot.
Challenges we ran into
One of our team members had no previous experience with Julia so, it was a whole new world for him. Another one did not have any previous expertise in Julia Web. Learning new things was definitely a challenge we welcomed wholeheartedly, however, Julia packages had little to none documentation. Googling and Stackoverflow did not turn up results to our error as well, because, Julia is meant for Data Science & Scientific Machine Learning and Julia Web is a second thought. One of the packages, Discord.jl was not even officially published but that was all we had to work with if we wanted to finish the project by this hackathon.
So, our workflow involved actually combing through the codebase to look up function definitions and how to use them. After learning and finishing the project, we can definitely say, Julia is quite a nice language for web development, and we definitely intend to continue the bot moving forward!!
Accomplishments that we're proud of
The biggest accomplishment of the team was for our member, Makrand for getting familiar with Julia and Julia Web in the span of just one week and completing the project with us with no previous experience in Julia!! We had a extremely exponential learning phase, and after a while, it became fun combing through the codebase to find answers as well. Now, we feel confident enough to tackle the codebases of big open source projects to work our way to contribute to them successfully!
What's next for ZoomCord
Our future scope for the bot is:
- See real-time how long the Zoom Meeting has been running and its current status right in Discord.
- Keep an eye on who joins or leaves your Zoom Meeting.
- See the meeting and participant summary for your Zoom Meeting after it ends.
Most important for all,
- Continue hacking! :D
Built With
- discord.jl
- genie
- julia


Log in or sign up for Devpost to join the conversation.