Создаем телеграм-бота и отправляем первое сообщение через PHP

    Комментариев нет 56

Телеграм бот

В этой статье вы узнаете как создать бота в телеграме самостоятельно и отправить в него первое сообщение средствами языка PHP. Эту возможность нам предоставляет телеграм совершенно бесплатно. И первое, что нам для этого понадобится это официальный бот — отец всех ботов https://t.me/BotFather, через который и будем делать своего.

Телеграм-канал serblog.ru

botfather

Переходим в BotFather и в меню выбираем /newbot или пишем в поле сообщений самостоятельно.

newbot
Получаем такое сообщение: Alright, a new bot. How are we going to call it? Please choose a name for your bot. Нам предлагают написать название нашего нового бота, что мы и делаем. Можно писать название на русском языке. Это название будет отображаться в заголовке бота.
Получаем сообщение: Good. Now let’s choose a username for your bot. It must end in `bot`. Like this, for example: TetrisBot or tetris_bot. Тепеhь выбираем username для бота. Он должен оканчиваться на bot. И тут нужно хорошо подумать, ведь большинство звучных и коротких названий уже заняты.
mavrinbot
В следующем сообщении нас поздравляют об успешном создании бота, дают на него ссылку и самое главное — токен, с которым мы дальше будем работать, поэтому его нужно скопировать, он нам пригодится. Но для начала переходим в только что созданный бот и жмем старт.

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

Понятное дело, что для отправки сообщений через PHP потребуется веб-сервер. В нашем случае он может быть даже локальным, то есть на вашем компьютере. Размещаем в PHP файле этот код:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
$token = 'YOUR_BOT_TOKEN';
$chatId = 'USER_ID';
$text = 'Ваше отложенное сообщение';
$parse_mode = 'HTML'; // или 'Markdown', если используете разметку Markdown
 
$url = "https://api.telegram.org/bot$token/sendMessage";
$data = [
    'chat_id' => $chatId,
    'text' => $text,
    'disable_notification' => true,
    'parse_mode' => $parse_mode,
];
 
$options = [
    'http' => [
        'method'  => 'POST',
        'header'  => 'Content-Type: application/x-www-form-urlencoded',
        'content' => http_build_query($data)
    ]
];
 
$context  = stream_context_create($options);
$result = file_get_contents($url, false, $context);

Для того, чтобы узнать свой USER_ID можно воспользоваться одним из специальных ботов, например @getmyid_bot.

Запускаем этот файл любым доступным способом и смотрим, что не только легко создать телеграм-бота самому, но и отправлять в него сообщения так же просто и не занимает много времени.

Сообщение в бот

Если добавить этого бота в телеграм-канал в качестве администратора и разрешить ему писать сообщения, то вместо USER_ID можно указать ID канала и бот будет публиковать сообщение там. В следующих статьях

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

Все, что нужно, это заменить участок кода:

1
2
3
4
5
6
7
8
9
10
$text = 'Описание изображения';
$parse_mode = 'HTML'; // или 'Markdown', если используете разметку Markdown
$photo = 'URL_PHOTO';
 
$url = "https://api.telegram.org/bot$token/sendPhoto";
$data = [
    'chat_id' => $chatId,
    'photo' => $photo,
    'caption' => $text,
];

phototelegram

Таким образом можно создать чат-бот для различных нужд. Они могут быть довольно функциональными, вплоть до игр и интернет-магазинов. В дальнейшем будем развивать функционал бота и делать что-то полезное. Надеюсь теперь у вас отпал вопрос: как создать бота в телеграме.

Любая сумма на развитие сайта

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *