Deploying client settings
Deploying client settings
It's not only possible to deploy a set of folders to clients by using the profile feature, e.g. for client backup or sharing and setting up folders automatically on the client, but also to pre-configure clients by deploying general settings. Those settings can be defaults for new installations or be enforced, overwriting local setting changes.
Everytime the client starts, it pulls a default configuration file from the server and compares the settings specified there to its local settings. If defined, it will overwrite local settings with the settings specified in that file.
Location of the default client configuration file
The default client configuration file is located in the client_deployment directory of the Server Maintenance Folder and is called Default.config
.
Changing settings in the default client configuration file
Basically you can add whatever settings the client supports.
For a list of supported settings you can check out the ConfigurationEntry.java
and the PreferencesEntry.java
file on GitHub as parts of the client source code are Open Source.
Overwriting local changes on the client
To overwrite local changes on the client, please change the following entry in the Default.config
:
config.overwrite=true
To not overwrite local changes on the client, please change the following entry in the Default.config
:
config.overwrite=false
Useful examples for client settings
Adding a shortcut fo the favorites
The client usually creates a shortcut to the default folder path in the Windows Explorer's Favorites. To disable it:
pref.use.pf.link=false
Automatically sync online folders
The client automatically starts syncing folders available online to the local disk by default. To disable it:
auto.setup.account.folders=false
If there is not enough disk space to sync all online folders to the local disk, the client will automatically set the parameter to false
.
Disabling client-side folder mapping
Some folders with names related to Windows user directories (e.g. Documents) are mapped automatically to the corresponding folder in the user home directory, if the synchronization is started for that folder. To disable it:
create.folder.map.user.directories=false
Enabling the beginner mode
The beginner mode provides only the most basic operation elements in the client user interface, hiding everything else which could confuse users.
Please note that the beginner mode restricts users to only create folders in the default folder path (on current Windows systems C:\Users\<Username>\PowerFolders
). All folders already existing outside the default folder path will be ignored when deploying this setting to existing clients and enforcing it with config.overwrite=true
.
To enable the beginner mode in the client:
pref.BeginnerMode=true pref.ExpertMode=false
Forcing users to update their clients
When the client starts it check if it's on the latest version. If not, it will issue a notification to the user. It's also possible to force users to update. If they don't, the client will not continue working.
update.force=true
Hiding hidden files in the file browser
The client shows hidden files in the internal client file browser. To disable it:
pref.show.hidden.files=false
Hiding user interface elements
It's possible to hide certain elements of the user interface like the files, members, problems and settings tab:
files.enabled=false members.enabled=false problems.enabled=false settings.enabled=false webdav.enabled=false
Restricting the creation of folders to the default folder path
The client allows by default to create or share folders outside of the default folder path. In some environments this might not be wanted, since users could also share their whole Desktop, Documents or even network drives. To prevent that:
create.folder.basedir.only=true
Deploying desktop client help links for users
In the desktop client there are some help links for the users that helps in troubleshooting in many problems, Server administrator can control these links and provide the user a better experience and also this reduces the support for the service. Some example of these help links are as follows:
PowerFolder-Client uses different URIs and set them together to compile a complete URL for a help link that can be given in client GUI or as a notification or warnings. A list of these URIs is given below:
String SETTINGS_GENERAL = "General"; String SETTINGS_UI = "User_Interface"; String SETTINGS_NETWORK = "Network"; String SETTINGS_DYN_DNS = "DynDNS"; String SETTINGS_EXPERT = "Expert"; String SETTINGS_DIALOG = "Dialogs"; String SETTINGS_PLUGIN = "Plugins"; String SETTINGS_INFO = "Information"; String PROBLEM_UNSYNCED_FOLDER = "Unsynchronized-Folder"; String PROBLEM_FOLDER_DATABASE = "Folder-Database"; String PROBLEM_DEVICE_DISCONNECTED = "Disconnected-Device"; String PROBLEM_DUPLICATE_FILENAME = "Duplicate-Filename"; String PROBLEM_ILLEGAL_END_CHARS = "Illegal-End-Chars"; String PROBLEM_ILLEGAL_CHARS = "Illegal-Chars"; String PROBLEM_RESERVED_WORD = "Reserved-Word"; String PROBLEM_FILENAME_TOO_LONG = "File-Name-Too-Long"; String PROBLEM_NO_CONFLICT_DETECTION_POSSIBLE = "Version_Conflict_With_Old_Client"; String PROBLEM_NO_OWNER = "No-Owner"; String PROBLEM_FILE_CONFLICT = "Conflict_handling"; String SCRIPT_EXECUTION = "Script_execution"; String DEFAULT_FOLDER = "Default_Folder"; String TRANSFER_MODES = "Transfer_Modes"; String SECURITY_PERMISSION = "Security_Permissions"; String SERVER_CLIENT_DEPLOYMENT = "Server_client_deployment"; String UI_LOCK = "User-interface-lock"; String SYSTEM_SERVICE = "System_Service"; String EXCLUDING_FILES_FROM_SYNCHRONIZATION = "Excluding_Files_from_Synchronization"; String MEMORY_CONFIGURATION = "Memory_configuration"; String LIMITED_CONNECTIVITY = "Limited_connectivity"; String WEBDAV = "WebDAV";
For example the users are given for transfer mode a help link after clicking
In the code there is the following URI as string encoded:
String TRANSFER_MODES = "Transfer_Modes";
The client will use the URL that is provided in the PowerFolder.config under "provider.url.wiki=wiki.powerfolder.com " and combines it with the string "String TRANSFER_MODES = "Transfer_Modes";" so the result would be: http://wiki.powerfolder.com/Transfer_Modes.
There are two ways to handle these URIs:
- Create an article in User-Wii that is related to transfer mode, e.g Transfer Mode Configuration
After creating this article a server administrator can create a redirect in the Apache (.htaccess) file as:
RewriteRule "^Transfer_Mode" "https://wiki.powerfolder.com/spaces/PF/pages/302081/Transfer+Mode+Configuration"
- Redirecting all the URIs to the main Wiki as:
RewriteRule "^Transfer_Mode" "https://wiki.powerfolder.com/$1"
There is no global rule to redirect all the URIs, all the URIs should have to be redirected individually in the Apache dealing the Wiki-Webserver.