Это старая версия документа!


Telegram BOT API (Yii2)

@BotFather

Пример реализации на php-telegram-bot

Простой пример приветствия завязанного на Webhook, реализованного на Yii2 с помощью. Обязательное наличиче SSL. И хук должен отправляться на https:

class APIController {
 
  public $API_KEY = 'your_bot_api_key';
  public $BOT_NAME = 'namebot';
  public $API_CERTIFICATE = '';
 
  public function init(){
 
    try {
        $telegram = new Longman\TelegramBot\Telegram($this->API_KEY, $this->BOT_NAME);
 
        echo $telegram->setWebHook('https://yourdomain/api/init', $this->API_CERTIFICATE);
    } catch (Longman\TelegramBot\Exception\TelegramException $e) {
        echo $e->getMessage();
    }    
 
  }
 
  public function actionInit(){
 
    try {
        $telegram = new Longman\TelegramBot\Telegram($this->API_KEY, $this->BOT_NAME);
	$telegram->addCommandsPath(Yii::getAlias('@app\commands'));
        $telegram->handle();
    } catch (Longman\TelegramBot\Exception\TelegramException $e) {
        // echo $e->getMessage();
    }    
 
  }  
 
}  

SSL for WebHook

Другой метод не требует наличия SSL - это getUpdates

class APIController {
 
  public $API_KEY = 'your_bot_api_key';
  public $BOT_NAME = 'namebot';
 
  public function init(){
 
    try {
        $telegram = new Longman\TelegramBot\Telegram($this->API_KEY, $this->BOT_NAME);
	$telegram->enableMySQL($credentials);
      	$telegram->addCommandsPath($COMMANDS_FOLDER);
        $telegram->handleGetUpdates();
    } catch (Longman\TelegramBot\Exception\TelegramException $e) {
        echo $e->getMessage();
    }    
 
  }  
 
}