Panduan ini menjelaskan cara menggunakan metode create
di resource membership
dalam Google Chat API untuk mengundang atau menambahkan pengguna, Google Grup, atau
aplikasi Chat ke ruang yang juga dikenal dengan
pembuatan keanggotaan. Saat membuat keanggotaan, jika anggota tertentu
menonaktifkan kebijakan terima otomatis, mereka akan diundang, dan harus menerima undangan
ruang sebelum bergabung. Jika tidak, membuat keanggotaan akan menambahkan
anggota secara langsung ke ruang yang ditentukan.
Resource Membership
menunjukkan apakah pengguna manusia atau aplikasi Google Chat diundang ke,
sebagian dari, 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 Membangun aplikasi Google Chat.
Otorisasi yang 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 Membangun aplikasi Google Chat.
Otorisasi yang 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
pada resourcemembership
. - Tetapkan
parent
ke nama resource ruang tempat membuat keanggotaan. - Tetapkan
member
keusers/{user}
dengan{user}
adalah orang yang ingin Anda buatkan keanggotaannya, dan merupakan:- ID untuk orang di People API. Misalnya, jika orang
resourceName
People 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 menggunakan Akun Google atau milik organisasi Google Workspace lain, Anda harus menggunakan alamat emailnya.
- ID untuk orang di People API. Misalnya, jika orang
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.
Dalam direktori kerja, build dan jalankan contoh:
python3 chat_membership_user_create.py
Node.js
- Di direktori kerja, 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.
Dalam direktori kerja Anda, jalankan contoh:
node add-user-to-space.js
Chat API menampilkan instance
membership
yang menjelaskan keanggotaan pengguna yang dibuat.
Undang atau tambahkan grup Google ke ruang
Untuk mengundang atau menambahkan Google Grup ke ruang, teruskan kode berikut dalam permintaan Anda:
- Tentukan cakupan otorisasi
chat.memberships
. - Panggil
metode
create
pada resourcemembership
. - Tetapkan
parent
ke nama resource ruang tempat membuat keanggotaan. - Tetapkan
groupMember
kegroups/{group}
dengan{group}
adalah ID grup yang ingin Anda buat keanggotaannya. ID untuk grup dapat diambil menggunakan Cloud Identity API. Misalnya, jika Cloud Identity API menampilkan grup dengan namagroups/123456789
, tetapkanmembership.groupMember.name
kegroups/123456789
.
Google Grup tidak dapat ditambahkan ke chat grup atau pesan langsung, tetapi hanya ke ruang bernama. Contoh berikut menambahkan grup ke ruang bernama:
Python
- Di direktori kerja, buat file bernama
chat_membership_group_create.py
. Sertakan kode berikut di
chat_membership_group_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 group 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 named space in which to create a membership. parent = 'spaces/SPACE', # Specify which group the membership is for. body = { 'groupMember': { 'name':'groups/GROUP', } } ).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.GROUP
: ID grup.
Dalam direktori kerja, build dan jalankan contoh:
python3 chat_membership_group_create.py
Node.js
- Di direktori kerja, buat file bernama
add-group-to-space.js
. Sertakan kode berikut di
add-group-to-space.js
:const chat = require('@googleapis/chat'); const {authenticate} = require('@google-cloud/local-auth'); /** * Adds the group 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: {groupMember: {name: 'groups/GROUP'}} }); } 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.GROUP
: ID grup.
Dalam direktori kerja Anda, jalankan contoh:
node add-group-to-space.js
Chat API menampilkan instance
membership
yang menjelaskan keanggotaan grup 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 manusia, teruskan hal 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.Dalam direktori kerja, build dan jalankan contoh:
python3 chat_membership_app_create.py
Node.js
- Di direktori kerja, 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.Dalam direktori kerja Anda, jalankan contoh:
node add-app-to-space.js
Chat API menampilkan instance
membership
yang menjelaskan keanggotaan aplikasi yang dibuat.
Topik terkait
- Mendapatkan detail tentang keanggotaan pengguna atau aplikasi Chat.
- Mencantumkan anggota dalam ruang.
- Memperbarui langganan pengguna di ruang Google Chat.
- Menghapus pengguna atau aplikasi Chat dari ruang.