从 C# 开始 Teams 通话

Posted

技术标签:

【中文标题】从 C# 开始 Teams 通话【英文标题】:Start Teams call from c# 【发布时间】:2022-01-19 08:01:45 【问题描述】:

我正在寻找一种从我自己的自定义应用程序中启动 Teams 呼叫的方法。 我们的应用程序有一大堆客户/供应商/...的电话号码,我想让我的用户选择只需单击应用程序中的按钮即可发起呼叫。 有没有人有关于如何做到这一点的好样本?

我知道在过去,使用 Skype 和 Lync 很容易做到这一点。他们只是有一个 SDK,您可以从您自己的应用程序中调用。 但是,当我尝试在 Teams 中寻找相同的东西时,我总是会看到围绕机器人的文档。如果您是该部分的新手,那会有点令人困惑:-)

所以主要问题是,如何使用自己的代码与 Teams 通话?拨打实际电话号码,而不是 Teams 帐户。

【问题讨论】:

这对你有用吗:***.com/questions/67031533/… 该方法有效。但同时它也会产生一些错误。如果这是唯一的出路,我可以使用它。但我正在寻找更清洁的方式来做这种事情。 idk 不确定从未研究过它,也不知道它是如何工作的,但您可以通过单击链接并使用浏览器启动团队来加入会议。也许它与电话号码类似,并且有一种无需打开浏览器即可直接触发团队的方法 Nvm。似乎它只是使用所需的参数启动 exe 有人暗示 Azure 通信服务。但这需要额外的许可费用。或者这是当今唯一的出路? 【参考方案1】:

没有此类 API 可用于创建调用。但是,您可以通过深层链接拨打电话。关注这个文档了解Deep linking to an audio or audio-video call

呼叫 VoIP 和 PSTN 组合用户https://teams.microsoft.com/l/call/0/0?users=<user1>,4:<phonenumber>

要进行音频通话,您可以执行以下操作 - https://teams.microsoft.com/l/call/0/0?users=<user1>,<user2>

要进行视频通话,您可以 - https://teams.microsoft.com/l/call/0/0?users=<user1>,<user2>&withVideo=true

用户 ID 字段支持 Azure AD UserPrincipalName,通常是电子邮件地址,或者在 PSTN 呼叫的情况下,它支持 pstn mri 4:。

它不会直接开始通话。而是显示如下弹出窗口 -

【讨论】:

以上是关于从 C# 开始 Teams 通话的主要内容,如果未能解决你的问题,请参考以下文章

Windows Mobile - 附加通话开始和记录通话

官方教程:通过NDI在vMix中使用Microsoft Teams视频通话

如何从 Delphi Android 应用程序开始视频通话?

创建teams会议里的“optional”是啥意思

黑莓 - 从应用程序管理电话会议?

语音通话开始时如何开始?