2016-08-10 1 views
0

Ich versuche, den Quickstart in Python für die Group Migration API auszuführen.Google Group Migration API - gibt com.google.gaia.client.invaliduseridexception

Das Ziel besteht darin, eine Nachricht in eine Google-Gruppe einzufügen, die ich zum Testen erstellt habe.

Ich habe ein Google for Work-Konto erstellt und eine Google-Gruppe erstellt, deren Eigentümer admin ist.

Ich habe die Anmeldeinformationen in der Konsole als "Client ID für andere" erstellt und sie auf meinem Client eingerichtet.

Als ich das Skript ausführen, erhalte ich:

googleapiclient.errors.HttpError: 
<HttpError 400 when requesting 
https://www.googleapis.com/upload/groups/v1/groups/test-migration-business%40googlegroups.com/archive?uploadType=media&alt=json 
returned "com.google.gaia.client.InvalidUserIDException: 
Request for GaiaClientConst::INVALID_USERID"> 

Die Ermächtigung Fluss schien gut zu funktionieren. Ich bekomme die Bestätigung im Browser Tab. Es erstellt die Credentials-Datei in meinem lokalen Verzeichnis.

Ich autorisiere als Administrator des Google for Work-Kontos. Ich habe den API-Zugriff in der admin.google.com-Konsole aktiviert. Ich habe auch die Voraussetzungen-Schritte durchlaufen, und ich denke, alles ist in Ordnung.

Irgendeine Idee, was das verursacht?

Bearbeiten: Ich habe ein paar mehr Informationen über einen anderen Kanal. Das Problem war mit der Gruppe, in die ich über die API schreiben wollte.

Es geht nicht nur darum, die Gruppe unter einem Google Groups for Business-Konto zu erstellen. In der Gruppe admin.google.com müssen Sie viele Einstellungen vornehmen. Wenn Sie es richtig eingerichtet haben, können Sie schließlich eine Gruppe erstellen, deren E-Mail-Adresse den folgenden Typ hat: [email protected]

Solange Sie Ihre Gruppen mit dem @ googlegroups.com-Suffix in der E-Mail-Adresse erstellen, funktioniert der API-Aufruf nicht.

Ich werde eine alternative Antwort in ein paar Tagen schreiben, sobald ich dies mit SMTP-E-Mail-Hinzufügungen stattdessen getan hat.

+0

Auch wenn ich in der API-Bildschirm der Konsole suchen, zeigt es immer noch keinen Verkehr. Es scheint den Gruppennamen OK zu lösen - ich weiß das, denn wenn ich ihm eine Junk-Zeichenfolge für den Gruppennamen gebe, erzeugt er einen anderen Fehler (Backend-Fehler). –

Antwort

0

Das Problem war mit der Gruppe, in die ich über die API schreiben wollte.

Es geht nicht nur darum, die Gruppe unter einem Google Groups for Business-Konto zu erstellen. In der Gruppe admin.google.com müssen Sie viele Einstellungen vornehmen. Wenn Sie es richtig eingerichtet haben, können Sie schließlich eine Gruppe erstellen, deren E-Mail-Adresse den folgenden Typ hat: [email protected]

Solange Sie Ihre Gruppen mit dem @ googlegroups.com-Suffix in der E-Mail-Adresse erstellen, funktioniert der API-Aufruf nicht.

ging ich den Weg SMTP verwenden zu einer öffentlichen Gruppe zu erstellen, wie pro diese Links gilt: https://github.com/jmuhlich/mailman-archive-migration https://gist.github.com/tdonohue/cd2a643c5fca5f140cfd

traf ich einige Schwierigkeiten mit dem SMTP-Ansatz und verlassen sie schließlich.

a) Sie müssen Nachrichten in chronologischer Reihenfolge laden, da sie mit dem aktuellen Datum/Uhrzeit beim Hinzufügen posten. Sie können außer Betrieb geraten, wenn die E-Mail in der Moderationswarteschlange als Spam gespeichert und später genehmigt wird.

b) Es gibt jetzt eine sehr niedrige Grenze für den SMTP-Relay von Google, es sei denn, Sie haben ein großes Google Apps-Konto mit einer großen Anzahl von abonnierten Benutzern. Der SMTP-Relay-Dienst wird wichtig, damit Ihre archivierten Nachrichten auf dem Weg in die Gruppe nicht als Spam markiert werden.

Ich bin zurück zur API-Lösung gegangen und habe es fast fertiggestellt. Es dauerte ein wenig, bis die Zeichensatzkodierung in allen Fällen richtig funktionierte. Aber ansonsten klappt es gut.

1

Es kann durch INVALID MESSAGE FAILURE verursacht werden - Die E-Mail-Nachricht hat ein ungültiges Format. Wenn eine Nachricht als fehlerhaft abgelehnt wird, erhalten Sie eine 400 Bad Request HTTP-Statuscode. Ungültige Format Beispiele:

  • Die Botschaft hat Von, Bis könnte fehlen, und Datumsfelder.
  • Ein Fehler tritt auf, wenn eine Zeile in der message nicht durch eine CR + LF (das heißt "\ r \ n") Style Newline beendet wird.
  • Die E-Mail-Nachricht ist leer.
  • Die Zielgruppe der Migration existiert nicht oder befindet sich im schreibgeschützten Modus. Weitere Informationen zum schreibgeschützten Freigabemodus finden Sie in Google Groups for Business sharing options.

Es kann sein, auch UNSUPPORTED_PARALLEL_OPERATION - Die API nicht parallel Nachricht Einfügungen in die gleiche Gruppe Archiv unterstützt. In dieser Version der API werden auch keine Stapelanforderungen unterstützt. Die API unterstützt jedoch parallele Anforderungen für das Einfügen von E-Mails in verschiedene Gruppenarchive.Ein HTTP-Statuscode wird zurückgegeben.

Überprüfen Sie das Antragsformular und Managing Email Migrations, um wichtige Hinweise für die Migration zu sehen.

Hoffe, das hilft!

+0

Vielen Dank für Ihr Interesse an meiner Frage, ich schätze es wirklich. Es stellte sich heraus, dass es mit der Konfiguration der Gruppe zusammenhing, zu der ich schreiben wollte - ich habe einige Informationen hinzugefügt, um die Frage zu bearbeiten. Wird meine eigene Antwort hinzufügen, sobald ich eine vollständige Lösung gefunden habe. –