Panduan ini menjelaskan cara menggunakan metode create
pada resource membership
di Google Chat API untuk mengundang atau menambahkan pengguna atau
aplikasi Chat ke ruang yang juga dikenal sebagai pembuatan
keanggotaan. Saat membuat keanggotaan, jika anggota yang ditentukan menonaktifkan
kebijakan terima otomatis, mereka akan diundang, dan harus menerima undangan
ruang sebelum bergabung. Jika tidak, membuat keanggotaan akan menambahkan anggota
langsung ke ruang yang ditentukan.
Resource Membership
mewakili apakah pengguna manusia atau aplikasi Google Chat diundang ke,
sebagian, atau tidak ada dalam ruang.
Prasyarat
Python
- Python 3.6 atau yang lebih baru
- Alat pengelolaan paket pip
Library klien Google terbaru untuk Python. Untuk menginstal atau mengupdatenya, jalankan perintah berikut di antarmuka command line Anda:
pip3 install --upgrade google-api-python-client google-auth-oauthlib
- Project Google Cloud dengan Google Chat API yang diaktifkan dan dikonfigurasi. Untuk mengetahui langkah-langkahnya, lihat Mem-build aplikasi Google Chat.
Otorisasi dikonfigurasi untuk aplikasi Chat. Pembuatan keanggotaan memerlukan Autentikasi pengguna dengan cakupan otorisasi
chat.memberships
atauchat.memberships.app
.
Node.js
- Node.js & npm
Library klien Google terbaru untuk Node.js. Untuk menginstalnya, jalankan perintah berikut di antarmuka command line Anda:
npm install @google-cloud/local-auth @googleapis/chat
- Project Google Cloud dengan Google Chat API yang diaktifkan dan dikonfigurasi. Untuk mengetahui langkah-langkahnya, lihat Mem-build aplikasi Google Chat.
Otorisasi dikonfigurasi untuk aplikasi Chat. Pembuatan keanggotaan memerlukan Autentikasi pengguna dengan cakupan otorisasi
chat.memberships
atauchat.memberships.app
.
Mengundang atau menambahkan pengguna ke ruang
Untuk mengundang atau menambahkan pengguna ke ruang, teruskan hal berikut dalam permintaan Anda:
- Tentukan cakupan otorisasi
chat.memberships
. - Panggil
metode
create
di resourcemembership
. - Tetapkan
parent
ke nama resource ruang tempat membuat keanggotaan. - Tetapkan
member
keusers/{user}
dengan{user}
adalah pengguna yang ingin Anda buat keanggotaannya, dan merupakan:- ID untuk orang dalam People API. Misalnya, jika
resourceName
orang API adalahpeople/123456789
, tetapkanmembership.member.name
keusers/123456789
. - ID untuk pengguna di Directory API.
- Alamat email pengguna. Misalnya,
users/222larabrown@gmail.com
atauusers/larabrown@cymbalgroup.com
. Jika pengguna tersebut menggunakan Akun Google atau termasuk dalam organisasi Google Workspace lain, Anda harus menggunakan alamat emailnya.
- ID untuk orang dalam People API. Misalnya, jika
Contoh berikut menambahkan pengguna ke ruang:
Python
- Di direktori kerja, buat file bernama
chat_membership_user_create.py
. Sertakan kode berikut di
chat_membership_user_create.py
:from google_auth_oauthlib.flow import InstalledAppFlow from googleapiclient.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.memberships"] def main(): ''' Authenticates with Chat API via user credentials, then adds a user to a Chat space by creating a membership. ''' # Authenticate with Google Workspace # and get user authorization. flow = InstalledAppFlow.from_client_secrets_file( 'client_secrets.json', SCOPES) creds = flow.run_local_server() # Build a service endpoint for Chat API. chat = build('chat', 'v1', credentials=creds) # Use the service endpoint to call Chat API. result = chat.spaces().members().create( # The space in which to create a membership. parent = 'spaces/SPACE', # Specify which user the membership is for. body = { 'member': { 'name':'users/USER', 'type': 'HUMAN' } } ).execute() # Prints details about the created membership. print(result) if __name__ == '__main__': main()
Dalam kode, ganti kode berikut:
SPACE
: nama ruang, yang dapat Anda peroleh dari metodespaces.list
di Chat API, atau dari URL ruang.USER
: ID pengguna.
Di direktori kerja Anda, buat dan jalankan contoh:
python3 chat_membership_user_create.py
Node.js
- Di direktori kerja Anda, buat file bernama
add-user-to-space.js
. Sertakan kode berikut di
add-user-to-space.js
:const chat = require('@googleapis/chat'); const {authenticate} = require('@google-cloud/local-auth'); /** * Adds the user to the Chat space. * @return {!Promise<!Object>} */ async function addUserToSpace() { const scopes = [ 'https://www.googleapis.com/auth/chat.memberships', ]; const authClient = await authenticate({scopes, keyfilePath: 'client_secrets.json'}); const chatClient = await chat.chat({version: 'v1', auth: authClient}); return await chatClient.spaces.members.create({ parent: 'spaces/SPACE', requestBody: {member: {name: 'users/USER', type: 'HUMAN'}} }); } addUserToSpace().then(console.log);
Dalam kode, ganti kode berikut:
SPACE
: nama ruang, yang dapat Anda peroleh dari metodespaces.list
di Chat API, atau dari URL ruang.USER
: ID pengguna.
Di direktori kerja Anda, jalankan contoh:
node add-user-to-space.js
Chat API menampilkan instance
membership
yang menjelaskan keanggotaan yang dibuat.
Menambahkan aplikasi Chat ke ruang
Aplikasi Chat tidak dapat menambahkan aplikasi lain sebagai anggota ke ruang. Untuk menambahkan aplikasi Chat ke ruang atau pesan langsung antara dua pengguna, teruskan perintah berikut dalam permintaan Anda:
- Tentukan cakupan otorisasi
chat.memberships.app
. - Panggil
metode
create
pada resourcemembership
. - Tetapkan
parent
ke nama resource ruang tempat membuat keanggotaan. - Tetapkan
member
keusers/app
; alias yang mewakili aplikasi yang memanggil Chat API.
Contoh berikut menambahkan aplikasi Chat ke ruang:
Python
- Di direktori kerja, buat file bernama
chat_membership_app_create.py
. Sertakan kode berikut di
chat_membership_app_create.py
:from google_auth_oauthlib.flow import InstalledAppFlow from googleapiclient.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.memberships.app"] def main(): ''' Authenticates with Chat API via user credentials, then adds the Chat app to a Chat space. ''' # Authenticate with Google Workspace # and get user authorization. flow = InstalledAppFlow.from_client_secrets_file( 'client_secrets.json', SCOPES) creds = flow.run_local_server() # Build a service endpoint for Chat API. chat = build('chat', 'v1', credentials=creds) # Use the service endpoint to call Chat API. result = chat.spaces().members().create( # The space in which to create a membership. parent = 'spaces/SPACE', # Set the Chat app as the entity that gets added to the space. # 'app' is an alias for the Chat app calling the API. body = { 'member': { 'name':'users/app', 'type': 'BOT' } } ).execute() # Prints details about the created membership. print(result) if __name__ == '__main__': main()
Dalam kode, ganti
SPACE
dengan nama ruang, yang dapat Anda peroleh dari metodespaces.list
di Chat API, atau dari URL ruang.Di direktori kerja Anda, buat dan jalankan contoh:
python3 chat_membership_app_create.py
Node.js
- Di direktori kerja Anda, buat file bernama
add-app-to-space.js
. Sertakan kode berikut di
add-app-to-space.js
:const chat = require('@googleapis/chat'); const {authenticate} = require('@google-cloud/local-auth'); /** * Adds the app to the Chat space. * @return {!Promise<!Object>} */ async function addAppToSpace() { const scopes = [ 'https://www.googleapis.com/auth/chat.memberships.app', ]; const authClient = await authenticate({scopes, keyfilePath: 'client_secrets.json'}); const chatClient = await chat.chat({version: 'v1', auth: authClient}); return await chatClient.spaces.members.create({ parent: 'spaces/SPACE', requestBody: {member: {name: 'users/app', type: 'BOT'}} }); } addAppToSpace().then(console.log);
Dalam kode, ganti
SPACE
dengan nama ruang, yang dapat Anda peroleh dari metodespaces.list
di Chat API, atau dari URL ruang.Di direktori kerja Anda, jalankan contoh:
node add-app-to-space.js
Chat API menampilkan instance
membership
yang menjelaskan keanggotaan yang dibuat.
Topik terkait
- Mendapatkan detail tentang keanggotaan pengguna atau aplikasi Chat.
- Membuat daftar anggota dalam ruang.
- Memperbarui keanggotaan pengguna di ruang Google Chat.
- Menghapus pengguna atau aplikasi Chat dari ruang.