通过Graph API创建Teams在线会议部分用户返回OnlineMeetingProvider.Unknown
问题原因及排查方向
你遇到的仅更换用户ID就出现在线会议生成失败的问题,均为用户级别的服务配置异常导致,可按以下顺序排查:
- Teams服务未激活
持有Teams Exploratory许可证的用户如果从未手动登录过Teams客户端或网页端,M365后台不会自动初始化Teams会议相关的服务配置,调用Graph API时会直接生成普通日历事件,返回OnlineMeetingProvider为unknown、OnlineMeeting字段为null。让3个异常用户登录一次Teams,等待15分钟左右再重试即可解决大部分此类问题。 - Exchange Online配套配置异常
Teams在线会议的元数据需要写入用户的Exchange Online日历存储,出现异常时可检查以下配置:- 这3个用户是否同时分配了有效的Exchange Online许可证,仅持有Teams许可证无法完成在线会议生成
- 用户邮箱是否处于正常启用状态,无配额满、后台搬迁、临时禁用等异常
- 用户日历的权限配置未限制应用侧写入会议元数据
- Teams会议策略限制
检查租户内分配给这3个用户的Teams会议策略,是否关闭了以下两个权限:AllowPrivateMeetingScheduling:允许用户安排私人会议AllowOutlookAddIn:允许通过Outlook加载项/接口调度会议
任意一个权限被禁用都会导致Graph API无法生成在线会议。
- 许可证同步异常
如果前台可见许可证状态正常,可能是后台许可证同步存在延迟,可尝试撤销3个用户的Teams Exploratory许可证,等待5分钟后重新分配,用户登录激活后再重试接口调用。
关联参考信息
你使用的创建请求代码如下:
// Create client var graphServiceClient = CreateGraphClient(); // Build event var newEvent = new Event() { Subject = subject, Body = new ItemBody() { ContentType = BodyType.Text, Content = body }, Start = startDate, End = endDate, IsOnlineMeeting = true, Attendees = attendees == null ? null : GetAttendees(attendees), OnlineMeetingProvider = OnlineMeetingProviderType.TeamsForBusiness };
错误响应截图:
内容的提问来源于stack exchange,提问作者matt sharp
相关产品推荐
相关产品推荐

