Tutorial ini menunjukkan cara menggunakan REST API Google Meet beserta Google Workspace Events API dan Google Cloud Pub/Sub untuk mengamati dan bereaksi terhadap acara rapat. Aplikasi contoh merekam saat konferensi dimulai dan berakhir, kapan peserta bergabung atau keluar, dan kapan artefak rapat yang dihasilkan tersedia.
Untuk mempelajari lebih lanjut cara menggunakan peristiwa, lihat Berlangganan peristiwa Google Meet di dokumentasi Google Workspace Events API.
Prasyarat
Jika Anda perlu mengaktifkan salah satu prasyarat tersebut untuk organisasi Anda, minta administrator Google Workspace untuk mengaktifkannya:
- Akun Google Workspace dengan akses ke Google Meet.
- Akses untuk membuat project Google Cloud.
- Python 3 terinstal.
- Gcloud CLI sudah terinstal.
Menyiapkan lingkungan Anda
Bagian ini menunjukkan cara membuat dan mengonfigurasi lingkungan lokal dan project Google Cloud untuk tutorial ini.
Membuat direktori kerja dan lingkungan virtual Python
Untuk membuat dan mengaktifkan lingkungan virtual baru, jalankan perintah berikut di terminal Anda.
Linux/macOS
mkdir meet-tutorial
cd meet-tutorial
python3 -mvenv env
source env/bin/activate
Windows (command prompt)
mkdir meet-tutorial
cd meet-tutorial
python3 -mvenv env
env/bin/activate.bat
Windows (PowerShell)
mkdir meet-tutorial
cd meet-tutorial
python3 -mvenv env
env/bin/activate.ps1
Membuat project Google Cloud
Konsol Google Cloud
- Di konsol Google Cloud, buka Menu > IAM & Admin > Create a Project.
-
Di kolom Project Name, masukkan nama deskriptif untuk project Anda.
Opsional: Untuk mengedit ID Project, klik Edit. Project ID tidak dapat diubah setelah project dibuat. Jadi, pilih ID yang sesuai dengan kebutuhan Anda sepanjang waktu project tersebut.
- Di kolom Location, klik Browse untuk menampilkan lokasi potensial project. Kemudian, klik Select.
- Klik Create. Konsol Google Cloud akan membuka halaman Dashboard dan project Anda akan dibuat dalam beberapa menit.
gcloud CLI
Di salah satu lingkungan pengembangan berikut, akses Google Cloud CLI (`gcloud`):
-
Cloud Shell: Untuk menggunakan terminal online dengan gcloud CLI yang sudah disiapkan, aktifkan Cloud Shell.
Mengaktifkan Cloud Shell -
Local Shell: Untuk menggunakan lingkungan pengembangan lokal,
instal dan
initialize
gcloud CLI.
Untuk membuat project Cloud, gunakan perintah `gcloud projects create`:gcloud projects create PROJECT_ID
Mengaktifkan penagihan untuk project Google Cloud
Konsol Google Cloud
- Di konsol Google Cloud, buka Billing. Klik Menu > Penagihan > Project Saya.
- Di bagian Select an organization, pilih organisasi yang terkait dengan project Google Cloud Anda.
- Di baris project, buka menu Actions ( ), klik Change billing, dan pilih akun Penagihan Cloud.
- Klik Tetapkan akun.
gcloud CLI
- Untuk menampilkan akun penagihan yang tersedia, jalankan:
gcloud billing accounts list
- Tautkan akun penagihan dengan project Google Cloud:
gcloud billing projects link PROJECT_ID --billing-account=BILLING_ACCOUNT_ID
Ganti kode berikut:
PROJECT_ID
adalah Project ID untuk project Cloud yang ingin Anda aktifkan penagihannya.BILLING_ACCOUNT_ID
adalah ID akun penagihan yang akan ditautkan dengan project Google Cloud.
Menyiapkan autentikasi dan otorisasi
Dengan autentikasi dan otorisasi, aplikasi dapat mengakses resource REST API Meet. Otorisasi pengguna diperlukan untuk memanggil REST API Meet. Bagian ini menjelaskan cara mengonfigurasi kredensial pengguna dan meminta otorisasi.
Mengonfigurasi layar izin OAuth dan memilih cakupan
Langkah berikut menyarankan informasi placeholder untuk mengonfigurasi layar izin OAuth untuk aplikasi Anda. Sebelum memublikasikan aplikasi secara eksternal, perbarui informasi ini.
- Di konsol Google Cloud, buka Menu > APIs & Services > OAuth consent screen.
- Di bagian Jenis pengguna, pilih Internal, lalu klik Buat.
- Di App name, masukkan
Meet REST API Tutorial
. - Lengkapi formulir pendaftaran aplikasi, lalu klik Simpan dan Lanjutkan.
- Klik Tambahkan atau Hapus Cakupan. Sebuah panel berisi daftar cakupan untuk setiap API yang telah diaktifkan di project Google Cloud Anda akan muncul.
- Pada bagian Tambahkan cakupan secara manual, tempel cakupan berikut:
https://www.googleapis.com/auth/meetings.space.created
- Klik Add to Table.
- Klik Perbarui.
- Setelah memilih cakupan yang dibutuhkan oleh aplikasi Anda, klik Simpan dan Lanjutkan.
- Jika memilih Eksternal untuk jenis pengguna, tambahkan pengguna pengujian:
- Di bagian Pengguna uji coba, klik Tambahkan pengguna.
- Masukkan alamat email Anda dan pengguna pengujian yang diotorisasi lainnya, lalu klik Simpan dan Lanjutkan.
- Tinjau ringkasan pendaftaran aplikasi Anda. Untuk melakukan perubahan, klik Edit. Jika pendaftaran aplikasi terlihat baik-baik saja, klik Back to Dashboard.
Membuat client ID
Client ID berfungsi sebagai kredensial untuk aplikasi Anda selama alur OAuth 2.0. Karena aplikasi berjalan secara lokal, buat client ID desktop.
- Di konsol Google Cloud, buka Menu > APIs & Services > Credentials.
- Klik Buat Kredensial > Client ID OAuth.
- Klik Jenis aplikasi > Aplikasi desktop.
- Di kolom Name, ketik nama untuk kredensial tersebut. Nama ini hanya ditampilkan di Konsol Google Cloud.
- Klik Create. Layar yang dibuat klien OAuth akan muncul, yang menampilkan Client ID dan Rahasia klien Anda yang baru.
- Klik OK. Kredensial yang baru dibuat akan muncul di Client ID OAuth 2.0.
Menginstal library autentikasi Google
Instal library autentikasi Google:
pip install google-auth google-auth-oauthlib
Menjalankan otorisasi
REST API Meet memerlukan kredensial pengguna dalam bentuk token akses OAuth 2.0. Di bagian ini, Anda akan menerapkan alur OAuth 2.0 untuk meminta token akses dan token refresh untuk pengguna.
Di direktori kerja, buat file
main.py
dan tambahkan konten berikut:import os import json from google.auth.transport import requests from google.oauth2.credentials import Credentials from google_auth_oauthlib.flow import InstalledAppFlow def authorize() -> Credentials: """Ensure valid credentials for calling the Meet REST API.""" CLIENT_SECRET_FILE = "./client_secret.json" credentials = None if os.path.exists('token.json'): credentials = Credentials.from_authorized_user_file('token.json') if credentials is None: flow = InstalledAppFlow.from_client_secrets_file( CLIENT_SECRET_FILE, scopes=[ 'https://www.googleapis.com/auth/meetings.space.created', ]) flow.run_local_server(port=0) credentials = flow.credentials if credentials and credentials.expired: credentials.refresh(requests.Request()) if credentials is not None: with open("token.json", "w") as f: f.write(credentials.to_json()) return credentials USER_CREDENTIALS = authorize()
Untuk menjalankan kode, client ID dan rahasia yang dibuat sebelumnya diperlukan. Salin file rahasia klien yang didownload ke direktori kerja project dan ganti namanya menjadi
client_secret.json
.Jika Anda ingin menguji cara kerja otorisasi, jalankan perintah berikut. Aplikasi meminta otorisasi dan membuat file
token.json
dalam direktori kerja project setelah permintaan disetujui.python3 main.py
Menambahkan REST API Meet
Setelah kode otorisasi selesai, saatnya untuk mengaktifkan dan memanggil REST API Meet.
Mengaktifkan API
Meskipun bagian ini berfokus pada REST API Meet, tutorial ini juga menggunakan Google Cloud Pub/Sub dan Google Workspace Events API.
Konsol Google Cloud
Di konsol Google Cloud, aktifkan REST API Google Meet, Google Workspace Events API, dan Google Cloud Pub/Sub.
Pastikan Anda mengaktifkan API di project Cloud yang benar, lalu klik Next.
Pastikan Anda mengaktifkan API yang benar, lalu klik Enable.
gcloud CLI
Jika perlu, tetapkan project Cloud saat ini ke project yang Anda buat menggunakan perintah
gcloud config set project
:gcloud config set project PROJECT_ID
Ganti PROJECT_ID dengan Project ID dari project Cloud yang Anda buat.
Aktifkan REST API Google Meet, Google Workspace Events API, dan Google Cloud Pub/Sub dengan perintah
gcloud services enable
:gcloud services enable meet.googleapis.com workspaceevents.googleapis.com pubsub.googleapis.com
Menginstal library klien Meet REST API
Ikuti langkah-langkah berikut untuk menginstal library klien Meet REST API:
Jalankan perintah:
pip install google-apps-meet
Edit file
main.py
untuk mengimpor klien:from google.apps import meet_v2 as meet
Membuat ruang
Setelah REST API Meet tersedia, tentukan fungsi untuk membuat ruang rapat yang dapat dijadikan langganan.
Edit main.py
dan tambahkan:
def create_space() -> meet.Space:
"""Create a meeting space."""
client = meet.SpacesServiceClient(credentials=USER_CREDENTIALS)
request = meet.CreateSpaceRequest()
return client.create_space(request=request)
Berlangganan acara
Untuk menerima acara tentang ruang rapat, Anda perlu membuat langganan menggunakan Google Workspace Events API. Anda juga harus membuat dan berlangganan topik Google Cloud Pub/Sub yang berfungsi sebagai endpoint notifikasi tempat aplikasi menerima peristiwa.
Mengonfigurasi Google Cloud Pub/Sub
Untuk membuat dan berlangganan topik Pub/Sub:
Konsol Google Cloud
- Di konsol Google Cloud, buka Menu > Pub/Sub.
Pastikan bahwa project Cloud untuk aplikasi Anda sudah dipilih.
- Klik
- Masukkan
workspace-events
sebagai nama topik. - Biarkan Add a default subscription dipilih.
- Klik Create. Nama topik lengkap Anda diformat sebagai
projects/{project}/topics/{topic}
. Catat nama ini untuk digunakan di langkah-langkah berikutnya.
Create topic dan lakukan tindakan berikut:
- Masukkan
- Berikan akses untuk memublikasikan pesan Pub/Sub ke topik Anda:
- Di panel samping, buka tab Izin.
- Klik Add Principal.
- Di New principals, masukkan
meet-api-event-push@system.gserviceaccount.com
. - Di Tetapkan peran, pilih
Pub/Sub Publisher
. - Klik Save.
Diperlukan waktu beberapa menit untuk memperbarui izin topik Anda.
gcloud CLI
- Dalam project Cloud Anda, buat topik dengan menjalankan perintah berikut:
gcloud pubsub topics create workspace-events
Output menampilkan nama topik lengkap, yang diformat sebagai
projects/{project}/topics/{topic}
. Catat nama ini untuk digunakan di langkah-langkah berikutnya. - Berikan akses untuk memublikasikan pesan ke topik Anda:
gcloud pubsub topics add-iam-policy-binding workspace-events --member='serviceAccount:meet-api-event-push@system.gserviceaccount.com' --role='roles/pubsub.publisher'
Diperlukan waktu beberapa menit untuk memperbarui izin topik Anda.
- Buat langganan Pub/Sub untuk topik:
gcloud pubsub subscriptions create workspace-events-sub --topic=TOPIC_NAME
Ganti kode berikut:
TOPIC_NAME
: Nama topik yang Anda buat di langkah sebelumnya.
Catat nama topik dan pastikan nilai untuk {project}
adalah project ID Cloud untuk aplikasi Anda. Nama topik akan digunakan untuk membuat langganan Google Workspace pada lain waktu.
Membuat akun layanan
Konsol Google Cloud
- Di konsol Google Cloud, buka Menu > IAM & Admin > Service Accounts.
- Klik Create service account.
- Isi detail akun layanan, lalu klik Buat dan lanjutkan.
- Opsional: Tetapkan peran ke akun layanan Anda untuk memberikan akses ke resource project Google Cloud Anda. Untuk detail selengkapnya, lihat Memberikan, mengubah, dan mencabut akses ke resource.
- Klik Continue.
- Opsional: Masukkan pengguna atau grup yang dapat mengelola dan melakukan tindakan dengan akun layanan ini. Untuk detail selengkapnya, lihat Mengelola peniruan akun layanan.
- Klik Done. Catat alamat email untuk akun layanan.
gcloud CLI
- Buat akun layanan:
gcloud iam service-accounts create meet-event-listener \ --display-name="meet-event-listener"
- Opsional: Tetapkan peran ke akun layanan Anda untuk memberikan akses ke resource project Google Cloud Anda. Untuk detail selengkapnya, lihat Memberikan, mengubah, dan mencabut akses ke resource.
Menggunakan akun layanan
Setelah membuat akun layanan, beri diri Anda akses untuk meniru identitas akun layanan.
Konsol Google Cloud
- Di kolom Tindakan untuk akun layanan yang baru dibuat, klik > Kelola izin.
- Klik Tambahkan kunci > Berikan akses.
- Masukkan alamat email Anda di bagian Tambahkan akun utama.
- Pilih Service accounts > Service Account Token Creator sebagai peran.
- Klik Save.
gcloud CLI
- Untuk menambahkan izin, jalankan
gcloud iam service-accounts add-iam-policy-binding
menggunakan alamat email akun layanan dan pengguna.gcloud iam service-accounts add-iam-policy-binding \ SERVICE_ACCOUNT_EMAIL \ --member="user:YOUR_EMAIL \ --role="roles/iam.serviceAccountTokenCreator"
- Login dengan
gcloud
untuk menetapkan kredensial default aplikasi ke akun layanan layanan. Saat dimintai otorisasi, login menggunakan akun yang sama dengan yang digunakan pada langkah sebelumnya.gcloud auth application-default login --impersonate-service-account=SERVICE_ACCOUNT_EMAIL
Menginstal library klien Pub/Sub
Gunakan
pip
untuk menginstal library klien untuk Pub/Sub:pip install google-cloud-pubsub
Lalu edit
main.py
untuk mengimpor klien:from google.cloud import pubsub_v1
Membuat langganan Google Workspace
Tambahkan kode berikut ke main.py
untuk menentukan metode berlangganan peristiwa Meet. Kode ini berlangganan semua acara untuk ruang
rapat. Jika berlangganan, peristiwa akan diposting ke topik Pub/Sub.
def subscribe_to_space(space_name: str = None, topic_name: str = None):
"""Subscribe to events for a meeting space."""
session = requests.AuthorizedSession(USER_CREDENTIALS)
body = {
'targetResource': f"//meet.googleapis.com/{space_name}",
"eventTypes": [
"google.workspace.meet.conference.v2.started",
"google.workspace.meet.conference.v2.ended",
"google.workspace.meet.participant.v2.joined",
"google.workspace.meet.participant.v2.left",
"google.workspace.meet.recording.v2.fileGenerated",
"google.workspace.meet.transcript.v2.fileGenerated",
],
"payloadOptions": {
"includeResource": False,
},
"notificationEndpoint": {
"pubsubTopic": topic_name
},
"ttl": "86400s",
}
response = session.post("https://workspaceevents.googleapis.com/v1/subscriptions", json=body)
return response
Selanjutnya, tambahkan kode yang sesuai untuk menarik dan memproses peristiwa.
Memproses dan menangani peristiwa
Lanjutkan mengedit main.py
dan menambahkan kode contoh berikut. Kode ini menerapkan sisi penerima dan menggunakan Google Cloud Pub/Sub API untuk menarik peristiwa saat tersedia. Berbagai metode pengendali akan mencetak informasi
tentang peristiwa yang sesuai.
def format_participant(participant: meet.Participant) -> str:
"""Formats a participant for display on the console."""
if participant.anonymous_user:
return f"{participant.anonymous_user.display_name} (Anonymous)"
if participant.signedin_user:
return f"{participant.signedin_user.display_name} (ID: {participant.signedin_user.user})"
if participant.phone_user:
return f"{participant.phone_user.display_name} (Phone)"
return "Unknown participant"
def fetch_participant_from_session(session_name: str) -> meet.Participant:
"""Fetches the participant for a session."""
client = meet.ConferenceRecordsServiceClient(credentials=USER_CREDENTIALS)
# Use the parent path of the session to fetch the participant details
parsed_session_path = client.parse_participant_session_path(session_name)
participant_resource_name = client.participant_path(
parsed_session_path["conference_record"],
parsed_session_path["participant"])
return client.get_participant(name=participant_resource_name)
def on_conference_started(message: pubsub_v1.subscriber.message.Message):
"""Display information about a conference when started."""
payload = json.loads(message.data)
resource_name = payload.get("conferenceRecord").get("name")
client = meet.ConferenceRecordsServiceClient(credentials=USER_CREDENTIALS)
conference = client.get_conference_record(name=resource_name)
print(f"Conference (ID {conference.name}) started at {conference.start_time.rfc3339()}")
def on_conference_ended(message: pubsub_v1.subscriber.message.Message):
"""Display information about a conference when ended."""
payload = json.loads(message.data)
resource_name = payload.get("conferenceRecord").get("name")
client = meet.ConferenceRecordsServiceClient(credentials=USER_CREDENTIALS)
conference = client.get_conference_record(name=resource_name)
print(f"Conference (ID {conference.name}) ended at {conference.end_time.rfc3339()}")
def on_participant_joined(message: pubsub_v1.subscriber.message.Message):
"""Display information about a participant when they join a meeting."""
payload = json.loads(message.data)
resource_name = payload.get("participantSession").get("name")
client = meet.ConferenceRecordsServiceClient(credentials=USER_CREDENTIALS)
session = client.get_participant_session(name=resource_name)
participant = fetch_participant_from_session(resource_name)
display_name = format_participant(participant)
print(f"{display_name} joined at {session.start_time.rfc3339()}")
def on_participant_left(message: pubsub_v1.subscriber.message.Message):
"""Display information about a participant when they leave a meeting."""
payload = json.loads(message.data)
resource_name = payload.get("participantSession").get("name")
client = meet.ConferenceRecordsServiceClient(credentials=USER_CREDENTIALS)
session = client.get_participant_session(name=resource_name)
participant = fetch_participant_from_session(resource_name)
display_name = format_participant(participant)
print(f"{display_name} left at {session.end_time.rfc3339()}")
def on_recording_ready(message: pubsub_v1.subscriber.message.Message):
"""Display information about a recorded meeting when artifact is ready."""
payload = json.loads(message.data)
resource_name = payload.get("recording").get("name")
client = meet.ConferenceRecordsServiceClient(credentials=USER_CREDENTIALS)
recording = client.get_recording(name=resource_name)
print(f"Recording available at {recording.drive_destination.export_uri}")
def on_transcript_ready(message: pubsub_v1.subscriber.message.Message):
"""Display information about a meeting transcript when artifact is ready."""
payload = json.loads(message.data)
resource_name = payload.get("transcript").get("name")
client = meet.ConferenceRecordsServiceClient(credentials=USER_CREDENTIALS)
transcript = client.get_transcript(name=resource_name)
print(f"Transcript available at {transcript.docs_destination.export_uri}")
def on_message(message: pubsub_v1.subscriber.message.Message) -> None:
"""Handles an incoming event from the Google Cloud Pub/Sub API."""
event_type = message.attributes.get("ce-type")
handler = {
"google.workspace.meet.conference.v2.started": on_conference_started,
"google.workspace.meet.conference.v2.ended": on_conference_ended,
"google.workspace.meet.participant.v2.joined": on_participant_joined,
"google.workspace.meet.participant.v2.left": on_participant_left,
"google.workspace.meet.recording.v2.fileGenerated": on_recording_ready,
"google.workspace.meet.transcript.v2.fileGenerated": on_transcript_ready,
}.get(event_type)
try:
if handler is not None:
handler(message)
message.ack()
except Exception as error:
print("Unable to process event")
print(error)
def listen_for_events(subscription_name: str = None):
"""Subscribe to events on the subscription."""
subscriber = pubsub_v1.SubscriberClient()
with subscriber:
future = subscriber.subscribe(subscription_name, callback=on_message)
print("Listening for events")
try:
future.result()
except KeyboardInterrupt:
future.cancel()
print("Done")
Menyelesaikan kode
Tambahkan kode berikut ke main.py
untuk memanggil metode untuk membuat ruang,
berlangganan peristiwa, dan memproses. Perbarui konstanta TOPIC_NAME
dan SUBSCRIPTION_NAME
dengan nama topik
dan langganan Anda sendiri yang sebelumnya
Anda buat.
Tambahkan kode ke
main.py
:space = create_space() print(f"Join the meeting at {space.meeting_uri}") TOPIC_NAME = "projects/PROJECT_ID/topics/TOPIC_ID" SUBSCRIPTION_NAME = "projects/PROJECT_ID/subscriptions/SUBSCRIPTION_ID" subscription = subscribe_to_space(topic_name=TOPIC_NAME, space_name=space.name) listen_for_events(subscription_name=SUBSCRIPTION_NAME)
Ganti kode berikut:
PROJECT_ID
: Project ID Cloud unik untuk aplikasi Anda, sepertimy-sample-project-191923
.TOPIC_ID
: Nama topik Pub/Sub yang Anda buat di project Cloud.SUBSCRIPTION_ID
: Nama langganan Anda, misalnyaworkspace-events-sub
.
Jalankan program:
python3 main.py
Jika Anda belum pernah menjalankan program, program akan meminta otorisasi untuk pertama kalinya. Berikan akses ke aplikasi untuk memanggil REST API Meet. Setelah program berhasil berjalan, Anda akan melihat output seperti ini:
Join the meeting at https://meet.google.com/abc-mnop-xyz
Gabung ke konferensi
Untuk membuat peristiwa bagi aplikasi, bergabunglah ke konferensi menggunakan URL yang ditampilkan oleh aplikasi. Setelah bergabung, Anda dapat mencoba tindakan berikut untuk memicu peristiwa:
- Keluar dan bergabung kembali ke rapat.
- Undang orang lain atau bergabung melalui telepon.
- Aktifkan perekaman dan transkrip.
Setiap aktivitas ini menghasilkan peristiwa yang diterima aplikasi dan dicatat ke konsol Google Cloud.
Gunakan ctrl-c
untuk menginterupsi program setelah Anda selesai.
Opsional: Langkah tambahan yang dapat dicoba
Aplikasi mencatat detail dasar tentang peristiwa ke dalam log. Untuk terus menjelajahi REST API Meet, coba ubah aplikasi untuk melakukan tindakan tambahan ini.
- Gunakan People API untuk mengambil informasi tambahan tentang peserta yang login.
- Gunakan Google Drive API untuk mendownload rekaman dan transkrip.
- Daripada mendownload transkrip dari Google Drive, ambil transkrip menggunakan metode transkrip terstruktur di REST API Meet.
Opsional: Pembersihan
Agar tidak menimbulkan biaya pada akun Konsol Google Cloud Anda untuk resource yang digunakan dalam tutorial ini, sebaiknya bersihkan semua resource dan project yang dibuat.
Untuk menghapus langganan:
Konsol
Di konsol Google Cloud, buka Menu > Pub/Sub > Subscriptions
Pilih langganan, lalu klik
Tindakan lainnya.Klik Delete. Jendela Hapus langganan akan muncul.
Klik Delete.
gcloud CLI
Menghapus langganan:
gcloud pubsub subscriptions delete SUBSCRIPTION_NAME
Untuk menghapus topik:
Konsol
Di konsol Google Cloud, buka Menu > Pub/Sub > Topics
Pilih topik, lalu klik
Tindakan lainnya.Klik Delete. Jendela Delete topic akan muncul.
Masukkan
delete
, lalu klik Delete.
gcloud CLI
Menghapus topik:
gcloud pubsub topics delete TOPIC_NAME
Untuk menghapus project:
Konsol
- Pada Konsol Google Cloud, buka halaman Kelola resource Klik Menu > IAM & Admin > Manage Resources.
- Dalam daftar project, pilih project yang ingin Anda hapus, lalu klik Delete .
- Pada dialog, ketik project ID, lalu klik Shut down untuk menghapus project.
gcloud CLI
Untuk menghapus project, gunakan perintah gcloud projects delete:
gcloud projects delete PROJECT_ID
Topik terkait
- Pelajari lebih lanjut apa yang dapat dilakukan Google Meet REST API dan tinjau dokumentasi referensi.
- Baca cara Berlangganan acara menggunakan Google Workspace Events API.
- Untuk mempelajari autentikasi lebih lanjut, lihat Mengonfigurasi layar izin OAuth dan memilih cakupan.