我正在研究 Google Calendar 会议附加组件的实施,并发现了一些问题。我按照文档执行示例代码,但它没有按预期工作。
从我的角度来看,我的清单文件是完整的,但是当我尝试从“从清单部署”链接发布日历会议插件时,它会打开我的谷歌日历,但它没有显示我的会议,因为它显示例如环聊和优步会议。
我期待在 Stackdriver 的入口点函数上有一些日志消息,但即使这样也不起作用。你有什么线索我应该从哪里开始我的调查吗?下面是我的清单文件,也是我的 createConference 函数定义。
{
"dependencies": {
"enabledAdvancedServices": [{
"userSymbol": "Calendar",
"serviceId": "calendar",
"version": "v3"
}],
"libraries": [{
"userSymbol": "OAuth2",
"libraryId": "1B7FSrk5Zi6L1rSxxTDgDEUsPzlukDsiaserTMogajsHhGBzBkMun4iDF",
"version": "21"
}]
},
"webapp": {
"access": "ANYONE",
"executeAs": "USER_ACCESSING"
},
"exceptionLogging": "STACKDRIVER",
"oauthScopes": [
"https://www.googleapis.com/auth/calendar.addons.execute",
"https://www.googleapis.com/auth/calendar.events.readonly",
"https://www.googleapis.com/auth/calendar.settings.readonly",
"https://www.googleapis.com/auth/script.external_request",
"https://www.googleapis.com/auth/script.scriptapp",
"https://www.googleapis.com/auth/userinfo.email",
"https://www.googleapis.com/auth/script.external_request"
],
"urlFetchWhitelist": [
"https://circuitsandbox.net/"
],
"calendar": {
"name": "My Web Conferencing",
"logoUrl": "https://dl.dropboxusercontent.com/s/sgkt743sv30rid1/logo-circuit-100x100.png?dl=0",
"createSettingsUrlFunction": "createSettingsUrl",
"conferenceSolution": [{
"id": 1,
"name": "My Web Conference",
"logoUrl": "https://dl.dropboxusercontent.com/s/sgkt743sv30rid1/logo-circuit-100x100.png?dl=0",
"onCreateFunction": "createConference"
},
{
"id": 2,
"name": "My Recorded Web Conference",
"logoUrl": "https://dl.dropboxusercontent.com/s/sgkt743sv30rid1/logo-circuit-100x100.png?dl=0",
"onCreateFunction": "createConference"
}
]
}
function createConference(arg) {
var dataBuilder = ConferenceDataService.newConferenceDataBuilder();
var authenticationUrl = 'https://adfs01.circuitsandbox.net/';
var error = ConferenceDataService.newConferenceError()
.setConferenceErrorType(
ConferenceDataService.ConferenceErrorType.AUTHENTICATION)
.setAuthenticationUrl(authenticationUrl);
dataBuilder.setError(error);
return dataBuilder.build();
}