Два с воловиной года назад на сайте была статья о том, как сделать телеграм-бота. Сегодня я решил немного обновить используемую библиотеку и рассмотреть уже в новой части возможность добавления в бота клавиатуры с кнопками.
И сейчас я сразу начну с написания кода, ведь по сути эта статья является продолжением предыдущей (а в ней как раз-таки можно найти подробную инструкцию по подготовке и регистрации нового бота).
Архив с обновлённой библиотекой (работает на версии php >= 8.0):
Первым делом добавляем библиотеку в свой проект и создаём php-файл, в котором, собственно, и будем писать бота. После этого необходимо подключить библиотеку:
Теперь создаём экземпляр класса Bot и инициализируем переменные $data, $chat_id и $message:
$tg = telekotBot::create( ‘токен’ ) ->initData( $data ) ->initChatId( $chat_id ) ->initMessage( $message );
Создаём массив с нужными нам кнопками:
$kbd = [ ‘inline_keyboard’ => [ [ [ ‘text’ => ‘Кнопка #1’, ‘callback_data’ => ‘one’ ], [ ‘text’ => ‘Кнопка #2’, ‘callback_data’ => ‘two’ ] ], [ [ ‘text’ => ‘ Картинка’, ‘callback_data’ => ‘img’ ] ] ] ];
Далее напишем проверку на клик по inline-кнопке. Также я добавлю блок else, в него добавим пару команд для демонстрации обновлений библиотеки:
Telegram бот на python aiogram #5 Клавиатуры и кнопки
if ( isset( $data[‘callback_query’] ) ) < // Тут будем обрабатывать нажатие на кнопки >else < // Тут будем обрабатывать обычные команды >
Стоит заметить, что всё содержимое массива $data при наличии callback_query нужно искать уже внутри callback_query ( $data[‘callback_query’][‘*а дальше уже как обычно..*’] ).
Ну, а теперь с помощью конструкции switch-case проверим, на какую из кнопок нажал юзер:
switch ( $data[‘callback_query’][‘data’] ) < case ‘one’: < $tg->sendMessage( $chat_id, ‘Вы нажали на первую кнопку’ ); break; > case ‘two’: < $tg->sendMessage( $chat_id, ‘Вы нажали на вторую кнопку’ ); break; > case ‘img’: < $tg->sendImage( ‘Держи картинку’, ‘https://proprikol.ru/wp-content/uploads/2020/10/kartinki-ozero-45.jpeg’ ); break; > >
При нажатии любую из первых двух кнопок бот просто уведомит пользователя об этом, при нажатии на третью — отправит картинку с помощью метода sendImage().
Да, как и обещал — в блок else добавляем ещё две команды:
if ( $message == ‘/привет’ ) < $tg->reply( ‘Здарова’ ); > else if ( $message == ‘/кнопки’ ) < $tg->sendMessage( $chat_id, ‘Вот твои кнопки:’, $kbd ); >
При вводе команды /кнопки — бот будет отправлять клавиатуру пользователю. При вводе команды /привет — здороваться с ним. Однако для первой команды я использовал метод reply(), а для второй — метод sendMessage(). Почему? Разница, на самом-то деле, небольшая: в метод sendMessage() необходимо передавать ID чата, а в метод reply() айди передавать не нужно (ответ придёт тому, кто написал боту). Поэтому в нашем случае, конечно же, удобнее и проще юзать reply().
initData( $data ) ->initChatId( $chat_id ) ->initMessage( $message ); $kbd = [ ‘inline_keyboard’ => [ [ [ ‘text’ => ‘Кнопка #1’, ‘callback_data’ => ‘one’ ], [ ‘text’ => ‘Кнопка #2’, ‘callback_data’ => ‘two’ ] ], [ [ ‘text’ => ‘ Картинка’, ‘callback_data’ => ‘img’ ] ] ] ]; if ( isset( $data[‘callback_query’] ) ) < switch ( $data[‘callback_query’][‘data’] ) < case ‘one’: < $tg->sendMessage( $chat_id, ‘Вы нажали на первую кнопку’ ); break; > case ‘two’: < $tg->sendMessage( $chat_id, ‘Вы нажали на вторую кнопку’ ); break; > case ‘img’: < $tg->sendImage( ‘Держи картинку’, ‘https://proprikol.ru/wp-content/uploads/2020/10/kartinki-ozero-45.jpeg’ ); break; > > > else < if ( $message == ‘/привет’ ) < $tg->reply( ‘Здарова’ ); > else if ( $message == ‘/кнопки’ ) < $tg->sendMessage( $chat_id, ‘Вот твои кнопки:’, $kbd ); > >
А вот, собственно, как работает бот:
- 5id15
- 10.08.2022
- 7 584
- 14
- 9
Источник: kotoff.net
Боты для игр для Телеграмм
Упорядочено по скорости ответа, с учетом языка сообщений и еще 20+ параметров.
Telegram 15.7k
UNO Bot
Play the UNO card game via inline commands
Онлайн
Ingress portals
Inline search of ingress portals
Онлайн
Филлер
Онлайн
Quizarium
Quizarium is a fast paced addictive trivia-like game to play with your friends!
Онлайн
Пекарня | Игра
Испеки хлеб продавай за алмазы и меняй их на монеты для строительства коммерческих зданий.
Онлайн
Throw-in Durak game
Play cards for fun and test your luck against other players or even computer
Онлайн
Rulek Bot
Money games with honesty control
Игры на деньги с контролем честности
Онлайн
Leprechauns3307Bot
Leprechauns 3307 — игра в виде бота с квестами в атмосфере старой скандинавии. Жанр приключения, темное фентези.
Онлайн
Arena Game RPG ⚔️
⚔️ Arena – уникальная RPG с пошаговыми боями между пользователями Telegram.
Онлайн
Cuefa Game
Бот для игры в ЦУ-Е-ФА.
Наш чат: https://t.me/joinchat/MOlaWhWfBm7Hmk5Og2RyhA
Онлайн
Fruit game bot — Фруктовый бот
Фруктовая игра присоединяйся и приглашай друзей
Fruit game join and invite friends
〰
Help: /help
Language: /lang
Онлайн
WayGame
Онлайн
Камень-Ножницы-Бумага
Играй в игру Камень-Ножницы-Бумага на реальные деньги с друзьями!
Онлайн
Arena Game RPG ⚔️
⚔️ Arena – уникальная RPG с пошаговыми боями между пользователями Telegram.
Онлайн
Rock Paper Scissors game
Онлайн
MINING TON GAME
Добро пожаловать!
Онлайн
BlackJack robot
Play with bot or your friends!
Онлайн
Toloka Game
Зарабатывать просто!
Toloka платит♻️
Экономическая игра
❇️ Без баллов
Онлайн
My village — Игра
My Village — это экономическая развивающая стратегия в Телеграм.
Онлайн
Gamee
The best games on Telegram! ❤️
Pick a game and challenge your friends
Онлайн
Камень, ножницы и бумага
Бот ведущий в игры камень ножницы бумага подсказка как играть на фото профиле бота!
Онлайн
Ферма: Mining
Это игровой бот для создания собственной фермы!
Играй и зарабатывай Реальные деньги.
Онлайн
The game Covid-19
Онлайн
PureTruth
Игра правда или действие.
Узнайте больше друг о друге
Онлайн
BotoStore — каталог голосовых и чатботов, AI- и ML-сервисов, платформ для создания, инструментов и разработчиков голосовых и чат-приложений.
Источник: ru.botostore.com
Как удалить бота в Телеграмме
Пользователи уже привыкли к выражению «бот в Телеграмм», а некоторые научились ими пользоваться. После подключения бота или начала беседы с ним, он остаётся в контактах и может регулярно снабжать ненужной информацией. Из этой статьи вы сможете прочитать, каким образом удалить от бота в своём аккаунте Телеграмм.
Что такое бот в Телеграмм?
Боты – это компьютерные программы, которыми не управляет человек. Они настраиваются таким же образом, как и другое ПО. Но в момент работы генерируют текст и выполняют другие действия, для которых предназначаются. В Телеграмме боты умеют выполнять большой спектр задач: разговаривать при помощи чата, искать информацию, генерировать файлы, предлагать услуги, обмениваться данными и прочее. В то же время они не умеют всего, а выполняют только те действия, которые прописаны разработчиком.
В Телеграмме эти программы облегчают работу создателям групп. Они могут встречать посетителей, предлагать им статьи и давать советы. По этой причине появились они в других социальных сетях – Вконтакте. Есть распространённое мнение, что бот может взломать аккаунт пользователя и похитить важные данные. В Telegram это исключено, если пользователь сам не предоставит каким-либо образом свои данные в переписке с ботом. Поэтому при общении с ними необходимо быть предельно осторожным.
Распознать бота не составит труда – часто они говорят избитыми фразами, отвечают только на те вопросы, которые умеют распознавать. Могут ссылаться на администратора или же сами называют себя ботом. Для начала беседы с ними пользователю нужно нажать на кнопку «Старт».
Как удалить бота в Telegram
В Телеграмм немало скрытых от обычных пользователей функций, которые могут быть полезны. За подключенных к аккаунту ботов отвечает основная программа botfather.
Это «отец» всех ботов Телеграмм для управления контроля за ними. Главный бот доступен обычным пользователям и найти его можно через поиск. Для активации его работы необходимо нажать на кнопку «Старт», после чего появится список команд для управления ботами.
- В строке для ввода текст напишите /mybots;
- Под командой появится список ботов, подключенных к аккаунту;
Выберите название бота, от которого нужно избавиться;
На панели управления появится кнопка «Delete bot»;
Если в списке есть другие названия ботов, вы их сможете удалить через botfather. Для возврата к предыдущему меню выберите кнопку «Back to menu». При отключении бота его функции больше не распространяются на аккаунт пользователя. Названия в списке контактов также исчезнет.
Как отключить уведомления от ботов в Телеграмм
Пользователь может оставить бота в Телеграмм в своём аккаунте и не удалять его. Но настроить его так, чтобы функции и возможности в приложении не мешали использовать программу. В версии для компьютера и телефона функции управления находятся в профиле бота. Доступно отключить уведомления или изменить другие параметры. Откройте чат с ботом, чтобы в интерфейсе появилась панель управления, после чего выберите кнопку меню возле его названия. В панели выберите «Уведомления», чтобы переключатель изменил положение.
Станут доступны функции для блокировки бота в аккаунте Telegram, а также удаления чата с ним. Кнопка для выбора сообщения позволяет выделить несколько блоково с текстом в переписке для удаления или копирования. Блок с управлением бота вызывается нажатием кнопки на верхнюю панель, где тоже есть кнопка отключения уведомлений и информация о нём.
Как сделать бота в Телеграмм
Средствами специального для этого приложения ПО пользователи могут создавать ботов в Телеграмм без знания программирования. Этой программой является botfather, о котором вы уже знаете. У него есть средства управления всеми зарегистрированными в этом сети ботами по той причине, что botfather раздаёт идентификаторы для их создания. Разработчики называют их токенами. Этот шифр не должен знать никто другой, кроме самого создателя. Если это произойдёт, у бота появится новый владелец или несколько.
Для запуска и настройки нового бота, вызовите в своём приложении botfather в поиске и в списке доступных команд выберите «Create a now bot». За этим следует настройка – название бота, описание его действий, ссылку на него в сети Телеграмм. Боту также понадобится аватарка. Общая настройка бота происходит при помощи команд: setuserpic, setdescription и других. Все они указаны в интерфейсе botfather, пользователь может выбирать, чтобы не прописывать вручную.
После основной настройки по созданной ссылке посетите страницу бота для обзора и дальнейшей настройки. При помощи Телеграмм можно настроить внешний вид бота. Для получения других уникальных функций для него понадобится воспользоваться сторонними сервисом. В Интернете их существует немало и большинство из них платные. Инструкцию о том, как настроить бота на других сайтах и придать ему полезные функции пользователь сможет прочитать на самих ресурсах. Необходимо быть осторожным, так как есть сайты, которые занимаются воровством ботов.
Как сделать текстового бота в Телеграмм
Если к боту не слишком много требований, он может быть сделан через предлагаемый редактор botfather. Пользователю понадобится вводить все заготовки текста вручную или копировать их из других источников. В меню редактора нажмите на кнопку «Edit commands» и добавьте текст, при помощи которого бот будет общаться с посетителями вашего канала. В дальнейшем команды можно будет добавлять через пользовательский интерфейс, перейдя по ссылке на бота.
Программа будет советовать, как создать ссылки на другие источники и социальные сети. Создатель бота всегда сможет вернуться в эту панель и исправить текст ответа или дополнить словарный запас программы. Входом в меню настроек будет служить ссылка и токен, который был выдан системой при регистрации.
Видеоинструкция
В видео демонстрируется, как пользователю удалить бота из списка контактов в Telegram.
Источник: it-doc.info