Auf dieser Seite wird beschrieben, wie Sie ein in der Schwebe befindliches Google Workspace-Abo reaktivieren, indem Sie Fehler beheben oder beheben lassen und die Methode subscriptions.reactivate()
aufrufen.
Google Workspace-Abos werden gesperrt, wenn ein Fehler verhindert, dass das Abo Ereignisse empfängt. Ein Abo wird beispielsweise ausgesetzt, wenn die Zielressource oder der Benachrichtigungsendpunkt nicht gefunden werden kann. Nachdem Sie alle Fehler behoben haben, können Sie das Abo reaktivieren, um wieder Ereignisse zu erhalten.
So erfahren Sie, ob Ihr Abo gesperrt wurde:
- Ihre App erhält ein Lebenszyklusereignis über die Sperrung. Wenn Ihr Abo aufgrund eines Fehlers beim Endpunkt gesperrt wurde, erhalten Sie möglicherweise kein Lebenszyklusereignis.
- Mit den Methoden
subscriptions.get()
odersubscriptions.list()
kannst du prüfen, ob das Feldstate
des Abos aufSUSPENDED
gesetzt ist. - Sie werden über einen Zustellungsfehler an Ihrem Benachrichtigungsendpunkt benachrichtigt. Informationen zum Überwachen von Übermittlungsfehlern an Google Cloud Pub/Sub-Themen finden Sie unter Fehler bei Nachrichten beheben.
Für reaktivierte Abos gilt das ursprüngliche Ablaufdatum. Wie Sie die Ablaufzeit eines Abos verlängern, erfahren Sie unter Abo aktualisieren oder verlängern.
Apps Script
- Ein Google Workspace-Abo. Wie Sie ein Abo erstellen, erfahren Sie unter Abo erstellen.
Erfordert die Nutzerauthentifizierung mit einem oder mehreren Bereichen, die alle Ereignistypen für das Abo unterstützen.
- Ein Apps Script-Projekt:
- Verwenden Sie Ihr Google Cloud-Projekt anstelle des automatisch von Apps Script erstellten Standardprojekts.
- Alle Bereiche, die Sie zum Konfigurieren des OAuth-Zustimmungsbildschirms hinzugefügt haben, müssen Sie auch der Datei
appsscript.json
in Ihrem Apps Script-Projekt hinzufügen. Beispiel: - Aktivieren Sie den erweiterten Dienst
Google Workspace Events
.
"oauthScopes": [ "https://www.googleapis.com/auth/chat.messages.readonly" ]
Python
- Python 3.6 oder höher
- Das Paketverwaltungstool pip
- Die neuesten Google-Clientbibliotheken für Python. Führen Sie den folgenden Befehl in der Befehlszeile aus, um sie zu installieren oder zu aktualisieren:
pip3 install --upgrade google-api-python-client google-auth-oauthlib
- Ein Google Workspace-Abo. Wie Sie ein Abo erstellen, erfahren Sie unter Abo erstellen.
Erfordert die Nutzerauthentifizierung mit einem oder mehreren Bereichen, die alle Ereignistypen für das Abo unterstützen.
Fehler identifizieren und beheben
Informationen zum Fehler für ein Abo finden Sie im Feld suspensionReason
des Abos. Dieses Feld wird angezeigt, wenn du ein Lebenszyklusereignis zur Sperrung erhältst. Du kannst es auch mit der Methode subscriptions.get()
aufrufen, um alle Felder für das Abo zu prüfen.
In der folgenden Tabelle sind mögliche Fehler für ein Abo und, sofern möglich, deren Behebung aufgeführt. Wenn Sie den Fehler nicht beheben können, können Sie das Abo löschen oder warten, bis es abläuft. Die Google Workspace Events API löscht abgelaufene Abos automatisch.
Fehler | Beschreibung | Mögliche Lösungen |
---|---|---|
|
Der autorisierende Nutzer hat die Gewährung einer oder mehrerer OAuth-Bereiche widerrufen, die für das Abo erforderlich sind. | Holen Sie sich ein neues Zugriffstoken. Weitere Informationen finden Sie unter Zugriffstoken vom Google Authorization Server abrufen. |
|
Die Zielressource für das Abo wird gelöscht. | Wenn die Ressource wiederhergestellt wurde, rufe die Methode reactivate() auf. Andernfalls sind keine Maßnahmen erforderlich, da ein Abo ohne die ursprüngliche Zielressource nicht reaktiviert werden kann. |
|
Der autorisierende Nutzer hat keinen Zugriff mehr auf die Ressource für das Abo. | Es sind keine weiteren Schritte erforderlich. Sie können das Abo nicht reaktivieren, da der Nutzer, der es autorisiert hat, nicht auf die Zielressource zugreifen kann. |
|
Die Google Workspace-Anwendung hat keinen Zugriff, um Ereignisse an Ihren Benachrichtigungsendpunkt zu senden. | Gewähren Sie dem Dienstkonto der Google Workspace-Anwendung, die Ereignisse liefert, Zugriff. Für Google Chat-Ereignisse ist das Dienstkonto chat-api-push@system.gserviceaccount.com . Für Google Meet-Ereignisse ist das Dienstkonto meet-api-event-push@system.gserviceaccount.com .Weisen Sie dem Dienstkonto für Pub/Sub-Themen die Rolle Pub/Sub-Publisher ( roles/pubsub.publisher)
) zu. |
|
Der Benachrichtigungsendpunkt ist nicht vorhanden oder kann nicht gefunden werden. | Prüfen Sie, ob der Endpunkt noch aktiv und funktionsfähig ist. Informationen zur Fehlerbehebung bei Pub/Sub-Themen findest du in der Fehlerbehebungsdokumentation. |
|
Der Benachrichtigungsendpunkt konnte keine Ereignisse empfangen, da das Kontingent nicht ausreicht oder die Ratenbegrenzung erreicht wurde. | Fordern Sie eine Kontingenterhöhung an. |
Abo reaktivieren
Nachdem Sie den Fehler behoben haben, der zur Sperrung Ihres Abos geführt hat, können Sie mit der Methode reactivate()
dafür sorgen, dass das Abo wieder Ereignisse empfängt. Dabei wird geprüft, ob alle Fehler behoben sind, und das Feld state
des Abos von SUSPENDED
in ACTIVE
geändert.
So reaktivieren Sie ein Google Workspace-Abo:
Apps Script
Erstellen Sie in Ihrem Apps Script-Projekt eine neue Scriptdatei mit dem Namen
reactivateSubscription
und fügen Sie den folgenden Code hinzu:function reactivateSubscription() { // The name of the subscription to reactivate. const name = 'subscriptions/SUBSCRIPTION_ID'; // Call the Workspace Events API using the advanced service. const response = WorkspaceEvents.Subscriptions.reactivate({}, name); console.log(response); }
Ersetzen Sie Folgendes:
Führen Sie die Funktion
reactivateSubscription
in Ihrem Apps Script-Projekt aus, um das Google Workspace-Abo wieder zu aktivieren.
Python
Erstellen Sie in Ihrem Arbeitsverzeichnis eine Datei mit dem Namen
reactivate_subscription.py
und fügen Sie den folgenden Code hinzu:"""Reactivate 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, ) NAME = 'subscriptions/SUBSCRIPTION_ID' response = service.subscriptions().reactivate(name=NAME).execute() print(response)
Ersetzen Sie Folgendes:
SCOPES
: Einer oder mehrere OAuth-Bereiche, die jeden Ereignistyp für das Abo unterstützen. Als Array von Strings formatiert. Wenn Sie mehrere Bereiche angeben möchten, trennen Sie sie durch Kommas. Beispiel:'https://www.googleapis.com/auth/chat.spaces.readonly', 'https://www.googleapis.com/auth/chat.memberships.readonly'
SUBSCRIPTION_ID
: Die ID des Abos. Sie haben folgende Möglichkeiten, die ID abzurufen:
Achten Sie darauf, dass Sie Ihre Anmeldedaten für die OAuth-Client-ID in Ihrem Arbeitsverzeichnis gespeichert und die Datei
client_secrets.json
genannt haben. Im Codebeispiel wird diese JSON-Datei verwendet, um sich bei Google Workspace zu authentifizieren und Nutzeranmeldedaten abzurufen. Eine Anleitung dazu finden Sie unter Anmeldedaten mit OAuth-Client-ID erstellen.Führen Sie in Ihrem Terminal den folgenden Befehl aus, um das Google Workspace-Abo zu reaktivieren:
python3 reactivate_subscription.py
Subscription
-Ressource enthält.
Wenn die Anfrage fehlschlägt, lesen Sie den folgenden Abschnitt zur Fehlerbehebung.
Fehlerbehebung bei mehreren Fehlern
Wenn Sie den Fehler behoben haben, der zur Sperrung des Abos geführt hat, und die reactivate()
-Methode fehlschlägt, ist möglicherweise nach der Sperrung des Abos ein weiterer Fehler aufgetreten.
Prüfen Sie die Ausgabe der fehlgeschlagenen Anfrage, um weitere Fehler zu identifizieren. Die Ausgabe enthält alle noch vorhandenen Fehler.
Wenn für dein Abo mehrere Fehler vorliegen, wird für den Wert des Felds suspensionReason
immer der ursprüngliche Fehler verwendet, aufgrund dessen dein Abo gesperrt wurde.