Skip to content

A WPF client application demo for SLASCONE software licensing, using the official NuGet package.

Notifications You must be signed in to change notification settings

SLASCONE/SLASCONE-demo-wpf-nuget

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

50 Commits
 
 
 
 
 
 

Repository files navigation

LICENSING & ANALYTICS FOR SOFTWARE AND IoT VENDORS

A demo client application (WPF) for SLASCONE software licensing, which uses the official NuGet package. Its main purpose is to demonstrate how you can enable online and/or offline licensing (at the same time), while providing a rudimentary/explanatory UI. Although this is a desktop application, the same principles apply for other application types as well. Both named and floating licenses can be used.

image

Depending on your application you might need:

  • both online and offline mode (most desktop applications)
  • online mode only (application servers/backends)
  • offline mode only (any application type with no connectivity)

CONNECTING TO YOUR SLASCONE ENVIRONMENT

The application connects to the SLASCONE official demo environment. In order to connect to your SLASCONE environment, adjust the values of the file LicensingService.cs.

ONLINE

Online is the recommended licensing mode, since it unleashes the full functionality of SLASCONE.

ACTIVATION (key based)

The online activation is a very straightforward process, requiring a license key.

OnlineActivation2

REFRESH/HEARTBEATS

After a successful activation, the application sends a periodic heartbeat (license check) to ensure that the license parameters are up to date.

LicensedState

A heartbeat might fail due to primarily two reasons:

  • No connectivity
  • The license is not valid anymore (e.g., deactivated, expired).

TEMPORARILY OFFLINE - FREERIDE

If a heartbeat fails, you normally do not want to restrict software access immediately. Instead, you typically want to notify the user and ensure that the problem can be remedied (e.g., by going online), within a reasonable amount of time.

Freeride comes into play for such scenarios. In this example freeride is set to 7 days, but the value can be changed in the SLASCONE web portal.

UNASSIGN

The licensing lifecycle for a device ends with its unassigning/deactivation. It is recommended to provide an area in your software, in which the end user can unassign the used license code, so that this can be used on another device (typical hardware migration scenario).

OFFLINE

Please refer to this article, in order to find more information about permanently offline scenarios.

ACTIVATION (file based)

Activation in offline scenarios is a 2-step process requiring two license (xml) files:

  • the license file
  • the activation file

After uploading the license file, an activation file has to be generated and uploaded too. Since the client is offline this generation has to be done on a proxy device using:

  • the generated link
  • or the QR code

image

By uploading the activation file, the activation is complete.

NAMED vs FLOATING

This application automatically recognizes the provisioning mode of the inserted license (named or floating). In case of a floating license, the application opens a session as described here.