Getting started
First start
Open the web interface in a browser: http://localhost:7080 on the server itself, or http://<server address>:7080 from another computer. The first time, it leads you through:
- Product activation: enter the license, see Activation.
- Welcome: create the first administrator account, see Accounts.
- Authentication: log in with that account.
Activation
The Weighing Server needs a valid license. To get one, contact Dorin at dorin.cascaval@ravas.com.
A license is a link from the RAVAS license portal, ending in /L/ and the license code. On the Product activation page, paste it into License code, or choose a text file that contains it under License file, then select Submit. Until a license is active, anyone who can open the web interface can activate one.
The server keeps the activated license, encrypted, in server\license.key. The encryption is tied to the Windows installation, so moving the server to another computer or reinstalling Windows means activating the license again. Keep the license link.
License modules
A license enables one or more modules, listed on the License page:
| Module | Enables |
|---|---|
| RDC | Receiving weights from indicators in RDC mode (RDC service) and the weight upload routes |
| Scale management | Keeping scales connected, and reading weights and sending commands from the web interface and the API |
| Data collection | Collecting weight updates, parameters and logs from the scales (Data collection). Needs scale management too. |
Saved weights are available with either RDC or data collection. Everything else, such as accounts, settings and the list of scales, works with any license.
A common setup is RDC only. Scale management with data collection replaces the RAVAS Integration Server (RIS).
Renewing the license
Administrators activate a new license from License → New license. A license can be activated from a day before it starts; a renewal can be activated earlier, as long as it starts at most a day after the current license expires.
When a license expires, the licensed functions stop until a new license is activated. Activating a license while none is active resets the application settings to their defaults; renewing an active one keeps them.
Delete license removes the active license, and the server can't be used until another one is activated.
Accounts
On a new installation the Welcome page asks for the first administrator account. Remember its username and password: if no administrator can log in any more, the accounts can only be reset on the server computer (see Forgotten passwords).
Passwords need at least 8 characters, with an uppercase letter, a lowercase letter, a digit and a symbol (e.g. !@#$%^&*-_). After 5 failed login attempts an account is locked for 5 minutes.
Remember this browser on the login page keeps you logged in until you log out, or until the browser hasn't been used with the server for 30 days. Without it, the session ends when the browser is closed.
Roles
| Role | Can |
|---|---|
Admin |
everything a Manager can, and manage accounts and the license |
Manager |
change the application settings, add, edit, delete and restore scales, send commands to scales |
| (no role) | view scales, weights, logs and settings |
Administrators manage accounts from Accounts and Add account, and can set a new password for any other account. Administrators can't delete their own account or remove their own Admin role, so there is always one left.
Everyone can change their own username, email and password on the My account page, from the user menu at the bottom of the sidebar (Settings).
Changes to roles and passwords reach sessions that are already open within 5 minutes.
Web interface
The sidebar holds these pages:
- Monitoring: which scales are connected, their uptime and weights.
- Scales: all known scales. A scale's page has these tabs:
- Weight: the current weight and the collected weight updates
- Saved weights
- System (RedBox only): device information and parameters
- Commands: zero, tare and, on ASCII scales, ASCII commands
- Configure: address, protocol, custom ID and name, and whether the scale is managed
- Logs
- Add scale (managers): add a scale by IPv4 address and protocol.
Test connectionchecks that it answers and fills in its unique name. - Application logs, Saved weights, Weight updates: see Data collection.
- Settings: the application settings.
- Administration: Accounts, Add account and License (administrators), Deleted scales (managers).
A scale is Connected, Connecting, Disconnected, Error or Pending, which means waiting to reconnect.
A deleted scale goes to Deleted scales, from where it can be restored. Deleting it there removes it for good, with all its data and saved weights.
Application settings
The Settings page; only managers and administrators can change them. Settings that need a module the license doesn't have can't be changed.
Services
| Setting | Default | What it does |
|---|---|---|
| RDC server | enabled, port 5555 | Receives weights from indicators in RDC mode, see RDC service. Needs the RDC module. |
| Discover RedBox scales | enabled | Looks for RedBox scales on the local network, see Device discovery. |
| Discover ASCII scales | enabled | Looks for RAVAS indicators with an xPico Wi-Fi module on the local network. |
Connectivity
These need the scale management module, see Device connections.
| Setting | Default | What it does |
|---|---|---|
| Disconnect timeout | 10 000 ms | After this long without a message, the server checks on a scale and reconnects if it doesn't answer. 500 to 60 000 ms. |
| Reconnection time step | 1 500 ms | How much longer the server waits before each new attempt after a failed connection. |
| Reconnection maximum time | 60 000 ms | The longest wait between reconnection attempts. |
Data collection
Data collection turns all of these on or off, and needs both the data collection and the scale management modules. See Data collection.
| Setting | Default | What it does |
|---|---|---|
| Collect weight updates | enabled | Stores every change of the weight of connected scales. |
| Collect device-related application logs | enabled | Stores the server's logs about scales, such as connection events, in the database. The log files have them anyway. |
| Collect RedBox device logs | enabled | Stores the logs of connected RedBox devices. Needs the setting above. |
Data retention
| Setting | Default | Applies to |
|---|---|---|
| Application and device logs retention time | one month | the logs in the database, not the log files |
| Device weight retention time | one year | the weight updates and the connection history of the scales |
Both can be set from one hour to 30 years. Older records are deleted automatically, a chunk at a time, so some are kept a little longer. Saved weights and the history of RedBox parameters are never deleted automatically.
Security
| Setting | Default | What it does |
|---|---|---|
| Require authentication for legacy routes | enabled | Whether the legacy routes and the weight upload routes need a logged-in user. Always enabled without the scale management module. |
Warning
With this setting disabled, anyone who can reach the server can read weights from the scales through the legacy routes and upload weights. Disable it only for legacy clients that can't log in, on a network where that's acceptable.
Server configuration
The server reads its configuration from two files in C:\Program Files\RAVAS\Weighing Server\server:
appsettings.json: the defaults. Every update replaces it, so leave it as it is.appsettings.Production.json: your own settings, which override the defaults and are kept across updates. The installer writes the database connection string into it; leave itsConnectionStringssection as it is. Only SYSTEM and Administrators can read the file, so edit it in an editor started as administrator.
Port and address
The server listens on port 7080 on all network interfaces. To change that, add a Kestrel section to appsettings.Production.json, next to its ConnectionStrings. An endpoint named HttpApi replaces the default one, and endpoints with other names are added to it. The server picks up the change without a restart.
{
"Kestrel": {
"Endpoints": {
"HttpApi": {
"Url": "http://0.0.0.0:8080"
}
}
}
}
The firewall rule applies to the server program, not to a port, so it doesn't need to change.
HTTPS
By default the web interface and the API use plain HTTP, so passwords and access tokens cross the network unencrypted. That's meant for a trusted local network. For HTTPS, either give the server a certificate, or put it behind a reverse proxy.
A certificate in a .pfx file goes into an extra endpoint:
{
"Kestrel": {
"Endpoints": {
"HttpApi": {
"Url": "http://localhost:7080"
},
"Https": {
"Url": "https://0.0.0.0:7443",
"Certificate": {
"Path": "C:\\ProgramData\\RAVAS\\certificate.pfx",
"Password": "<certificate password>"
}
}
}
}
}
Binding HttpApi to localhost, as here, keeps plain HTTP reachable from the server computer only. Browsers trust the certificate only if it is issued, by a certificate authority they trust, for the name the web interface is opened with.
A reverse proxy, such as IIS with URL Rewrite and Application Request Routing, nginx or Caddy, has to forward all paths, including the WebSocket connection to /api/v1/mainhub that keeps the web interface up to date. If it runs on the same computer, bind the server to http://localhost:7080 as above.
Clients of the legacy routes then use the HTTPS address as well. The RDC server and scale discovery don't use HTTP and aren't affected.