建立及管理會議聊天室

本指南說明如何建立、取得及更新會議空間,以及在 Google Meet REST API 的 spaces 資源上結束正在進行的會議。

建立會議聊天室

如要建立會議空間,請在 spaces 資源上使用 create 方法。

這個方法會傳回 spaces 資源的例項,其中包含會議空間的設定 SpaceConfig 物件。它也包含 ActiveConference 物件,這是會議空間中目前 conferenceRecords 資源的連結。

以下程式碼範例說明如何建立會議空間:

Java

java-meet/samples/snippets/generated/com/google/apps/meet/v2/spacesservice/createspace/AsyncCreateSpace.java
import com.google.api.core.ApiFuture; import com.google.apps.meet.v2.CreateSpaceRequest; import com.google.apps.meet.v2.Space; import com.google.apps.meet.v2.SpacesServiceClient;  public class AsyncCreateSpace {    public static void main(String[] args) throws Exception {     asyncCreateSpace();   }    public static void asyncCreateSpace() throws Exception {     // This snippet has been automatically generated and should be regarded as a code template only.     // It will require modifications to work:     // - It may require correct/in-range values for request initialization.     // - It may require specifying regional endpoints when creating the service client as shown in     // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library     try (SpacesServiceClient spacesServiceClient = SpacesServiceClient.create()) {       CreateSpaceRequest request =           CreateSpaceRequest.newBuilder().setSpace(Space.newBuilder().build()).build();       ApiFuture<Space> future = spacesServiceClient.createSpaceCallable().futureCall(request);       // Do something.       Space response = future.get();     }   } }

Node.js

packages/google-apps-meet/samples/generated/v2/spaces_service.create_space.js
/**  * This snippet has been automatically generated and should be regarded as a code template only.  * It will require modifications to work.  * It may require correct/in-range values for request initialization.  * TODO(developer): Uncomment these variables before running the sample.  */ /**  *  Space to be created. As of May 2023, the input space can be empty. Later on  *  the input space can be non-empty when space configuration is introduced.  */ // const space = {}  // Imports the Meet library const {SpacesServiceClient} = require('@google-apps/meet').v2;  // Instantiates a client const meetClient = new SpacesServiceClient();  async function callCreateSpace() {   // Construct request   const request = {   };    // Run request   const response = await meetClient.createSpace(request);   console.log(response); }  callCreateSpace();

Python

packages/google-apps-meet/samples/generated_samples/meet_v2_generated_spaces_service_create_space_async.py
# This snippet has been automatically generated and should be regarded as a # code template only. # It will require modifications to work: # - It may require correct/in-range values for request initialization. # - It may require specifying regional endpoints when creating the service #   client as shown in: #   https://googleapis.dev/python/google-api-core/latest/client_options.html from google.apps import meet_v2   async def sample_create_space():     # Create a client     client = meet_v2.SpacesServiceAsyncClient()      # Initialize request argument(s)     request = meet_v2.CreateSpaceRequest(     )      # Make the request     response = await client.create_space(request=request)      # Handle the response     print(response)

取得會議空間的詳細資料

如要取得有效會議空間及其設定的詳細資料,請在 spaces 資源上使用 get 方法,並指定 name。詳情請參閱「Meet 如何識別會議空間」。

這個方法會將會議空間傳回做為 spaces 資源的例項。如要判斷是否有有效的會議,請檢查 activeConference 欄位。

以下程式碼範例說明如何擷取會議空間:

Java

java-meet/samples/snippets/generated/com/google/apps/meet/v2/spacesservice/getspace/AsyncGetSpace.java
import com.google.api.core.ApiFuture; import com.google.apps.meet.v2.GetSpaceRequest; import com.google.apps.meet.v2.Space; import com.google.apps.meet.v2.SpaceName; import com.google.apps.meet.v2.SpacesServiceClient;  public class AsyncGetSpace {    public static void main(String[] args) throws Exception {     asyncGetSpace();   }    public static void asyncGetSpace() throws Exception {     // This snippet has been automatically generated and should be regarded as a code template only.     // It will require modifications to work:     // - It may require correct/in-range values for request initialization.     // - It may require specifying regional endpoints when creating the service client as shown in     // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library     try (SpacesServiceClient spacesServiceClient = SpacesServiceClient.create()) {       GetSpaceRequest request =           GetSpaceRequest.newBuilder().setName(SpaceName.of("[SPACE]").toString()).build();       ApiFuture<Space> future = spacesServiceClient.getSpaceCallable().futureCall(request);       // Do something.       Space response = future.get();     }   } }

Node.js

packages/google-apps-meet/samples/generated/v2/spaces_service.get_space.js
/**  * This snippet has been automatically generated and should be regarded as a code template only.  * It will require modifications to work.  * It may require correct/in-range values for request initialization.  * TODO(developer): Uncomment these variables before running the sample.  */ /**  *  Required. Resource name of the space.  *  Format: `spaces/{space}` or `spaces/{meetingCode}`.  *  `{space}` is the resource identifier for the space. It's a unique,  *  server-generated ID and is case sensitive. For example, `jQCFfuBOdN5z`.  *  `{meetingCode}` is an alias for the space. It's a typeable, unique  *  character string and is non-case sensitive. For example, `abc-mnop-xyz`.  *  The maximum length is 128 characters.  *  A `meetingCode` shouldn't be stored long term as it can become  *  dissociated from a meeting space and can be reused for different meeting  *  spaces in the future. Generally, a `meetingCode` expires 365 days after  *  last use. For more information, see Learn about meeting codes in Google  *  Meet (https://support.google.com/meet/answer/10710509).  *  For more information, see How Meet identifies a meeting  *  space (https://developers.google.com/meet/api/guides/meeting-spaces#identify-meeting-space).  */ // const name = 'abc123'  // Imports the Meet library const {SpacesServiceClient} = require('@google-apps/meet').v2;  // Instantiates a client const meetClient = new SpacesServiceClient();  async function callGetSpace() {   // Construct request   const request = {     name,   };    // Run request   const response = await meetClient.getSpace(request);   console.log(response); }  callGetSpace();

Python

packages/google-apps-meet/samples/generated_samples/meet_v2_generated_spaces_service_get_space_async.py
# This snippet has been automatically generated and should be regarded as a # code template only. # It will require modifications to work: # - It may require correct/in-range values for request initialization. # - It may require specifying regional endpoints when creating the service #   client as shown in: #   https://googleapis.dev/python/google-api-core/latest/client_options.html from google.apps import meet_v2   async def sample_get_space():     # Create a client     client = meet_v2.SpacesServiceAsyncClient()      # Initialize request argument(s)     request = meet_v2.GetSpaceRequest(         name="name_value",     )      # Make the request     response = await client.get_space(request=request)      # Handle the response     print(response)

將聊天室名稱值替換為會議聊天室專屬的伺服器產生 ID。

更新會議室

如要更新會議空間的詳細資料,請使用 spaces 資源上的 patch 方法,並搭配指定的 name。詳情請參閱「Meet 如何識別會議空間」。

patch 方法也會使用選用的 updateMask 查詢參數。欄位的類型為 FieldMask。這是您要在聊天室中更新的欄位清單,以半形逗號分隔。

這個方法會將會議空間傳回做為 spaces 資源的例項。

以下程式碼範例說明如何更新會議空間:

Java

java-meet/samples/snippets/generated/com/google/apps/meet/v2/spacesservice/updatespace/AsyncUpdateSpace.java
import com.google.api.core.ApiFuture; import com.google.apps.meet.v2.Space; import com.google.apps.meet.v2.SpacesServiceClient; import com.google.apps.meet.v2.UpdateSpaceRequest; import com.google.protobuf.FieldMask;  public class AsyncUpdateSpace {    public static void main(String[] args) throws Exception {     asyncUpdateSpace();   }    public static void asyncUpdateSpace() throws Exception {     // This snippet has been automatically generated and should be regarded as a code template only.     // It will require modifications to work:     // - It may require correct/in-range values for request initialization.     // - It may require specifying regional endpoints when creating the service client as shown in     // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library     try (SpacesServiceClient spacesServiceClient = SpacesServiceClient.create()) {       UpdateSpaceRequest request =           UpdateSpaceRequest.newBuilder()               .setSpace(Space.newBuilder().build())               .setUpdateMask(FieldMask.newBuilder().build())               .build();       ApiFuture<Space> future = spacesServiceClient.updateSpaceCallable().futureCall(request);       // Do something.       Space response = future.get();     }   } }

Node.js

packages/google-apps-meet/samples/generated/v2/spaces_service.update_space.js
/**  * This snippet has been automatically generated and should be regarded as a code template only.  * It will require modifications to work.  * It may require correct/in-range values for request initialization.  * TODO(developer): Uncomment these variables before running the sample.  */ /**  *  Required. Space to be updated.  */ // const space = {} /**  *  Optional. Field mask used to specify the fields to be updated in the space.  *  If update_mask isn't provided(not set, set with empty paths, or only has ""  *  as paths), it defaults to update all fields provided with values in the  *  request.  *  Using "*" as update_mask will update all fields, including deleting fields  *  not set in the request.  */ // const updateMask = {}  // Imports the Meet library const {SpacesServiceClient} = require('@google-apps/meet').v2;  // Instantiates a client const meetClient = new SpacesServiceClient();  async function callUpdateSpace() {   // Construct request   const request = {     space,   };    // Run request   const response = await meetClient.updateSpace(request);   console.log(response); }  callUpdateSpace();

Python

packages/google-apps-meet/samples/generated_samples/meet_v2_generated_spaces_service_update_space_async.py
# This snippet has been automatically generated and should be regarded as a # code template only. # It will require modifications to work: # - It may require correct/in-range values for request initialization. # - It may require specifying regional endpoints when creating the service #   client as shown in: #   https://googleapis.dev/python/google-api-core/latest/client_options.html from google.apps import meet_v2   async def sample_update_space():     # Create a client     client = meet_v2.SpacesServiceAsyncClient()      # Initialize request argument(s)     request = meet_v2.UpdateSpaceRequest(     )      # Make the request     response = await client.update_space(request=request)      # Handle the response     print(response)

將聊天室名稱值替換為由伺服器產生的會議聊天室專屬 ID。

結束正在進行的會議

如要結束會議空間中的有效會議 (如果有),請在 spaces 資源上使用 endActiveConference 方法。要求和回應主體都為空白。詳情請參閱「Meet 如何識別會議空間」。

以下程式碼範例說明如何結束正在進行的會議:

Java

java-meet/samples/snippets/generated/com/google/apps/meet/v2/spacesservice/endactiveconference/AsyncEndActiveConference.java
import com.google.api.core.ApiFuture; import com.google.apps.meet.v2.EndActiveConferenceRequest; import com.google.apps.meet.v2.SpaceName; import com.google.apps.meet.v2.SpacesServiceClient; import com.google.protobuf.Empty;  public class AsyncEndActiveConference {    public static void main(String[] args) throws Exception {     asyncEndActiveConference();   }    public static void asyncEndActiveConference() throws Exception {     // This snippet has been automatically generated and should be regarded as a code template only.     // It will require modifications to work:     // - It may require correct/in-range values for request initialization.     // - It may require specifying regional endpoints when creating the service client as shown in     // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library     try (SpacesServiceClient spacesServiceClient = SpacesServiceClient.create()) {       EndActiveConferenceRequest request =           EndActiveConferenceRequest.newBuilder()               .setName(SpaceName.of("[SPACE]").toString())               .build();       ApiFuture<Empty> future =           spacesServiceClient.endActiveConferenceCallable().futureCall(request);       // Do something.       future.get();     }   } }

Node.js

packages/google-apps-meet/samples/generated/v2/spaces_service.end_active_conference.js
/**  * This snippet has been automatically generated and should be regarded as a code template only.  * It will require modifications to work.  * It may require correct/in-range values for request initialization.  * TODO(developer): Uncomment these variables before running the sample.  */ /**  *  Required. Resource name of the space.  *  Format: `spaces/{space}`.  *  `{space}` is the resource identifier for the space. It's a unique,  *  server-generated ID and is case sensitive. For example, `jQCFfuBOdN5z`.  *  For more information, see How Meet identifies a meeting  *  space (https://developers.google.com/meet/api/guides/meeting-spaces#identify-meeting-space).  */ // const name = 'abc123'  // Imports the Meet library const {SpacesServiceClient} = require('@google-apps/meet').v2;  // Instantiates a client const meetClient = new SpacesServiceClient();  async function callEndActiveConference() {   // Construct request   const request = {     name,   };    // Run request   const response = await meetClient.endActiveConference(request);   console.log(response); }  callEndActiveConference();

Python

packages/google-apps-meet/samples/generated_samples/meet_v2_generated_spaces_service_end_active_conference_async.py
# This snippet has been automatically generated and should be regarded as a # code template only. # It will require modifications to work: # - It may require correct/in-range values for request initialization. # - It may require specifying regional endpoints when creating the service #   client as shown in: #   https://googleapis.dev/python/google-api-core/latest/client_options.html from google.apps import meet_v2   async def sample_end_active_conference():     # Create a client     client = meet_v2.SpacesServiceAsyncClient()      # Initialize request argument(s)     request = meet_v2.EndActiveConferenceRequest(         name="name_value",     )      # Make the request     await client.end_active_conference(request=request)

將聊天室名稱值替換為會議聊天室專屬的伺服器產生 ID。