CrushSync is an enterprise only feature.  It provides real time file synchronizations through CrushFTP. The client runs on the local machine monitoring the specified folders. When a change is detected, the change is propagated to the CrushFTP server, and any other clients subscribed to that folder now get those same changes. Only the changed parts of large files are sent, compression is used to save on bandwidth, and bandwidth acceleration can be used as well. Client configurations can be pre-configured for deployment, and an advanced mode allows clients to encrypt the data at the client side so that the server can never access the raw data. Only clients that have the private key can. This allows for robust one way synchronizations where a client places a file in the folder, and its sent to the server encrypted, and downloaded and decrypted by other privileged clients. The client is launched as an automatically updating application over a web connection. You as the server administrator control when you want to update the application for end users.

----
__Setup Guide: Synching and Revision Tracking__
----
First you need to configure a folder in the user manager that has synchronization tracking enabled on it.  Then on a folder item, give it full permissions.

[attachments|usermanager_vfs_sync.png]

Then click the Advanced button to open the panel to configure the sync options.

[attachments|vfs_sync.png]

This configuration is the same on both user1 and user2 in the example.
----
__Downloading and Starting the Client__
----
Use a URL pointing at your own server something like this:
{{{
https://test.crushftp.com/WebInterface/CrushSync/CrushSync.jnlp
}}}

This will start a java WebStart application which is the client.  Its downloaded automatically, and launched after getting user approval.

OS X:\\
[attachments|crushsync-download_osx.png]\\
Windows:\\
[attachments|crushsync-download_win.png]\\

You may be prompted to save a shortcut for future launching of the application without going to the URL again.  If you are not prompted, it will save a shortcut icon on your desktop.

[attachments|saving_shortcut_app_osx.png]\\

----
__Configuring the Client__
----
The client needs to be configured to connect to your CrushFTP server.  You can build a default configuration that gets distributed automatically with CrushSync downloads so that the user only need to enter in details like their username and password.  You can take a look at the jnlp file in the WebInterface/CrushSync/ folder to see the reference it makes for a default configuration file.

Otherwise, you can configure everything in the client.

OS X:\\
[attachments|config_user1_osx.png]\\
Windows:\\
[attachments|config_user2_win.png]\\

There needs to be a local folder configured for synchronization, as well as the server path.  Typically this is going to just be a single slash unless you are only synching to a sub directory of a user.

The path to the server location must always be the same across multiple accounts.  So user1 can't have a server path of /myfiles/ and user2 have a path of /mydocuments/.  They both must be the same.

----
__Testing and Starting the Sync__
----

The 'Test' button will check your settings and verify a connection to the server to make sure all seems OK.

[attachments|test_sync.png]\\

Now you can click 'Start Sync' to starting things off.  It will compare your current files with the server, and look for any changes that have occurred while you were offline.

[attachments|crushsync_active.png]

Once all comparisons are done, it will sit idle in an 'Active' green window state.  The realtime file monitor is watching for any changes occurring in the folder you have configured.  Any changes, renames, deletes, etc will then be propagated to the CrushFTP server so that other CrushSync clients can replicate them locally.

----
__Synchronized__
----
Here is a screenshot of OS X and Windows keeping the files in sync.  One file was added on OS X, and the other on Windows, and they were cross replicated between the two different operating systems

[attchements|crushsync_osx_win.png]