代码不断接收相同的消息。 我的代码是:
var telegram = require('telegram-bot-api');
var api = new telegram({
token: token,
updates: {
enabled: true
}
});
api.on('message', function(message)
{
// Received text message
var from=(message.from.id);
console.log(from);
var first_name=(message.from.first_name);
var last_name=(message.from.last_name);
var msg=message.text;
});
即使我只发送一条消息...... console.log(from)连续输出
答案 0 :(得分:0)
当您使用getUpdates方法获取更新时,您应该设置偏移量。要返回的第一个更新的标识符。必须比先前收到的更新的标识符中的最大值大1。默认情况下,返回从最早的未确认更新开始的更新。一旦调用getUpdates并且偏移量高于其update_id,就会认为更新已得到确认。可以指定负偏移量以从更新队列末尾的-offset更新开始检索更新。以前的所有更新都会被遗忘。 在这里你可以阅读更多:https://core.telegram.org/bots/api#getupdates
只需更改您的代码:
// Create a bot that uses 'polling' to fetch new updates
var api = new TelegramBot(token, {polling: true});
答案 1 :(得分:0)
确保您发回了回复。我当时使用的是expressjs
,却忘记做res.json
(或res.send
),因此Telegram不断尝试更新webhook的状态。