WebHookCaller Description

Architecture

This software runs as a service under Windows. Prerequisite is NET 7 runtime:
https://dotnet.microsoft.com/en-us/download/dotnet/7.0

Prerequisites

Admin access to the target machine

On installation, administrator rights are needed for the service installation. The service context user will be chosen at installation, administration rights are needed at this point in time to install / register the windows service with the OS.

.NET Runtime 7.x.x

https://dotnet.microsoft.com/en-us/download/dotnet/7.0

Installer for x64 Windows:
https://dotnet.microsoft.com/en-us/download/dotnet/thank-you/runtime-7.0.5-windows-x64-installer

Proposal

For the lifecycle of this software it is highly recommended to use a dedicated service domain user only for this product. This enables for fine-grained rights management and control.

Installation

The installation is UI-based and demands an installation path as well as a dedicted service user. In case you would want to run the Program as Local System, you need to put a valid user here and change that later, as this is not recommended.

Important files

There are two important files to the WebHookCaller Service:

  • The config file "WebHookCaller.xml" located in the program installation directory
  • The Url List File for calling the different targets. Standard is "UrlList.json" in the Program installation directory, this can be changed in the config though.

Config Values

Additional to the Common config values in [[Website Content]], this product knows the following entries:

Name Value Description
Proxy.IsEnabled true/false is a proxy server to be used?
Proxy.Host String Hostname of the proxy server, with leading http(s)
Proxy.Port Integer The port the proxy server is reachable at
Proxy.Username String if applicable, the user name for the proxy
Proxy.Password String if applicable, the password for the proxy
UrlListJson String The file name of the ingested file relative to the executable

Example:

```xml
<Proxy.IsEnabled>false</Proxy.IsEnabled>
<Proxy.Host>http://zproxy</Proxy.Host>
<Proxy.Port>9400</Proxy.Port>
<Proxy.Username></Proxy.Username>
<Proxy.Password></Proxy.Password>
<UrlListJson>UrlList.json</UrlListJson>
```

Full file example:

```xml
<?xml version="1.0" encoding="utf-8" ?>
<Configuration>
<Common.ProductID>xx</Common.ProductID>
<Common.License>yy</Common.License>
<Common.MinimumLogLevel>Info</Common.MinimumLogLevel>
<Proxy.IsEnabled>false</Proxy.IsEnabled>
<Proxy.Host>http://proxy</Proxy.Host>
<Proxy.Port>9999</Proxy.Port>
<Proxy.Username></Proxy.Username>
<Proxy.Password></Proxy.Password>
<UrlListJson>UrlList.json</UrlListJson>
</Configuration>
```

Connections

This software needs the following connections, which need to be allowed in any devices securing the outbound and inbound traffic, like Firewalls:

Number Direction Source Source Port Destination Destination Port Protocol Reason Data submitted
1 Outbound WebHookCaller Host - https://svrgn.eu 443 https GET License checks each day at 8 am Product ID, License Key
2 Inbound https://svrgn.eu 443 WebHookCaller Host - https RESPONSE Response to license request 1 Successful?, License Status, Product ID, Product Name, Checksum, Expiry Date, Payment ID (ignored), Customer Name (ignored), Customer EMail (ignored), License Limit, Site_Count, Activations left, Price ID (ignored)

Also, as this software calls webhooks, the URLs in the UrlList.json config file need to be reachable from the server this product is installed.

User and rights

A domain service user dedicated for this service is recommended, e.g. "YOURCOMPANY/WebHooCaller-Service". The user needs read and write permissions only in the installation folder, as it writes the log and reads from the configuration and the destinations file.

Debugging

It is recommended to debug scenarios by starting the .exe file from file explorer directly to see the immediate output. The application will then behave like a console program.

Scroll to Top