Uses a Raspberry Pi, Python, and the webexteamssdk and API to create an IoT "status light" reflecting your real-time presence status in Cisco Webex Teams.
In early 2020, nearly the entire world had to shift to working 100% from home due to coronavirus risks. I have a young child, My home has a very "open" design, and my office HAS NO DOOR. My family tip-toed over to my office asking "are you in a meeting?" throughout the day, not knowing if they were interrupting my workday.
As I've deployed Webex Teams for my company as our standard collaboration platform, and have already been making extensive use of the Teams API (via Powershell infact), I found a way to leverage my "status" to let my family know whether I'm interruptable or not using a real-world visual indicator that could be placed somewhere in plain view.
Reference this article on how to wire up your breadboard or solder together your components. The following GPIO pins are used:
A resistor should be run between each LED leg (except 5V) and the GPIO to protect the LED. Red gets a different value resistor, so check that guide.
Actually really easy for you! I've scripted out most of the setup process to bootstrap itself into place.
id
from the response shownwget https://raw.githubusercontent.com/matthewf01/Webex-Teams-Status-Box/master/setup.sh
sh setup.sh
The setup.sh shell script I created is awesome and performs the following for you:
To test, from Terminal run: python /Home/pi/Documents/webexteams.py
After a moment, you should see the status codes being returned from the Webex Teams API. CTRL+C
to break and stop the test run.
Verify your LED is lighting up properly at this time. Double-check that the GPIO pins you've connected match the webexteams.py
script.
The Python script has been set via systemd service to run at startup.
Restart the Raspberry Pi and confirm the script has started automatically.
Enjoy your new Webex Teams Status light, and teach your family what the color-codes mean! Red = do not disturb me, and green = I'm working but you can come into the room. Blue means inactive (so I'm not working).
Code Exchange Community
Get help, share code, and collaborate with other developers in the Code Exchange community.View Community