Как сделать Телеграм бот на PHP отправляющий сообщения с сайта

Как сделать Телеграм бот на PHP отправляющий сообщения с сайта

Что если сообщения с сайта будут приходить не только на ваш e-mail, но и моментально в мессенджер телеграм. Удобно же! Нужно было реализовать такой функционал, ну как и всегда все оказалось довольно просто.
Шаг 1. Создание телеграм бота

Создать бота в Telegram можно с использованием другого бота @BotFather. Находим его в Telegram и отправляем ему  команду -  /start , после чего отправляем следующую команду - /newbot. BotFather запросит имя вашего нового бота, оно обязательно должно заканчиваться на Bot, например: (mainsite_bot). В случае успеха в ответ получаем уникальный токен бота, который понадобится для дальнейшей работы.

Создание бота в Telegram

И не забудьте добавить вновь созданного бота в ваши контакты отправив ему команду /start

Шаг 2. Получить токен и chat id бота

Чтобы отправить сообщение пользователю через бота достаточно вызвать определенный URL из PHP скрипта содержащий токен бота и внутренний ID чата chat id.

Токен бота у нас уже есть, а chat id можно получить через браузер. Отправляем боу сообщение из Telegram, затем в адресной строке браузера набираем следуюшее: https://api.telegram.org/botTokenBOT/getUpdates  где TokenBOT — это ранее полученный токен вашего бота.

ID чата в Telegram

Шаг 3. Создание PHP скрипта для отправки сообщений в Telegram

Чтобы бот отправил сообщение, нужно сделать запрос к определенному URL содержащему токен бота, ваш chat id и значение text — текст, который бот выведет пользователю.

Проверить работоспособность можно и напрямую через адресную строку браузера. Пример строки:

https://api.telegram.org/botYourBOTToken/sendMessage?chat_id=YourCHATID&text=YourMESSAGE
YourBOTToken — это токен вашего бота, YourCHATID — ваш chat id и YourMESSAGE — это текст сообщения.

Скачать исходники можно здесь.

Добавить бота в группу Telegram

Чтобы бот мог отправлять сообщения в группу, необходимо его туда добавить. Сделать это можно в настройках группы в разделе Добавить участника. В поиске необходимо ввести имя вашего бота и нажать OK.
Теперь в настройках скрипта нужно изменить chat id пользователя, на chat id нужной группы. Для этого предварительно нужно написать любое сообщение в чат, а затем в адресной строке ввести https://api.telegram.org/botYourBOTToken/getUpdates где YourBOTToken — это ранее полученный токен вашего бота. После находим объект chat и в нем id — это и будет chat id группы.

Как узнать chat id группы?

Это делается за пару нетрудных шагов:

  1. Открываем в Telegram официального бота LeadСonverter | Инструменты (https://t.me/LeadConverterToolkitBot) и нажимаем /start
  2. Находим свою группу (чат), открываем и жмем на её название
  3. Добавляем в участники группы (чата) бота LeadСonverter | Инструменты (вставьте в поиск @LeadConverterToolkitBot). Не пугаемся появившемуся сообщению "Неизвестное действие" - бот работает
  4. Отправляем в чат команду  /get_chat_id

В ответ бот присылает нам сообщение с ID группы (чата).

id группы

 

Важно!

ID группы (чата) обязательно копируйте со знаком тире, иначе запросы не будут работать!

Теперь легко вставляем chat id в наш РНР скрипт и наслаждаемся сообщениями с сайта в нашей группе Telegram, которые приходят непосредственно с сайта.

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

Редактирование ботов

/setname - изменить имя бота
/setdescription - изменить описание бота
/setabouttext - изменить информацию о боте
/setuserpic - изменить фото профиля бота
/setcommands - изменить список команд
/deletebot - удалить бота

Настройки бота

/token - сгенерировать токен авторизации
/revoke - отозвать токен доступа бота
/setinline - включить режим встроенного поиска (https://core.telegram.org/bots/inline#location-based-results)
/setinlinefeedback — изменить настройки встроенной обратной связи (https://core.telegram.org/bots/inline#collecting-feedback)
/setjoingroups — можно ли добавлять вашего бота в группы?
/setprivacy — включить режим конфиденциальности (https://core.telegram.org/bots/features#privacy-mode) в группах

Веб-приложения

/myapps — редактировать веб-приложения (https://core.telegram.org/bots/webapps)
/newapp — создать новое веб-приложение (https://core.telegram.org/bots/webapps)
/listapps — получить список веб-приложений
/editapp - редактирование веб-приложения
/deleteapp - удаление существующего веб-приложения

Игры

/mygames - редактирование игр (https://core.telegram.org/bots/games)
/newgame - создание новой игры (https://core.telegram.org/bots/games)
/listgames - получение списка игр
/editgame - редактирование игры
/deletegame - удаление существующей игры

Портфолио