GetProductStatus Method

The GetProductStatus method gets the product, account and license status to be used for product upgrade.

Syntax

C#

public GetPeoductStatusRes GetProductStatus(string ActivationKey)

 

XML

<?xml version="1.0" encoding="utf-8"?>

<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">

  <soap:Body>

    <GetStatus xmlns="http://tempuri.org/">

      <ActivationKey>string</ActivationKey>

    </GetStatus>

  </soap:Body>

</soap:Envelope>

Parameters

ActivationKey

The Activation Key to access the account.

Return Value

C#

public struct GetProductStatusRes

{

    public int ErrorCode;

    public string ErrorMessage;

    // Product Status

    public string ProductTitle;

    public string ProductURL;

    public string ProductUpgradeURL;

    // Account Status

    public int AccountID;

    public int ActivationMode;

    public bool Activated;

    public bool Destroyed;

    public int MaxActivation;

    public int ActivationCount;

    public string RegIDTran;

    public int LicUpgradeID;

    public string SubscriptionExpDate;

    // License Status

    public int StartYear;

    public int StartMonth;

    public int StartDay;

    public int ExpYear;

    public int ExpMonth;

    public int ExpDay;

    public int MaxDay;

    public int MaxYear;

    public int MaxDayPeriod;

    public int MaxExec;

    public int MaxUser;

    public int InitExec;

    public unsignedInt Modules;

    public unsignedInt Options;

    public unsignedInt ExtOptions;

}

 

XML

<?xml version="1.0" encoding="utf-8"?>

<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">

  <soap:Body>

    <GetProductStatusResponse xmlns="http://demo.eleckey.net/">

      <GetProductStatusResult>

        <ErrorCode>int</ErrorCode>

        <ErrorMessage>string</ErrorMessage>

        <ProductTitle>string</ProductTitle>

        <ProductUrl>string</ProductUrl>

        <ProductUpgradeUrl>string</ProductUpgradeUrl>

        <AccountID>int</AccountID>

        <ActivationMode>int</ActivationMode>

        <Activated>boolean</Activated>

        <Destroyed>boolean</Destroyed>

        <MaxActivation>int</MaxActivation>

        <ActivationCount>int</ActivationCount>

        <RegIDTran>string</RegIDTran>

        <LicUpgradeID>int</LicUpgradeID>

        <SubscriptionExpDate>string</SubscriptionExpDate>

        <StartYear>int</StartYear>

        <StartMonth>int</StartMonth>

        <StartDay>int</StartDay>

        <ExpYear>int</ExpYear>

        <ExpMonth>int</ExpMonth>

        <ExpDay>int</ExpDay>

        <MaxDay>int</MaxDay>

        <MaxYear>int</MaxYear>

        <MaxDayPeriod>int</MaxDayPeriod>

        <MaxExec>int</MaxExec>

        <MaxUser>int</MaxUser>

        <InitExec>int</InitExec>

        <Modules>unsignedInt</Modules>

        <Options>unsignedInt</Options>

        <ExtOptions>unsignedInt</ExtOptions>

      </GetProductStatusResult>

    </GetProductStatusResponse>

  </soap:Body>

</soap:Envelope>

 

ErrorCode

Returns 0 if success; otherwise, see the Error Code.

ErrorMessage

Returns error message if the ErrorCode is not 0.

ActivationMode

Returns the current mode of activation.

 

Value

Meaning

MODE_NOT_ APPLICABLE (0)

Not applicable Mode.

Any activation is not applicable. This mode guides the client to show an error message.

MODE_LICENSE_ ACTIVATION (1)

License Activation Mode.

The account is ready for first-time activation (i.e.the account has the Activated field unchecked and the LicKeyTran and MasterLicenseCust fields are empty). This mode guides the client to call the ActivateLicense method in which the License Key will be generated from the MasterLicense of the product associated with the account.

MODE_LICENSE_ TRANSFER (2)

License Transfer Mode.

The account is ready for transferring the license from the server to the client (i.e. the account has the Activated field checked and the LicKeyTran is available). This mode guides the client to call the ActivateLicense method in which the License Key will be generated from the LicKeyTran.

MODE_LICENSE_ CUSTOMIZATION (3)

License Customization Mode.

The account is ready for activation using the custom license (i.e. the account has the Activated field unchecked, the Reactivated field is checked, and the MaserLicenseCust is available). This mode guides the client to call the ActivateLicense method in which the License Key will be generated from the MasterLicenseCust.

MODE_LICENSE_ REPLACEMENT_OR_ DEACTIVATION (4)

License Replacement or Deactivation Mode.

The account is ready for either license replacement or deactivation (i.e. the account has the Activated field checked and the ActivationCount is less than the MaxActivation). This mode guides the client to call the ActivateLicense method for license replacement purposes. This mode also guides the client to call the DeactivateLicense to transfer the license back to the server.

MODE_LICENSE_ DEACTIVATION (5)

License Deactivation Mode.

The account is ready for deactivation (i.e. the account has the Activated field checked and the ActivationCount is equal to the MaxActivation). This mode guides the client to call the DeactivateLicense method to transfer the license back to the server.

MODE_LICENSE_ DESTROYED (6)

License Destroyed Mode.

The client has destroyed the license. The Destroy-Code is verified and the account is terminated (i.e. the Activated field is unchecked and the Destroyed field is checked). This mode guides the client to show an error message.

MODE_LICENSE_ REACTIVATION_ REQUEST (7)

License Reactivation Request Mode.

The account requests the client to reactivate the license. This is because the account is updated with a custom license (i.e. the Reactivation field is checked and the MasterLicenseCust is available). This mode guides the client to call the DeactivateLicense method so that it can call the ActivateLicense method for reactivation, which the Liense Key will be generated from the MasterLicenseCust.

 

Activated

Returns the flag of activation. True means the account is activated. False means the account is not yet activated or deactivated.

Destroyed

Returns the flag of destroying license. True means the Destroy-Code is verified and the license is destroyed. False means the license is not destroyed.

MaxActivation

Returns the maximum number of activations.

ActivationCount

Returns the activation count.

RegIDTran

Returns the Registration ID to be used with the method TransferLicense of the KeyCheck Class Library to deactivate the license. If RegIDTran is “”, the account is not yet activated.

LicUpgradeID

Returns the License Upgrade ID to request the client to upgrade (reactivate) the license.

StartYear

Contains the start year decoded from the MasterLicense or the MasterLicenseCust. StartYear is available when the start date is enabled; in other words, bit 5 of Options is set to 1.

 

Value

Meaning

0

N/A

1 – 9999

Start year

StartMonth

Contains the start month decoded from the MasterLicense or the MasterLicenseCust. StartMonth is available when the start date is enabled; in other words, bit 5 of Options is set to 1.

 

Value

Meaning

0

N/A

1 – 12

Start month

 

StartDay

Contains the start day decoded from the MasterLicense or the MasterLicenseCust. StartDay is available when the start date is enabled; in other words, bit 5 of Options is set to 1.

 

Value

Meaning

0

N/A

1 – 31

Start day

 

ExpYear

Contains the expiration year to be decoded from the MasterLicense or the MasterLicenseCust.

 

Value

Meaning

0

No expiration

1 – 9999

Expiration year

 

ExpMonth

Contains the expiration month to be decoded from the MasterLicense or the MasterLicenseCust.

 

Value

Meaning

0

No expiration

1 – 12

Expiration month

 

ExpDay

Contains the expiration day to be decoded from the MasterLicense or the MasterLicenseCust.

 

Value

Meaning

0

No expiration

1 – 31

Expiration day

 

MaxDay

Contains the maximum number of days allowed to run the application, which is decoded from the MasterLicense or the MasterLicenseCust.

 

Mode

MaxDay

MaxYear

MaxDayPeriod

Meaning

N/A

0

0

0

Not used

Day

1 – 998

0

1 - 998

Number of days

Day

999

0

-1

Unlimited

Year

0 - 364

1 - 31

1 - 11679

Number of years and days

 

MaxYear

Contains the maximum number of years allowed to run the application, plus the remaining days of a year in MaxDay (one year is equal to 365 days), which is decoded from the MasterLicense or the MasterLicenseCust. See the table under the MaxDay property for values and description. 

MaxDayPeriod

Contains the total maximum number of years and days allowed to run the application, which is decoded from the MasterLicense or the MasterLicenseCust. The MaxDayPeriod is equal to MaxDay + (MaxYear*365). See the table under the MaxDay property for values and description.

MaxExec

Contains the maximum number of executions the protected program is allowed, decoded from the MasterLicense or the MasterLicenseCust.

 

Value

Meaning

0

Not used

1 – 9998

Number of executions

9999

Unlimited executions

 

MaxUser

Contains the maximum number of concurrent network users the protected program is allowed to run, decoded from the MasterLicense or the MasterLicenseCust.

 

Value

Meaning

0

Not used

1 – 998

Number of concurrent network users

999

Unlimited users

InitExec

Internal use.

Modules

Contains the licensed modules decoded from the MasterLicense or the MasterLicenseCust.

 

Set Bit

Meaning

0 – 29

The licensed modules

 

Options

Contains the options decoded from the MasterLicense or the MasterLicenseCust.

 

Set Bit

Meaning

0 – 4

Reserved for internal use

5

0 means the start date is disabled.

1 means the start date is enabled. In other words, the protected program is restricted for use within a specific time period between the start date and expiration date. The start date is simply the MaxDay before the expiration date (ExpYear, ExpMonth, ExpDay).

6

0 means the MaxDay and MaxExec replace the existing Max-Day and Max-Exec, respectively.

1 means the MaxDay and MaxExec are added to the current values of Max-Day and Max-Exec, respectively.

7 – 15

Reserved for internal use

 

ExtOptions

Contains the extended options for the Network Key, decoded from the MasterLicense or the MasterLicenseCust.

 

Set Bit

Meaning

0

0 means Local network and Internetwork boundary enabled. 1 means Internetwork boundary disabled (only Local network boundary enabled)

1

0 means public and private IP addresses enabled. 1 means only private IP addresses enabled.

2 – 15

Reserved for internal use; must be set to 0.

 

See Also

GetProductStatus2