# StifleR client installation

## Prerequisites

* Windows 10 or later
* Windows Server 2016 or later&#x20;
* Supported are x86 or x64 versions of the operating systems (x86 for Windows 10 only)
  * Professional, Enterprise, Education, or LTSC editions for client operating systems
  * Microsoft .NET 4.8 must be installed

## **Installation**

### **Manual Installation**

From an Elevated Command prompt launch **StifleR.ClientApp.Installer64.msi**.

At the "Welcome" screen, feel welcomed, and then click **Next**.

<figure><img src="https://2767179248-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSdKKJqJhW8GvhMBmgTTJ%2Fuploads%2FFn14wZCdXeXgQ7Mcj8b4%2FStifleR2.14_Client_Welcome.png?alt=media&#x26;token=1553792a-4020-45da-8959-17049e518de7" alt=""><figcaption></figcaption></figure>

At the "End-User License Agreement" screen, once you have reviewed the EULA, check the box: \
**I accept the terms in the License Agreement**, and then click **Next**.

<figure><img src="https://2767179248-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSdKKJqJhW8GvhMBmgTTJ%2Fuploads%2FYs3e1aL7KkmvojZ9jJCg%2FStifleR2.14_Client_EULA.png?alt=media&#x26;token=9cd1db49-b810-4049-9aff-43b8f8e1995e" alt=""><figcaption></figcaption></figure>

At the "Destination Folder" screen, enter the path in which the StifleR Beacon server program files should be installed and then click **Next**.

<figure><img src="https://2767179248-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSdKKJqJhW8GvhMBmgTTJ%2Fuploads%2FfkbFF9ZtKGixG61Pv7pe%2FStifleR2.14_Client_path.png?alt=media&#x26;token=f6aef266-fb15-46e7-89a6-7af4a7b13c54" alt=""><figcaption></figcaption></figure>

At the "Ready to install..." screen, click **Install** to begin the installation.

<figure><img src="https://2767179248-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSdKKJqJhW8GvhMBmgTTJ%2Fuploads%2FtnLUKYdpzGRj1nNYgbtA%2FStifleR2.14_Client_ready.png?alt=media&#x26;token=51ead61d-2b1d-42f7-a74a-30c41bbb95b0" alt=""><figcaption></figcaption></figure>

At the "Completed" screen, the installation wizard is complete. Click **Finish** and enjoy a nice cup of craft beer, you’ve earned it.

<figure><img src="https://2767179248-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSdKKJqJhW8GvhMBmgTTJ%2Fuploads%2FJncIfolhKNPKlnVay3XL%2FStifleR2.14_Client_finish.png?alt=media&#x26;token=46fb969e-ef79-4dd0-a3a9-bc3af142d140" alt=""><figcaption></figcaption></figure>

After finishing installation configuration tool will be opened, please configure needed settings&#x20;

<figure><img src="https://2767179248-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSdKKJqJhW8GvhMBmgTTJ%2Fuploads%2FnmGJsC7e9KjN5xnRiavn%2Fimage.png?alt=media&#x26;token=3211b600-4b66-42a9-b1dc-d3a65ac81124" alt=""><figcaption></figcaption></figure>

### Unattended installation

With StifleR 2.14 we introducing option to install client unattended.&#x20;

In order to achive that you will need to install one client with manual approach, after that you will be able to export settings you configured

<figure><img src="https://2767179248-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSdKKJqJhW8GvhMBmgTTJ%2Fuploads%2FN6aR1tCC1O92UnVHOh8u%2FStifleR2.14_Client_export.png?alt=media&#x26;token=a0964692-290e-473f-995c-1439c7baec44" alt=""><figcaption></figcaption></figure>

This file would contain required settings in custom Json format, where any string value containing " " (space) is replaced with "%20", and final output is stripped of all " " (space); here is an example:

{% hint style="info" %}
You will need to open this file with any text editor to view content of it
{% endhint %}

```
{"SettingsOptions":{"StifleRulezURL":"https://stifler.company.com/StifleRulez.xml%20","LogEventLevel":"Verbose","StiflerServers":"[\u0022http://stifler.company.com:1414\u0022]","UseServerAsClient":"True","SignalRLogging":"True"}}
```

In order to use this configuration together with MSI installer your will need add **OPTIONS=** parameter

```
msiexec /qn /l*v "log.log" /i StifleR-ClientApp-x64.msi OPTIONS={"SettingsOptions":{"StifleRulezURL":"https://stifler.company.com/StifleRulez.xml%20","LogEventLevel":"Verbose","StiflerServers":"[\u0022http://stifler.company.com:1414\u0022]","UseServerAsClient":"True","SignalRLogging":"True"}}
```

With our default pattern, installer at complete would launch *Config Editor*, and once settings have been confirmed, *Editor* would set service to "Automatic Startup" and then start it.

In unattended mode, if we want the service to be started on complete, we need to pass parameter **AUTOSTART=1** to MSI; note that this parameter will only be used in unattended/quiet or basic mode, and project has *Config Editor* support.

```
msiexec /quiet /l*v "StifleRClientInstall.log" /i StifleR-ClientApp-x64.msi AUTOSTART=1 OPTIONS={"SettingsOptions":{"StifleRulezURL":"https://stifler.company.com/StifleRulez.xml%20","LogEventLevel":"Verbose","StiflerServers":"[\u0022http://stifler.company.com:1414\u0022]","UseServerAsClient":"True","SignalRLogging":"True"}}
```

{% hint style="info" %}
Replace stifler.company.com with the name of your StifleR server.
{% endhint %}

## Post Installation

### Service Status

Open services.msc to validate that the **2Pint Software Stifler Client** service is installed and running, or run the following PowerShell command and validate that the service is present and running:

```
Get-Service -Name StifleRClient | Select Status
```

Validate the following output:

<figure><img src="https://content.gitbook.com/content/SdKKJqJhW8GvhMBmgTTJ/blobs/nZsVK0mY2d8h1dWJAAXh/StifleRClient_SvcInstallCheck.jpg" alt=""><figcaption></figcaption></figure>

### Event Logging

To validate that the StifleR Server Event Logging structure has been created, execute the following PowerShell command:

```
Get-WinEvent -ListLog TwoPintSoftware-StifleR.ClientApp* | Where-Object { $_.RecordCount }
```

Validate the following output:

<figure><img src="https://content.gitbook.com/content/SdKKJqJhW8GvhMBmgTTJ/blobs/t3xMaQ2KGHrgfm1wohd3/StifleRClient_EventLogs.jpg" alt=""><figcaption></figcaption></figure>
