通过 Node.JS 的 Telegram 机器人内联键盘

问题描述 投票:0回答:5

我正在使用 node-telegram-bot-api 模块, 如何使我的键盘成为内联键盘? 这是我的代码:

bot.onText(/^\/start$/, function (msg) {
    const opts = {
        reply_to_message_id: msg.message_id,
        reply_markup: {
            resize_keyboard: true,
            one_time_keyboard: true,
            keyboard: [ ['Level 1'] ]
        }
    };

    bot.sendMessage(msg.chat.id, "I'm a test robot", opts);
});
javascript node.js telegram telegram-bot node-telegram-bot-api
5个回答
3
投票

我回答了类似于此链接的问题:如何在机器人父亲中为电报机器人创建菜单?

根据您的情况,您可以使用:

keyboard: [["uno :+1:"],["uno \ud83d\udc4d", "due"],["uno", "due","tre"],["uno", "due","tre","quattro"]]

0
投票

在您的情况下,解决方案是:

const opts = {
        reply_to_message_id: msg.message_id,
        reply_markup: JSON.stringify({
        inline_keyboard: 
        [
            [{text: 'Level 1'}],
        ]
    })
  };

0
投票

您可以使用: https://github.com/RealPeha/telegram-keyboard

该库如果专注于 Telegraf,但您可以在没有它的情况下使用。


0
投票

您只需要在

InlineKeyboardButton
数组中提供一个
keyboard
对象而不是纯文本。

bot.onText(/^\/start$/, function (msg) {
    const opts = {
        reply_to_message_id: msg.message_id,
        reply_markup: {
            resize_keyboard: true,
            one_time_keyboard: true,
            keyboard: [
              [{text: 'Level 1'}],
            ],
        }
    };

    bot.sendMessage(msg.chat.id, "I'm a test robot", opts);
});

0
投票

使用它并创建您的内联按钮

$ npm install --save node-telegram-keyboard-wrapper
© www.soinside.com 2019 - 2024. All rights reserved.