梅林听风 发表于 2023-1-9 14:23:18

多设备TCP接入nodred问题

本帖最后由 梅林听风 于 2023-1-15 12:00 编辑

在局域网中有10台一样的设备,Nodered 用一个端口接入数据,在通过MQTT把数据接入HA
现在HA的指令到了nodred之后,因为之前的session已经关闭,所以就将指令进行了群发,致使所有设备都响应了。
本计划通过at指令,将各设备的会话传递给TCP 响应的控件,但是似乎没有成功。
想请教个大家,这个应该如何处理比较好。

包括指定session,包括TCPout改成连接模式,前面通过switch分流等多种方案。但就是不解决问题。在很多时候,还是会由多台设备响应

ssspp 发表于 2023-1-9 18:55:09

本帖最后由 ssspp 于 2023-1-9 18:57 编辑

我家就是全TCP的,可以的,TCP链接要加心跳不然久了会自动断开,
SESSION不会关闭的,用事件接收器取得每个客户端的._session,主要还是看你的TCP设备的连接方式!
可行的,我家就是这样同步设备到HA。我家TCP模块支持链接上NR的TCP服务器就给一个数据串,也支持心跳,用了相当稳定

梅林听风 发表于 2023-1-9 20:12:30

ssspp 发表于 2023-1-9 18:55
我家就是全TCP的,可以的,TCP链接要加心跳不然久了会自动断开,
SESSION不会关闭的,用事件接收器取得每个 ...

想问一下心跳包的频率设置多少为佳?
另外,事件接收器是catch吗?

梅林听风 发表于 2023-1-11 08:37:01

有没有大侠懂这个问题呀。
我感觉还是1.要依托心跳包保留session不被关闭(但是具体多少时间合适)?
2.就是心跳包产生的session怎么保存,传递到TCP out控件,让TCP Out响应的时候,能够使用指定的session

渗透之王 发表于 2023-1-11 08:40:16

梅林听风 发表于 2023-1-11 08:37
有没有大侠懂这个问题呀。
我感觉还是1.要依托心跳包保留session不被关闭(但是具体多少时间合适)?
2. ...

如果不指定session,就是群发,session和client的标识(可以是心跳包或注册包)绑定进行存储

梅林听风 发表于 2023-1-11 08:52:14

渗透之王 发表于 2023-1-11 08:40
如果不指定session,就是群发,session和client的标识(可以是心跳包或注册包)绑定进行存储 ...

大侠,要点就在这里,其实我想问一下怎么对session进行处理。直接数组赋值传递不成功。

梅林听风 发表于 2023-1-13 17:17:36

顶一下,哪位大虾会呀

梅林听风 发表于 2023-1-14 15:52:21

在设备首次注册的时候,定义的全局变量

TCP发出之前,使用了全局变量

最后两台设备同时响应了




镇的有点搞不定了

梅林听风 发表于 2023-1-15 11:59:41

有没有哪位大佬,能帮忙看一下的。实在是搞不定了。
页: [1]
查看完整版本: 多设备TCP接入nodred问题