Добрый вечер!
Столкнулся с такой ситуацией. Если происходит перезагрузка Меги и при этом изменяются состояния выходных каналов (включаются по умолчанию) то это новое состояние каналов IH в упор не видит. В отладчике плагина каждый раз одно и тоже:
01.06 22:57:36.674 megad1: 192.168.0.14 => localhost:8081 HTTP GET /megad1?st=1&mdid=1
01.06 22:57:36.677 megad1: 192.168.0.14 <= localhost:8081
01.06 22:57:36.816 megad1:
01.06 22:57:36.817 megad1: localhost => 192.168.0.14 HTTP GET /sec/?pt=29&cmd=list
01.06 22:57:36.827 megad1: localhost <= 192.168.0.14 response: statusCode=200 contentType = text/html
01.06 22:57:36.830 megad1: body: busy
01.06 22:57:37.018 megad1:
01.06 22:57:37.019 megad1: localhost => 192.168.0.14 HTTP GET /sec/?pt=31&cmd=get
01.06 22:57:37.029 megad1: localhost <= 192.168.0.14 response: statusCode=200 contentType = text/html
01.06 22:57:37.030 megad1: body: temp:12.88/hum:100.00
01.06 22:57:37.032 IH: get [ { id: '31_1', value: '12.88' }, { id: '31_2', value: '100' } ]
set { STEMP_4_2: { aval: 12.88, err: 0 },
SHUMIDITY_4_1: { aval: 100, err: 0 } }
01.06 22:57:37.220 megad1:
01.06 22:57:37.221 megad1: localhost => 192.168.0.14 HTTP GET /sec/?pt=32&cmd=get
01.06 22:57:37.228 megad1: localhost <= 192.168.0.14 response: statusCode=200 contentType = text/html
01.06 22:57:37.229 megad1: body: temp:17.68
01.06 22:57:37.230 IH: get [ { id: '32', value: '17.68' } ]
set { STEMP_1_2: { aval: 17.68, err: 0 } }
01.06 22:57:37.423 megad1:
01.06 22:57:37.424 megad1: localhost => 192.168.0.14 HTTP GET /sec/?tget=1
01.06 22:57:37.433 megad1: localhost <= 192.168.0.14 response: statusCode=200 contentType = text/html
01.06 22:57:37.434 megad1: body: 19.25
01.06 22:57:37.435 IH: get [ { id: '38', value: '19.25' } ]
set { STEMP_1_3: { aval: 19.25, err: 0 } }
01.06 22:57:39.028 megad1:
01.06 22:57:39.029 megad1: localhost => 192.168.0.14 HTTP GET /sec/?pt=29&cmd=list
01.06 22:57:39.095 megad1: localhost <= 192.168.0.14 response: statusCode=200 contentType = text/html
01.06 22:57:39.096 megad1: body: fff2c75a1604:15.31;ffd39d011705:12.93
01.06 22:57:39.097 IH: get [ { id: '29_fff2c75a1604', value: '15.31' },
{ id: '29_ffd39d011705', value: '12.93' } ]
set { STEMP_1_1: { aval: 15.31, err: 0 },
STEMP_4_1: { aval: 12.93, err: 0 } }
Сам факт рестарта Меги просто так выявить не возможно. Нужно сравнивать сигнализацию на модулях
с состоянием каналов в IH. Ну или пожинать плоды безконтрольного включения каналов. Чтобы привести систему в чувства приходится включать/отключать каналы, которые активируются при старте Меги. Как от этого избавиться? Как заставить плагин опрашивать все каналы при получении от Меги ST=1? Периодический опрос всех каналов заводить очень не хотелось бы.