Telegram Inline Bot显示没有与inlinekeyboard php内联

时间:2016-06-25 16:11:27

标签: php telegram-bot

我对内联机器人有疑问 我的机器人工作没有' reply_markup'当我使用' reply_markup'什么都没有显示

function buildInlineKeyboard(array $options) {
   $replyMarkup = array(
            'inline_keyboard' => $options,
        );
        $encodedMarkup = json_encode($replyMarkup, true);
        return $encodedMarkup;
}

$keyboard = $tel->buildInlineKeyboard(array(
                    array(
                        $tel->buildInlineKeyboardButton('View Message', '', 'viewNews_')
                    )
                ));
                $item[] = array(
                    "type" => "article",
                    "id" => (string)++$i,
                    "title" => $plays['team1'] . " - " . $plays['team2'],
                    'description' => $title . ' - ' . $news['title'],
                    'input_message_content' => array(
                      'message_text' => $news['title'],
                      'parse_mode' => 'HTML'
                    ),
                    'reply_markup' => $keyboard
                );

当我评论' reply_markup'机器人工作一个节目文章,当我使用' reply_markup'无需在内联模式下显示 我设置webhook没有错误显示 $ keyboard使用sendMessage

2 个答案:

答案 0 :(得分:2)

确保reply_markup的格式如下所示。 arrays可能搞砸了。您还需要json_encode reply_markup

array(1) {
  ["inline_keyboard"]=>
  array(1) {
    [0]=>
    array(1) {
      [0]=>
      array(2) {
        ["text"]=>
        string(12) "View Message"
        ["callback_data"]=>
        string(9) "viewNews_"
      }
    }
  }
}

答案 1 :(得分:0)

没有数组是正确的我更新帖子并添加buildInlineKeyboard函数