Slack: Как я могу сделать текст возврата видимым для всех? - PullRequest
2 голосов
/ 19 сентября 2019

Ниже приведен код, который я использую, чтобы получить текст из слабого места и записать его в лист Google.

На самом деле все работает отлично, за исключением того факта, что сообщение «Успех» видит только тот, кто использует команду, и я не смог найти способ сделать его видимым для всех пользователей в канале.

Так вот и мой вопрос: как мне это изменить?Как сделать сообщение «Успех» видимым для всех пользователей канала?

function doPost(e) {
  if (typeof e !== 'undefined') {
    var ss = SpreadsheetApp.getActiveSpreadsheet();
    var sheet = ss.getSheetByName('Doorbug');
    var lastRow = sheet.getLastRow();

    //relevant data
    var parameter = e.parameter;
    var text = parameter.text;
    var userName = parameter.user_name;
    var channel = parameter.channel_name;
    var date = new Date();


    //reg-number, Email, location, UA
    var data = text.split(',');

    var reg = data[0];
    var email = data[1];
    var location = data[2];
    var ua = data[3];

    var slackDetails = [date, reg, email, location, ua, userName, channel];

    //paste the data in the sheet
    sheet.getRange(lastRow + 1,1,1,7).setValues([slackDetails]); 
  }


  //return message for the user
  return ContentService.createTextOutput('Success :)');
}

1 Ответ

0 голосов
/ 20 сентября 2019

Я предполагаю, что этот проект Apps Script опубликован как веб-приложение, и эта функция используется командой Slack slash.Пожалуйста, обновите вопрос, предоставив больше контекста, если это предположение неверно.

Если это так, вы хотите следовать их инструкциям относительно видимости сообщения при отправке ответа .

В частности, вместо того, чтобы отправлять простой текстовый ответ, вы хотите ответить сообщением в кодировке JSON, например:

  var response = "Success :)";

  return ContentService.createTextOutput(JSON.stringify({
    response_type: "in_channel",
    text: response,
  }));

Более того, вы можете пересмотреть логику для создания вашего ответа.В существующем состоянии ваша функция всегда будет отвечать «Success :)», даже если начальная проверка ошибок оценивается как ложная, и функция прекращает вставку данных в лист.

...