2016-11-18 8 views
0

В настоящее время я работаю над проектом lwm2m, используя проект leshan eclipse.LWM2M Leshan Как настроить период наблюдения по умолчанию?

При наблюдении за ресурсом lwm2m использует минимальный период по умолчанию и максимальный период по умолчанию, два ресурса объекта «Сервер LWM2M».

В принципе, из того, что я понял, минимальный период по умолчанию (/ 1/0/2) является минимальным периодом времени между двумя наблюдаемыми значениями (независимо от того, сколько раз значение наблюдаемого ресурса изменяется, клиент будет отправлять только одно сообщение каждые x секунд, x устанавливается минимальным периодом по умолчанию). максимальный период по умолчанию - это максимальный период времени между двумя сообщениями: даже если значение не изменяется, клиент отправит сообщение через некоторое время.

Но эти значения используются для каждого ресурса каждого объекта клиента. Я хотел бы знать, можно ли быть более точным. Я хотел бы иметь возможность установить минимальный период по умолчанию и максимальный период по умолчанию для всех ресурсов, которые я хочу наблюдать. Является ли это возможным?

ответ

0

Observe/notify - одна из самых тяжелых операций для ограниченных клиентов - для ее реализации требуется цикл/поток/таймер. Представьте, что у вас будет таймер на один объект - это повлияет на использование ЦП и разряд батареи.

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

2

Вы можете передать минимальный период и максимальный период в WriteAttributesRequest, который следует отправить перед установкой наблюдения. Для этого WriteAttributesRequest нужен путь ресурса, для которого он должен установить этот минимальный период и максимальный период. Как только WriteAttributesRequest будет успешным, вы можете установить наблюдение, которое будет следовать за ранее заданными значениями периода.