Ich erstelle eine App, mit der Google Apps-Skript für das Google Mail-Konto des App-Nutzers hinzugefügt werden kann.Google Mail-Überwachung mit Google Apps-Skript und Push-Benachrichtigung
für die Bearbeitung von Uhren testen, habe ich die folgende app Skriptcode verwendet, die ich von einem Youtube-Tutorial bekam von Spencer Easton (https://www.youtube.com/watch?v=wjHp9_NAEJo)
function doPost(e)
{
var message = JSON.parse(e.postData.getDataAsString()).message;
var data = Utilities.newBlob(Utilities.base64Decode(message.data)).getDataAsString();
var ss = SpreadsheetApp.openById('my_google_sheet_id').getSheets()[0];
ss.appendRow([new Date(), message.message_id, data, "newMail"]);
return 200;
}
function enrollEmail() {
var watchRes = Gmail.newWatchRequest();
watchRes.labelIds = ["INBOX"];
watchRes.labelFilterAction = "include";
watchRes.topicName = "projects/project-id-12345/topics/gmailTrigger";
var response = Gmail.Users.watch(watchRes, "me");
}
function doGet()
{
enrollEmail();
}
Dann veröffentlichte ich die App mit den folgenden Schritten:
1. Deploy as web app
2. Execute the app as: Me
3. Who has access to the app: Anyone, even anonymous
Jetzt funktioniert die Uhr gut für mein Google Mail-Konto.
Aber meine Anforderung ist es, alle Benutzer in meiner App authentifiziert zu sehen.
Also habe ich versucht, die App zu veröffentlichen mit den folgenden Schritten:
1. Deploy as web app
2. Execute the app as: User accessing the web app
3. Who has access to the app: Anyone
Nun ist die App für die Authentifizierung der Benutzer aufgefordert wird, die die Web-App-URL besucht. Die Uhr funktioniert jedoch nicht für das Google Mail-Konto des Nutzers und für mein Google Mail-Konto.
Wieder veröffentlichte ich die App mit der ersten Methode (Ausführen der App als: Me), jetzt funktioniert die Uhr für das Konto des authentifizierten Benutzers und mein Konto.
So konfigurieren Sie das Google Apps-Skript, sodass ich dem Benutzer, der meine App authentifiziert, eine Überwachung hinzufügen kann.
„Aber die Uhr funktioniert nicht für die Google Mail-Konto des Benutzers und für mein Google Mail-Konto . " Kannst du das bitte weiter ausführen? Was genau funktioniert nicht? –
Die Datei doPost() wurde nicht aufgerufen, wenn eine neue E-Mail zum Posteingang hinzugefügt wird. (Benutzerkonto & mein Konto) –