Panduan ini menjelaskan cara menggunakan metode setup
di resource Space
Google Chat API untuk menyiapkan ruang Google Chat. Menyiapkan ruang akan membuat ruang
dan menambahkan pengguna yang ditentukan ke dalamnya.
Resource Space
mewakili tempat pengguna dan aplikasi Chat dapat mengirim pesan,
berbagi file, dan berkolaborasi. Ada beberapa jenis ruang:
- Pesan langsung (DM) adalah percakapan antara dua pengguna atau pengguna dengan aplikasi Chat.
- Chat grup adalah percakapan antara tiga pengguna atau lebih dan aplikasi Chat.
- Ruang bernama adalah tempat persisten tempat orang-orang mengirim pesan, berbagi file, dan berkolaborasi.
Saat menyiapkan ruang, pertimbangkan hal-hal berikut:
- Pengguna yang melakukan panggilan (diautentikasi) akan ditambahkan ke ruang secara otomatis, sehingga Anda tidak perlu menentukan keanggotaan pengguna tersebut dalam permintaan.
- Saat membuat pesan langsung (DM), jika ada DM di antara dua pengguna, DM akan ditampilkan. Jika tidak, DM akan dibuat.
- Saat membuat chat grup, jika tidak ada keanggotaan yang diberikan dalam permintaan yang berhasil ditambahkan ke chat grup (misalnya, masalah izin), chat grup kosong (termasuk hanya pengguna yang menelepon) mungkin akan dibuat.
- Anda tidak dapat menyiapkan ruang dengan balasan berangkai atau menambahkan orang di luar Google Workspace.
- Keanggotaan duplikat (termasuk pengguna yang melakukan panggilan) yang diberikan dalam permintaan difilter, bukan menyebabkan error permintaan.
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. Penyiapan ruang memerlukan Autentikasi pengguna dengan cakupan otorisasi
chat.spaces.create
atauchat.spaces
.
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 ruang memerlukan Autentikasi pengguna dengan cakupan otorisasi
chat.spaces.create
atauchat.spaces
.
Siapkan ruang
Untuk menyiapkan ruang, teruskan hal berikut dalam permintaan Anda:
- Tentukan cakupan otorisasi
chat.spaces.create
atauchat.spaces
. - Panggil
metode
setup
pada resourceSpace
. - Untuk menambahkan pengguna manusia sebagai anggota ruang, tentukan
users/{user}
, dengan{user}
adalah{person_id}
untukperson
dari People API, atau IDuser
di Directory API. Misalnya, jika orangresourceName
People API adalahpeople/123456789
, Anda dapat menambahkan pengguna ke ruang dengan menyertakan keanggotaan denganusers/123456789
sebagaimember.name
. - Untuk menambahkan grup sebagai anggota ruang, tentukan
groups/{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 DM, tetapi hanya ke ruang yang diberi nama. - Untuk membuat DM antara pengguna yang menelepon dan pengguna manusia lainnya, tentukan keanggotaan pengguna manusia dalam permintaan Anda.
- Untuk membuat DM antara pengguna yang menelepon dan aplikasi panggilan, tetapkan
Space.singleUserBotDm
ketrue
dan jangan tentukan keanggotaan apa pun. Anda hanya dapat menggunakan metode ini untuk menyiapkan DM dengan aplikasi panggilan. Untuk menambahkan aplikasi panggilan sebagai anggota ruang atau DM yang ada antara dua pengguna manusia, lihat membuat keanggotaan.
Contoh berikut membuat ruang bernama dan membuat keanggotaan ruang untuk satu grup dan tiga pengguna manusia (termasuk pengguna yang diautentikasi dan dua pengguna tertentu lainnya).
Python
- Di direktori kerja, buat file bernama
chat_space_setup.py
. Sertakan kode berikut di
chat_space_setup.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.spaces.create"] def main(): ''' Authenticates with Chat API via user credentials, then sets up a Chat space by creating a space and adding members. ''' # 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().setup( # Details about the space to set up. body = { # Attributes of the space to set up, like space type and display name. 'space': { # To set up a named space, set spaceType to SPACE. 'spaceType': 'SPACE', # The user-visible name of the space 'displayName': 'API-setup' }, # The users and groups to add to the space. # # The authenticated user is automatically added to the space, # and doesn't need to be specified in the memberships array. 'memberships': [ { 'member': { 'name':'users/123456789', 'type': 'HUMAN' } }, { 'member': { 'name':'users/987654321', 'type': 'HUMAN' } }, { 'groupMember': { 'name': 'groups/11223344' } } ] } ).execute() # Prints details about the created space. print(result) if __name__ == '__main__': main()
Dalam direktori kerja, build dan jalankan contoh:
python3 chat_space_setup.py
Node.js
- Di direktori kerja, buat file bernama
setup-space.js
. Sertakan kode berikut di
setup-space.js
:const chat = require('@googleapis/chat'); const {authenticate} = require('@google-cloud/local-auth'); /** * Sets up a new Chat space with users. * @return {!Promise<!Object>} */ async function setupSpace() { const scopes = [ 'https://www.googleapis.com/auth/chat.spaces.create', ]; const authClient = await authenticate({scopes, keyfilePath: 'client_secrets.json'}); const chatClient = await chat.chat({version: 'v1', auth: authClient}); return await chatClient.spaces.setup({ requestBody: { space: { spaceType: 'SPACE', displayName: 'API-made', }, memberships: [ {member: {name: 'users/123456789', type: 'HUMAN'}}, {member: {name: 'users/987654321', type: 'HUMAN'}}, {groupMember: {name: 'groups/11223344'}}, ] } }); } setupSpace().then(console.log);
Dalam direktori kerja Anda, jalankan contoh:
node setup-space.js
Ruang chat bernama dengan satu grup dan tiga pengguna manusia, termasuk pengguna terautentikasi, sudah disiapkan.
Untuk membuka ruang, gunakan ID resource ruang untuk membuat URL ruang.
Anda bisa mendapatkan ID resource dari ruang name
dalam isi respons
Google Chat. Misalnya, jika name
ruang Anda adalah spaces/1234567
, Anda dapat membuka ruang tersebut menggunakan URL berikut: https://mail.google.com/chat/u/0/#chat/space/1234567
.
Topik terkait
- Membuat ruang.
- Mendapatkan detail tentang ruang.
- Mencantumkan ruang.
- Memperbarui ruang.
- Menghapus ruang.
- Menemukan ruang pesan langsung.
- Membuat ruang dapat ditemukan oleh pengguna tertentu.