lswq 发表于 2023-8-15 17:07:29


这样也可以呀

lswq 发表于 2023-8-17 14:28:26

本帖最后由 lswq 于 2023-8-24 17:29 编辑

lswq 发表于 2023-8-15 17:07
这样也可以呀
这个有个问题,这个delay节点是24h一次,并不是一天一次,请gpt帮忙写了个function节点,亲测可用,如下:
var lastDate = context.get('lastDate') || ''; // 获取上一次通过消息的日期

// 获取当前日期
var currentDate = new Date().toISOString().slice(0, 10);

if (lastDate === currentDate) {
    // 如果日期相同,则不允许通过消息
    return null;
} else {
    // 更新日期并允许通过消息
    context.set('lastDate', currentDate);
    return msg;
}


请将此代码粘贴到 Function 节点中,然后将 Function 节点插入到您的 Node-RED 流程中。
确保在 Function 节点的配置中启用上下文存储,并适当地进行调整以适应您的流程和需求。

hugh_jie 发表于 2023-9-15 11:07:34

我是这样搞的,只要等待时间大于前面的时间段,就可以每天只执行一次

louwu 发表于 2023-9-18 09:31:18

感谢分享

25989406 发表于 2023-9-18 09:59:02

直接用计数器,有人出现count+1,count=1 时执行播报,然后凌晨清零
比你现在少一个全局变量

明明洋洋 发表于 2024-2-1 15:02:04

请问流可以发出来学习一下吗

bestsort 发表于 2024-2-18 16:35:25

定时调度就行了吧, 我是每天工作日定时执行




KevinYAN 发表于 2024-4-2 21:36:37

直接在流程中串加一个counter节点,然后在counter之前再加一个时间触发进行reset就可以。类似我图中这种,充电检测。 满足100%后,只触发一次。

leizeyuan 发表于 2024-4-8 15:58:02

he674963336 发表于 2023-6-16 14:08
node-red-contrib-counter
node-red-contrib-time-range-switch
添加上面节点


感谢指导,同时搞定了几个问题!
页: 1 [2]
查看完整版本: 【求助】怎么让流程在每天固定时间段只触发一次