О приложении
Переслали сообщение в чат и не понимаете, что в нём спрятано: id отправителя, тип вложения, сущности форматирования, кнопки? Show JSON Bot показывает всё это в виде сырого JSON. Отправьте или перешлите ему любое сообщение, и он вернёт данные, которые Telegram передал боту.
Для обычного пользователя это любопытная диковинка. Для разработчика ботов это быстрый способ заглянуть в структуру апдейта без написания кода и без логов на своём сервере. 🔍
Что вы получаете в ответ
Бот отдаёт содержимое сообщения так, как оно пришло от Telegram. Это тот самый объект апдейта, с которым потом работает код любого бота.
В нём можно увидеть:
- Идентификаторы: id сообщения, чата и отправителя.
- Время: дату отправки в формате Unix.
- Сущности: какие куски текста размечены как ссылки, команды, жирный шрифт или упоминания.
- Вложения: описание фото, документа, стикера или голосового, включая служебные идентификаторы файлов.
- Данные пересылки: откуда пришло сообщение, если вы его переслали.
Если сообщение большое, искать нужное поле глазами неудобно. Для этого у бота есть интерфейс для перемещения по структуре данных: можно выбрать нужную часть и получить её отдельным текстовым сообщением.
Как им пользоваться за минуту
- Откройте бота и нажмите «Старт». Команда /start заодно показывает, что бот жив.
- Отправьте любое сообщение или перешлите чужое в этот чат.
- Получите JSON в ответ и откройте нужную ветку через кнопки.
- Скопируйте нужный фрагмент, например id файла или чата.
Команда /help выводит короткую подсказку, а /stats показывает статистику чата. Больше в боте ничего нет, и в этом его удобство: никаких настроек и меню. 🙂
Кому это правда нужно
Чаще всего к такому боту приходят за одним конкретным полем. Например, надо узнать числовой id группы или канала, чтобы вписать его в конфиг своего бота.
Ещё один частый сценарий: вы пишете бота и не уверены, как Telegram описывает ответ на сообщение, пересланный пост или медиаальбом. Проще один раз посмотреть живой пример, чем гадать по документации.
- Разработчики ботов: проверяют структуру апдейтов и находят нужные поля.
- Авторы автоматизаций: достают id чатов и файлов для скриптов.
- Любопытные пользователи: смотрят, как устроено сообщение изнутри.
- Те, кто обучается: сравнивают то, что видно в чате, с тем, что видит код.
Открытый код и кто за ним стоит
Бот сделан разработчиком под именем dcdunkan в рамках его проекта dcbots. Исходный код опубликован открыто, так что его можно прочитать и запустить у себя.
Идея родилась из похожего инструмента, который давно перестал работать. Автор взял тот же принцип и написал свой вариант на среде выполнения Deno. Живой экземпляр бота работает на хостинге для Deno-приложений.
Для собственного запуска нужен Deno, токен бота от официального BotFather и немного терпения. Без переменной DEBUG бот работает через вебхук, а с ней переключается на long polling. Это удобно для проверки на домашнем компьютере.
Про приватность, о чём лучше помнить
Бот получает то, что вы ему отправили, и показывает это вам же. Но любое сообщение уходит на чужой сервер, и это стоит учитывать.
Не пересылайте туда переписки с паролями, платёжными данными и личными документами. Для проверки структуры хватит безобидного тестового сообщения. Если нужно разобрать приватный чат, лучше собрать собственную копию бота из открытого кода и запустить её у себя. 🔒
Ещё одна деталь: в JSON попадают числовые id людей. Сами по себе они не раскрывают имя, но делиться чужими данными без спроса всё равно не стоит.
Что с ним делать дальше
Найденные id удобно сохранять в заметки рядом с описанием проекта. Когда в боте появляются новые типы сообщений, вроде опросов или платных медиа, достаточно отправить такой пример и увидеть, какие поля добавились.
Если данные нужно разбирать в коде, а не только смотреть, откройте официальную документацию Bot API и сопоставьте названия полей. Так JSON из бота станет понятным за пару минут. ✅
Частые вопросы
Что именно показывает Show JSON Bot?▼
Какие команды есть у бота?▼
Безопасно ли отправлять туда сообщения?▼
Можно ли запустить такого бота у себя?▼
На основе данных