Each command of hub is converted to events. eg:
ResourceCreatePending
event.ResourceRetrievePending
event.ResourceUpdatePending
event.ResourceDeletePending
event.DeviceMetadataUpdatePending
event.All these events wait for processing by one of a gateway (mostly coap-gateway).
When one of the gateways process a pending event it executes one confirmation of command which converted to event:
ResourceCreated
.ResourceRetrieved
.ResourceUpdated
.ResourceDeleted
.DeviceMetadataUpdated
.When the device is not online the event waits for processing. To limits wait:
time_to_live
for each command, which defines the expiration. When an event expires hub doesn’t process it anymore.If the cancellation command occurs after confirmation, the cancellation fails. If the pending command expires or was canceled before execution of the confirmation command, the confirmation command fails. In this case, there are 3 scenarios:
plgd makes it simpler to build a successful IoT initiative – to create a proof of concept, evaluate, optimize, and scale.