Руководство администратора
С помощью смарт-действия «Отправить HTTP-запрос» можно автоматизировать общение через бот мессенджера Telegram.
1. Если вы еще не зарегистрированы в Telegram, пройдите регистрацию.
2. Получите идентификатор нового бота : обратитесь к боту @BotFather c требованием создать нового бота (команда /newbot ).
3. Получите идентификатор беседы с ботом :
• Откройте диалог со своим созданным ботом и напишите ему произвольное сообщение,
• Откройте в браузере ссылку
где — идентификатор, полученный от @BotFather,
• В полученном json-ответе найдите значение в параметре result->message->chat->id , это и есть .
URL для отправки сообщения боту формируется по образцу:
https://api.telegram.org/bot < bot_token >/sendMessage?chat_id= < chat_id >&text=
URL для получения последнего сообщения от бота формируется по образцу:
Если возвращается одно сообщение, то json имеет вид:
Чат-бот может вернуть сразу несколько последних ответов — json вида:
Первое непрочитанное ответное сообщение доступно как значение атрибута result.message[0].text , а доступен как значение атрибута result.message[0].chat.id (этот параметр важен, поскольку бот может вести несколько чатов одновременно).
Простейший пример обмена сообщениями с чат-ботом Telegram описан ниже.

Смарт-пакет для отправки сообщения боту.

Смарт-действие для отправки сообщения боту.
Вариант смарт-действия для отправки сообщения боту с использованием двух параметров:

Вариант смарт-действия для отправки сообщения боту с использованием двух параметров.
![]()
Для данного кейса не поддерживаются зашифрованные задачи

Смарт-пакет для работы с курсом валюты в формате JSON.
Обратите внимание на необходимость очистки ответа веб-сервиса от лишних символов, эти объяснения даны здесь. Поэтому во втором смарт-действии для выделения текста сообщения используется выражение TSQL:
select top 1 JSON_VALUE ( @ActionResult8639, ‘$.HttpResponse.ResponseContent.result[0].message.text’ )
Как узнать свой api telegram
Как получить API Id и API Hash?
Для получения API id и возможности разработать собственный клиент на основе Telegram API нужно сделать следующее:
- Сначала перейдите на my.telegram.org
- В поле Your Phone Number введите Ваш номер телефона (можете попробовать номер телефона Вашего фейк-аккаунта) и нажмите Next. На этот номер будет отправлено сообщение в Телеграм, который нам понадобится в следующем пункте.

3.После этого у Вас появится поле Confirmation code. В это поле Вам необходимо вставить код, который Вы получите в приложении Telegram На телефоне или компьютере и нажать на кнопку Sign In.

4.Далее нажимем на ссылку «API development tools»

5.Вам предложат создать новое приложение.
Заполняем поля по примеру:
App title: Любое название на английском языке
Shortname: Любая строчка на английском языке без пробелов! Длина от 5 до 32 символа
Url: Ссылка на любой сайт, который не является популярным
Platform: Desktop
Description: Придумайте любое описание

Нажимаем «Create application»
Если на этом этапе Вы увидите окно с надписью «ERROR«, попробуйте отключить в Вашем браузере плагины-блокировщики рекламы или блокировщики сторонних файлов Cookie, а так же можете почистить кеш и куки браузера.
Если все пройдет хорошо, то Вы увидите страницу похожую на скриншот ниже!
В чём разница между API token и API id, hash?
Пытаюсь написать своего телеграм-бота через библиотеку pyrogram. Для того чтобы подключиться к боту и управлять им, необходимо предоставить API token, API id и API hash, как показано ниже (пример взят отсюда):
from pyrogram import Client api_id = 12345 api_hash = "0123456789abcdef0123456789abcdef" app = Client("my_account", api_id=api_id, api_hash=api_hash) app.run()
Если токен понятно откуда брать и зачем он нужен, то вот c id и hash возникают затруднения. Откуда их брать я узнал в интернете. А вот зачем они нужны, для чего используются? Если это какие-то артефакты моего телеграм бота, почему они сразу не выдаются с токеном?
Отслеживать
задан 20 июл 2023 в 10:08
320 1 1 серебряный знак 11 11 бронзовых знаков
Это не для ботов, а для аккаунтов обычных людей
20 июл 2023 в 10:11
20 июл 2023 в 10:12
gord1402, там написано всего одно предложение: Bot tokens replace the users’ phone numbers only — you still need to configure a Telegram API key with Pyrogram, even when using bots. — из чего я пытаюсь догадаться, что api hash, id — это инструмент аутентификации бота. Но почему тогда в pyTelegramBotApi (pypi.org/project/pyTelegramBotAPI) используется только токен, почему там не нужна эта аутентификация?
20 июл 2023 в 10:19
@ArtemLP pyTelegramBotApi использует API для ботов, а pyrogram использует MTProto, который изначально создавался для пользовательских приложений (в частности, для официальных клиентов Telegram)
20 июл 2023 в 10:25
1 ответ 1
Сортировка: Сброс на вариант по умолчанию
В контексте API token я буду понимать Telegram Bot API .
Когда вы создаете бота на платформе Telegram , вы получаете уникальный API token , который является основным инструментом для взаимодействия с API и управления ботом. API token предоставляет доступ к различным методам Telegram Bot API , таким как отправка сообщений, получение обновлений и управление настройками бота. Обычно он передается в HTTP-запросах или используется в библиотеках и SDK для идентификации бота и обеспечения безопасности при вызове API методов.
Pyrogram в свою очередь использует немного другой метод взаимодействия, через MTProto API — это такая штука которая предоставляет возможность разработчикам создавать приложения сторонних разработчиков, которые могут взаимодействовать с Telegram, но он используется не для создания ботов, а для создания клиентских приложений, которые могут работать с Telegram на уровне пользовательского интерфейса. API hash необходим для подтверждения легитимности вашего приложения и безопасности обмена данных между приложением и серверами Telegram.
Чтобы вы не потерялись, я дам вам ссылку для конфигурации собственного приложения Telegram, там же можно и сформировать Api_id и Api_hash https://core.telegram.org/api/obtaining_api_id
Отслеживать
ответ дан 20 июл 2023 в 10:20
2,327 1 1 золотой знак 5 5 серебряных знаков 29 29 бронзовых знаков
- python
- telegram-bot
- pyrogram
-
Важное на Мете
Связанные
Похожие
Подписаться на ленту
Лента вопроса
Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.
Дизайн сайта / логотип © 2024 Stack Exchange Inc; пользовательские материалы лицензированы в соответствии с CC BY-SA . rev 2024.1.8.3130
Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.
Смена токена от Telegram API

К сожалению, без доступа нет возможности сгенерировать новый токен. Восстановите доступ, а после этого произведите настройку.
2) Доступ не у меня, а у другого сотрудника
Вам могут передать права на бота. Для этого нужно перейти в BotFather, выполнить команду /mybots. Далее выбрать нужного бота и выполнить команду Transfer Ownership. Здесь можно указать username нового владельца.