#javascript #google-apps-script #google-api #google-calendar-api #google-meet
#javascript #google-apps-script #google-api #google-calendar-api #google-meet
Вопрос:
Я ссылаюсь https://cloud.google.com/blog/products/application-development/hangouts-meet-now-available-in-google и https://developers.google.com/calendar/v3/reference/events , но, похоже, не могу понять, как программно добавить ссылку Google Meet к событию Календаря Google. Вот мой код скрипта Google Apps:
/**
* Creates an event in the user's default calendar.
*/
function createEvent() {
var calendarId = 'primary';
var start = getRelativeDate(1, 12);
var end = getRelativeDate(1, 13);
var event = {
summary: 'Test Event',
description: 'Test.',
start: {
dateTime: start.toISOString()
},
end: {
dateTime: end.toISOString()
},
attendees: [
{email: 'XXXXXX@XXXX.XXX'},
],
conferenceData: {createRequest: {conferenceSolutionKey: {type: 'hangoutsMeet'}}}
};
event = Calendar.Events.insert(event, calendarId, {sendNotifications: true, conferenceDataVersion: 1} );
Logger.log('Event ID: ' event.id);
}
/**
* Helper function to get a new Date object relative to the current date.
* @param {number} daysOffset The number of days in the future for the new date.
* @param {number} hour The hour of the day for the new date, in the time zone
* of the script.
* @return {Date} The new date.
*/
function getRelativeDate(daysOffset, hour) {
var date = new Date();
date.setDate(date.getDate() daysOffset);
date.setHours(hour);
date.setMinutes(0);
date.setSeconds(0);
date.setMilliseconds(0);
return date;
}
Любая помощь приветствуется. Спасибо!
Комментарии:
1. В официальном документе говорится
You can create a new conference for an event by providing a createRequest with a newly generated requestId which can be a random string.
. Исходя из этого, кажется, что это необходимо включитьrequestId
для создания новой конференции, подобнойconferenceData: {createRequest: {requestId: Utilities.getUuid(), conferenceSolutionKey: {type: 'hangoutsMeet'}}}
.
Ответ №1:
Я успешно использовал этот код для создания события и возврата ссылки Meet, используя текстовые переменные ‘summary’, ‘id’; и переменные даты ‘start’ и ‘end’:
var event = {
"summary": summary,
"start": {
"dateTime": start.toISOString()
},
"end": {
"dateTime": end.toISOString()
},
"conferenceData": {
"createRequest": {
"conferenceSolutionKey": {
"type": "hangoutsMeet"
},
"requestId": id
}
}
};
event = Calendar.Events.insert(event, 'primary', {
"conferenceDataVersion": 1});
return event.hangoutLink;