Is it possible to use metered attributes for offline node locked licenses?
From what I can see there is the
SetOfflineActivationRequestMeterAttributeUses method but I can’t understand what it does. Even if I call it before
GenerateOfflineActivationRequest as stated in the .h file when using
IncrementActivationMeterAttributeUses when not being connected to the internet I still get
error 48 failed to connect to server.
Moreover, even by using
SetOfflineActivationRequestMeterAttributeUses how am I supposed to know what value to set for every metered attribute to reflect the ones used in the web portal when creating the key?
Meter attributes for node-locked licenses usually work in an online environment because the true meter attributes support can be provided only if there is a server available that keeps the count in real-time. So online node-locked/hosted-floating and offline floating licenses fully support the meter attributes. Offline node-locked makes it difficult due to the unavailability of the server.
In the scenario where the internet may or may not be available booking of meter attributes is not supported as the booked count needs to be stored on the server otherwise this can be abused indefinitely. If you still want to allow increments in offline cases then you need to store the count locally (say in activation metadata) and then push the used count when the internet is available.
IncrementActivationMeterAttributeUses() function will throw an
error code 48 in an offline environment as it generates a network request for which an internet connection is a must.
GenerateOfflineActivationRequest() is simply to update the server in advance. Example, suppose in an offline environment where you store some value of increment locally and when the internet is available you are going to push that, Using
SetOfflineActivationRequestMeterAttributeUses() you can update the server in advance.