Details zu einem Gruppenbereich abrufen

In diesem Leitfaden wird erläutert, wie Sie die get Methode für eine Space Ressource der Google Chat API verwenden, um Details zu einem Bereich wie Anzeigename, Beschreibung und Richtlinien abzurufen.

Wenn Sie Google Workspace-Administrator sind, können Sie die Methode get aufrufen, um Details zu jedem Bereich in Ihrer Google Workspace-Organisation abzurufen.

Die Space Ressource stellt einen Ort dar, an dem Nutzer und Chat-Apps Nachrichten senden, Dateien teilen und zusammenarbeiten können. Es gibt verschiedene Arten von Bereichen:

  • Direktnachrichten (DN) sind Unterhaltungen zwischen zwei Nutzern oder einem Nutzer und einer Chat-App.
  • Gruppenchats sind Unterhaltungen zwischen mindestens drei Nutzern und Chat-Apps.
  • Benannte Bereiche sind dauerhafte Orte, an denen Nutzer Nachrichten senden, Dateien teilen und zusammenarbeiten.

Durch die Authentifizierung mit App-Authentifizierung kann eine Chat-App Details zu einem Bereich abrufen, in dem sie Mitglied ist. Durch die Authentifizierung mit der Nutzerauthentifizierung können Sie Bereiche abrufen, auf die der authentifizierte Nutzer Zugriff hat, entweder als Mitglied eines Bereichs oder als Google Workspace-Administrator.

Vorbereitung

Node.js

Python

Java

Apps Script

Bereich abrufen

Wenn Sie einen Bereich in Google Chat abrufen möchten, übergeben Sie Folgendes in Ihrer Anfrage:

  • Ein Autorisierungsbereich:
  • Rufen Sie die GetSpace Methode auf und übergeben Sie den name des abzurufenden Bereichs. Sie können den Bereichsnamen aus der Space-Ressource von Google Chat oder aus der URL eines Bereichs abrufen.

Bereichsdetails als Nutzer abrufen

So rufen Sie Bereichsdetails mit Nutzerauthentifizierung ab:

Node.js

chat/client-libraries/cloud/get-space-user-cred.js
import {createClientWithUserCredentials} from './authentication-utils.js';

const USER_AUTH_OAUTH_SCOPES = [
  'https://www.googleapis.com/auth/chat.spaces.readonly',
];

// This sample shows how to get space with user credential
async function main() {
  // Create a client
  const chatClient = await createClientWithUserCredentials(
    USER_AUTH_OAUTH_SCOPES,
  );

  // Initialize request argument(s)
  const request = {
    // Replace SPACE_NAME here
    name: 'spaces/SPACE_NAME',
  };

  // Make the request
  const response = await chatClient.getSpace(request);

  // Handle the response
  console.log(response);
}

await main();

Python

chat/client-libraries/cloud/get_space_user_cred.py
from authentication_utils import create_client_with_user_credentials
from google.apps import chat_v1 as google_chat

SCOPES = ["https://www.googleapis.com/auth/chat.spaces.readonly"]

# This sample shows how to get space with user credential
def get_space_with_user_cred():
    # Create a client
    client = create_client_with_user_credentials(SCOPES)

    # Initialize request argument(s)
    request = google_chat.GetSpaceRequest(
        # Replace SPACE_NAME here
        name = "spaces/SPACE_NAME",
    )

    # Make the request
    response = client.get_space(request)

    # Handle the response
    print(response)

get_space_with_user_cred()

Java

chat/client-libraries/cloud/src/main/java/com/google/workspace/api/chat/samples/GetSpaceUserCred.java
import com.google.chat.v1.ChatServiceClient;
import com.google.chat.v1.GetSpaceRequest;
import com.google.chat.v1.Space;

// This sample shows how to get space with user credential.
public class GetSpaceUserCred {

  private static final String SCOPE =
    "https://www.googleapis.com/auth/chat.spaces.readonly";

  public static void main(String[] args) throws Exception {
    try (ChatServiceClient chatServiceClient =
        AuthenticationUtils.createClientWithUserCredentials(
          ImmutableList.of(SCOPE))) {
      GetSpaceRequest.Builder request = GetSpaceRequest.newBuilder()
        // Replace SPACE_NAME here
        .setName("spaces/SPACE_NAME");
      Space response = chatServiceClient.getSpace(request.build());

      System.out.println(JsonFormat.printer().print(response));
    }
  }
}

Apps Script

chat/advanced-service/Main.gs
/**
 * This sample shows how to get space with user credential
 *
 * It relies on the OAuth2 scope 'https://www.googleapis.com/auth/chat.spaces.readonly'
 * referenced in the manifest file (appsscript.json).
 */
function getSpaceUserCred() {
  // Initialize request argument(s)
  // TODO(developer): Replace SPACE_NAME here
  const name = "spaces/SPACE_NAME";

  // Make the request
  const response = Chat.Spaces.get(name);

  // Handle the response
  console.log(response);
}

Ersetzen Sie in diesem Beispiel SPACE_NAME durch die ID aus dem Feld name des Bereichs. Sie können die ID abrufen, indem Sie die ListSpaces Methode aufrufen oder die URL des Bereichs verwenden.

Die Chat API gibt eine Instanz von Space zurück, die Details zum angegebenen Bereich enthält.

Bereichsdetails als Google Workspace-Administrator abrufen

Wenn Sie Google Workspace-Administrator sind, können Sie die Methode GetSpace aufrufen, um Details zu jedem Bereich in Ihrer Google Workspace-Organisation abzurufen.

So rufen Sie diese Methode als Google Workspace-Administrator auf:

  • Rufen Sie die Methode mit der Nutzerauthentifizierung auf und geben Sie einen Autorisierungsbereich an, der den Aufruf der Methode mit Administratorberechtigungenunterstützt.
  • Geben Sie in Ihrer Anfrage den Abfrageparameter useAdminAccess auf true an.

Weitere Informationen und Beispiele finden Sie unter Google Chat-Bereiche als Google Workspace-Administrator verwalten.

Bereichsdetails als Chat-App abrufen

So rufen Sie Bereichsdetails mit App-Authentifizierung ab:

Node.js

chat/client-libraries/cloud/get-space-app-cred.js
import {createClientWithAppCredentials} from './authentication-utils.js';

// This sample shows how to get space with app credential
async function main() {
  // Create a client
  const chatClient = createClientWithAppCredentials();

  // Initialize request argument(s)
  const request = {
    // Replace SPACE_NAME here
    name: 'spaces/SPACE_NAME',
  };

  // Make the request
  const response = await chatClient.getSpace(request);

  // Handle the response
  console.log(response);
}

await main();

Python

chat/client-libraries/cloud/get_space_app_cred.py
from authentication_utils import create_client_with_app_credentials
from google.apps import chat_v1 as google_chat

# This sample shows how to get space with app credential
def get_space_with_app_cred():
    # Create a client
    client = create_client_with_app_credentials()

    # Initialize request argument(s)
    request = google_chat.GetSpaceRequest(
        # Replace SPACE_NAME here
        name = "spaces/SPACE_NAME",
    )

    # Make the request
    response = client.get_space(request)

    # Handle the response
    print(response)

get_space_with_app_cred()

Java

chat/client-libraries/cloud/src/main/java/com/google/workspace/api/chat/samples/GetSpaceAppCred.java
import com.google.chat.v1.ChatServiceClient;
import com.google.chat.v1.GetSpaceRequest;
import com.google.chat.v1.Space;

// This sample shows how to get space with app credential.
public class GetSpaceAppCred {

  public static void main(String[] args) throws Exception {
    try (ChatServiceClient chatServiceClient =
        AuthenticationUtils.createClientWithAppCredentials()) {
      GetSpaceRequest.Builder request = GetSpaceRequest.newBuilder()
        // Replace SPACE_NAME here
        .setName("spaces/SPACE_NAME");
      Space response = chatServiceClient.getSpace(request.build());

      System.out.println(JsonFormat.printer().print(response));
    }
  }
}

Apps Script

chat/advanced-service/Main.gs
/**
 * This sample shows how to get space with app credential
 *
 * It relies on the OAuth2 scope 'https://www.googleapis.com/auth/chat.bot'
 * used by service accounts.
 */
function getSpaceAppCred() {
  // Initialize request argument(s)
  // TODO(developer): Replace SPACE_NAME here
  const name = "spaces/SPACE_NAME";
  const parameters = {};

  // Make the request
  const response = Chat.Spaces.get(
    name,
    parameters,
    getHeaderWithAppCredentials(),
  );

  // Handle the response
  console.log(response);
}

Ersetzen Sie in diesem Beispiel SPACE_NAME durch die ID aus dem Feld name des Bereichs. Sie können die ID abrufen, indem Sie die ListSpaces Methode aufrufen oder die URL des Bereichs verwenden.

Die Chat API gibt eine Instanz von Space zurück, die Details zum angegebenen Bereich enthält.

Einschränkungen und Überlegungen

  • Die accessSettings (einschließlich accessPermissionSettings), predefinedPermissionSettings, und permissionSettings Felder werden nur ausgefüllt, wenn Sie sich mit dem chat.app.spaces Bereich authentifizieren. Die Berechtigungseinstellungen sind auf Bereiche beschränkt, die von der Chat-App erstellt wurden.