Асинхронный запуск функции в скрипте Google Apps - PullRequest
0 голосов
/ 09 июля 2020

Я делаю Slack-бот, который вызывает функцию GAS. Все работает, за исключением того, что Slack показывает сообщение об ошибке, потому что он ждет ответа только 3 секунды при вызове API. законченный. Я пробовал обещания и обратные вызовы, но не могу их решить.

function doPost(e){

  const promise = new Promise(everyDay2);

  return ContentService.createTextOutput('thinking...');

}

1 Ответ

3 голосов
/ 09 июля 2020

Обещания не работают. Вместо этого используйте триггеры :

function doPost(e) {
  runAfter1s('everyDay2');
  return ContentService.createTextOutput('thinking...?');
}

const runAfter1s = func =>
  ScriptApp.newTrigger(func)
    .timeBased()
    .after(1000)
    .create();

Убедитесь, что вы удалили созданный триггер внутри everyDay2 после срабатывания.

...