Stream Deck Plugin for Zoom
Last update: 2021-03-04
After getting a Stream Deck earlier this year, I built a way to control my Zoom meetings with it. For one, this sent keyboard shortcuts directly to the Zoom client to toggle mute and video and had the ability to leave a meeting with the press of a (physical) button. There was a drawback: the SD buttons didn’t synchronize with the Zoom client, meaning the button could show a muted icon, while the meeting was not muted. After doing some research, I decided to solve that with a native Stream Deck Plugin for Zoom.
If you appreciate this plugin, you can thank me by buying me a coffee. 😉
The plugin has the following actions available:
- Toggle your mute status
- Toggle your video
- Toggle sharing; bring up the start share window, or stop sharing
- Bring the Zoom client to the front and focus on it
- Leave a meeting. If you’re the host, end the meeting
- Cloud and local record toggle
- Mute all participants & Ask them to unmute
- MacOS only: Custom shortcuts
Currently, this Zoom plugin works on macOS and Windows. It’s using AppleScript to detect the status of the buttons and UI automation on Windows.
Capabilities – Windows
This plugin uses UI automation to scan the Zoom application for specific words (i.e., “currently unmuted”, or “Start Video”). If those words are not there (i.e., because you’re using a different language than English), it will not detect it. Please switch Zoom to the English version for now.
The plugin controls the Zoom actions by sending keyboard shortcuts to the Zoom client. Currently, these are hard coded to the defaults of Zoom. Meaning, if you change the shortcuts, the plugin won’t work. Leave the shortcuts as their defaults for now.
Capabilities – macOS
This plugin uses AppleScript to scan the Zoom menu items for specific words and clicks the menu items to control Zoom. It defaults to the English menu items and if you’re using a different language, you need to configure the right menu item names for each action. Here’s an example for German:
In the above example, the German menu names for Mute Audio and Unmute Audio are filled out in the fields. The Meeting Menu is the first level of the menu. Here’s how it looks in the menu itself:
Again, if you’re using Zoom in a language different from English, you need to configure all actions with the custom menu names.
I’d like to start a collection of menu names in different languages, so people could copy and paste from this page. If you use this function, please send me the menu names for your language and I’ll put them on here.
To install this plugin, download it from the StreamDeck App Store. Go to More Actions, and search for Zoom.
Before adding the actions to your Stream Deck, make sure the keyboard shortcuts are marked as global. Here’s a screenshot of how it should look:
After installing the plugin, it will ask for Accessibility permissions, which it needs to control the Zoom client.
Make sure Stream Deck is selected in the system preferences:
If the popup does not present itself, add the Stream Deck app manually to the Accessibility by using the + icon.
Now you’re ready to add the Zoom actions to your Stream Deck profile of choice and start using it!
Here are a few tips on troubleshooting:
- Yellow triangle when pushing a button: this means Stream Deck can’t contact the plugin. Restarting the Stream Deck application usually fixes this.
- Windows: DLL warnings (VCRUNTIME140.dll): this means the Visual C++ Redistributable for Visual Studio is not installed on your computer. Typically, it is there by default, but some configurations might not have it. Download and install it from Microsoft: 32bit or 64bit
- macOS slowdown with multiple users on the same system, all running Stream Deck. There’s a weird slowdown or reoccurring freeze that happens on macOS when there are multiple instances of the Stream Deck software running with the plugin. I think this is a macOS bug, but need to do some research. For now, only have 1 instance of the Stream Deck software running at all times.
This is a side-project and with 40k+ downloads, I can’t possibly support everyone. Please leave a comment in the section below and I’ll try to get to it. A couple tips and asks:
- Read this entire page before you do, because your problem might already be documented.
- Provide as much detail as you can, because I can’t do anything with “it doesn’t work”.
- Post in English.
- If you can’t be friendly about this free plugin in your post, don’t bother – it’ll get deleted.
To get a visual view of the installation procedure, check out this video. Note this was before the Stream Deck store had the plugin, so the initial install is a little bit different.