...
Installation archives of WCS are available for download at this link.
You can download the installation archive directly to the server using wget, for example
Code Block | ||||
---|---|---|---|---|
| ||||
wget https://flashphoner.com/downloads/builds/WCS/5.12/FlashphonerWebCallServer-5.12.2993XXXX.tar.gz |
Installation
To install WCS you need to unpack the archive and execute the installation script install.sh:
Code Block | ||||
---|---|---|---|---|
| ||||
tar -xvzf FlashphonerWebCallServer-5.12.2993XXXX.tar.gz cd FlashphonerWebCallServer-5.12.2993XXXX sudo ./install.sh |
The installer will perform necessary checks and installs WCS to the following directory /usr/local/FlashphonerWebCallServer
Installation includes the following steps:
- Reading and accepting of the license agreement
- Specifying IP addresses in case the script was unable to discover them automatically (see
...
- IP address configuration)
- A request to add WCS to the Linux server autostart
- Java version checking and obsolete settings removing from wcs-core.properties file
As a result, a successful installation message will be shown. The following folders will be created in the /usr/local/FlashphonerWebCallServer directory:
- bin - WCS executables
- client - WCS JavaScript API 1.0, usage examples and stress-tests
- client2 - WCS JavaScript API 2.0 and usage examples
- conf - configuration files
- lib - required libraries
- tools - tools to debug WCS
- web - WCS web interface static pages
Silent mode installation
Sometimes, WCS can be installed in silent mode if automatic deployment system like Ansible is used to deploy a number of typical instances
Code Block | ||||
---|---|---|---|---|
| ||||
./install.sh -silent |
In this case:
- IP addresses detection does not work (flashphoner.properties file and other settings are supposed to be overwritten by automatic deployment system)
- webcallserver.service is configured to start from root
Installation to a different Java versions
JDK 12 or 14
The following settings should be removed from wcs-core.properties file
Code Block | ||
---|---|---|
| ||
-XX:+UseConcMarkSweepGC
-XX:+PrintGCDateStamps
-XX:+PrintGCDetails |
The following setting
Code Block | ||
---|---|---|
| ||
-Xloggc:/usr/local/FlashphonerWebCallServer/logs/gc-core- |
should be replaced by
Code Block | ||
---|---|---|
| ||
-Xlog:gc*:/usr/local/FlashphonerWebCallServer/logs/gc-core-:time |
JDK 15
In addition to setting changes made for JDK 12 or 14, the following settings should be removed from wcs-core.properties file
Code Block | ||
---|---|---|
| ||
-XX:+UseCMSInitiatingOccupancyOnly
-XX:CMSInitiatingOccupancyFraction=70 |
JDK 16
In addition to setting changes made for JDK 12, 14, 15, the following settings should be added to wcs-core.properties file
Code Block | ||
---|---|---|
| ||
--illegal-access=permit |
JDK 17
In addition to setting changes made for JDK 12, 14, 15, 16, the following settings should be removed from wcs-core.properties file
Code Block | ||
---|---|---|
| ||
--illegal-access=permit |
and the following settings should be added
Code Block | ||
---|---|---|
| ||
--add-exports java.base/sun.security.provider=ALL-UNNAMED
--add-opens java.base/java.lang=ALL-UNNAMED |
Acquiring a license and activation
...
On first logon to WCS web interface by address httphttps://yourserver:88888444/admin/, where yourserver is your server hostname with by default user admin (password admin), the request for license number is displayed:
Enter your license number and press Next
If activation was successfull, admin password request log in page will be displayed.
Activation using command line
...
Code Block | ||||
---|---|---|---|---|
| ||||
cd /usr/local/FlashphonerWebCallServer/bin
sudo ./activation.sh |
The script asks you to enter the license number:
...
Log in to WCS web interface by address https://yourserver:88888444/admin/
, where yourserver is your server hostname. Press "License" button. The license key page will be displayed:
Click to Deactivate link. Confirmation request will be displayed:
Press Yes to confirm deactivation. The The license will be deactivated, and license key request page will be displayed:
Deactivation using command line
...
Code Block | ||||
---|---|---|---|---|
| ||||
sudo ./deactivation.sh |
If activation fails
...
Type | Protocol | Port Range | Source |
---|---|---|---|
Custom UDP Rule | UDP | 30000-33000 | 0.0.0.0/0 |
Custom TCP rule | TCP | 8081 | 0.0.0.0/0 |
Custom TCP Rule | TCP | 88888444 | 0.0.0.0/0 |
Custom TCP Rule | TCP | 8443 | 0.0.0.0/0 |
Custom TCP Rule | TCP | 30000-33000 | 0.0.0.0/0 |
Custom TCP Rule | TCP | 1935 | 0.0.0.0/0 |
SSH | TCP | 22 | 0.0.0.0/0 |
...
SSH access via the standard port 22 is specified here only to administer the Linux server itself. Hence, the minimum required set of ports is:
- 1935 - RTMP
- 8081 - built-in WCS web server that works via HTTP
- 8443 - Secure Websocket
- 8888 8444 - built-in WCS web server that works via HTTPS
- [30000-33000] - SIP, Media, RTSP
...
For example, a test server on Amazon EC2 has the external IP address of: 54.189.212.111, and the network interface address is: 172.30.21.25. If your server is behind NAT шт in regard to browser clients, write down or copy these IP addresses. You will need them later, when you will configure the server.
Automatic and semi-automatic IP addresses detection
Since build 5.2.921, WCS tries to automatically detect server IP addressess on startup if they are not set, or server is starting in cloud environment supporting AWS API or Google Cloud API endpoints. If IP addresses cannot be detected on startup, it may be done manually using the following command
Code Block | ||||
---|---|---|---|---|
| ||||
cd /usr/local/FlashphonerWebCallServer/bin
sudo ./webcallserver set-ip |
This command:
- tries to detect IP addresses automatically;
- if this cannot be done, asks user for additional data
- writes results to flashphoner.properties file
It is recommended to use this command if there are some problems with IP addresses detection behind NAT.