我正在使用Node.js Google客户端API创建Google日历活动,我正在请求使用以下对象使用该事件创建会议:
var conferenceData =
{
createRequest:
{
requestId: uuid(),
conferenceSolutionKey:
{
type: "hangoutsMeet"
}
}
}
我从服务器上得到一个错误说:Error: Invalid conference type value.
这没有任何意义,因为根据this documentation hangoutsMeet
是可接受的值:
可能的值是:
- 环保对消费者的“eventHangout”(http://hangouts.google.com)
- 适用于G Suite用户的经典环聊的“eventNamedHangout”(http://hangouts.google.com)
- 环聊会面的“HangoutsMeet”(http://meet.google.com)
任何人都知道它为什么会返回那个错误?
你的uuid()是否返回一个字符串?
并尝试像这样的smth:
const event = {
"conferenceData": {
"createRequest": {
"requestId": "someRandomKey",
"conferenceSolutionKey": {
"type": "hangoutsMeet"
}
}
}
};
我现在面临同样的问题。我相信它实际上来自于您尝试插入事件的日历不接受“hangoutsMeet”电话会议类型。
您可以在conferenceProperties.allowedConferenceSolutionTypes中使用API检查日历设置详细信息: - https://developers.google.com/calendar/v3/reference/calendars/get - https://developers.google.com/calendar/v3/reference/calendars#resource
对于我的特定情况,我可以观察到日历仅支持“eventNamedHangout”,并且未列出“hangoutsMeet”。
话虽这么说,我不知道如何确保特定日历资源支持“hangoutsMeet”类型。
编辑
似乎我的问题来自我使用GCP服务帐户的事实 - 在这种情况下,我观察到只支持eventNamedHangout类型。当使用通过oauth dance获得的access_token将相同的有效负载发送到API时,可以使用hangoutsMeet。
我得到了这个工作。根据您提到的events docs,如果提供conferenceSolution
,那么还必须提供至少一个entryPoint
。否则使用createRequest
:
“要么是conferenceSolution,要么至少有一个entryPoint,或者需要createRequest。”