6.2. Accessing a server from the desktop

6.2.1. Connecting to a server

To log in to a Fanurio server, you need to run the application in client mode (explained below) and enter the server address together with your username and password.

If the account was created for you, ask the server administrator for the server address, your username and password.

If you received an email invitation to create an account, you should already know the server address because it's in the invitation. You should also know the username and the password because you must enter them to create the account.

If you already have an account but you forgot your username and password, click the "Can't access your account?" link to receive an email with your username and a link to reset your password. This feature may not be available for your server because it must be enabled by the server administrator.

Log in to a Fanurio server

New users

When you run the application for the first time, just select "No, I need to connect to a server" in the setup guide (option B below). The setup guide will then finish and switch the application to run in client mode so you can log in to a server.

Fanurio Setup Guide - License Registration

Existing users

If you have been running the application in standalone or server mode and you want to connect to a server instead, go to Help » License Registration... and select "No, I need to connect to a server". If your repository is open, Fanurio will close it and switch to client mode so you can log in to a server.

6.2.2. How synchronization works

When using the server version, Fanurio allows users to work on their projects even if the server is not online. This is possible because Fanurio keeps a local copy of their data. This feature is especially useful when working outside the office where the server may not be available.

When a user makes some changes, they are first recorded locally and then they are sent to the server. Fanurio also makes sure the local copy is up to date in case new changes are recorded on the server. The local repository and the server repository are kept identical through synchronization, either manual or automatic.

Manual synchronization can be performed from File » Synchronize, by pressing the F9 shortcut or by clicking the synchronization button from the toolbar.

Manual synchronization is rarely needed because Fanurio can also perform automatic synchronization as follows:

  • On login

    Fanurio synchronizes the client with the server when a user logs in so that the local repository has the latest changes available on the server.

  • After each local change

    Fanurio sends local changes to the server as they are made. Instead of synchronizing each individual change immediately, Fanurio waits for 5 seconds to see if multiple changes are made and only then it sends them to the server.

  • Periodically

    Fanurio synchronizes the client with the server periodically at 2 AM, 8 AM, 2 PM, and 8 PM so that the local repository has the latest changes available on the server.

    For experts: Just in case you want to configure Fanurio to synchronize more often, you need to change the following setting manually. This example shows how to synchronize every hour. When specifying new synchronization patterns, make sure you test them first.

    synchronization.scheduled.pattern=0 0 0/1 * * ?

If the server is not online or if the synchronization fails for some other reason, the synchronization icon from the toolbar shows a red badge with an exclamation point.

Conflict resolution

Fanurio resolves all synchronization conflicts automatically by using a "server wins" strategy. For instance, if the description of a project changes both locally and on the server, the server description will be replace the local description when the next synchronization is performed.

The best strategy to avoid conflicts is to sync often with the server or make sure Fanurio can sync automatically with the server. That's why Fanurio will show a warning message if you don't sync for more than a day.

6.2.3. The local repository

The application saves all data (database and templates) in a local repository on disk and updates it every time it is synchronized with the server. The local repository is created when a user logs in for the first time to the server.

The location of the repository is not configurable but it can be accessed from File » Repository Details just in case you want to know where it is. The Repository Details window also displays other details about the synchronization status like when it was synchronized the last time and if there are any unsynchronized local changes.

Repository details dialog

The local repository can be reset from File » Reset Repository or when the server is updated and it requires the local respository to be reset. When it is reset, the database folder is renamed from data to data-yyyy-MM-dd-HH-mm-ss and all data is downloaded again from the server.

Note: The local repository folder can grow quite large if it's created for an Admin user because it will download most data from the server. If the server database is large so will the local database.

6.2.4. Changing the server address

Servers rarely change their address but if that happens and you're running Fanurio in client mode, go to File » Change Server Address... to update it.

The server address may change for one of the following reasons:

  • The IP address of the server has changed.

  • The port number has changed.

  • The protocol has changed (e.g. http:// to https://).

The server administrator should inform you about such changes and about the new address. If the server has a different address (IP/URL) then you will no longer be able to synchronize your local changes with the server until you update it.

IMPORTANT: If the new address points to a different server (unlikely), the local repository will not be able to synchronize with the server. The new address must point to the same server.