如何在 Telegram Bot API 中使用 TYPE?

How to use TYPEs in Telegram Bot API?

我是 Telegram 机器人的新手。我知道如何使用 METHODs 通过 PHP 或 cURL 中的 file_get_contents 方法发送消息或其他消息,但我对 TYPEs 了解不够。虽然我在 Telegram Page 上看到了,但它被误解了。所以我不知道如何在我的机器人中使用类型。我想为我的机器人创建一个键盘,所以我认为当我使用 cURL 时,我应该发送带有参数的类型。所以我写了下面的代码:

$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);

但是它没有显示键盘...,我的错误是什么?

您需要添加格式为 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)
);