我是Telegram Bot的新手。我知道如何使用METHODs通过PHP或cURL中的file_get_contents方法发送消息或其他人,但我对TYPEs知之甚少。虽然我在Telegram Page中读到,但却被误解了。所以我不知道如何在我的机器人中使用TYPE。我想为我的机器人创建一个键盘,所以我想当我使用cURL时,我应该发送带有参数的TYPE。所以我写了下面的代码:
$Params = array (
'chat_id' => $ChatID,
'text' => 'Hello !',
'ReplyKeyboardMarkup' => array (
'keyboard' => array(array('Hello', 'Hi'))
)
);
当我使用cURL时,它会向我发送消息:
$Curl = curl_init("https://api.telegram.org/bot".$APIToken."/sendMessage");
curl_setopt($Curl, CURLOPT_HEADER, true);
curl_setopt($Curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($Curl, CURLOPT_POST, 1);
curl_setopt($Curl, CURLOPT_POSTFIELDS, ($Params));
curl_setopt($Curl, CURLOPT_SSL_VERIFYPEER, false);
curl_exec($Curl);
curl_close($Curl);
但它没有告诉我键盘......,我的错误是什么?
答案 0 :(得分:1)
您需要添加格式为ReplyKeyboardMarkup
的密钥reply_markup
$ReplyKeyboardMarkup = array(
"keyboard" => array(
array("1st row left", "1st row right"),
array("2nd row left", "2nd row right")
)
);
$Params = array (
'chat_id' => $ChatID,
'text' => 'Hello !',
'reply_markup' => json_encode($ReplyKeyboardMarkup)
);