Автор Тема: Z5R-WEB + JSON (контроллер хранит события)  (Прочитано 2250 раз)

Егор

  • Пользователь
  • *****
  • Сообщений: 25
Приветствую всех!

Снова интересный глюк контроллера.
Несколько раз на разных контроллерах случайно заметили неадекватное поведение:
на пустом месте контроллер начинает сбрасывать события за достаточно большой промежуток времени.

То есть выглядит это так:

Обычные пинги:
Цитировать
07.11.2018 13:28:51 REQUEST {"type":"Z5RWEB","sn":44803,"messages":[{"id":1334282987,"operation":"ping","active":1,"mode":0}]}
07.11.2018 13:28:51 ANSWER {"date":"2018-11-07 13:28:51","interval":8,"messages":[]}
07.11.2018 13:28:58 REQUEST {"type":"Z5RWEB","sn":44803,"messages":[{"id":1920954715,"operation":"ping","active":1,"mode":0}]}
07.11.2018 13:28:58 ANSWER {"date":"2018-11-07 13:28:58","interval":8,"messages":[]}

Очень странное событие, т.к. у нас нет такой карты "000000FA1864". Тем не менее по логам проход разрешён и совершен:
Цитировать
07.11.2018 13:29:03 REQUEST {"type":"Z5RWEB","sn":44803,"messages":[{"id":772796790,"operation":"events","events":[{"flag": 0,"event": 4,"time": "2018-11-07 13:29:02","card": "000000FA1864"}]}]}
07.11.2018 13:29:03 EVENT [ВХОД] ключ найден, дверь открыта,time: 2018-11-07 13:29:02, flag: 0, card: 000000FA1864
07.11.2018 13:29:03 ANSWER {"date":"2018-11-07 13:29:03","interval":8,"messages":[{"id":772796790,"operation":"events","events_success":1}]}

А дальше контроллеру становится скучно и он решает скинуть все события, начиная аж с 2018-10-27 18:58:46:
Цитировать
07.11.2018 13:29:03 REQUEST {"type":"Z5RWEB","sn":44803,"messages":[{"id":2029489547,"operation":"events","events":[
{"flag": 0,"event": 17,"time": "2018-10-27 18:58:46","card": "000000000000"},{"flag": 0,"event": 9,"time": "2018-10-27 18:58:46","card": "000000000000"},{"flag": 0,"event": 17,"time": "2018-10-27 18:58:46","card": "000000000000"},{"flag": 0,"event": 5,"time": "2018-10-27 18:59:01","card": "123456789012"},{"flag": 0,"event": 17,"time": "2018-10-27 18:59:01","card": "123456789012"},{"flag": 0,"event": 3,"time": "2018-10-27 19:19:06","card": "123456789012"},{"flag": 0,"event": 3,"time": "2018-10-27 19:19:09","card": "123456789012"},{"flag": 0,"event": 9,"time": "2018-10-27 19:19:13","card": "000000000000"},{"flag": 0,"event": 17,"time": "2018-10-27 19:19:13","card": "000000000000"},{"flag": 0,"event": 9,"time": "2018-10-27 19:19:13","card": "000000000000"},{"flag": 0,"event": 17,"time": "2018-10-27 19:19:13","card": "000000000000"},{"flag": 0,"event": 5,"time": "2018-10-27 19:19:14","card": "123456789012"},{"flag": 0,"event": 17,"time": "2018-10-27 19:19:14","card": "123456789012"},
{"flag": 0,"event": 5,"time": "2018-10-27 22:58:06","card": "123456789012"},{"flag": 0,"event": 17,"time": "2018-10-27 22:58:06","card": "123456789012"},{"flag": 0,"event": 5,"time": "2018-10-28 08:07:56","card": "123456789012"},{"flag": 0,"event": 17,"time": "2018-10-28 08:07:56","card": "123456789012"},{"flag": 0,"event": 2,"time": "2018-10-29 06:28:52","card": "123456789012"},{"flag": 0,"event": 2,"time": "2018-10-29 06:28:55","card": "123456789012"}]}]}
... (тут куча EVENTов)
07.11.2018 13:29:13 ANSWER {"date":"2018-11-07 13:29:13","interval":8,"messages":[{"id":2029489547,"operation":"events","events_success":19}]}

И так вплоть до настоящего времени:
Цитировать
07.11.2018 14:23:23 REQUEST {"type":"Z5RWEB","sn":44803,"messages":[{"id":1402586708,"operation":"events","events":[{"flag": 0,"event": 5,"time": "2018-11-07 14:22:05","card": "123456789012"},{"flag": 0,"event": 17,"time": "2018-11-07 14:22:05","card": "123456789012"}]}]}
07.11.2018 14:23:23 EVENT [ВЫХОД] ключ найден, дверь открыта,time: 2018-11-07 14:22:05, flag: 0, card: 123456789012
07.11.2018 14:23:23 EVENT [ВЫХОД] Проход состоялся,time: 2018-11-07 14:22:05, flag: 0, card: 123456789012
07.11.2018 14:23:23 ANSWER {"date":"2018-11-07 14:23:23","interval":8,"messages":[{"id":1402586708,"operation":"events","events_success":2}]}

Ну и дальше обычные пинги:
Цитировать
07.11.2018 14:23:31 REQUEST {"type":"Z5RWEB","sn":44803,"messages":[{"id":552473416,"operation":"ping","active":1,"mode":0}]}
07.11.2018 14:23:31 ANSWER {"date":"2018-11-07 14:23:31","interval":8,"messages":[]}
07.11.2018 14:23:39 REQUEST {"type":"Z5RWEB","sn":44803,"messages":[{"id":1143408282,"operation":"ping","active":1,"mode":0}]}
07.11.2018 14:23:39 ANSWER {"date":"2018-11-07 14:23:39","interval":8,"messages":[]}

Собственно вопрос: что это вообще такое?
Получается, что контроллер хранит в себе события?
Спрашивается зачем он их хранит, если ему в своё время на эти события уже прислали ANSWER?
Ну и собственно, как это можно контролировать?
Меня совершенно не устраивает, что контроллер решает сделать сброс в разгар рабочего дня.

fw: 3.26, conn_fw: 1.0.130, режим работы: offline.

Заранее спасибо!

murat351

  • Пользователь
  • *****
  • Сообщений: 58
Re: Z5R-WEB + JSON (контроллер хранит события)
« Ответ #1 : 15 Ноября 2018, 15:02 »
-  события хранятся в буфере - 8192 записей  они перезаписываются по кругу, старые затираются новыми
по этому последние  8192 записей всегда есть в памяти контроллера.
при этом контроллер имеет
1) указатель на последнюю запись
2) указатель на последнюю прочитанную запись
вероятно, проблема с кучей евентов  связана  со сдвигом второго указателя

Ваш вопрос по евентам я пересылаю в разработку.
« Последнее редактирование: 15 Ноября 2018, 15:08 от murat351 »

Егор

  • Пользователь
  • *****
  • Сообщений: 25
Re: Z5R-WEB + JSON (контроллер хранит события)
« Ответ #2 : 19 Ноября 2018, 22:03 »
Ваш вопрос по евентам я пересылаю в разработку.
Очень надеюсь, что найдется какое-нибудь объяснение, а ещё лучше минорное обновление с фиксом этой проблемы.
Заранее спасибо!

Егор

  • Пользователь
  • *****
  • Сообщений: 25
Re: Z5R-WEB + JSON (контроллер хранит события)
« Ответ #3 : 11 Декабря 2018, 14:48 »
Есть ли новости от разработчиков?
Проблема опять возникает и кладёт работу СКУДа.

murat351

  • Пользователь
  • *****
  • Сообщений: 58
Re: Z5R-WEB + JSON (контроллер хранит события)
« Ответ #4 : 21 Августа 2019, 13:16 »
я видел несколько раз такое поведение контроллера, но не могу стабильно его воспроизвести, по этому разработка не берется исправлять эту проблему.