-
Notifications
You must be signed in to change notification settings - Fork 0
Initial configuration
🇩🇰 Dansk | 🇬🇧 English
Previous: Install the client
Open the client. You should see a window looking something like this:

This is the client's main window, where most of the action happens. It consists of a menu bar at the top, featuring the menus Competition and Help, as well as six panes: Competition, Divisions, Online, Local, Update Results and Log. Don't worry about the Invalid Path warning in the log; we'll get to that in just a moment. For now, let's focus our attention on the Online pane.
The Online pane contains fields and buttons relating to the online side of things. The division result server address should already be filled out with a suggestion. If you're lucky, an instance of division-result-server will be live on that address. To find out, simply press the Test button. The server should respond with a 404 Not Found status, informing you that no competition exists with ID 0:

This is technically an error message, but in this case, it's good news: The server is live and well! It just didn't have a competition with the provided ID, but that was the expected outcome.
If, however, you received a response with the status Request Failed and a message along the lines of could not resolve host, then you weren't so lucky. No server was active on that address, but you do still have a few options: If there is supposed to be a server available at that address, you could try to contact the server administrator for help. If not, perhaps you know someone else who is hosting a suitable server that you could use instead. And finally, you could be the server administrator by going down the self-hosting path or managing an instance on a cloud computing provider. Setting up a server is much more involved than installing the client, and it must be hosted on a machine with a fixed and publicly-visible IP address. Check out the server documentation for more details.
Once you have successfully connected to the server, move down to the Local pane.
The first field here is for the working directory. Specify one by clicking the ... button next to the field and navigating to a folder of your choice. This is where the client will write intermediate files, and logs are placed here as well, so be sure to select a folder that the client has permission to write in. I recommend creating a new folder specifically for this purpose to avoid accidentally overwriting existing files, perhaps on the desktop or together with your other files relating to the division match.
The next field tells the client where to look for an installation of Divisionsmatchberegning. Ensure that you have the correct version of Divisionsmatchberegning installed so that the points are calculated according to the current division match rules. Then, click the ... button next to the field and navigate to Divisionsmatch.exe. This should take care of the Invalid Path warning that we ignored earlier.
Finally, the address to MeOS's information server must be provided. The client extracts results from MeOS through the information server API. The information server is started in MeOS from your competition's Services tab. If the information server and the client are running on the same computer, the default settings should work without any firewall configuration. In this case, the suggested address (http://localhost:2009/meos) can be left as is. Of course, the information server could be hosted on any computer on the local network or indeed the internet, although this may require some additional network configuration.
The log pane on the right is your main viewport into the states and actions of the client and server. Whenever the client communicates with external programs and services or performs critical, internal tasks, responses and outcomes are displayed in the log. In addition to being displayed in the Log pane, the log can be saved to the working directory, either in HTML (identical to the displayed log), plain text or both. Each log entry consists of three components: timestamp, status line and message.
The timestamp displays the local time at which the log entry was emitted. It follows the format yyyy-MM-dd HH:mm:ss as suggested by the ISO 8601 standard.
The status line contains a lot of information. First, the colour corresponds to the type of log entry:
| Colour | Type | Description |
|---|---|---|
| Blue | Info | Non-critical information, such as a new version being available |
| Green | Success | An action or request was carried out successfully |
| Orange | Warning | Something is not right, and you should probably have a look |
| Red | Error | Something went wrong, and the action or request failed |
The text of the status line can be divided into three parts: source, action and result. The source indicates the software or service that produced the log entry. Examples include Internal (for the client), MeOS and Web Server. The action briefly describes what was attempted, and finally, the result is a short description of the outcome.
The third component of a log entry is the message. For errors and warnings, this is typically a slightly more detailed description of the result. Otherwise, the message can contain formatted content or data, or maybe a link to the download page for a new version. Formatted content or data is usually wrapped in HTML, XML or JSON. However, the HTML and XML bodies that the client typically receives are rather large and of limited communicative value, so these are excluded from the log.
The client communicates with MeOS and the server via HTTP, which provides standardised responses. Log entries formed from HTTP responses show the status code and text as the result in the status line.
Let's wrap up the log description with an example. Recall when we tested the connection to the web server with the Test button, which yielded a response looking something like this:

The first line contains 2023-09-27 21:03:18, which is of course the timestamp.
The second line is the status line, which reads Web Server / Test: 404 Not Found. Breaking it down, we get source: Web Server, action: Test, and result: 404 Not Found. When we pressed the Test button, we sent an HTTP request to the web server. The web server's response is what produced the log message, so the source is Web Server. It served our Test request, hence the action being Test. And lastly, the server responded with a standard HTTP status, in this case 404 Not Found.
The third line is the message, which provides us with a slightly more detailed explanation wrapped up in JSON syntax: {"message":"No competition exists with ID 0"}. This is the server's reason for responding with a 404 Not Found: The requested competition simply doesn't exist. Not yet, anyways...
Next: Create your competition