Using the Scoreboard on a Network - rollerderby/scoreboard GitHub Wiki

When the scoreboard background script is launched on a machine, that machine serves up a website. If it is served up on a network, this website can be accessed by other computers, tablets, or mobile phones on that network to do the following:

  • Remotely control the scoreboard using the full control panel or a version scaled down for mobile devices
  • Track penalties and lineups
  • Display a read-only penalty whiteboard
  • Serve up a video overlay that can be used for online broadcasts

Ideally, if you are using the scoreboard to do any the above, using your own router to serve up a private network (as opposed to using the venue's network) tends to improve performance due to reduced network congestion. Using Ethernet connections instead of wireless ones can also help reduce delays. Make sure that the network is password-protected so that fans/skaters/etc. aren't able to connect to the network and tamper with the scoreboard.

Not that connecting multiple devices increases the hardware requirements. If you are running the CRG server on an older/weaker machine, it is recommended that you test your setup before game day.

It is important that you connect the computer/scoreboard to the network FIRST, then launch the scoreboard software. Failing to do this in the right order, means CRG cannot link itself to the network and it will not be visible.

Once the scoreboard background script has been launched and start.html is open in the browser (see the Setting up the Scoreboard section in Installing the Scoreboard Software), the IP address for the scoreboard website will be displayed on the start page in a box on the right labeled INFO in the format http://x.x.x.x:8000/.

On the device you wish to connect to the scoreboard server, connect to the network that the server is on. Open a browser and navigate to the IP address on the server's start page (http://x.x.x.x:8000/). A copy of the start page will be displayed. From there, select the function that you want to perform.

Access Control

CRG supports basic access control. Each device can be switched between read/write and read only mode and the default mode for newly added devices can be set. By default new devices will be in read/write mode, which is the same behaviour as prior versions without access control.

Devices in read only mode can still access any screen but if they attempt to change any values or upload any files, this will generate an error message. This can be useful in order to give benches access to the scoreboard data without worrying about them accidentally modifying game data. It can in principle also be used to give access to the audience but due to every extra device increasing the load on both the scorebaord server and the network this is generally not recommended.

Managing Devices

From the start screen go to Devices in the Utilities & Settings category. This leads to a screen that shows an overview of the devices the scoreboard knows about:

devices-screen

The buttons at the top allow you to filter the list of devices.

  • When Comments is enabled all devices with comments will be displayed.
  • When Writers is enabled all devices that have written at some point will be displayed (even if they may not write right now).
  • When Active is enabled all currently active devices will be displayed.
  • When Inactive is enabled all currently inactive devices will be displayed.

The selections are cumulative, e.g. in the screenshot all devices that either have a comment or have written are shown. Selecting Active and Inactive together will always show all devices known to the scoreboard.

Right above the table you can toggle if new devices should be given write access and if clients running on the same computer as the CRG backend should always have write access.

The columns in the table have the following meaning:

  • Name: A unique auto generated name for the device.
  • Access: Current access status for the device. Click to toggle it for other devices. (You can not change your own access status in order to avoid users accidentally locking themselves out of the scoreboard.)
  • Comment/Page: You can enter any text in the comment field in order to help you recognize which device is which. Below that a list of currently open pages is given for active devices.
  • Platform: What the device reports as it's operating system.
  • Address: The network (IP) address of the device.
  • Last seen: How long ago the device has been seen.
  • Last write: How long ago the device has last modified anything in the scoreboard.
  • Age: How long ago the device has first connected to the scoreboard.

Notes on device identification

  • Devices are identified via browser cookies. That means if the browser is configured to discard cookies on close or cookies are deleted manually, closing and reopening the browser will cause the scoreboard to treat the device as a new one. The same happens when a different browser on the same physical device is used. (The old entry will however still be listed as an inactive device, as the software has no way of knowing that the cookie has been deleted.) This can cause unwanted changes in the access state for physical devices:

    • When new devices are set to read only mode a device with write access might lose this status after closing and reopening the browser. If this happens to all the devices with write access in parallel (e.g. over night at a multi day event), this will cause you to be locked out of the scoreboard. If you can open a browser on the computer running the scoreboard server, the easiest way to avoid this is to allow local devices to always write. If this is not an option due to your setup, it is recommended that you verify ahead of setting the default to read only that at least one device will be reidentified after closing and reopening the browser.
    • When new devices are set to read/write mode a read only device can gain write access by deleting cookies. Thus this configuration is only useful to protect against people accidentally changing the scoreboard. If you worry about people intentionally modifying data, you should deny write access for new devices at least from game start until all stats have been extracted.
  • Any device will be removed from the scoreboard's list of devices after it has been inactive for 15 days.

Recommended procedure for setting up devices in the venue when using access control:

  1. Connect the browser on the device running the server and verify that either local devices can always write or that the browser is recognized as the same device after closing and reopening the browser.
  2. Set the default mode for new devices to read only and set any device that's already connected and that you haven't identified as one that should write to read only as well.
  3. For each additional device
    1. Connect the device to the scoreboard and open the start page.
    2. At the bottom of the Network section you'll see Information about your device like this: device-info
    3. Use name and address to find the device in the list on the devices page. Add a comment that will help you identify the device during the course of the event. Adjust the access mode of the device if necessary.

Regaining write access when you are locked out of the scoreboard

  • When the scoreboard does not know about any device with write access (e.g. after it hasn't been used for more than 15 days) write access for new devices will automatically be enabled at startup. If this situation arises while the scoreboard is running, stopping and restarting the scoreboard server will fix the situation.

  • When there are devices with write access listed but you either don't have access to them or the corresponding browser cookie has been deleted, there are two ways to recover.

    • Method 1:

      1. Go to the Up / Download screen and there select the ScoreBoard Data tab.
      2. In the download area click on All Data and store the resulting file somewhere, where you'll find it again.
      3. Stop the scoreboard server.
      4. In your scoreboard folder navigate to config -> autosave.
      5. Move all the files scoreboard-n-secs-ago somewhere else.
      6. Restart the scoreboard server. The scorebaord should now be in the same state as after you downloaded it.
      7. Go to the ScoreBoard Data tab again.
      8. In the upload area select the file you saved previously and then select Replace running scoreboard.
      9. Now all your data should be back and your current device should still have write access. If something went wrong you can restore the previous state by stopping the scorebaord and moving the autosave files from step 5 back to their original location (overwriting any files that may have been written in the meantime).
    • Method 2: Stop the server and use a text editor to modify the entry in config/autosave/scorebaord-0-secs-ago.json for "ScoreBoard.Clients.NewDeviceWrite" from false to true. Restart the server. (You may also have to delete the CRG cookie or use a different browser in order for your device to be recognized as a new device.)