Venzel900
@Venzel900
Шпака - не брал!

Как включить метод Webhook для ТГ бота, после deleteWebhook?

Сделал для себя ТГ бота на платформе Google Apps Sqript, все работало. Понадобилось на время удалить Webhook, чтобы запустить getUpdates. Для удаления использовал команду:
https://api.telegram.org/bot<ТОКЕН БОТА>/deleteWebhook

Обратно установить Webhook уже не удалось, результат:
{"ok":true,"result":true,"description":"Webhook was deleted"}

1) Пробовал установить Webhook из скрипта:
let tgUrl = "https://api.telegram.org/bot" + ТОКЕН БОТА;
let webAppUrl = "ссылка скрипт гугла как на вебприложение";

let tgToken = " ТОКЕН БОТА ";
let tgUrl = "https://api.telegram.org/bot" + tgToken
let webAppUrl = " ссылка скрипт гугла как на вебприложение ";
(Естественно любое изменение в коде = новая версия вебприложения – сделано)

function setWebhook() {
let url = tgUrl + "/setWebhook?url=" + webAppUrl;
UrlFetchApp.fetch(url);
}
В логах ошибки нет, хук вроде не запускает, результат:
{"ok":true,"result":true,"description":"Webhook was set"}
Но бот не логирует обращения пользователя, не реагирует на команды и не отправляет сообщения.

2) Пробовал установить Webhook напрямую через браузер:
https://api.telegram.org/bot<ТОКЕН БОТА>/setWebhook

Ответ:
{"ok":true,"result":true,"description":"Webhook was deleted"}

3) Пробовал установить Webhook изменив tgUrl и токен бота, результат: Webhook не работает

4) На стаке вычитал способ, который должен включить Webhook и вроде как включает, но фактически не включат:
Вводил напрямую в браузере:
https://api.telegram.org/bot<ТОКЕН БОТА>/setWebHook?url=https://script.google.com/macros/s/ссылка на вебприложение/exec&allowed_updates=["callback_query","message"]

Результат: {"ok":true,"result":true,"description":"Webhook is already set"}
Но бот не логирует и не отвечает на сообщения

Запускал команду getWebhookInfo, результат:
{"ok":true,"result":{"url":"https://script.google.com/macros/s/ссылка на вебприложение/exec","has_custom_certificate":false,"pending_update_count":0,"max_connections":40,"ip_address":"216.58.208.110","allowed_updates":["message","callback_query"]}}

После всех вышеуказанных манипуляций попробовал запустить getUpdates, результат:
{"ok":false,"error_code":409,"description":"Conflict: can't use getUpdates method while webhook is active; use deleteWebhook to delete the webhook first"}

Фактически вебхук не работает, бот не реагирует.

Вопрос: как победить проблему и обратно включить метод Webhook для ТГ бота?
  • Вопрос задан
  • 3846 просмотров
Решения вопроса 1
Venzel900
@Venzel900 Автор вопроса
Шпака - не брал!
Проблема решена.
Проблема не setWebHook или сертификатах.
внутри скрипта функция doPost работала не корректно.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы