Panduan ini menjelaskan cara menggunakan metode update()
di resource Membership
Google Chat API untuk mengubah atribut tentang keanggotaan, seperti mengubah anggota ruang menjadi pengelola ruang, atau mengubah pengelola ruang menjadi anggota ruang.
Jika Anda adalah administrator Google Workspace, Anda dapat memanggil metode update()
untuk memperbarui keanggotaan ruang apa pun di organisasi Google Workspace Anda.
Resource Membership
mewakili apakah pengguna manusia atau aplikasi Google Chat diundang ke, menjadi bagian dari, atau tidak ada di ruang.
Prasyarat
Node.js
- Akun Google Workspace Business atau Enterprise dengan akses ke Google Chat.
- Siapkan lingkungan Anda:
- Buat project Google Cloud.
- Konfigurasikan layar izin OAuth.
- Aktifkan dan konfigurasikan Google Chat API dengan nama, ikon, dan deskripsi untuk aplikasi Chat Anda.
- Instal Node.js Library Klien Cloud.
- Buat kredensial akses berdasarkan cara Anda ingin melakukan autentikasi dalam permintaan Google Chat API:
- Untuk mengautentikasi sebagai pengguna Chat,
buat kredensial client ID
OAuth dan simpan kredensial sebagai file JSON bernama
client_secrets.json
ke direktori lokal Anda. - Untuk melakukan autentikasi sebagai aplikasi Chat,
buat akun layanan
kredensial, lalu simpan kredensial sebagai file JSON yang bernama
credentials.json
.
- Untuk mengautentikasi sebagai pengguna Chat,
buat kredensial client ID
OAuth dan simpan kredensial sebagai file JSON bernama
- Pilih cakupan otorisasi berdasarkan apakah Anda ingin melakukan autentikasi sebagai pengguna atau Aplikasi Chat.
Memperbarui langganan
Untuk memperbarui keanggotaan ruang, teruskan hal berikut dalam permintaan Anda:
- Tentukan cakupan otorisasi:
- Dengan autentikasi pengguna, tentukan cakupan otorisasi
chat.memberships
. - Dengan
autentikasi aplikasi
(tersedia di Pratinjau Developer),
menentukan cakupan otorisasi
chat.app.memberships
. Saat memperbarui dengan otentikasi aplikasi, Anda hanya dapat memperbarui keanggotaan di ruang yang dibuat oleh aplikasi Chat. Autentikasi aplikasi memerlukan satu kali persetujuan administrator.
- Dengan autentikasi pengguna, tentukan cakupan otorisasi
- Panggil
metode
UpdateMembership()
. - Teruskan
membership
sebagai instanceMembership
dengan hal berikut:- Kolom
name
ditetapkan ke langganan yang akan diperbarui, yang mencakup ID ruang dan ID anggota. - Kolom keanggotaan yang akan diperbarui ditetapkan ke nilai baru.
- Kolom
- Teruskan
updateMask
untuk menentukan aspek langganan yang akan diperbarui, mencakup hal berikut:role
: Peran pengguna dalam ruang Chat, yang menentukan peran yang diizinkan tindakan dalam ruangan. Kemungkinan nilainya adalah:ROLE_MEMBER
: Anggota ruang. Pengguna memiliki izin akses dasar, seperti mengirim pesan ke ruang. Dalam percakapan 1:1 dan percakapan grup tanpa nama, semua orang memiliki peran ini.ROLE_MANAGER
: Pengelola ruang. Pengguna memiliki semua izin dasar ditambah izin administratif yang memungkinkan mereka mengelola ruang, seperti menambahkan atau menghapus anggota. Hanya didukung di ruang yangspaceType
-nya adalahSPACE
(ruang bernama).
Menjadikan anggota ruang reguler sebagai pengelola ruang sebagai pengguna
Contoh berikut memanggil Chat API menggunakan
autentikasi pengguna
untuk menjadikan anggota ruang reguler sebagai pengelola ruang dengan menentukan role
sebagai
ROLE_MANAGER
:
Node.js
Untuk menjalankan contoh, ganti kode berikut:
SPACE_NAME
: ID dariname
ruang. Anda bisa mendapatkan ID dengan memanggil metodeListSpaces()
atau dari URL ruang.MEMBER_NAME
: ID dariname
. Anda bisa mendapatkan ID dengan memanggilListMemberships()
atau dari isi respons yang ditampilkan setelah membuat secara asinkron dengan Chat API.ROLE_NAME
: peran yang diperbarui,ROLE_MANAGER
.
Google Chat API memperbarui keanggotaan yang ditentukan ke pengelola ruang dan menampilkan instance Membership
.
Menjadikan pengelola ruang sebagai anggota tetap sebagai pengguna
Contoh berikut memanggil Chat API menggunakan
autentikasi pengguna
untuk menjadikan pengelola ruang sebagai anggota ruang reguler dengan menentukan role
sebagai
ROLE_MEMBER
:
Node.js
Untuk menjalankan contoh, ganti kode berikut:
SPACE_NAME
: ID dariname
. Anda bisa mendapatkan ID dengan memanggil metodeListSpaces()
atau dari URL ruang.MEMBER_NAME
: ID dariname
langganan. Anda bisa mendapatkan ID dengan memanggil metodeListMemberships()
, atau dari isi respons yang ditampilkan setelah membuat langganan secara asinkron dengan Chat API.ROLE_NAME
: peran yang diperbarui,ROLE_MEMBER
.
Google Chat API memperbarui keanggotaan yang ditentukan ke pengelola ruang dan menampilkan instance Membership
.
Menjadikan anggota ruang reguler sebagai pengelola ruang sebagai aplikasi Chat
Autentikasi aplikasi memerlukan persetujuan administrator satu kali.
Membuat kunci API
Untuk memanggil metode Developer Preview API, Anda harus menggunakan versi pratinjau developer non-publik dari dokumen penemuan API. Untuk mengautentikasi permintaan, Anda harus meneruskan kunci API.
Untuk membuat Kunci API, buka project Google Cloud aplikasi Anda dan lakukan hal berikut:
- Di konsol Google Cloud, buka Menu > APIs & Services > Credentials.
- Klik Create credentials > API key.
- Kunci API baru Anda akan ditampilkan.
- Klik Salin untuk menyalin kunci API Anda agar dapat digunakan dalam kode aplikasi. Kunci API juga bisa berupa yang ditemukan dalam "API keys" kredensial project Anda.
- Klik Restrict key untuk memperbarui setelan lanjutan dan membatasi penggunaan kunci API Anda. Untuk mengetahui detail selengkapnya, lihat Menerapkan pembatasan kunci API.
Tulis skrip yang memanggil Chat API
Contoh berikut memanggil Chat API menggunakan
autentikasi aplikasi
untuk menjadikan anggota ruang reguler sebagai pengelola ruang dengan menentukan role
sebagai
ROLE_MANAGER
di body
yang menentukan atribut keanggotaan yang diperbarui:
Python
- Di direktori kerja, buat file bernama
chat_membership_update_to_manager_app.py
. Sertakan kode berikut di
chat_membership_update_to_manager_app.py
:from google.oauth2 import service_account from apiclient.discovery import build # Define your app's authorization scopes. # When modifying these scopes, delete the file token.json, if it exists. SCOPES = ["https://www.googleapis.com/auth/chat.app.memberships"] def main(): ''' Authenticates with Chat API using app authentication, then updates a specified space member to change it from a regular member to a space manager. ''' # Specify service account details. creds = ( service_account.Credentials.from_service_account_file('credentials.json') .with_scopes(SCOPES) ) # Build a service endpoint for Chat API. chat = build('chat', 'v1', credentials=creds, discoveryServiceUrl='https://chat.googleapis.com/$discovery/rest?version=v1&labels=DEVELOPER_PREVIEW&key=API_KEY') # Use the service endpoint to call Chat API. result = chat.spaces().members().patch( # The membership to update, and the updated role. # # Replace SPACE with a space name. # Obtain the space name from the spaces resource of Chat API, # or from a space's URL. # # Replace MEMBERSHIP with a membership name. # Obtain the membership name from the membership of Chat API. name='spaces/SPACE/members/MEMBERSHIP', updateMask='role', body={'role': 'ROLE_MANAGER'} ).execute() # Prints details about the updated membership. print(result) if __name__ == '__main__': main()
Dalam kode, ganti kode berikut:
API_KEY
: kunci API yang Anda buat untuk membangun endpoint layanan untuk Chat API.SPACE
: nama ruang, yang dapat Anda peroleh dari metodespaces.list
di Chat API, atau dari URL ruang.MEMBERSHIP
: nama keanggotaan, yang dapat Anda peroleh dari metodespaces.members.list
di Chat API.
Dalam direktori kerja, build dan jalankan contoh:
python3 chat_membership_update_to_manager_app.py
Menjadikan pengelola ruang sebagai anggota tetap sebagai aplikasi Chat
Autentikasi aplikasi memerlukan satu kali persetujuan administrator.
Membuat kunci API
Untuk memanggil metode Developer Preview API, Anda harus menggunakan versi pratinjau developer non-publik dari dokumen penemuan API. Untuk mengautentikasi permintaan, Anda harus meneruskan kunci API.
Untuk membuat Kunci API, buka project Google Cloud aplikasi Anda dan lakukan hal berikut:
- Di konsol Google Cloud, buka Menu > API & Layanan > Kredensial.
- Klik Buat kredensial > Kunci API.
- Kunci API baru Anda akan ditampilkan.
- Klik Salin untuk menyalin kunci API Anda agar dapat digunakan dalam kode aplikasi. Kunci API juga bisa berupa yang ditemukan dalam "API keys" kredensial project Anda.
- Klik Batasi kunci untuk memperbarui setelan lanjutan dan membatasi penggunaan kunci API Anda. Untuk detail selengkapnya, lihat Menerapkan pembatasan kunci API.
Menulis skrip yang memanggil Chat API
Contoh berikut memanggil Chat API menggunakan
autentikasi aplikasi
untuk menjadikan pengelola ruang sebagai anggota ruang reguler dengan menentukan role
sebagai
ROLE_MEMBER
di body
yang menentukan atribut keanggotaan yang diperbarui:
Python
- Di direktori kerja, buat file bernama
chat_membership_update_to_member_app.py
. Sertakan kode berikut di
chat_membership_update_to_member_app.py
:from google.oauth2 import service_account from apiclient.discovery import build # Define your app's authorization scopes. # When modifying these scopes, delete the file token.json, if it exists. SCOPES = ["https://www.googleapis.com/auth/chat.app.memberships"] def main(): ''' Authenticates with Chat API via user credentials, then updates a specified space member to change it from a regular member to a space manager. ''' # Specify service account details. creds = ( service_account.Credentials.from_service_account_file('credentials.json') .with_scopes(SCOPES) ) # Build a service endpoint for Chat API. chat = build('chat', 'v1', credentials=creds, discoveryServiceUrl='https://chat.googleapis.com/$discovery/rest?version=v1&labels=DEVELOPER_PREVIEW&key=API_KEY') # Use the service endpoint to call Chat API. result = chat.spaces().members().patch( # The membership to update, and the updated role. # # Replace SPACE with a space name. # Obtain the space name from the spaces resource of Chat API, # or from a space's URL. # # Replace MEMBERSHIP with a membership name. # Obtain the membership name from the membership of Chat API. name='spaces/SPACE/members/MEMBERSHIP', updateMask='role', body={'role': 'ROLE_MEMBER'} ).execute() # Prints details about the updated membership. print(result) if __name__ == '__main__': main()
Dalam kode, ganti kode berikut:
API_KEY
: kunci API yang Anda buat untuk membuat endpoint layanan untuk Chat API.SPACE
: nama ruang, yang yang dapat diperoleh dari Metodespaces.list
di Chat API, atau dari URL ruang.MEMBERSHIP
: nama keanggotaan, yang yang dapat diperoleh dari Metodespaces.members.list
di Chat API.
Dalam direktori kerja, build dan jalankan contoh:
python3 chat_membership_update_to_member_app.py
Memperbarui langganan sebagai administrator Google Workspace
Jika Anda adalah administrator Google Workspace, Anda dapat memanggil metode update()
untuk memperbarui langganan untuk ruang apa pun di organisasi Google Workspace Anda.
Untuk memanggil metode ini sebagai administrator Google Workspace, lakukan hal berikut:
- Panggil metode menggunakan autentikasi pengguna, dan tentukan cakupan otorisasi yang mendukung pemanggilan metode menggunakan hak istimewa administrator.
- Dalam permintaan, tentukan parameter kueri
useAdminAccess
ketrue
.
Untuk informasi dan contoh selengkapnya, lihat Mengelola ruang Google Chat sebagai administrator Google Workspace.
Topik terkait
- Mengundang atau menambahkan pengguna atau aplikasi Google Chat ke ruang.
- Mendapatkan detail tentang keanggotaan pengguna atau aplikasi Chat.
- Mencantumkan anggota dalam ruang.
- Menghapus pengguna atau aplikasi Chat dari ruang.