Чтобы интегрировать Telegram Chatbot с использованием PHP, я уже выполнил следующие шаги.
После этого я сделал простой PHP-файл, используя следующую строку кода.
<?php
define('BOT_TOKEN', 'CHANGE-ME');
define('API_URL', 'https://api.telegram.org/bot'.BOT_TOKEN.'/');// This is to read incoming message and fetch chatid
$content = file_get_contents("php://input");
$update = json_decode($content, true);
$chatID = $update["message"]["chat"]["id"];
$message = $update["message"]["text"];
// compose reply
$reply ="";
switch ($message) {
case "/start":
$reply = "Welcome to chatbot world. Type /help to see commands";
break;
case "/test":
$reply = "test message";
break;
case "/hi":
$reply = "Hello from ChatBot";
break;
case "/help":
$reply = "commands: /start , /test , /hi , /help ";
break;
default:
$reply = "Something wrong";
}
// send reply
$sendto =API_URL."sendmessage?chat_id=".$chatID."&text=".$reply;
file_get_contents($sendto);
// Create a debug log.txt to check the response/reply from Telegram in JSON format.
// You can disable it by commenting checkJSON.
checkJSON($chatID,$update);
function checkJSON($chatID,$update){
$myFile = "log.txt";
$updateArray = print_r($update,TRUE);
$fh = fopen($myFile, 'a') or die("can't open file");
fwrite($fh, $chatID ."nn");
fwrite($fh, $updateArray."nn");
fclose($fh);
}
Хотя я не получаю сообщение должным образом.
Не уверен, но это может иметь место для вас.
Вам просто нужно убедиться, что вы успешно запустить URL-адрес webhook которые начинают слушать ваш запрос, прежде чем отправлять сообщения в Telegram ChatBot.
URL : https://api.telegram.org/bot/setWebhook?url=https://mywebsite.com/path/to/filename.php
На данный момент, наконец, я успешно создал демо Telegram Chatbot с использованием PHP.
Других решений пока нет …