Main commands to launch and check
After you activate the license, start WCS using the command:
Stopping the server is done with the command
Here are a few ways to make sure the server has started and is ready to work:
1. Make sure the server process is running.
The console should display WCS Core process (PID 6880 on the example below):
2. Make sure the server process listens the main ports.
If you used default ports settings, you should see ports 8080, 8444 (Websockets) and 1935 (RTMP) as well as other ports you configured for the WCS server in the list.
3. Make sure the WCS server writes the main server log
The log should display information about settings the server started with.
Logs should react on connection of web clients. If that does not happen during testing, make sure the server process is running and the web client is configured properly to connect this particular server. See the Troubleshooting section for additional information.
If the server process is running and logs have no error, this means the WCS server is ready to work and you can start testing it.
All the ways to start WCS
Starting the server is performed with this command:
Since build 5.2.801, WCS is starting as service from flashphoner user for better security
Besides, you can start the server using:
Environment variables setup
Environment variables and parameters of the start are set in the setenv.sh script. In this script you can se additional parameters for WCS Core and WCS Manager. Also, here you can set the parameter that prevent memory leaks on multi-CPU systems:
Starting with stdout output
In some cases, for example, if the server won't start and does not produce any errors, you may need to start the server with direct logging to the 'stdout' console. Direct output to stdout cannot be used in production, because the server will be stopped if the console is closed or the SSH connection is lost. That is why we recommend using stdout output only for debug purposes.
To start the server in this mode, use the following command:
Launching with different user permissions
Launching builds 5.2.864-5.2.972
Since build 5.2.864, the permissions to launch WSC are defined as follows:
1. The command
starts WCS always from flashphoner user, if the user exists in system
2. The command
starts WCS from root when executing from root
or from flashphoner user, when executing from other non-root user
This affects the stanadlone mode too
Launching build 5.2.976 and newer
Since build 5.2.976, , the permissions to launch WSC are defined by the following parameter in
/usr/local/FlashphonerWebCallServer/bin/setenv.sh file only:
On this value (default)
WCS is starting from flashphoner user
On this value
WCS is starting from root user
In this case, service can be started from root, user permissions to launch Java will be changed automatically.
Folder permissions setting when starting from flashphoner user
Since build 5.2.976, write permissions to the server folders including custom folder are checked while starting WCS from flashphoner user. If permissions are not enough, WCS will not start with the following message in
In this case, the following command should be executed
Parameters are set in the wcs-core.properties file.
Additional launching options can be set in bin/setenv.sh file using the following varaibles:
WCS_JAVA_OPTS - the list of options for WCS Core
JVM parameters are checked for compatibility with current Java version on startup. The error messages are written to /usr/local/FlashphonerWebCallServer/logs/startup.log file according to error message returned by Java if JVM cannot start with parameters specified.
Java version automatic detection and JVM parameters correction
Since build 5.2.972, Java version is detected automatically, and JVM parameters are corrected when WCS is starting after JDK update. JVM launch parameters may also be corrected by the following command
In this case, the parameters are corrected in the wcs-core.properties file, the previous settings are copied to a file with .backup extension and a sequence number, for example
Note that garbage collector (GC) is not changing automatically in this case, but its parameters can be changed (command line key names for example).
Automatic WCS health checking after launch
When WCS process is launched,
webcallserver script cheks if it is healthy waiting for 200 OK response to a special query
Since build 5.2.1084 it is possible to set a maximum number of health checking tries using the following command line key
By default, 10 tries will be done with 1 second timeout between them. The script waits 1 second for response on every try. Therefore, a maximum waiting time may reach up to 20 seconds by default (
10 * (1+1)).
If WCS process is not responding to all the queries, the following message will be written to launch log
startup.log and to console
This health checking may be disabled if necessary by setting a zero tries