会议空间表示举行会议的虚拟场所或持久对象(例如会议室)。会议空间还可以帮助用户开会和查找共享资源。
使用 spaces.create 方法创建会议空间时,该方法会返回 spaces 资源的实例。该资源包含 SpaceConfig 对象,该对象是会议空间的配置。它还包含 ActiveConference 对象,该对象是指向会议空间内当前 conferenceRecords 资源的链接。如需详细了解如何管理会议室,请参阅管理会议室。
以下部分将详细介绍如何使用这些对象和方法配置会议空间。
设置会议管理和访问权限
您可以通过 SpaceConfig 对象设置用户加入会议的方式、会议管理模式、功能限制以及用户加入会议时获得的权限。
配置会议访问权限
如需确定哪些人可以不经过申请即可加入会议空间,请使用 AccessType 对象设置 accessType 字段。您可以选择多种设置,以确定是否自动允许参会者加入。此字段的默认值为用户的默认访问权限设置。
如需定义可用于加入会议空间中托管的会议的入口点,请使用 EntryPointAccess 对象设置 entryPointAccess 字段。设置为 ALL 可允许所有入口点,设置为 CREATOR_APP_ONLY 可将入口点限定为仅由创建会议空间的 Google Cloud 项目拥有的入口点。
以下代码示例展示了如何为会议室配置访问权限设置:
Java
import com.google.apps.meet.v2.Space;
import com.google.apps.meet.v2.SpaceConfig;
import com.google.apps.meet.v2.SpacesServiceClient;
import com.google.apps.meet.v2.UpdateSpaceRequest;
import com.google.protobuf.FieldMask;
public class ConfigureSpaceAccess {
public static void main(String[] args) throws Exception {
try (SpacesServiceClient client = SpacesServiceClient.create()) {
Space space =
Space.newBuilder()
.setName("spaces/SPACE_NAME")
.setConfig(
SpaceConfig.newBuilder()
.setAccessType(SpaceConfig.AccessType.RESTRICTED)
.setEntryPointAccess(SpaceConfig.EntryPointAccess.ALL)
.build())
.build();
FieldMask updateMask =
FieldMask.newBuilder()
.addPaths("config.access_type")
.addPaths("config.entry_point_access")
.build();
UpdateSpaceRequest request =
UpdateSpaceRequest.newBuilder()
.setSpace(space)
.setUpdateMask(updateMask)
.build();
Space response = client.updateSpace(request);
System.out.println("Updated space: " + response.getName());
}
}
}
Node.js
const {SpacesServiceClient} = require('@google-apps/meet').v2;
async function configureSpaceAccess(spaceName) {
const meetClient = new SpacesServiceClient();
const [response] = await meetClient.updateSpace({
space: {
name: spaceName,
config: {
accessType: 'RESTRICTED',
entryPointAccess: 'ALL',
},
},
updateMask: {
paths: ['config.access_type', 'config.entry_point_access'],
},
});
console.log(`Updated space: ${response.name}`);
return response;
}
Python
from google.apps import meet_v2
from google.protobuf import field_mask_pb2
def configure_space_access(space_name):
client = meet_v2.SpacesServiceClient()
space = meet_v2.Space(
name=space_name,
config=meet_v2.SpaceConfig(
access_type=meet_v2.SpaceConfig.AccessType.RESTRICTED,
entry_point_access=meet_v2.SpaceConfig.EntryPointAccess.ALL,
),
)
update_mask = field_mask_pb2.FieldMask(
paths=["config.access_type", "config.entry_point_access"]
)
request = meet_v2.UpdateSpaceRequest(
space=space,
update_mask=update_mask
)
response = client.update_space(request=request)
print(f"Updated space: {response.name}")
return response
Apps 脚本
function configureSpaceAccess(spaceName) {
const baseUrl = 'https://meet.googleapis.com/v2/';
const mask = 'updateMask=config.accessType,config.entryPointAccess';
const response = UrlFetchApp.fetch(`${baseUrl}${spaceName}?${mask}`, {
method: 'patch',
contentType: 'application/json',
headers: {
Authorization: 'Bearer ' + ScriptApp.getOAuthToken(),