สมาชิกพื้นที่การประชุมคือผู้ใช้ที่ได้รับการกำหนดค่าให้มีบทบาทในพื้นที่การประชุม ผู้ใช้เหล่านี้จะเข้าร่วมพื้นที่การประชุมได้โดยไม่ต้องขอสิทธิ์ในการ เชื่อมต่อ (หรือที่เรียกว่า "การเคาะ")
แม้ว่าผู้จัดการประชุมจะเข้าสู่พื้นที่การประชุมได้โดยอัตโนมัติ แต่คุณก็ยัง
กำหนดค่าให้สมาชิกคนอื่นๆ ในพื้นที่การประชุมเข้าร่วมการประชุมได้โดยไม่ต้องขอเข้าร่วม
นอกจากนี้ คุณยังกำหนดค่าให้สมาชิกมีRoleในการประชุมได้ด้วย เช่น COHOST ซึ่งจะช่วยให้สมาชิกจัดการประชุมร่วมกันได้ในระหว่างการประชุมทางไกล แม้ว่าจะกำหนดค่าอาร์ติแฟกต์อัตโนมัติหรือเปลี่ยนการตั้งค่าการกลั่นกรองไม่ได้ก็ตาม ดูข้อมูลเพิ่มเติมเกี่ยวกับการเข้าถึงพื้นที่การประชุมโดยไม่ต้อง
เคาะได้ที่
AccessType
spaces.members
ทรัพยากรประกอบด้วยช่อง name, email และ role
โปรดทราบว่าสมาชิกพื้นที่การประชุมจะแตกต่างจากผู้เข้าร่วม ผู้เข้าร่วมคือบุคคลที่เข้าร่วมการโทรหรือใช้โหมดแยกหน้าจอประชุม ดูในฐานะผู้ชม หรืออุปกรณ์ในห้องที่เชื่อมต่อกับการโทร โดยมีแหล่งข้อมูล
conferenceRecords.participants
สำหรับแต่ละคน
ลักษณะการทำงานของเมธอดทั่วไป
เมื่อจัดการสมาชิกในพื้นที่การประชุมโดยใช้ Meet REST API เมธอดจะใช้ รูปแบบต่อไปนี้
พารามิเตอร์เส้นทาง: แต่ละเมธอดใช้พารามิเตอร์เส้นทาง เมธอด
create,listและbatchUpdateใช้ฟิลด์parentเพื่ออ้างอิงถึง พื้นที่การประชุม (spaces/{space}) เมธอดdelete,getและpatchใช้ฟิลด์nameเพื่อกรองผลลัพธ์ตามพื้นที่การประชุมและชื่อสมาชิก (spaces/{space}/members/{member})ประเภทการคืนค่า: เมธอด
create,getและpatchจะคืนค่าอินสแตนซ์ของทรัพยากรMemberเมธอดlistและbatchUpdateจะแสดงรายการทรัพยากรMember(deleteจะแสดงการตอบกลับที่ว่างเปล่า ในเนื้อหา)ฟิลด์มาสก์: ทุกเมธอด ยกเว้น
deleteรองรับฟิลด์มาสก์ สำหรับเมธอดcreate,getและlistคุณสามารถใช้พารามิเตอร์fieldsใน SystemParameterContext เพื่อระบุช่องที่จะแสดงผล เมื่อคุณละเว้นพารามิเตอร์fieldsการตอบกลับของ API จะมีค่าเริ่มต้นเป็น"name,email,role,user"สำหรับเมธอดpatchและbatchUpdateคุณใช้updateMaskเพื่อระบุช่องที่จะเปลี่ยนแปลงการใช้ FieldMask: A
FieldMaskเป็นวิธีที่ผู้เรียกใช้ API ใช้เพื่อแสดงรายการฟิลด์ที่คำขอควรส่งคืนหรือแก้ไข เป็นรายการฟิลด์ที่คั่นด้วยคอมมาเพื่อระบุว่าใช้เฉพาะบางฟิลด์ในออบเจ็กต์เท่านั้นในขณะที่ฟิลด์อื่นๆ ไม่มีการเปลี่ยนแปลง การใช้FieldMaskช่วยให้ API ไม่ต้องทำงานที่ไม่จำเป็นและปรับปรุง ประสิทธิภาพ ดูข้อมูลเพิ่มเติมเกี่ยวกับมาสก์ฟิลด์ได้ที่ใช้มาสก์ฟิลด์ของ Google Sheets API
สร้างสมาชิก
หากต้องการเพิ่มสมาชิกไปยังพื้นที่การประชุม ให้ใช้เมธอด
create
ในทรัพยากร
spaces.members
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีสร้างสมาชิก
Java
import com.google.apps.meet.v2.Member;
import com.google.apps.meet.v2.SpacesServiceClient;
public class CreateMember {
public static void main(String[] args) throws Exception {
try (SpacesServiceClient client = SpacesServiceClient.create()) {
Member member = Member.newBuilder()
.setEmail("user@example.com")
.setRole(Member.Role.COHOST)
.build();
Member response = client.createMember("spaces/SPACE_NAME", member);
System.out.println("Member created: " + response.getName());
}
}
}
Node.js
const {SpacesServiceClient} = require('@google-apps/meet').v2;
async function createMember(spaceName, email) {
const client = new SpacesServiceClient();
const [response] = await client.createMember({
parent: spaceName,
member: {
email: email,
role: 'COHOST',
},
});
console.log(`Member created: ${response.name}`);
return response;
}
Python
from google.apps import meet_v2
def create_member(space_name, email):
client = meet_v2.SpacesServiceClient()
member = meet_v2.Member(
email=email,
role=meet_v2.Member.Role.COHOST,
)
response = client.create_member(parent=space_name, member=member)
print(f"Member created: {response.name}")
return response
Apps Script
function createMember(spaceName, email) {
const response = UrlFetchApp.fetch(
`https://meet.googleapis.com/v2/${spaceName}/members`,
{
method: 'post',
contentType: 'application/json',
headers: {
Authorization: 'Bearer ' + ScriptApp.getOAuthToken(),
},
payload: JSON.stringify({
email: email,
role: 'COHOST',
}),
}
);
const member = JSON.parse(response.getContentText());
Logger.log('Member created: ' + member.name);
return member;
}
cURL
curl -X POST \
"https://meet.googleapis.com/v2/spaces/SPACE_NAME/members" \
-H "Authorization: Bearer ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"email": "user@example.com",
"role": "COHOST"
}'
แทนที่ ACCESS_TOKEN ด้วยโทเค็นเพื่อการเข้าถึงที่ให้สิทธิ์เข้าถึง API
แทนที่ค่าชื่อพื้นที่ทำงานด้วยรหัสที่เซิร์ฟเวอร์สร้างขึ้นที่ไม่ซ้ำกันสำหรับพื้นที่ทำงาน การประชุม
ดูรายละเอียดเกี่ยวกับสมาชิก
หากต้องการเรียกข้อมูลเกี่ยวกับสมาชิกที่เฉพาะเจาะจง ให้ใช้เมธอด
get ในทรัพยากร
spaces.members
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีดึงข้อมูลสมาชิก
Java
import com.google.apps.meet.v2.Member;
import com.google.apps.meet.v2.SpacesServiceClient;
public class GetMember {
public static void main(String[] args) throws Exception {
try (SpacesServiceClient client = SpacesServiceClient.create()) {
Member response =
client.getMember("spaces/SPACE_NAME/members/MEMBER_NAME");
System.out.println("Member role: " + response.getRole());
}
}
}
Node.js
const {SpacesServiceClient} = require('@google-apps/meet').v2;
async function getMember(memberName) {
const client = new SpacesServiceClient();
const [response] = await client.getMember({name: memberName});
console.log(`Member role: ${response.role}`);
return response;
}
Python
from google.apps import meet_v2
def get_member(member_name):
client = meet_v2.SpacesServiceClient()
response = client.get_member(name=member_name)
print(f"Member role: {response.role.name}")
return response
Apps Script
function getMember(memberName) {
// memberName format: "spaces/{space}/members/{member}"
const response = UrlFetchApp.fetch(
`https://meet.googleapis.com/v2/${memberName}`,
{
method: 'get',
headers: {
Authorization: 'Bearer ' + ScriptApp.getOAuthToken(),
},
}
);
const member = JSON.parse(response.getContentText());
Logger.log('Member role: ' + member.role);
return member;
}
cURL
curl -X GET \
"https://meet.googleapis.com/v2/spaces/SPACE_NAME/members/MEMBER_NAME" \
-H "Authorization: Bearer ACCESS_TOKEN"
แทนที่ ACCESS_TOKEN ด้วยโทเค็นเพื่อการเข้าถึงที่ให้สิทธิ์เข้าถึง API
แทนที่ค่าชื่อพื้นที่ทำงานและชื่อสมาชิกด้วยรหัสที่เซิร์ฟเวอร์สร้างขึ้นซึ่งไม่ซ้ำกัน สำหรับพื้นที่ทำงานการประชุมและสมาชิก
สมาชิกในรายการ
หากต้องการแสดงสมาชิกทั้งหมดในพื้นที่การประชุม ให้ใช้วิธี
list
ในแหล่งข้อมูล
spaces.members
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีแสดงรายการสมาชิก
Java
import com.google.apps.meet.v2.Member;
import com.google.apps.meet.v2.SpacesServiceClient;
public class ListMembers {
public static void main(String[] args) throws Exception {
try (SpacesServiceClient client = SpacesServiceClient.create()) {
for (Member member :
client.listMembers("spaces/SPACE_NAME").iterateAll()) {
System.out.println("Member: " + member.getName() + " (" +
member.getEmail() + ")");
}
}
}
}
Node.js
const {SpacesServiceClient} = require('@google-apps/meet').v2;
async function listMembers(spaceName) {
const client = new SpacesServiceClient();
const [members] = await client.listMembers({parent: spaceName});
members.forEach((member) => {
console.log(`Member: ${member.name} (${member.email})`);
});
return members;
}
Python
from google.apps import meet_v2
def list_members(space_name):
client = meet_v2.SpacesServiceClient()
response = client.list_members(parent=space_name)
for member in response:
print(f"Member: {member.name} ({member.email})")
Apps Script
function listMembers(spaceName) {
const response = UrlFetchApp.fetch(
`https://meet.googleapis.com/v2/${spaceName}/members`,
{
method: 'get',
headers: {
Authorization: 'Bearer ' + ScriptApp.getOAuthToken(),
},
}
);
const data = JSON.parse(response.getContentText());
(data.members || []).forEach((member) => {
Logger.log(`Member: ${member.name} (${member.email})`);
});
return data.members;
}
cURL
curl -X GET \
"https://meet.googleapis.com/v2/spaces/SPACE_NAME/members" \
-H "Authorization: Bearer ACCESS_TOKEN"
แทนที่ ACCESS_TOKEN ด้วยโทเค็นเพื่อการเข้าถึงที่ให้สิทธิ์เข้าถึง API
แทนที่ค่าชื่อพื้นที่ทำงานด้วยรหัสที่เซิร์ฟเวอร์สร้างขึ้นที่ไม่ซ้ำกันสำหรับพื้นที่ทำงาน การประชุม
อัปเดตสมาชิก
หากต้องการอัปเดตบทบาทของสมาชิกในพื้นที่การประชุม ให้ใช้วิธีการ
patch ในแหล่งข้อมูล
spaces.members
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีอัปเดตสมาชิก
Java
import com.google.apps.meet.v2.Member;
import com.google.apps.meet.v2.SpacesServiceClient;
import com.google.protobuf.FieldMask;
public class UpdateMember {
public static void main(String[] args) throws Exception {
try (SpacesServiceClient client = SpacesServiceClient.create()) {
Member member = Member.newBuilder()
.setName("spaces/SPACE_NAME/members/MEMBER_NAME")
.setRole(Member.Role.ROLE_UNSPECIFIED)
.build();
FieldMask updateMask =
FieldMask.newBuilder().addPaths("role").build();
Member response = client.updateMember(member, updateMask);
System.out.println("Updated member: " + response.getName());
}
}
}
Node.js
const {SpacesServiceClient} = require('@google-apps/meet').v2;
async function updateMember(memberName) {
const client = new SpacesServiceClient();
const [response] = await client.updateMember({
member: {
name: memberName,
role: 'ROLE_UNSPECIFIED',
},
updateMask: {
paths: ['role'],
},
});
console.log(`Updated member: ${response.name}`);
return response;
}
Python
from google.apps import meet_v2
from google.protobuf import field_mask_pb2
def update_member(member_name):
client = meet_v2.SpacesServiceClient()
member = meet_v2.Member(
name=member_name,
role=meet_v2.Member.Role.ROLE_UNSPECIFIED,
)
update_mask = field_mask_pb2.FieldMask(paths=["role"])
response = client.update_member(member=member, update_mask=update_mask)
print(f"Updated member: {response.name}")
return response
Apps Script
function updateMember(memberName) {
// memberName format: "spaces/{space}/members/{member}"
const baseUrl = 'https://meet.googleapis.com/v2/';
const url = `${baseUrl}${memberName}?updateMask=role`;
const response = UrlFetchApp.fetch(url, {
method: 'patch',
contentType: 'application/json',
headers: {
Authorization: 'Bearer ' + ScriptApp.getOAuthToken(),
},
payload: JSON.stringify({
role: 'ROLE_UNSPECIFIED',
}),
});
const member = JSON.parse(response.getContentText());
Logger.log('Updated member: ' + member.name);
return member;
}
cURL
curl -X PATCH \
"https://meet.googleapis.com/v2/spaces/SPACE_NAME/members/MEMBER_NAME?updateMask=role" \
-H "Authorization: Bearer ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"role": "ROLE_UNSPECIFIED"
}'
แทนที่ ACCESS_TOKEN ด้วยโทเค็นเพื่อการเข้าถึงที่ให้สิทธิ์เข้าถึง API
แทนที่ค่าชื่อพื้นที่ทำงานและชื่อสมาชิกด้วยรหัสที่เซิร์ฟเวอร์สร้างขึ้นซึ่งไม่ซ้ำกัน สำหรับพื้นที่ทำงานการประชุมและสมาชิก
อัปเดตสมาชิกเป็นกลุ่ม
หากต้องการอัปเดตบทบาทของสมาชิกหลายคนในคำขอเดียว ให้ใช้วิธี
batchUpdate
ในแหล่งข้อมูล
spaces.members
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีอัปเดตสมาชิกแบบเป็นกลุ่ม
Java
import com.google.apps.meet.v2.BatchUpdateMembersRequest;
import com.google.apps.meet.v2.BatchUpdateMembersResponse;
import com.google.apps.meet.v2.Member;
import com.google.apps.meet.v2.SpacesServiceClient;
import com.google.apps.meet.v2.UpdateMemberRequest;
import com.google.protobuf.FieldMask;
import java.util.Arrays;
public class BatchUpdateMembers {
public static void main(String[] args) throws Exception {
try (SpacesServiceClient client = SpacesServiceClient.create()) {
UpdateMemberRequest req1 = UpdateMemberRequest.newBuilder()
.setMember(Member.newBuilder()
.setName("spaces/SPACE_NAME/members/MEMBER_1")
.setRole(Member.Role.COHOST)
.build())
.build();
UpdateMemberRequest req2 = UpdateMemberRequest.newBuilder()
.setMember(Member.newBuilder()
.setName("spaces/SPACE_NAME/members/MEMBER_2")
.setRole(Member.Role.ROLE_UNSPECIFIED)
.build())
.build();
BatchUpdateMembersRequest request =
BatchUpdateMembersRequest.newBuilder()
.setParent("spaces/SPACE_NAME")
.addAllRequests(Arrays.asList(req1, req2))
.setUpdateMask(
FieldMask.newBuilder().addPaths("role").build())
.build();
BatchUpdateMembersResponse response =
client.batchUpdateMembers(request);
System.out.println(
"Updated " + response.getMembersCount() + " members.");
}
}
}
Node.js
const {SpacesServiceClient} = require('@google-apps/meet').v2;
async function batchUpdateMembers(spaceName, member1, member2) {
const client = new SpacesServiceClient();
const [response] = await client.batchUpdateMembers({
parent: spaceName,
requests: [
{
member: {name: member1, role: 'COHOST'},
},
{
member: {name: member2, role: 'ROLE_UNSPECIFIED'},
},
],
updateMask: {
paths: ['role'],
},
});
console.log(`Updated ${response.members.length} members.`);
return response;
}
Python
from google.apps import meet_v2
from google.protobuf import field_mask_pb2
def batch_update_members(space_name, member_1, member_2):
client = meet_v2.SpacesServiceClient()
requests = [
meet_v2.UpdateMemberRequest(
member=meet_v2.Member(
name=member_1, role=meet_v2.Member.Role.COHOST
)
),
meet_v2.UpdateMemberRequest(
member=meet_v2.Member(
name=member_2, role=meet_v2.Member.Role.ROLE_UNSPECIFIED
)
),
]
update_mask = field_mask_pb2.FieldMask(paths=["role"])
response = client.batch_update_members(
parent=space_name, requests=requests, update_mask=update_mask
)
print(f"Updated {len(response.members)} members.")
return response
Apps Script
function batchUpdateMembers(spaceName, member1, member2) {
const url =
`https://meet.googleapis.com/v2/${spaceName}/members:batchUpdate`;
const response = UrlFetchApp.fetch(url, {
method: 'post',
contentType: 'application/json',
headers: {
Authorization: 'Bearer ' + ScriptApp.getOAuthToken(),
},
payload: JSON.stringify({
requests: [
{member: {name: member1, role: 'COHOST'}},
{member: {name: member2, role: 'ROLE_UNSPECIFIED'}},
],
updateMask: 'role',
}),
});
const data = JSON.parse(response.getContentText());
Logger.log(`Updated ${data.members.length} members.`);
return data.members;
}
cURL
curl -X POST \
"https://meet.googleapis.com/v2/spaces/SPACE_NAME/members:batchUpdate" \
-H "Authorization: Bearer ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"requests": [
{
"member": {
"name": "spaces/SPACE_NAME/members/MEMBER_1",
"role": "COHOST"
}
},
{
"member": {
"name": "spaces/SPACE_NAME/members/MEMBER_2",
"role": "ROLE_UNSPECIFIED"
}
}
],
"updateMask": "role"
}'
แทนที่ ACCESS_TOKEN ด้วยโทเค็นเพื่อการเข้าถึงที่ให้สิทธิ์เข้าถึง API
แทนที่ค่าชื่อพื้นที่ทำงานและชื่อสมาชิกด้วยรหัสที่เซิร์ฟเวอร์สร้างขึ้นที่ไม่ซ้ำกัน สำหรับพื้นที่ทำงานการประชุมและสมาชิก
ลบสมาชิก
หากต้องการนำสมาชิกออกจากพื้นที่การประชุม ให้ใช้วิธี
delete
ในแหล่งข้อมูล
spaces.members
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีลบสมาชิก
Java
import com.google.apps.meet.v2.SpacesServiceClient;
public class DeleteMember {
public static void main(String[] args) throws Exception {
try (SpacesServiceClient client = SpacesServiceClient.create()) {
client.deleteMember("spaces/SPACE_NAME/members/MEMBER_NAME");
System.out.println("Member deleted.");
}
}
}
Node.js
const {SpacesServiceClient} = require('@google-apps/meet').v2;
async function deleteMember(memberName) {
const client = new SpacesServiceClient();
await client.deleteMember({name: memberName});
console.log('Member deleted.');
}
Python
from google.apps import meet_v2
def delete_member(member_name):
client = meet_v2.SpacesServiceClient()
client.delete_member(name=member_name)
print("Member deleted.")
Apps Script
function deleteMember(memberName) {
// memberName format: "spaces/{space}/members/{member}"
UrlFetchApp.fetch(`https://meet.googleapis.com/v2/${memberName}`, {
method: 'delete',
headers: {
Authorization: 'Bearer ' + ScriptApp.getOAuthToken(),
},
});
Logger.log('Member deleted.');
}
cURL
curl -X DELETE \
"https://meet.googleapis.com/v2/spaces/SPACE_NAME/members/MEMBER_NAME" \
-H "Authorization: Bearer ACCESS_TOKEN"
แทนที่ ACCESS_TOKEN ด้วยโทเค็นเพื่อการเข้าถึงที่ให้สิทธิ์เข้าถึง API
แทนที่ค่าชื่อพื้นที่ทำงานและชื่อสมาชิกด้วยรหัสที่เซิร์ฟเวอร์สร้างขึ้นซึ่งไม่ซ้ำกัน สำหรับพื้นที่ทำงานการประชุมและสมาชิก