Не работает главная кнопка веб-приложения Telegram

Я использую Google Apps для написания telegram-бота и web-приложения.В приложении Telegram на IPhone код отлично работает за исключением метода tg.sendData("string to send") - кнопка нажимается, но sendData не срабатывает, отправляемое сообщение "string to send" в боте не отображается. В десктопной версии Telegram на Windows кнопка MainButton вообще не отображается. Также не работает событие click кнопки btn и, соответственно, не работают методы tg.MainButton.hide(), tg.MainButton.show().

Подскажите, пожалуйста, в чем может быть дело?

Таким образом я создаю клавиатурную кнопку:

const webApps = `https://script.google.com/macros/s/**KEY**/exec?chatID=**CHAT_ID**`
const web_app_info = { url: webApps }
const KB_WEB_APP = {
  keyboard: [
    [{
      text: "Моя кнопка",
      web_app: web_app_info
    }]
  ],
  resize_keyboard: true,
  one_time_keyboard: true
}

function botSendKeyboard(chat_id, text, keyboard = KB_WEB_APP) {
  let data = {
    method: "post",
    payload: {
      chat_id: String(chat_id),
      text: text,
      parse_mode: "HTML",
      reply_markup: JSON.stringify(keyboard)
    }
  };
  UrlFetchApp.fetch(tgAPI + "/sendMessage", data)
}

Функция doGet:

function doGet(e) {
 let htmlOutput = HtmlService.createHtmlOutputFromFile('index1.html')
 htmlOutput.setXFrameOptionsMode(HtmlService.XFrameOptionsMode.ALLOWALL)
 return htmlOutput
}

Код index1.html:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Telegram WebApps</title>  
  <script src="https://telegram.org/js/telegram-web-app.js"></script>
</head>

<body>
  <p>Заголовок</p>
  <button id="btn" class="button">Show/Hide Main Button</button>
</body>

<script>

   let tg = window.Telegram.WebApp;
   tg.MainButton.text = "My Text";
   tg.MainButton.show()

   let btn = document.getElementById("btn");

   btn.addEventListener('click', function(){
      if (tg.MainButton.isVisible){
         tg.MainButton.hide()
      }
      else tg.MainButton.show()
   });

   window.Telegram.WebApp.onEvent("mainButtonClicked", function(){
      tg.sendData("some string that we need to send"); 
   });

</script>
</html>

Ответы (0 шт):