Installing and configuring Cameyo self-hosted server in a silent, unattended mode.

To launch an unattended installation, the following environment variables need to be set:

  • CAMEYO_CLIENTID: your organization's Cameyo API client ID.
  • CAMEYO_CLIENTSECRET: the secret key matching the above client ID.
  • CAMEYO_SERVEROWNER: email of the user to be defined as server owner. The user must be a part of your Cameyo organization's account.

Once these environment variables are set, you can launch the installer PlayServer.exe. It will then proceed with a silent, unattended installation mode. Note that the installer has to be launched in elevated / system mode (make sure you set the above environment variables in the same context as the elevated installer).

Customizing server settings

Custom server settings can be passed to the installer via the registry. These settings are optional; settings which are not defined are assigned default values.

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\SOFTWARE\Cameyo\PlayServer]
"ExternalHostName"="external.address.com"
"ExternalHttpPort"=dword:00000050
"ExternalHttpsPort"=dword:00000000
"ExternalRdpPort"=dword:00000000
"InternalHostName-"="machinename"
"InternalHttpPort"=dword:00000050
"InternalHttpsPort"=dword:00000000
"InternalRdpPort"=dword:00000000
"TemplateGroupId"="[template-group-id]"

Optional values:

  • ExternalHostName: external machine name. If not specified, the machine's external IP address is used.
  • ExternalHttpPort: HTTP port accessible from the Internet. If not specified, 80 is used.
  • ExternalHttpsPort: HTTPS port accessible from the Internet. If not specified, 0 is used (=not enabled).
  • ExternalRdpPort: optional RDP access. If not specified, 3389 is used.
  • InternalHostName: optional machine host name to be used by clients from within the same network. If not specified, the machine's name is used.
  • InternalHttpPort: optional HTTP port accessible by clients from within the same network. If not specified, 80 is used.
  • InternalHttpsPort: optional HTTPS port accessible by clients from within the same network. If not specified, 0 is used (=not enabled).
  • InternalRdpPort: optional RDP port accessible by clients from within the same network. If not specified, 0 is used (=not enabled).
  • TemplateGroupId: optional ID (GUID) of a Cameyo server cluster from which to copy settings for the new server.
  • FriendlyName: optional display name for the new server.

Installation result

The installer updates the numeric registry value "InstallStatus" with the installation progress. Upon success, it contains 10. String value "Warn" will contain any warnings issued during the installation. If the installation failed, string value "Err" will indicate the error message.

Values which were not defined prior to the installation and which were assigned by default will be written back to this same registry key.

Sample registry values after a successful installation:

Script pseudo-code

The following illustrates an example of unattended installation script you can build for automating server setup. It has to be executed as elevated or local system:

  • Set CAMEYO_CLIENTID, CAMEYO_CLIENTSECRET, CAMEYO_SERVEROWNER environment variables.
  • Create the "PlayServer" registry key and write some custom settings into it, such as: FriendlyName="MyServer", ExternalHttpPort=8080 (just as an example).
  • Launch the PlayServer executable installer and wait for it to finish.
  • Check the "InstallStatus" value. If 10, return success. Otherwise check the "Err" text value within the same key.

Logs

Logs are written into the temporary directory into a file named RapInst.log. You can delete the log file after the installation.

You can view the installation's progress using a debug tracer; make sure to launch it in elevated mode too.