Do you have a standing meeting in a Zoom chat? Do you hate having to constantly
launch Zoom from the browser and deal with that window that they left open?
I sure did. From previous experience I know how you can create your own
application handlers - a common one that you might have used with Skype before
is something like tel:555-555-5555
, which will let you click on a link to
call someone.
When you launch Zoom from the browser, at least on Linux, it uses xdg-open
to
open Zoom (on Windows it's configured in the registry, IIRC). In order to
figure out how to make this work on Linux I needed to see what the URL was that
it was trying to open. Neither Chrome nor Firefox had that information handily
available (and I had to reset my Chrome because I already told it to always
allow xdg-open from zoom), so I resorted to some trickery. On Firefox I could
choose a different application to launch the link, so I created a very simple
Python script:
| #!/usr/bin/env python3
import sys
with open('args.txt', 'w') as f:
f.write(' '.join(sys.argv))
|
That would write the command line arguments out. As it turns out, the argument
looks like this:
zoommtg://zoom.us/join?action=join&confid=<some ID here>&confno=<the
important bit>&zc=0&pk=&mcv=0.92.11227.0929&browser=firefox
If you have some zoom link like https://zoom.us/j/1234567 then all you need is
the 1234567 (that's the important bit).
Now you just have to create a way to run the command:
xdg-open zoommtg://zoom.us/join?action=join&confno=1234567
If you want to be able to pass in the conference # then you can make your tool
do that. I did that with my fish shell, so I can run:
And tada! I'm in that zoom meeting. I did that by creating
~/.config/fish/functions/zoomy.fish
and putting this in there:
function zoomy
xdg-open "zoommtg://zoom.us/join?action=join&confno=$argv"
end
That's all it took. I also have a daily standup, so I created another command:
function standup
xdg-open "zoommtg://zoom.us/join?action=join&confno=1234567"
end
And now all I have to do is type standup
into my terminal when it's time and
zoom will pop up. I guess if I were feeling really excited I could even setup
a cron job to launch zoom for me at the appropriate time. Or if I was really
excited I could use vdirsyncer to
sync my Google calendar events, mine them for the Zoom link and have it install
cronjobs to launch the meetings automatically for me.
But for now, typing the command works.