如何读取本地 MS Teams 状态

Sma*_*Dev 5 api azure-active-directory .net-core microsoft-teams microsoft-graph-api

我正在尝试实现硬件忙灯来显示我的 Microsoft Teams 状态,以便我的家人在我开会时不会进入我办公室的房间。我希望实现类似的东西:

此设置的唯一问题是我无法获取 MS Teams状态。

最好的方法是使用MS Graph Presence API,但我的问题是这是一个公司帐户,我没有(而且我不可能拥有)主订阅中的应用程序授予所需的范围:存在。阅读

所以我尝试了不同的想法,但最终没有成功:

  • 检查本地正在运行的进程
  • 检查 MS Teams 是否公开任何本地 API
  • 检查是否有可用的 CLI

这似乎是一个简单的想法,我的意思是,当我输入此消息时,我现在就看到状态,我也可以做一个应用程序来获取任务栏的屏幕截图并从图标中提取状态,但这真的是吗?我唯一的选择

Phi*_*p88 7

我想我找到了一些对你来说有趣的东西。

C:\Users\user\AppData\Roaming\Microsoft\Teams 
Run Code Online (Sandbox Code Playgroud)

你会发现一个名为logs.txt的文件

在此文件中,您可以看到当前状态是否发生变化

(current state: Available -> DoNotDisturb)
Run Code Online (Sandbox Code Playgroud)

我会用 php 或 VB 编写一个脚本(取决于您的技能),每分钟读取该logs.txt 文件并检查最后一个“当前状态”行。

  • 令人难以置信,如此简单的解决方案!谢谢,我会走这条路,即使不能保证这个文件在 MS Teams 的未来版本中仍然存在。 (2认同)