Разметка клавиатуры бота telegram не работает с помощью скрипта Google Apps - PullRequest
0 голосов
/ 02 июля 2018

У меня есть этот код, но он не работает для отображения сообщения и клавиатуры во время использования функциональной клавиатуры, которую я создал.

function sendText(id,text) {
    var url = telegramUrl + "/sendMessage?chat_id=" + id + "&text=" + text;
    var response = UrlFetchApp.fetch(url);
  Logger.log(response.getContentText());
}
 function Keyboard (id, text, reply_markup ){
    var url = telegramUrl + "/sendMessage?chat_id=" + id + "&text=" + text + "&reply_markup=" + reply_markup ;
    var response = UrlFetchApp.fetch(url);
  Logger.log(response.getContentText());
}

function doPost(e) {
// this is where telegram works
    var data = JSON.parse(e.postData.contents);
    var text = data.message.text;
    var id = data.message.chat.id;
 if (text == "/start"){
    var message = "Selamat datang. Untuk mencari data pelanggan silahkan memasukkan @ODP_NAME.%0AContoh : @ODP-UBN-FAC/100";
    var opts =  JSON.stringify({ 
            keyboard: [['OK','Cancel']],
            one_time_keyboard: true,
            resize_keyboard: true
            })
        ;
//sendText(id, "hola", opts);
  Keyboard(id,"hi", opts);

}
}

** и затем я пытаюсь использовать функцию sendText (), чтобы сделать URL-адрес верным, но он только дает мне текст и не показывает клавиатуру. **

 sendText(id,"hi", {reply_markup: JSON.stringify({ 
            keyboard: [['OK','Cancel']],
            one_time_keyboard: true,
            resize_keyboard: true
   })
});

Можете ли вы сказать мне, что не так с моим кодом?

1 Ответ

0 голосов
/ 02 июля 2018

я думаю, что ваш reply_markup должен выглядеть так:

{ 
    keyboard: [[{text: 'OK'}, {text: 'Cancel'}]],
    one_time_keyboard: true,
    resize_keyboard: true
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...