Aktualizowanie i odnawianie subskrypcji Google Workspace

Z tej strony dowiesz się, jak odnowić subskrypcję Google Workspace za pomocą metody subscriptions.update(). Za pomocą tej metody możesz zaktualizować czas wygaśnięcia subskrypcji, w tym odnowić subskrypcję na maksymalny możliwy czas wygaśnięcia, lub zaktualizować listę typów zdarzeń, które mają być wysyłane do zasobu docelowego.

Google Apps Script

  • projekt Apps Script:
    • Zamiast domyślnego projektu utworzonego automatycznie przez Apps Script użyj swojego projektu Google Cloud.
    • W przypadku zakresów, które dodano do skonfigurowania ekranu zgody OAuth, musisz też dodać te zakresy do pliku appsscript.json w projekcie Apps Script. Na przykład:
    • "oauthScopes": [
        "https://www.googleapis.com/auth/chat.messages.readonly"
      ]
          
    • Włącz usługę zaawansowaną Google Workspace Events.

Python

  • Python 3.6 lub nowszy
  • Narzędzie do zarządzania pakietami pip
  • najnowsze biblioteki klienta Google dla Pythona; Aby je zainstalować lub zaktualizować, uruchom w interfejsie wiersza poleceń to polecenie:
      pip3 install --upgrade google-api-python-client google-auth-oauthlib
      

Odnawianie subskrypcji Google Workspace

W tej sekcji użyjesz metody subscriptions.update() interfejsu Events API w Google Workspace, aby odnowić subskrypcję do maksymalnego czasu jej wygaśnięcia. Aby określić maksymalny czas ważności, zaktualizuj pole ttl zasobu Subscription na 0.

Maksymalny czas ważności zależy od tego, jakie dane o zasobach są zawarte w ładunku zdarzenia. Więcej informacji o czasie wygaśnięcia znajdziesz w artykule Dane zdarzenia dotyczące zdarzeń Google Workspace.

Aby odnowić subskrypcję Google Workspace:

Google Apps Script

  1. W projekcie Apps Script utwórz nowy plik skryptu o nazwie updateSubscription i dodaj ten kod:

    function updateSubscription() {
      // The name of the subscription to update.
      const name = 'subscriptions/SUBSCRIPTION_ID';
    
      // Call the Workspace Events API using the advanced service.
      const response = WorkspaceEvents.Subscriptions.patch({
        ttl: '0s',
      }, name);
      console.log(response);
    }
    

    Zastąp następujące elementy:

    • SUBSCRIPTION_ID: identyfikator subskrypcji. Aby uzyskać identyfikator, możesz użyć jednej z tych opcji:
      • Wartość pola uid.
      • Identyfikator nazwy zasobu w polu name. Jeśli na przykład nazwa zasobu to subscriptions/subscription-123, użyj subscription-123.
  2. Aby zaktualizować subskrypcję Google Workspace, uruchom funkcję updateSubscription w projekcie Apps Script.

Python

  1. W katalogu roboczym utwórz plik o nazwie update_subscription.py i dodaj ten kod:

    """Update subscription."""
    
    from google_auth_oauthlib.flow import InstalledAppFlow
    from googleapiclient.discovery import build
    
    # Specify required scopes.
    SCOPES = [SCOPES]
    
    # Authenticate with Google Workspace and get user authentication.
    flow = InstalledAppFlow.from_client_secrets_file('client_secrets.json', SCOPES)
    CREDENTIALS = flow.run_local_server()
    
    # Call the Workspace Events API using the service endpoint.
    service = build(
        'workspaceevents',
        'v1',
        credentials=CREDENTIALS,
    )
    
    BODY = {
        'ttl': {'seconds': 0},
    }
    NAME = 'subscriptions/SUBSCRIPTION_ID'
    response = (
        service.subscriptions()
        .patch(name=NAME, updateMask='ttl', body=BODY)
        .execute()
    )
    print(response)
    

    Zastąp następujące elementy:

    • SCOPES: co najmniej 1 zakres OAuth obsługujący każdy typ zdarzenia w subskrypcji. Sformatowany jako tablica ciągów znaków. Aby podać wiele zakresów, rozdziel je przecinkami. Na przykład: 'https://www.googleapis.com/auth/chat.spaces.readonly', 'https://www.googleapis.com/auth/chat.memberships.readonly'.
    • SUBSCRIPTION_ID: identyfikator subskrypcji. Aby uzyskać identyfikator, możesz użyć jednej z tych opcji:
      • Wartość pola uid.
      • Identyfikator nazwy zasobu w polu name. Jeśli na przykład nazwa zasobu to subscriptions/subscription-123, użyj subscription-123.
  2. Sprawdź, czy w katalogu roboczym masz zapisane dane uwierzytelniające klienta OAuth i czy plik ma nazwę client_secrets.json. Plik ten służy do uwierzytelniania się w Google Workspace i uzyskiwania danych logowania użytkownika. Instrukcje znajdziesz w artykule Tworzenie danych logowania klienta OAuth.

  3. Aby zaktualizować subskrypcję Google Workspace, uruchom w terminalu to polecenie:

    python3 update_subscription.py
Interfejs Events API w Google Workspace zwraca długo trwającą operację, która zawiera instancję zasobu Subscription.

Aby uzyskać szczegółowe informacje o zaktualizowanym źródle Subscription, użyj metody operations.get() i określ zasób Operation zwrócony z żądania subscriptions.update(). Jeśli jednak określisz zasób Operation z poprzedniej wersji subskrypcji, odpowiedź będzie pusta.