Katılımcılarla çalışma

Katılımcı, görüşmeye katılan veya Tamamlayıcı Mod'u kullanarak izleyici olarak izleyen ya da görüşmeye bağlı bir oda cihazı kullanan kişidir. Her kişi için bir conferenceRecords.participants kaynak vardır.

Katılımcı oturumu, görüşmeye katılan her katılımcı-cihaz çifti için oluşturulan benzersiz bir oturum kimliğidir. Her oturum için bir conferenceRecords.participants.participantSessions kaynağı vardır. Katılımcı aynı görüşmeye aynı katılımcı-cihaz çiftinden birden çok kez katılırsa her katılımcıya benzersiz oturum kimlikleri atanır.

Bu sayfada, konferansa katılan veya konferansta bulunan tüm katılımcılar ya da yalnızca tek bir katılımcı hakkında oturum bilgileriyle birlikte nasıl bilgi edinileceği açıklanmaktadır.

Katılımcı sayısı

Aşağıdaki bölümlerde katılımcılar hakkında nasıl bilgi edineceğiniz ayrıntılı olarak açıklanmıştır.

conferenceRecords.participants kaynağı, user alanını içerir. user yalnızca aşağıdaki nesnelerden biri olabilir:

  • signedinUser şu iki seçenekten biridir:

    • Kişisel bilgisayardan, mobil cihazdan veya Arkadaş modu üzerinden katılan bir kullanıcı.

    • Konferans odası cihazları tarafından kullanılan bir robot hesabı.

  • anonymousUser, Google Hesabı'nda oturum açmamış, kimliği tanımlanmamış bir kullanıcıdır.

  • phoneUser, Google Hesabı ile oturum açmadığı için kimliği bilinmeyen bir telefondan katılan kullanıcıdır.

Tüm katılımcıları arama

Bir konferans kaydındaki tüm katılımcılarla ilgili ayrıntıları almak için parent yol parametresini kullanarak conferenceRecords.participants kaynağındaki list() yöntemini kullanın.

Belirli bir zamandan önce katılan veya belirli bir zamandan sonra ayrılan kullanıcıları filtrelemek için earliestStartTime veya latestEndTime alanlarını kullanabilirsiniz. Her iki alan da RFC 3339 UTC "Zulu" biçiminde, nanosaniye çözünürlükte ve en fazla dokuz ondalık basamak içeren zaman damgası biçimini kullanır: {year}-{month}-{day}T{hour}:{min}:{sec}[.{frac_sec}]Z. Örneğin:

  • earliestStartTime < 2023-10-01T15:01:23Z
  • latestEndTime < 2023-10-01T15:01:23Z

Mevcut bir konferanstaki etkin katılımcıları görmek için latestEndTime IS NULL simgesini kullanın.

Yöntem, conferenceRecords.participants kaynağı örneği olarak konferans katılımcılarının listesini, katılım zamanına göre azalan düzende döndürür.

Aşağıdaki kod örneğinde, bir konferans kaydındaki tüm katılımcıların nasıl listeleneceği gösterilmektedir:

Java

java-meet/samples/snippets/generated/com/google/apps/meet/v2/conferencerecordsservice/listparticipants/AsyncListParticipants.java
import com.google.api.core.ApiFuture;
import com.google.apps.meet.v2.ConferenceRecordName;
import com.google.apps.meet.v2.ConferenceRecordsServiceClient;
import com.google.apps.meet.v2.ListParticipantsRequest;
import com.google.apps.meet.v2.Participant;

public class AsyncListParticipants {

  public static void main(String[] args) throws Exception {
    asyncListParticipants();
  }

  public static void asyncListParticipants() 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 (ConferenceRecordsServiceClient conferenceRecordsServiceClient =
        ConferenceRecordsServiceClient.create()) {
      ListParticipantsRequest request =
          ListParticipantsRequest.newBuilder()
              .setParent(ConferenceRecordName.of("[CONFERENCE_RECORD]").toString())
              .setPageSize(883849137)
              .setPageToken("pageToken873572522")
              .setFilter("filter-1274492040")
              .build();
      ApiFuture<Participant> future =
          conferenceRecordsServiceClient.listParticipantsPagedCallable().futureCall(request);
      // Do something.
      for (Participant element : future.get().iterateAll()) {
        // doThingsWith(element);
      }
    }
  }
}

Node.js

packages/google-apps-meet/samples/generated/v2/conference_records_service.list_participants.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. Format: `conferenceRecords/{conference_record}`
 */
// const parent = 'abc123'
/**
 *  Maximum number of participants to return. The service might return fewer
 *  than this value.
 *  If unspecified, at most 100 participants are returned.
 *  The maximum value is 250; values above 250 are coerced to 250.
 *  Maximum might change in the future.
 */
// const pageSize = 1234
/**
 *  Page token returned from previous List Call.
 */
// const pageToken = 'abc123'
/**
 *  Optional. User specified filtering condition in EBNF
 *  format (https://en.wikipedia.org/wiki/Extended_Backus%E2%80%93Naur_form).
 *  The following are the filterable fields:
 *  * `earliest_start_time`
 *  * `latest_end_time`
 *  For example, `latest_end_time IS NULL` returns active participants in
 *  the conference.
 */
// const filter = 'abc123'

// Imports the Meet library
const {ConferenceRecordsServiceClient} = require('@google-apps/meet').v2;

// Instantiates a client
const meetClient = new ConferenceRecordsServiceClient();

async function callListParticipants() {
  // Construct request
  const request = {
    parent,
  };

  // Run request
  const iterable = meetClient.listParticipantsAsync(request);
  for await (const response of iterable) {
      console.log(response);
  }
}

callListParticipants();

Python

packages/google-apps-meet/samples/generated_samples/meet_v2_generated_conference_records_service_list_participants_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_list_participants():
    # Create a client
    client = meet_v2.ConferenceRecordsServiceAsyncClient()

    # Initialize request argument(s)
    request = meet_v2.ListParticipantsRequest(
        parent="parent_value",
    )

    # Make the request
    page_result = client.list_participants(request=request)

    # Handle the response
    async for response in page_result:
        print(response)

Üst öğe değerini konferans kaydının adıyla değiştirin.

Belirli bir katılımcıyı arama

Belirli bir katılımcıyı aramak için name yol parametresiyle birlikte conferenceRecords.participants kaynağındaki get() yöntemini kullanın. Katılımcının adını almak için conferenceRecords.participants.list yöntemini kullanın.

Yöntem, bir conferenceRecords.participants kaynağı örneği olarak katılımcı adı döndürür.

Aşağıdaki kod örneğinde, belirli bir katılımcının nasıl alınacağı gösterilmektedir:

Java

java-meet/samples/snippets/generated/com/google/apps/meet/v2/conferencerecordsservice/getparticipant/AsyncGetParticipant.java
import com.google.api.core.ApiFuture;
import com.google.apps.meet.v2.ConferenceRecordsServiceClient;
import com.google.apps.meet.v2.GetParticipantRequest;
import com.google.apps.meet.v2.Participant;
import com.google.apps.meet.v2.ParticipantName;

public class AsyncGetParticipant {

  public static void main(String[] args) throws Exception {
    asyncGetParticipant();
  }

  public static void asyncGetParticipant() 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 (ConferenceRecordsServiceClient conferenceRecordsServiceClient =
        ConferenceRecordsServiceClient.create()) {
      GetParticipantRequest request =
          GetParticipantRequest.newBuilder()
              .setName(ParticipantName.of("[CONFERENCE_RECORD]", "[PARTICIPANT]").toString())
              .build();
      ApiFuture<Participant> future =
          conferenceRecordsServiceClient.getParticipantCallable().futureCall(request);
      // Do something.
      Participant response = future.get();
    }
  }
}

Node.js

packages/google-apps-meet/samples/generated/v2/conference_records_service.get_participant.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 participant.
 */
// const name = 'abc123'

// Imports the Meet library
const {ConferenceRecordsServiceClient} = require('@google-apps/meet').v2;

// Instantiates a client
const meetClient = new ConferenceRecordsServiceClient();

async function callGetParticipant() {
  // Construct request
  const request = {
    name,
  };

  // Run request
  const response = await meetClient.getParticipant(request);
  console.log(response);
}

callGetParticipant();

Python

packages/google-apps-meet/samples/generated_samples/meet_v2_generated_conference_records_service_get_participant_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_participant():
    # Create a client
    client = meet_v2.ConferenceRecordsServiceAsyncClient()

    # Initialize request argument(s)
    request = meet_v2.GetParticipantRequest(
        name="name_value",
    )

    # Make the request
    response = await client.get_participant(request=request)

    # Handle the response
    print(response)

Katılımcı adını, bulunacak katılımcının adıyla değiştirin.

Katılımcı oturumları

Aşağıdaki bölümlerde, katılımcı oturumları hakkında nasıl bilgi edineceğiniz ayrıntılı olarak açıklanmıştır.

Tüm katılımcı oturumlarını arama

Bir konferans kaydındaki katılımcının tüm katılımcı oturumlarıyla ilgili ayrıntıları almak için parent yol parametresini kullanarak conferenceRecords.participants.participantSessions kaynağındaki list() yöntemini kullanın.

Belirli bir zamandan önce katılan veya belirli bir zamandan sonra ayrılan kullanıcıları filtrelemek için startTime veya endTime alanlarını kullanabilirsiniz. Her iki alan da RFC 3339 UTC "Zulu" biçiminde zaman damgası biçimini kullanır. Bu biçim nanosaniye çözünürlüğe ve dokuz kesirli basamağa kadar sahiptir: {year}-{month}-{day}T{hour}:{min}:{sec}[.{frac_sec}]Z. Örneğin:

  • startTime < 2023-10-01T15:01:23Z
  • endTime < 2023-10-01T15:01:23Z

Yöntem, conferenceRecords.participants.participantSession kaynağı örneği olarak katılımcı oturumlarının listesini, katılım süresine göre azalan düzende döndürür.

Aşağıdaki kod örneğinde, bir konferans kaydındaki tüm katılımcı oturumlarının nasıl listeleneceği gösterilmektedir:

Java

java-meet/samples/snippets/generated/com/google/apps/meet/v2/conferencerecordsservice/listparticipantsessions/AsyncListParticipantSessions.java
import com.google.api.core.ApiFuture;
import com.google.apps.meet.v2.ConferenceRecordsServiceClient;
import com.google.apps.meet.v2.ListParticipantSessionsRequest;
import com.google.apps.meet.v2.ParticipantName;
import com.google.apps.meet.v2.ParticipantSession;

public class AsyncListParticipantSessions {

  public static void main(String[] args) throws Exception {
    asyncListParticipantSessions();
  }

  public static void asyncListParticipantSessions() 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 (ConferenceRecordsServiceClient conferenceRecordsServiceClient =
        ConferenceRecordsServiceClient.create()) {
      ListParticipantSessionsRequest request =
          ListParticipantSessionsRequest.newBuilder()
              .setParent(ParticipantName.of("[CONFERENCE_RECORD]", "[PARTICIPANT]").toString())
              .setPageSize(883849137)
              .setPageToken("pageToken873572522")
              .setFilter("filter-1274492040")
              .build();
      ApiFuture<ParticipantSession> future =
          conferenceRecordsServiceClient.listParticipantSessionsPagedCallable().futureCall(request);
      // Do something.
      for (ParticipantSession element : future.get().iterateAll()) {
        // doThingsWith(element);
      }
    }
  }
}

Node.js

packages/google-apps-meet/samples/generated/v2/conference_records_service.list_participant_sessions.js
// Copyright 2024 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//     https://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
// ** This file is automatically generated by gapic-generator-typescript. **
// ** https://github.com/googleapis/gapic-generator-typescript **
// ** All changes to this file may be overwritten. **



'use strict';

function main(parent) {
  /**
   * 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. Format:
   *  `conferenceRecords/{conference_record}/participants/{participant}`
   */
  // const parent = 'abc123'
  /**
   *  Optional. Maximum number of participant sessions to return. The service
   *  might return fewer than this value. If unspecified, at most 100
   *  participants are returned. The maximum value is 250; values above 250 are
   *  coerced to 250. Maximum might change in the future.
   */
  // const pageSize = 1234
  /**
   *  Optional. Page token returned from previous List Call.
   */
  // const pageToken = 'abc123'
  /**
   *  Optional. User specified filtering condition in EBNF
   *  format (https://en.wikipedia.org/wiki/Extended_Backus%E2%80%93Naur_form).
   *  The following are the filterable fields:
   *  * `start_time`
   *  * `end_time`
   *  For example, `end_time IS NULL` returns active participant sessions in
   *  the conference record.
   */
  // const filter = 'abc123'

  // Imports the Meet library
  const {ConferenceRecordsServiceClient} = require('@google-apps/meet').v2;

  // Instantiates a client
  const meetClient = new ConferenceRecordsServiceClient();

  async function callListParticipantSessions() {
    // Construct request
    const request = {
      parent,
    };

    // Run request
    const iterable = meetClient.listParticipantSessionsAsync(request);
    for await (const response of iterable) {
        console.log(response);
    }
  }

  callListParticipantSessions();
}

process.on('unhandledRejection', err => {
  console.error(err.message);
  process.exitCode = 1;
});
main(...process.argv.slice(2));

Python

packages/google-apps-meet/samples/generated_samples/meet_v2_generated_conference_records_service_list_participant_sessions_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_list_participant_sessions():
    # Create a client
    client = meet_v2.ConferenceRecordsServiceAsyncClient()

    # Initialize request argument(s)
    request = meet_v2.ListParticipantSessionsRequest(
        parent="parent_value",
    )

    # Make the request
    page_result = client.list_participant_sessions(request=request)

    # Handle the response
    async for response in page_result:
        print(response)

Üst öğe değerini, konferans kaydının adıyla ve katılımcı adıyla değiştirin.

Belirli bir katılımcı oturumunu arama

Belirli bir katılımcı oturumunu aramak için name yol parametresiyle birlikte conferenceRecords.participants.participantSessions kaynağındaki get() yöntemini kullanın. Katılımcının adını almak için list() yöntemini kullanın.

Yöntem, bir conferenceRecords.participants.participantSessions kaynağı örneği olarak katılımcı adı döndürür.

Aşağıdaki kod örneğinde, belirli bir katılımcı oturumunun nasıl alınacağı gösterilmektedir:

Java

java-meet/samples/snippets/generated/com/google/apps/meet/v2/conferencerecordsservice/getparticipantsession/AsyncGetParticipantSession.java
import com.google.api.core.ApiFuture;
import com.google.apps.meet.v2.ConferenceRecordsServiceClient;
import com.google.apps.meet.v2.GetParticipantSessionRequest;
import com.google.apps.meet.v2.ParticipantSession;
import com.google.apps.meet.v2.ParticipantSessionName;

public class AsyncGetParticipantSession {

  public static void main(String[] args) throws Exception {
    asyncGetParticipantSession();
  }

  public static void asyncGetParticipantSession() 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 (ConferenceRecordsServiceClient conferenceRecordsServiceClient =
        ConferenceRecordsServiceClient.create()) {
      GetParticipantSessionRequest request =
          GetParticipantSessionRequest.newBuilder()
              .setName(
                  ParticipantSessionName.of(
                          "[CONFERENCE_RECORD]", "[PARTICIPANT]", "[PARTICIPANT_SESSION]")
                      .toString())
              .build();
      ApiFuture<ParticipantSession> future =
          conferenceRecordsServiceClient.getParticipantSessionCallable().futureCall(request);
      // Do something.
      ParticipantSession response = future.get();
    }
  }
}

Node.js

packages/google-apps-meet/samples/generated/v2/conference_records_service.get_participant_session.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 participant.
 */
// const name = 'abc123'

// Imports the Meet library
const {ConferenceRecordsServiceClient} = require('@google-apps/meet').v2;

// Instantiates a client
const meetClient = new ConferenceRecordsServiceClient();

async function callGetParticipantSession() {
  // Construct request
  const request = {
    name,
  };

  // Run request
  const response = await meetClient.getParticipantSession(request);
  console.log(response);
}

callGetParticipantSession();

Python

packages/google-apps-meet/samples/generated_samples/meet_v2_generated_conference_records_service_get_participant_session_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_participant_session():
    # Create a client
    client = meet_v2.ConferenceRecordsServiceAsyncClient()

    # Initialize request argument(s)
    request = meet_v2.GetParticipantSessionRequest(
        name="name_value",
    )

    # Make the request
    response = await client.get_participant_session(request=request)

    # Handle the response
    print(response)

Katılımcı adını, bulunacak katılımcının adıyla değiştirin.

People API ile katılımcı ayrıntılarını alma

Bir katılımcı hakkında ayrıntıları almak için People API'deki people.get yöntemini kullanın.

  1. Yolun son bileşenini kullanarak katılımcı kaynak adından kişinin kimliğini çıkarın. Örneğin, katılımcı kaynak adı conferenceRecords/abc-123/participants/12345 ise People API'nin kimliği 12345 olur.
  2. READ_SOURCE_TYPE_PROFILE, READ_SOURCE_TYPE_CONTACT ve READ_SOURCE_TYPE_OTHER_CONTACT kaynaklarını ekleyin. Bu sayede, hem Google Workspace kuruluşunun dahili kullanıcıları hem de kuruluş dışı kişiler yanıta dahil edilir.

Aşağıdaki örnekte, bir kullanıcı için hem kuruluş profilleri hem de kişiler aranmaktadır:

cURL

curl \
    'https://people.googleapis.com/v1/people/PERSON_ID?personFields=names%2CemailAddresses&sources=READ_SOURCE_TYPE_OTHER_CONTACT&sources=READ_SOURCE_TYPE_PROFILE&sources=READ_SOURCE_TYPE_CONTACT' \
    --header 'Authorization: Bearer ACCESS_TOKEN' \
    --header 'Accept: application/json' \
    --compressed