Mesajla ilgili ayrıntıları alma

Bu kılavuzda, get yönteminin Message kaynağında nasıl kullanılacağı açıklanmaktadır. Google Chat API'yi kullanarak kısa mesaj veya kart mesajıyla ilgili ayrıntıları döndürür.

İlgili içeriği oluşturmak için kullanılan Message kaynak temsil eder metin veya kart mesajı görebilirsiniz. Şunları yapabilirsiniz: Şu numarayı arayarak Google Chat API'de bir mesaj: create, get, update veya delete yöntemler. Kısa mesajlar ve kart mesajları hakkında daha fazla bilgi edinmek için bkz. Google Chat mesajlarına genel bakış

Ön koşullar

Python

  • Python 3.6 veya sonraki sürümler
  • pip paket yönetim aracı
  • En yeni Google istemci kitaplıkları. Bu uygulamaları 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
    

Kullanıcı kimlik doğrulaması yapılmış bir mesaj alma

İletiyle ilgili ayrıntıları almak için kullanıcı kimlik doğrulaması, isteğinizde aşağıdakileri iletin:

  • chat.messages.readonly veya chat.messages yetkilendirme kapsamını belirtin.
  • Şunu çağırın: get yöntem uygulamasında Message kaynak.
  • Alınacak mesajın kaynak adına name değerini ayarlayın.

Aşağıdaki örnekte kullanıcı kimlik doğrulaması:

Python

  1. Çalışma dizininizde chat_message_get_user.py adlı bir dosya oluşturun.
  2. Aşağıdaki kodu chat_message_get_user.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.messages.readonly"]
    
    def main():
        '''
        Authenticates with Chat API via user credentials,
        then gets a message.
        '''
    
        # 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().messages().get(
    
            # The message to get.
            #
            # Replace SPACE with a space name.
            # Obtain the space name from the spaces resource of Chat API,
            # or from a space's URL.
            #
            # Replace MESSAGE with a message name.
            # Obtain the message name from the response body returned
            # after creating a message asynchronously with Chat REST API.
            name = 'spaces/SPACE/messages/MESSAGE'
    
        ).execute()
    
        # Prints details about the message.
        print(result)
    
    if __name__ == '__main__':
        main()
    
  3. Bu kodda, aşağıdakini değiştirin:

    • SPACE: şuradan alabileceğiniz bir alan adı: "the" spaces.list yöntem API'den veya bir alanın URL'sinden.
    • MESSAGE: edinebileceğiniz bir mesaj adı eşzamansız olarak bir ileti oluşturduktan sonra döndürülen yanıt gövdesinden veya özel ad , oluşturma sırasında mesaja atanır.
  4. Çalışma dizininizde örneği derleyin ve çalıştırın:

    python3 chat_message_get_user.py
    

Chat API, Message öğesini tıklayın.

Uygulama kimlik doğrulamasını kullanarak mesaj alma

Şununla bir mesajla ilgili ayrıntıları almak için: uygulama kimlik doğrulaması, isteğinizde aşağıdakileri iletin:

  • chat.bot yetkilendirme kapsamını belirtin.
  • Şunu çağırın: get yöntem uygulamasında Message kaynak.
  • Alınacak mesajın kaynak adına name değerini ayarlayın.

Aşağıdaki örnekte, uygulama kimlik doğrulaması:

Python

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

    from google.oauth2 import service_account
    from apiclient.discovery import build
    
    # Specify required scopes.
    SCOPES = ['https://www.googleapis.com/auth/chat.bot']
    
    # Specify service account details.
    CREDENTIALS = (
        service_account.Credentials.from_service_account_file('credentials.json')
        .with_scopes(SCOPES)
    )
    
    # Build the URI and authenticate with the service account.
    chat = build('chat', 'v1', credentials=CREDENTIALS)
    
    # Get a Chat message.
    result = chat.spaces().messages().get(
    
        # The message to get.
        #
        # Replace SPACE with a space name.
        # Obtain the space name from the spaces resource of Chat API,
        # or from a space's URL.
        #
        # Replace MESSAGE with a message name.
        # Obtain the message name from the response body returned
        # after creating a message asynchronously with Chat REST API.
        name='spaces/SPACE/messages/MESSAGE'
    
      ).execute()
    
    # Print Chat API's response in your command line interface.
    print(result)
    
  3. Bu kodda, aşağıdakini değiştirin:

    • SPACE: alanın name. mesajı gönderilir. Bu mesajı spaces.list yöntemi API'den veya bir alanın URL'sinden.

    • MESSAGE: Edinebileceğiniz mesaj adı eşzamansız olarak bir ileti oluşturduktan sonra döndürülen yanıt gövdesinden veya özel ad , oluşturma sırasında mesaja atanır.

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

    python3 chat_get_message_app.py
    

Chat API, Message öğesini tıklayın.