Open sbernard31 opened 10 months ago
From what I see, we can't use NOTIFY because device has deregistered, but maybe it could work with a direct SEND OPERATION when device is back online ?
From what I see, we can't use NOTIFY because device has deregistered, but maybe it could work with a direct SEND OPERATION when device is back online ?
As I understand the specification, a device can use SEND Operation on its own initiative. "The "Send" operation is used by the LwM2M Client to send data to the LwM2M Server without explicit request by that Server." (source : LWM2M-v1.2.1@core§6.4.6. Send Operation)
So nothing in the specification prevent a client to send a SEND request just after the REGISTER request and this SEND request can contains anything (which is accessible by the server).
So you could image that on disable
, if Notification Storing When Disabled or Offline
is true, your client should :
Disable Timeout
seconds (behavior defined by the specification : all device should behave like this)This could work but the 3. step sounds a bit strange.
Another solution could be to create a new Send Controller
object (and eventually register it to LWM2M registry) where a LWM2M sever could define/set Send behavior but this begins to be a bit out of topic.
Reading LWM2M-v1.2.1@core§Table: E.2-2 LwM2M Object: LwM2M Server Resource definitions
So I understand that "notification storing" with server disabled works like :
But reading the specification I understand that an observe relation is tied to 1 registration. so on de-Registration observation relation must be deleted and so last notify will just be ignored by the server. (This makes sense to not keep state for a deregistered client)
See LWM2M-v1.2.1@core§6.2. Client Registration Interface :
And LWM2M-v1.2.1@core§6.4.1. Observe Operation: