@ambal245

Как создать inline_keyboard в Google Apps из ячеек таблицы?

Как в цикле for создать клавиатуру для отправки пользователю. Имеется google таблица в ячейке А записано 4 значения, которые читаем их в переменную. Ниже предоставлен код из редакторе скрипта
function doPost(e){
var update = JSON.parse(e.postData.contents);
var DOC = SpreadsheetApp;
//нам нужен только тип "сообщение"
if (update.hasOwnProperty('message')){
var msg = update.message;
var chat_id = msg.chat.id;
var text = msg.text;
var msg_array = msg.text.split(" ");
// проверяем, является ли сообщение командой к боту
    if (msg.hasOwnProperty('entities') && msg.entities[0].type == 'bot_command') {
       if (msg_array[0] == "/start"){
   var sheet = DOC.getActiveSpreadsheet();
   var sheet1 = sheet.getSheetByName('Прайс лист');

      function getData(){
      var result = [],     
      range = sheet1.getRange("A1:A"), // определяем диапозон ячеек
      values = range.getValues(),
      last = parseInt(sheet1.getLastRow()); //  определяем количество заполненных ячеек
           for (var i = 1; i < last; i++) {
          result.push({'text' : values[i]});   }
      return result; 
    }
 var data = getData();
    var keydoards = [{'inline_keyboard' : data}];

    send('кнопки', chat_id, keydoards)
 }
}
}}

function send (msg, chat_id, keyboard){
var payload = {
'method': 'sendMessage',
'chat_id': String(chat_id),
'text': msg,
'reply_markup' :  JSON.stringify(keyboard),
'parse_mode': 'markdown'
}
var data = {
"method": "post",
"payload": payload
}
var API_TOKEN = 'xxxxxxxxxxxxxxxx'
UrlFetchApp.fetch('https://api.telegram.org/bot' + API_TOKEN + '/', data);
}

В результате работы этого кода формируется следующее и клавиатура не отправляется.
{"inline_keyboard":[{"text":["TEXT1"},{"text":"TEXT2"},{"text":"TEXT3"},{"text":"TEXT4"}]}]

Подскажите Как правильно создать клавиатуру в JSON массиве в цикле for?
  • Вопрос задан
  • 81 просмотр
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы