我已经开始使用webhooks创建一个机器人电报了。 我的第一个问题:我必须用HTTPS添加网站的网址?我的网站不是HTTPS,只是HTTP。电报只需要HTTPS吗?
第二个问题:当我启用webhook时,我把它放在:“php:// input”。
php ini_set('error_reporting', E_ALL);
$botToken ="*********************";
$website="https://api.telegram.org/bot".$botToken;
$update=file_get_contents("php://input");//before: $website."/getupdates"
$updateArray=json_decode($update, TRUE);
$chatID=$updateArray["message"]["chat"]["id"]; $message=$updateArray["message"]["text"];
switch($message) { case "/saluto": sendMessage($chatID, "Ciao, sono il bot di Vincenzo e Francesco"); >break; case "/comiato": sendMessage($chatID, "Ciao è stato bello parlare con te"); break; case default: sendMessage($chatID, "Non ho capito!"); break; }
function sendMessage($chatID, $message) { $url=GLOBALS[$website]./"sendMessagechat_id=".$chatID."&text=".urlencode($messag>e); file_get_contents($url); }
?>
答案 0 :(得分:1)
是的,Telegram目前只支持HTTPS。
您需要有效的SSL证书才能使用webhooks https://core.telegram.org/bots/faq#i-39m-having-problems-with-webhooks
您可以使用$HTTP_RAW_POST_DATA
$data = json_decode($HTTP_RAW_POST_DATA, true);
$message = $data["message"]; // Message-Array
$chatID = $message["chat"]["id"]; // Chat ID
$message_text = $message["text"]; // Message Text