本指南說明如何使用 Google Meet REST API 的 spaces 資源建立、取得及更新會議空間,以及結束進行中的會議。
建立會議空間
如要建立會議空間,請使用 spaces 資源的 create 方法。
這個方法會傳回 spaces 資源的例項,其中包含會議空間的設定 SpaceConfig 物件。其中也包含 ActiveConference 物件,該物件是會議空間中目前 conferenceRecords 資源的連結。
以下程式碼範例說明如何建立會議空間:
Java
Node.js
Python
Apps Script
function createMeetingSpace() {
const response = UrlFetchApp.fetch(
'https://meet.googleapis.com/v2/spaces',
{
method: 'post',
contentType: 'application/json',
headers: {
Authorization: 'Bearer ' + ScriptApp.getOAuthToken(),
},
payload: JSON.stringify({}),
}
);
const space = JSON.parse(response.getContentText());
Logger.log('Space name: ' + space.name);
Logger.log('Meeting URI: ' + space.meetingUri);
return space;
}
cURL
curl -X POST "https://meet.googleapis.com/v2/spaces" \
-H "Authorization: Bearer ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{}'
將 ACCESS_TOKEN 替換成可授權存取 API 的存取權杖。
取得會議空間
如要取得有效會議空間及其設定的詳細資料,請對 spaces 資源使用 get 方法。請使用 spaces/{space} 或 spaces/{meetingCode} 格式,設定 name 路徑參數。詳情請參閱「Meet 如何識別會議空間」。
這個方法會以 spaces 資源的執行個體形式,傳回會議空間。如要判斷是否有進行中的會議,請檢查 activeConference 欄位。
以下程式碼範例說明如何擷取會議空間:
Java
Node.js
Python
Apps Script
function getMeetingSpace(spaceName) {
// spaceName format: "spaces/{space}" or "spaces/{meetingCode}"
const response = UrlFetchApp.fetch(
`https://meet.googleapis.com/v2/${spaceName}`,
{
method: 'get',
headers: {
Authorization: 'Bearer ' + ScriptApp.getOAuthToken(),
},
}
);
const space = JSON.parse(response.getContentText());
Logger.log('Space name: ' + space.name);
Logger.log('Meeting URI: ' + space.meetingUri);
if (space.activeConference) {
Logger.log('Active conference: ' +
space.activeConference.conferenceRecord);
}
return space;
}
cURL
curl -X GET "https://meet.googleapis.com/v2/spaces/SPACE_NAME" \
-H "Authorization: Bearer ACCESS_TOKEN"
將 ACCESS_TOKEN 替換成可授權存取 API 的存取權杖。
將空間名稱值替換為會議空間的專屬伺服器產生 ID。
更新會議空間
如要更新會議空間的詳細資料,請使用 spaces 資源的 patch 方法。請使用 spaces/{space} 格式設定 space.name 路徑參數。詳情請參閱「Meet 如何識別會議空間」。
patch 方法也會採用選用的 updateMask 查詢參數。這個欄位的類型為 FieldMask。這是以半形逗號分隔的清單,列出您要在聊天室中更新的欄位。
這個方法會以 spaces 資源的執行個體形式,傳回會議空間。
以下程式碼範例說明如何更新會議空間:
Java
Node.js
Python
Apps Script
function updateMeetingSpace(spaceName) {
// spaceName format: "spaces/{space}"
const baseUrl = 'https://meet.googleapis.com/v2/';
const mask = 'updateMask=config.accessType';
const url = `${baseUrl}${spaceName}?${mask}`;
const response = UrlFetchApp.fetch(url, {
method: 'patch',
contentType: 'application/json',
headers: {
Authorization: 'Bearer ' + ScriptApp.getOAuthToken(),
},
payload: JSON.stringify({
config: {
accessType: 'RESTRICTED',
},
}),
});
const space = JSON.parse(response.getContentText());
Logger.log('Updated space: ' + space.name);
return space;
}
cURL
curl -X PATCH "https://meet.googleapis.com/v2/spaces/SPACE_NAME?updateMask=config.accessType" \
-H "Authorization: Bearer ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"config": {
"accessType": "RESTRICTED"
}
}'
將 ACCESS_TOKEN 替換成可授權存取 API 的存取權杖。
將空間名稱值替換為會議空間的專屬伺服器產生 ID。
結束進行中的會議
如要結束會議空間 (如有) 內進行中的會議,請使用 spaces 資源的 endActiveConference 方法。請使用 spaces/{space} 格式設定 name 路徑參數。要求和回應主體皆為空白。詳情請參閱「Meet 如何識別會議空間」。
以下程式碼範例說明如何結束進行中的會議:
Java
Node.js
Python
Apps Script
function endActiveConference(spaceName) {
// spaceName format: "spaces/{space}"
const url =
`https://meet.googleapis.com/v2/${spaceName}:endActiveConference`;
UrlFetchApp.fetch(url, {
method: 'post',
contentType: 'application/json',
headers: {
Authorization: 'Bearer ' + ScriptApp.getOAuthToken(),
},
payload: JSON.stringify({}),
});
Logger.log(`Ended active conference in ${spaceName}`);
}
cURL
curl -X POST "https://meet.googleapis.com/v2/spaces/SPACE_NAME:endActiveConference" \
-H "Authorization: Bearer ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{}'
將 ACCESS_TOKEN 替換成可授權存取 API 的存取權杖。
將空間名稱值替換為會議空間的專屬伺服器產生 ID。