我正在尝试使用node 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' }所以我不知道为什么,在发送键盘电报之后,我在键盘上添加了chat_id和text。我该怎么办?
发布于 2019-02-16 05:24:55
我发现了如何解决这个问题-你应该像这样发送键盘:
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});
https://stackoverflow.com/questions/54698646
复制相似问题