繁体   English   中英

Nodejs MQTT:接收消息后设置超时

[英]Nodejs MQTT: set timeout after receiving message

MQTT第一次接收消息后,我想将超时设置为大约1分钟。 如果1分钟内没有其他消息,我想通知一些事情。 有什么办法可以做到吗?

client.on('message', function (topic, message) {  
    // if in one minute timeout, there is no more message 
    // console.log("warning")
}

Client.on()函数仅在收到消息时触发。 setInterval()函数可以在外部使用,它将在一秒钟后连续运行。 现在数秒,一分钟后,您便可以进行通知。 当收到一条消息或一分钟后,不要忘记初始化计数器。

以下代码将检测一分钟内是否没有收到消息。

var i = 1
client.on('message', function (topic, message) {
console.log(message.toString())
i=1
})

setInterval(function(){
i++
if(i==60)
{
console.log("No Msg");
i=1;
}
},1000)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM