Различия
Показаны различия между двумя версиями страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
php:telegram [2015/11/09 23:59] – [Telegram BOT API (Yii2)] mirocow | php:telegram [2015/11/14 15:22] (текущий) – [Запуск бота] mirocow | ||
---|---|---|---|
Строка 1: | Строка 1: | ||
- | {{tag> | + | {{tag> |
====== Telegram BOT API (Yii2) ====== | ====== Telegram BOT API (Yii2) ====== | ||
===== Создание / Регистрация бота ===== | ===== Создание / Регистрация бота ===== | ||
+ | |||
+ | {{: | ||
< | < | ||
@BotFather | @BotFather | ||
</ | </ | ||
+ | ===== Описание реализации на mirocow/ | ||
+ | |||
+ | Пример реализации на **[[https:// | ||
+ | |||
+ | ==== Настройка ==== | ||
+ | |||
+ | <code php> | ||
+ | ' | ||
+ | ' | ||
+ | ' | ||
+ | ' | ||
+ | ' | ||
+ | ' | ||
+ | ' | ||
+ | ' | ||
+ | ' | ||
+ | ], | ||
+ | ], | ||
+ | ], | ||
+ | </ | ||
+ | |||
+ | ==== Запуск бота ==== | ||
+ | |||
+ | <code sh> | ||
+ | $ php ./yii mirocow\telegram\bot | ||
+ | </ | ||
+ | |||
+ | Бот имеет возможность поддержки опций запуска **options** | ||
+ | |||
+ | === Создание команд бота === | ||
+ | |||
+ | nano app\commands\HelpCommand | ||
+ | |||
+ | <code php> | ||
+ | namespace mirocow\telegram\commands; | ||
+ | |||
+ | use mirocow\telegram\interfaces\CommandInterface; | ||
+ | |||
+ | class HelpCommand implements CommandInterface { | ||
+ | |||
+ | public function run(\Zelenin\Telegram\Bot\Type\Update $update){ | ||
+ | |||
+ | return <<< | ||
+ | |||
+ | Help coomand | ||
+ | |||
+ | HELP; | ||
+ | |||
+ | } | ||
+ | |||
+ | } | ||
+ | </ | ||
+ | ==== Отправка сообщений ==== | ||
+ | |||
+ | <code php> | ||
+ | </ | ||
+ | ===== Описание реализации на akalongman/ | ||
+ | |||
+ | Пример реализации на **[[https:// | ||
+ | |||
+ | ==== Webhook ==== | ||
+ | |||
+ | Простой пример приветствия завязанного на [[https:// | ||
+ | |||
+ | <code php> | ||
+ | class APIController { | ||
+ | | ||
+ | public $API_KEY = ' | ||
+ | public $BOT_NAME = ' | ||
+ | public $API_CERTIFICATE = ''; | ||
+ | | ||
+ | public function init(){ | ||
+ | |||
+ | try { | ||
+ | $telegram = new Longman\TelegramBot\Telegram($this-> | ||
+ | |||
+ | echo $telegram-> | ||
+ | } catch (Longman\TelegramBot\Exception\TelegramException $e) { | ||
+ | echo $e-> | ||
+ | } | ||
+ | | ||
+ | } | ||
+ | | ||
+ | public function actionInit(){ | ||
+ | |||
+ | try { | ||
+ | $telegram = new Longman\TelegramBot\Telegram($this-> | ||
+ | $telegram-> | ||
+ | $telegram-> | ||
+ | } catch (Longman\TelegramBot\Exception\TelegramException $e) { | ||
+ | // echo $e-> | ||
+ | } | ||
+ | | ||
+ | } | ||
+ | | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | === SSL for WebHook === | ||
+ | |||
+ | * http:// | ||
+ | * https:// | ||
+ | |||
+ | ==== getUpdates ==== | ||
+ | |||
+ | Другой метод не требует наличия SSL - это [[https:// | ||
+ | |||
+ | <code php> | ||
+ | class APIController { | ||
+ | | ||
+ | public $API_KEY = ' | ||
+ | public $BOT_NAME = ' | ||
+ | public $COMMANDS_FOLDER = ' | ||
+ | | ||
+ | public function init(){ | ||
+ | |||
+ | try { | ||
+ | $telegram = new Longman\TelegramBot\Telegram($this-> | ||
+ | $telegram-> | ||
+ | $telegram-> | ||
+ | $telegram-> | ||
+ | } catch (Longman\TelegramBot\Exception\TelegramException $e) { | ||
+ | echo $e-> | ||
+ | } | ||
+ | | ||
+ | } | ||
+ | | ||
+ | } | ||
+ | </ | ||
+ | |||
===== Исходники ===== | ===== Исходники ===== | ||
===== Yii2 ===== | ===== Yii2 ===== | ||
+ | * https:// | ||
* https:// | * https:// | ||
Строка 28: | Строка 161: | ||
* https:// | * https:// | ||
* https:// | * https:// | ||
+ | * https:// | ||
+ | |||
+ | ==== Examples / Примеры ==== | ||
+ | |||
+ | * https:// | ||
+ | * https:// | ||
+ | |||
+ | ==== API ==== | ||
+ | |||
+ | * https:// | ||
===== Статьи ===== | ===== Статьи ===== | ||
* http:// | * http:// | ||
+ | * http:// | ||
* https:// | * https:// |