Detecting incoming Microsoft Teams call in arduino

Hi there,

I'm trying to detect an incoming call in microsoft teams in arduino.

I did a lot of research on google but with no success. I just found how to replace mouse actions (like press mute button).

Does any one have a hint on how it might be done?


Hello Alberto,

there is (at least in my opinion) no easy way to check that.
I wrote a service, which checks the Teams application every few hundred miliseconds.
But neither the window, nor the process gives you any hint if you are on the phone or not.
So I ended up checking the notifyicon´s tooltip in the taskbar. But you have to change it to be displayed all the time (Info: Symbols to show on taskbar...).
With that, it´s possible to get the current state like:

  • Available
  • On phone
  • Presentation
  • New Activity
  • In meeting

What I did then, was to react on every state to unmute my WiFi Radio, except on "New activity" or "In a meeting".
Mute is set on "On Phone" or "Presentation".

Another way would be to use Microsoft Graph to check your current state online. But this would require a quite powerful access to you companies Azure Online domain (if you have any).
I´m not allowed to get such a deep access, so I did it the way described above.
To go the same way, you have to transfer the data from your application/service to the Arduino via serial. I just send out a mute command to a webservice.

A little crude way would be to connect the laptop or computer's headphones output via a suitable voltage divider and rectifier to the arduino analog pin. Then playback the ringing tone for a fixed volume and set the arduino code to do whatever you want when the level exceeds a certain threshold.

Hope the above is clear...pardon the bad handwriting ...

(1) Is using an external comparator to generate a digital high (or low) which feeds the arduino's digital input. The comparator compares the level against a fixed threshold (Vref) to change state when it is exceeded.

(2) Is simply using arduino's analog input, and threshold detection is done in code.

@alberto92, your topic has been moved to a more suitable location on the forum. Installation and Troubleshooting is not for problems with (nor for advise on) your project :wink: See About the Installation & Troubleshooting category.