Telegram Bot. Отправка уведомлений в телеграм канал

Категория: IT / WEB / Internet

Пишем простого бота и создаем приватный канал для отправки уведомлений в Телеграм.

1. Активируем бота BotFather (https://t.me/botfather) для создания и управления своими ботами:

/newbot
> Alright, a new bot. How are we going to call it? Please choose a name for your bot.
NotifierBot

> Good. Now let's choose a username for your bot. It must end in `bot`. Like this, for example: TetrisBot or tetris_bot.
notifier_gram_bot

> Done! Congratulations on your new bot...
> Use this token to access the HTTP API:
> ...:...
> Keep your token secure and store it safely, it can be used by anyone to control your bot.

/start

Отправляем запрос, чтобы узнать chat_id бота:

curl "https://api.telegram.org/bot${BOT_TOKEN}/getUpdates?limit=1"

Отправляем сообщение в бот-чат:

curl "https://api.telegram.org/bot${BOT_TOKEN}/sendMessage?chat_id=1007XXXYYY&text=Ваше сообщение"

Используйте urlencode($massage) для передачи сообщения в GET параметре.

2. Создаем канал. Делаем изначально публичным, чтобы получить chat_id канала.

3. Назначаем бота администратором.

4.Отправляем запрос ссылаясь на канал по публичному @имени_канала:

curl "https://api.telegram.org/bot${BOT_TOKEN}/getChat?chat_id=@ИМЯ_КАНАЛА"
#:> {"ok":true,"result":{"id":-1001XXXYYYZZZ, ...}}

5. Указываем "?chat_id=-1001XXXYYYZZZ" и делаем канал приватным, если нужно.

Отправка уведомления в канал:

curl "https://api.telegram.org/bot${BOT_TOKEN}/sendMessage?chat_id=-1001XXXYYYZZZ&text=Ваше сообщение"

#notice, #notification, #telegram, #telegram bot, #telegram channel