Простой (пока что) и легкий (пока что) бот для Telegram на PHP
Требования: PHP5 (с включенным "стандартным" модулем MySQL), MySQL, библиотеки для работы с cURL, XML.
Основные функции (синтаксис можно посмотреть в api.php, примеры - в scripts): sendMessage(); editMessage(); sendImage(); sendFile(); forwardMessage(); leaveChat(); recognizeVoice(); // опционально, работает на Yandex.SpeechKit
В скриптах можно использовать переменные: $_MESS (array), $_CHAT (array), $_USER (array), $_TEXT. Их описание есть в process.php
В папке scripts есть несколько скриптов, показывающих как все работает
В силу ряда изменений (например, отказ от устаревшей библиотеки MySQL) часть функций не работает на PHP7. Если есть желание переписать на MySQLi или PDO - буду рад
Процесс установки:
- Создайте бота через @botfather, получите API-токен
- Создайте базу данных, импортируйте туда предложенный SQL-дамп
- В файле api.php укажите следующие настройки: API-токен, данные для подключения к БД, полный адрес вебхука (включая протокол), логин админа
- Запустите файл process.php из консоли (php process.php) ИЛИ откройте в браузере по адресу: http://bot.ru/address/process.php?webhook=1 Таким образом вы сообщите серверам Telegram, куда будут приходить все сообщения
- Выставьте в боте приватность на видимость всех сообщений, а не только начинающихся с / через @botfather (если требуется)
Напишите боту /start и попробуйте выполнить команду /testbot
Рабочий пример "чистого" бота (на основе исключительно этих исходников) - @phpapitelegram_bot
При возникновении вопросов пишите в телеграмм - @D13410N3