Используйте веб-приложение Google Script в качестве Webhook для непосредственного получения push-уведомлений

Моя цель: изменения в Google Диске => Push-уведомление наhttps://script.google.com/a/macros/my-domain/... => Приложение подталкивается к действию. Я не хочу настраивать посредника для получения уведомлений. Вместо этого позвольте Веб-приложению (от Google Script) получить его и отправить напрямую.

Поскольку соответствующая функция довольно недокументирована (просто здесь:https://developers.google.com/drive/web/push) ниже приведен код, который я пробовал, но не удалось. 1. Реальна ли идея выше ?? 2. Мой код doPost (R) не может получать уведомления (параметр R) должным образом. Во всяком случае, нет ответа после изменения Google Drive. Любая проблема? (Я попытался записать входной параметр R, чтобы увидеть его реальную структуру и решить, совпадает ли параметр Obj для OAuth с обычным Drive App, но перед журналом произошла ошибка)

function SetWatchByOnce(){
  var Channel = {
    'address': 'https://script.google.com/a/macros/my-domain/.../exec',
    'type': 'web_hook',
    'id': 'my-UUID'
  };

  var Result = Drive.Changes.watch(Channel); 
  ...
}    

function doPost(R) {
  var SysEmail = "My Email";
  MailApp.sendEmail(SysEmail, 'Testing ', 'Successfully to received Push Notification');

  var Response = JSON.parse(R.parameters);
  if (Response.kind == "drive#add") {
    var FileId = Response.fileId;
    MyFile = DriveApp.getFolderById(FileId);
    ...
  }
}


function doGet(e) {
  var HTMLToOutput;  
  var SysEmail = "My Email";

  if (e.parameters.kind) { 
      //I think this part is not needed, since Push Notification by Drive is via Post, not Get. I should use onPost() to receive it. Right?

    } else if (e.parameters.code) { 
      getAndStoreAccessToken(e.parameters.code);
      HTMLToOutput = '<html><h1>App is successfully installed.</h1></html>';

    } else { //we are starting from scratch or resetting
      HTMLToOutput = "<html><h1>Install this App now...!</h1><a href='" + getURLForAuthorization() + "'>click here to start</a></html>";
    }  

    return HtmlService.createHtmlOutput(HTMLToOutput);  
  }


....

Ответы на вопрос(2)

Ваш ответ на вопрос