В этом руководстве объясняется, как получить сведения об участниках, посетивших прошлую конференцию или находящихся в активной конференции, а также информацию об их сеансе, используя API Google Meet REST.
Участник — это человек, присоединившийся к вызову, использующий режим Companion , наблюдающий за происходящим в качестве зрителя или подключенное к вызову устройство в переговорной комнате. Для каждого участника существует один ресурс participants
.
Сеанс участника — это уникальный идентификатор сеанса, создаваемый для каждой пары «участник-устройство», присоединяющейся к вызову. Для каждого сеанса существует один ресурс participantSessions
. Если участник присоединяется к одному и тому же вызову несколько раз с одной и той же пары «участник-устройство», каждому из них присваиваются уникальные идентификаторы сеанса.
Если вы являетесь владельцем или участником места проведения совещания, вы можете вызвать методы get()
и list()
как для participants
, так и для ресурсов participantSessions
, чтобы получить записи участников.
Аутентификация и авторизация с использованием учётных данных пользователя позволяют приложениям Google Meet получать доступ к данным пользователя и выполнять операции от его имени. Аутентификация с делегированием на уровне домена позволяет предоставить сервисной учётной записи приложения доступ к данным ваших пользователей, не требуя согласия каждого пользователя.
Участники
В следующих разделах подробно описано, как получить информацию об участниках записи конференции.
Ресурсы participants
объединены с полем user
. user
может быть только одним из следующих объектов:
signedinUser
— это либо:Пользователь, присоединяющийся с персонального компьютера, мобильного устройства или через режим Companion.
Учетная запись робота, используемая устройствами конференц-зала.
anonymousUser
— это неидентифицированный пользователь, не вошедший в учетную запись Google.phoneUser
— это пользователь, совершающий звонок с телефона, личность которого неизвестна, поскольку он не вошел в систему с помощью учетной записи Google.
Обратите внимание, что, хотя все три объекта возвращают displayName
, signedinUser
также возвращает уникальный идентификатор user
, совместимый с API Admin SDK и People API. Формат: users/{user}
. Подробнее об использовании идентификатора user
с People API см. в разделе Получение сведений об участнике с помощью People API .
Получить информацию об участнике
Чтобы получить информацию о конкретном участнике, используйте метод get()
ресурса participants
с параметром name
path. Если вы не знаете имя участника, вы можете получить список всех имён участников с помощью метода list()
.
Метод возвращает данные участника как экземпляр ресурса participants
.
В следующем примере кода показано, как получить определенного участника:
Ява
Node.js
Питон
Замените имя участника на имя конкретного идентификатора участника в записи конференции.
Список всех участников
Чтобы вывести список сведений обо всех участниках записи конференции, используйте метод list()
ресурса participants
с параметром parent
пути. Формат: conferenceRecords/{conferenceRecord}
.
Метод возвращает список участников конференции, отсортированный по убыванию по значению earliestStartTime
, как экземпляр ресурса « participants
. Чтобы настроить размер страницы и отфильтровать результаты запроса, см. раздел Настройка пагинации или фильтрация списка участников .
В следующем примере кода показано, как составить список всех участников записи конференции:
Ява
Node.js
Питон
Замените родительское значение именем записи конференции.
Настройте пагинацию или отфильтруйте список участников
Передайте следующие параметры запроса для настройки пагинации или фильтрации участников:
pageSize
: Максимальное количество возвращаемых участников. Сервис может вернуть меньше этого значения. Если не указано, возвращается не более 100 участников. Максимальное значение — 250; значения больше 250 автоматически изменяются на 250.pageToken
: токен страницы, полученный при предыдущем вызове списка. Укажите этот токен для получения следующей страницы.filter
: Необязательно. Фильтр запроса для извлечения определённых элементов из результатов поиска ресурсовparticipants
.Вы можете использовать поля
earliestStartTime
илиlatestEndTime
для фильтрации пользователей, которые присоединились до или покинули сайт после определённого времени. В обоих полях используется формат Timestamp в формате RFC 3339 UTC «Zulu» с разрешением в наносекундах и до девяти знаков после запятой:{year}-{month}-{day}T{hour}:{min}:{sec}[.{frac_sec}]Z
. Например:-
earliestStartTime < 2023-10-01T15:01:23Z
-
latestEndTime < 2023-10-01T15:01:23Z
Чтобы составить список всех активных участников существующей конференции, используйте
latestEndTime IS NULL
.-
Получите данные об участниках с помощью API People
Чтобы получить сведения об участнике, используйте метод get()
ресурса people
в API People.
Извлеките идентификатор человека из ресурса
participant
, используя конечный компонент пути. Например, если значение ресурсаparticipant
—conferenceRecords/abc-123/participants/12345
идентификатор API People —12345
.Включите
READ_SOURCE_TYPE_PROFILE
,READ_SOURCE_TYPE_CONTACT
иREAD_SOURCE_TYPE_OTHER_CONTACT
ReadSourceType
. Это гарантирует включение в ответ как внутренних пользователей организации Google Workspace, так и внешних контактов.
В следующем примере кода показано, как выполнить поиск как в профилях организаций, так и в контактах для человека:
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
Заменить следующее:
- PERSON_ID : идентификатор человека, которого нужно найти.
- ACCESS_TOKEN : токен доступа, предоставляющий доступ к нескольким API.
Участники сессий
В следующих разделах подробно описано, как получить информацию о сеансах участника записи конференции.
Получить подробную информацию о сеансе участника
Чтобы получить информацию о сеансе конкретного участника, используйте метод get()
ресурса participantSessions
с параметром name
path. Если вы не знаете имя сеанса участника, вы можете получить список всех сеансов участника с помощью метода list()
.
Метод возвращает имя участника как экземпляр ресурса participantSessions
.
В следующем примере кода показано, как получить сеанс конкретного участника:
Ява
Node.js
Питон
Замените имя участника на имя конкретного идентификатора сеанса участника в сеансе участника.
Список всех сеансов участников
Чтобы вывести список всех сеансов участника, указанного в записи конференции, используйте метод list()
ресурса participantSessions
с параметром path, указывающим parent
путь. Формат: conferenceRecords/{conferenceRecord}/participants/{participant}
.
Метод возвращает список сеансов участников, упорядоченный по startTime
в порядке убывания, как экземпляр ресурса participantSession
. Чтобы настроить размер страницы и отфильтровать результаты запроса, см. раздел Настройка пагинации или фильтрация списка сеансов участников .
В следующем примере кода показано, как составить список всех сеансов участников в записи конференции:
Ява
Node.js
Питон
Замените родительское значение именем сеансов участника записи конференции.
Настройте пагинацию или отфильтруйте список сеансов участников
Передайте следующие необязательные параметры запроса для настройки пагинации или фильтрации сеансов участников:
pageSize
: Максимальное количество возвращаемых сеансов участников. Сервис может вернуть меньше этого значения. Если не указано, возвращается не более 100 сеансов участников. Максимальное значение — 250; значения больше 250 автоматически изменяются на 250.pageToken
: токен страницы, полученный при предыдущем вызове списка. Укажите этот токен для получения следующей страницы.filter
: Необязательно. Фильтр запроса для извлечения определённых элементов из результатов поиска ресурсовparticipants
.Вы можете использовать поля
startTime
иendTime
для фильтрации пользователей, которые присоединились до или покинули сообщество после определённого времени. В обоих полях используется формат Timestamp в формате RFC 3339 UTC «Zulu» с разрешением в наносекундах и до девяти знаков после запятой:{year}-{month}-{day}T{hour}:{min}:{sec}[.{frac_sec}]Z
. Например:-
startTime < 2023-10-01T15:01:23Z
-
endTime < 2023-10-01T15:01:23Z
Чтобы составить список всех сеансов активных участников в записи конференции, используйте
endTime IS NULL
.-