最新消息: 电脑我帮您提供丰富的电脑知识,编程学习,软件下载,win7系统下载。

电报机器人中的reply

IT培训 admin 5浏览 0评论

电报机器人中的reply

我正在尝试使用节点js编写电报机器人,我正在向用户发送键盘:

var keyboards = {  
    main_menu: {
        reply_markup: {
            keyboard: [
                [{text: "Cards"}, {text: "Progress"}],
                [{text: "Warning"}, {text: "Help"}]
            ]
        }
    }
};
bot.onText(/\/keyboard/, (msg) => {
    console.log(keyboards.main_menu);
    bot.sendMessage(msg.from.id, "Main menu", keyboards.main_menu);
    console.log(keyboards.main_menu);
});

这就是我在控制台上所拥有的:

{ reply_markup: { keyboard: [ [Array], [Array] ] } }
{ reply_markup:
   '{"keyboard":[[{"text":"Cards"},{"text":"Progress"}],[{"text":"Warning"}, {"text":"Help"}]]}',
  chat_id: 276984822,
  text: 'Main menu' }

所以我不知道为什么,但在发送键盘之后,Telegram将chat_idtext添加到我的键盘上。我该怎么办?

回答如下:

我发现了如何解决它 - 你应该发送这样的键盘:

bot.sendMessage(msg.from.id, "Main menu", {reply_markup: keyboards.main_menu});

实际上下一个变体也会起作用:

bot.sendMessage(msg.from.id, "Main menu", {reply_markup: keyboards.main_menu.reply_keyboard});

电报机器人中的reply

我正在尝试使用节点js编写电报机器人,我正在向用户发送键盘:

var keyboards = {  
    main_menu: {
        reply_markup: {
            keyboard: [
                [{text: "Cards"}, {text: "Progress"}],
                [{text: "Warning"}, {text: "Help"}]
            ]
        }
    }
};
bot.onText(/\/keyboard/, (msg) => {
    console.log(keyboards.main_menu);
    bot.sendMessage(msg.from.id, "Main menu", keyboards.main_menu);
    console.log(keyboards.main_menu);
});

这就是我在控制台上所拥有的:

{ reply_markup: { keyboard: [ [Array], [Array] ] } }
{ reply_markup:
   '{"keyboard":[[{"text":"Cards"},{"text":"Progress"}],[{"text":"Warning"}, {"text":"Help"}]]}',
  chat_id: 276984822,
  text: 'Main menu' }

所以我不知道为什么,但在发送键盘之后,Telegram将chat_idtext添加到我的键盘上。我该怎么办?

回答如下:

我发现了如何解决它 - 你应该发送这样的键盘:

bot.sendMessage(msg.from.id, "Main menu", {reply_markup: keyboards.main_menu});

实际上下一个变体也会起作用:

bot.sendMessage(msg.from.id, "Main menu", {reply_markup: keyboards.main_menu.reply_keyboard});

与本文相关的文章

发布评论

评论列表 (0)

  1. 暂无评论