Bu kılavuzda, Google Chat alanı oluşturmak için Google Chat API'nin Space
kaynağında setup
yönteminin nasıl kullanılacağı açıklanmaktadır. Alan oluşturulduğunda bir alan oluşturulur ve belirtilen kullanıcılar alana eklenir.
Space
kaynağı, kullanıcıların ve Chat uygulamalarının mesaj gönderebileceği, dosya paylaşabileceği ve ortak çalışma yapabileceği bir yeri temsil eder. Birkaç alan türü vardır:
- Doğrudan mesajlar (DM), iki kullanıcı veya bir kullanıcı ile bir Chat uygulaması arasındaki görüşmelerdir.
- Grup sohbetleri, üç veya daha fazla kullanıcı ile Chat uygulaması arasındaki görüşmelerdir.
- Adlandırılmış alanlar, kullanıcıların mesaj gönderdiği, dosya paylaştığı ve ortak çalışma yaptığı kalıcı yerlerdir.
Alan oluştururken aşağıdakileri göz önünde bulundurun:
- Arayan (kimliği doğrulanmış) kullanıcı alana otomatik olarak eklenir. Bu nedenle istekte kullanıcının üyeliğini belirtmeniz gerekmez.
- Doğrudan mesaj (DM) oluştururken, iki kullanıcı arasında bir DM varsa bu DM döndürülür. Aksi takdirde bir DM oluşturulur.
- Grup sohbeti oluştururken, istekte sağlanan üyeliklerden hiçbiri grup sohbetine başarıyla eklenmezse (örneğin, izin sorunu) boş bir grup sohbeti (yalnızca arayan kullanıcı dahil) oluşturulabilir.
- Mesaj dizili yanıtlar içeren alanlar oluşturamaz veya Google Workspace dışından kullanıcı ekleyemezsiniz.
- İstekte sağlanan yinelenen üyelikler (arayan kullanıcı dahil) istek hatasına neden olmak yerine filtrelenir.
Ön koşullar
Python
- Python 3.6 veya sonraki sürümler
- pip paket yönetimi aracı
Python için en yeni Google istemci kitaplıkları. Bunları yüklemek veya güncellemek için komut satırı arayüzünüzde aşağıdaki komutu çalıştırın:
pip3 install --upgrade google-api-python-client google-auth-oauthlib
- Google Chat API'nin etkin ve yapılandırılmış olduğu bir Google Cloud projesi. Adımlar için Google Chat uygulaması oluşturma başlıklı makaleye göz atın.
Yetkilendirme, Chat uygulaması için yapılandırıldı. Alan ayarlamak için
chat.spaces.create
veyachat.spaces
yetkilendirme kapsamıyla Kullanıcı kimlik doğrulaması gerekir.
Node.js
- Node.js ve npm
Node.js için en yeni Google istemci kitaplıkları. Bunları yüklemek için komut satırı arayüzünüzde aşağıdaki komutu çalıştırın:
npm install @google-cloud/local-auth @googleapis/chat
- Google Chat API'nin etkin ve yapılandırılmış olduğu bir Google Cloud projesi. Adımlar için Google Chat uygulaması oluşturma başlıklı makaleye göz atın.
Yetkilendirme, Chat uygulaması için yapılandırıldı. Alan oluşturmak için
chat.spaces.create
veyachat.spaces
yetkilendirme kapsamıyla Kullanıcı kimlik doğrulaması yapılması gerekir.
Alan oluşturma
Alan oluşturmak için isteğinizde aşağıdakileri iletin:
chat.spaces.create
veyachat.spaces
yetkilendirme kapsamını belirtin.Space
kaynağındasetup
yöntemini çağırın.- Alan üyesi olarak bir insan kullanıcıyı eklemek için
users/{user}
değerini belirtin. Burada{user}
, People API'dekiperson
için{person_id}
veya Directory API'deki biruser
kimliğinin değeridir. Örneğin, People API çalışanıresourceName
people/123456789
ise kullanıcıyı alanausers/123456789
ilemember.name
üyeliği ekleyerek ekleyebilirsiniz. - Arayan kullanıcıyla başka bir gerçek kullanıcı arasında bir DM oluşturmak için isteğinizde insan kullanıcının üyeliğini belirtin.
- Arayan kullanıcı ile çağrı yapan uygulama arasında bir DM oluşturmak için
Space.singleUserBotDm
değerinitrue
olarak ayarlayın ve herhangi bir üyelik belirtmeyin. Bu yöntemi yalnızca arama uygulamasıyla bir DM ayarlamak için kullanabilirsiniz. Görüşmeyi bir alanın veya iki gerçek kullanıcı arasındaki mevcut bir DM'nin üyesi olarak eklemek için üyelik oluşturma bölümüne bakın.
Aşağıdaki örnek, adlandırılmış bir alan oluşturur ve kimliği doğrulanmış kullanıcı ile belirtilen diğer iki kullanıcı olmak üzere üç insan kullanıcı için alana üyelikler oluşturur:
Python
- Çalışma dizininizde
chat_space_setup.py
adında bir dosya oluşturun. chat_space_setup.py
içine şu kodu ekleyin: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 people and app 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' } } ] } ).execute() # Prints details about the created space. print(result) if __name__ == '__main__': main()
Çalışma dizininizde örneği derleyip çalıştırın:
python3 chat_space_setup.py
Node.js
- Çalışma dizininizde
setup-space.js
adında bir dosya oluşturun. setup-space.js
içine şu kodu ekleyin: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'}}, ] } }); } setupSpace().then(console.log);
Çalışma dizininizde örneği çalıştırın:
node setup-space.js
Kimliği doğrulanmış kullanıcı da dahil olmak üzere üç insan kullanıcının bulunduğu adlandırılmış bir sohbet alanı oluşturulur.
Alana gitmek için alanın kaynak kimliğini kullanarak alanın URL'sini oluşturun.
Kaynak kimliğini, Google Chat yanıt gövdesindeki name
alanından alabilirsiniz. Örneğin, alanınızın name
değeri spaces/1234567
ise alana şu URL'yi kullanarak gidebilirsiniz: https://mail.google.com/chat/u/0/#chat/space/1234567
.
İlgili konular
- Alan oluşturun.
- Bir alanla ilgili ayrıntıları öğrenme.
- Alanları listeleyin.
- Bir alanı güncelleme.
- Alan silme
- Doğrudan mesaj alanı bulun.