Bir alanı güncelleme

Bu kılavuzda, bir alanı güncellemek için Google Chat API'nin Space kaynağında patch yönteminin nasıl kullanılacağı açıklanmaktadır. Bir alanla ilgili özellikleri (ör. kullanıcı tarafından görülebilen görünen ad, açıklama ve yönergeler) değiştirmek için alanı güncelleyin.

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'ler), 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 uygulamaları arasındaki görüşmelerdir.
  • Adlandırılmış alanlar, kullanıcıların mesaj gönderdiği, dosya paylaştığı ve ortak çalıştığı kalıcı yerlerdir.

Ö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 etkinleştirildiği ve yapılandırıldığı bir Google Cloud projesi Adımlar için Google Chat uygulaması oluşturma başlıklı makaleyi inceleyin.
  • Chat uygulaması için yetkilendirme yapılandırıldı. Bir alanın güncellenmesi için chat.spaces yetkilendirme kapsamı ile 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 etkinleştirildiği ve yapılandırıldığı bir Google Cloud projesi Adımlar için Google Chat uygulaması oluşturma başlıklı makaleyi inceleyin.
  • Chat uygulaması için yetkilendirme yapılandırıldı. Bir alanın güncellenmesi için chat.spaces yetkilendirme kapsamı ile kullanıcı kimlik doğrulaması gerekir.

Alanı güncelleme

Google Chat'te mevcut bir alanı güncellemek için isteğinizde aşağıdakileri iletin:

  • chat.spaces yetkilendirme kapsamını belirtin.
  • Space kaynağında patch yöntemini çağırın. İsteğinizde name alanını, güncellenecek bir veya daha fazla alanın bulunduğu updateMask alanını ve güncellenmiş alan bilgilerini içeren bir body değerini belirtirsiniz.

Görünen ad, alan türü ve geçmiş durumu gibi bilgileri güncelleyebilirsiniz. Güncelleyebileceğiniz tüm alanları görmek için referans belgelerini inceleyin.

Mevcut bir alanın spaceDetails alanını güncellemek için:

Python

  1. Çalışma dizininizde chat_space_update.py adlı bir dosya oluşturun.
  2. Aşağıdaki kodu chat_space_update.py bölümüne 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"]
    
    def main():
        '''
        Authenticates with Chat API via user credentials,
        then updates the specified space description and guidelines.
        '''
    
        # 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().patch(
    
          # The space to update, and the updated space details.
          #
          # Replace {space} with a space name.
          # Obtain the space name from the spaces resource of Chat API,
          # or from a space's URL.
          name='spaces/SPACE',
          updateMask='spaceDetails',
          body={
    
            'spaceDetails': {
              'description': 'This description was updated with Chat API!',
              'guidelines': 'These guidelines were updated with Chat API!'
            }
    
          }
    
        ).execute()
    
        # Prints details about the updated space.
        print(result)
    
    if __name__ == '__main__':
        main()
    
  3. Kodda SPACE alanını bir alan adıyla değiştirin. Bu adı, Chat API'deki spaces.list yönteminden veya bir alanın URL'sinden öğrenebilirsiniz.

  4. Çalışma dizininizde örneği derleyin ve çalıştırın:

    python3 chat_space_update.py
    

Node.js

  1. Çalışma dizininizde update-space.js adlı bir dosya oluşturun.
  2. Aşağıdaki kodu update-space.js bölümüne ekleyin:

    const chat = require('@googleapis/chat');
    const {authenticate} = require('@google-cloud/local-auth');
    
    /**
    * Updates a Chat space with the description and guidelines.
    * @return {!Promise<!Object>}
    */
    async function updateSpace() {
      const scopes = [
        'https://www.googleapis.com/auth/chat.spaces',
      ];
    
      const authClient =
          await authenticate({scopes, keyfilePath: 'client_secrets.json'});
    
      const chatClient = await chat.chat({version: 'v1', auth: authClient});
    
      return await chatClient.spaces.patch({
        name: 'spaces/SPACE',
        updateMask: 'spaceDetails',
        requestBody: {
          spaceDetails: {
            description: 'This description was updated with Chat API!',
            guidelines: 'These guidelines were updated with Chat API!'
          },
        }
      });
    }
    
    updateSpace().then(console.log);
    
  3. Kodda SPACE alanını bir alan adıyla değiştirin. Bu adı, Chat API'deki spaces.list yönteminden veya bir alanın URL'sinden öğrenebilirsiniz.

  4. Çalışma dizininizde örneği çalıştırın:

    node update-space.js
    

Google Chat API, Space kaynağının güncellemeleri yansıtan bir örneğini döndürür.