Zentitle SDK and Library
NILM (Nalpeiron License Manager):

NILM is a command line tool built for cross-platform testing without the need for a UI or an application. We recommend NILM command line testing for your initial, quick testing. It will give you an idea of how all the parts work and allow you to see the results sent from client to the server.

Licensing Commands

Command Description
NSLGetLicenseCode Current license code on system
NSLGetLicenseStatus Current license status
NSLGetLicenseInfo Information about current license
NSLGetLibraryOptions Information about library stamping
NSLGetVMInfo Virtual machine details
NSLGetComputerID Retrieve computer ID
NSLGetLeaseExpDate Get Lease expiration date
NSLGetLeaseExpSec Get seconds until Lease expiration
NSLGetTrialExpDate Get Trial expiration date
NSLGetTrialExpSec Get seconds until Trial expiration
NSLGetMaintExpDate Get Maintenance expiration date
NSLGetMaintExpSec Get seconds until Maintenance expiration
NSLGetSubExpDate Get Subscription expiration date
NSLGetSubExpSec Get seconds until Subscription expiration
NSLGetAvailProcesses Get number of processes allowed to run
NSLGetHostName The hostname of the licensing server
NSLGetLicense Retrieve a license from licensing server
NSLReturnLicense Return current license to licensing server
NSLImportCert Import an activation certificate (offline act)
NSLRequestActivationCert Generate an activation request
NSLGetDeactivationCertReq Generate a deactivation request
NSLGetUDF Get the value of an Application Agility field
NSLGetTimeStamp Get the current time from the licensing server
NSLGetVersion Library version
NSLTestConnection2 Test the connection to the licensing server
[NSLSetCredentials] Set user/passwd for account based license
[NSLGetCredentials] Get information from/about the last setcredentials call
[NSLCheckCredentials] Validate credentials against those passed into the library with setcrendentials
[NSLClearCredentials] clear user/passwd for account based license
NSLValidateLibrary Validate library against your data
NSLGetFeatureStatus Get the current status of a feature
NSLCheckoutFeature Checkout a floating feature
NSLReturnFeature Return a floating feature to the server
NSLGetPoolInfo Get the current status of an element pool
NSLCheckoutPool Checkout elements from a pool
NSLReturnPool Return elements froma pool to the server
NSLGetTokenInfo Get the current status of an token pool
NSLCheckoutTokens Checkout tokens from a pool
NSLConsumeTokens Consume checked out elements from a pool
[RPC] Call a remote proceedure on the Nalpeiron server (Not available in Nilm)
RPCV Call a remote proceedure on the Nalpeiron server with vector arguments
GetErrorMessage Get error message corresponding to error code

Analytics Commands

Command Description
NSAApStart Flag an application start
NSAApStop Flag an application stop
NSAException Record an exception
NSAFeatureStart Flag a feature start
NSAFeatureStop Flag a feature stop
NSAGetComputerID Get the system's computer ID
NSAGetHostName Get the Analytics server's hostname
NSAGetPrivacy Get the current privacy setting
NSAGetStats Get Analytics engine's performance statistics
NSAGetVersion Analytics library version
NSATestConnection2 Test client connection to analytics server
NSALogin Record a Login
NSALogout Record a logout
[NSASendCache] Send analytics cache to analytics server
NSASetPrivacy Enable/disable privacy settings
NSASysInfo Record system information
NSAValidateLibrary Validate library against your data
GetErrorMessage Get error message corresponding to error code

Parameters

Command Type Description
Auth1, Auth2, Auth3 uint The authentication values you picked at lib creation
noLoops uint Number of times to test loop (where applicable)
Pause1 and Pause3 uint in seconds For testing (pause1 is after NalpLibOpen,
pause2 is just before NalpLibClose)
ApLang string Specify system language
BuildEdition string Specify a build edition for analytics
BuildNumber string Specify a build number for analytics
BuildVersion string Specify a build version for analytics
CustomerID uint Last 5 digits of your customer ID number
Description string Specify a descriptive string for analytics
ExceptionCode string Specify an exception code for analytics
FeatureCode string A feature code OR udf code OR element pool code
PoolAmount uint Element pool amount
Library string /path/to/library.so
LicenseCode string License code
NSALicenseStatus string License status for analytics collection
ProductID number uint Last 5 digits of your product ID number
Username username string username
Password password string password
NSAPrivacy 0, 1 Analytics privacy setting
NSLCertificate string An activation certificate or path to
file containing certificate
NSLRegistration string XML fragment containing registration information
NSAClientData string XML fragment containing addition client data
NalpErrorNo int Nalpeiron library error number
TransactionID uint Used to group analytics information
RPCName string Name of RPC function
RPCArgs string RPC function arguments (name1, val1, name2, val2)
CacheQLen uint Length in bytes of analytics cache file
DaemonIP string Daemon's ip address
DaemonPort uint Daemon's port number
DaemonUser username string Username for daemon contact
DaemonPass password string Password for daemon contact
LogSize uint Max size of log file in bytes
WorkDir string /workdir/path
LogLevel 0,1,2,3,4 0 is off, 4 is full debug
LogQLen uint length (in number of messages) of log queue
OfflineMode 0, 1 Disable or Enable offline mode
ProxyIP string IP address of intervening proxy
ProxyPort uint Port number of intervening proxy
ProxyPass string Password for intervening proxy
ProxyUser string Username for intervening proxy
SoapThMin uint Min number of threads for analytics data
SoapThMax uint Max number of threads for analytics data
WorkGroup string Group name for WorkDir ownership
NSAEnable 0, 1 Disable or Enable Analytics library (NSA)
NSLEnable 0, 1 Disable or Enable Licensing library (NSL)
NSLConnTO uint NSL Connection timeout (ms)
NSLTransTO uint NSL Transaction timeout (ms)
NSAConnTO uint NSA Connection timeout (ms)
NSATransTO uint NSA Transaction timeout (ms)

Nilm Examples

The following are examples of Nilm usage. In the examples, auth1 is 10, auth2 is 20, and auth3 is 30. The values should be replaced with the values selected when you created your libaries. Likewise, the license code 1234567890abcdef should be replaced with a valid license code associated with your account.

NSA calls are exempt from security offsets, but auth values are included in the following only to silence a nilm warning: