Difference between revisions of "AppSuite:OX Drive Administration"

(Created page with "<div class="title">OX Drive Administration</div> __TOC__ = Introduction = OX Drive is the name for a seamless file sync client family. OX Drive clients are currently availa...")
 
(Replaced content with "{{db-g7}}")
Line 1: Line 1:
<div class="title">OX Drive Administration</div>
+
{{db-g7}}
 
 
__TOC__
 
 
 
= Introduction =
 
 
 
OX Drive is the name for a seamless file sync client family. OX Drive clients are currently available for Windows, Mac OS, Android and iOS. OX Drive enhances App Suite function on smartphones and tablets for photo streaming and to synchronize/download files. This article explains how to set up the server-side components for OX Drive.
 
 
 
= Prerequisites =
 
 
 
* Open-Xchange Server v7.4.2 and above (''open-xchange-core'')
 
* Grizzly HTTP connector (''open-xchange-grizzly''), see [[AppSuite:Grizzly]] for details, with ''Comet'' support enabled in ''grizzly.properties''
 
* Valid Push-Certificates / API keys for cloud-based notifications, see configuration below
 
* Enabled Hazelcast for inter-OX-communication, see [[AppSuite:Running_a_cluster]] for details
 
 
 
= Installation =
 
 
 
Open-Xchange Drive is available with the following backend packages:
 
 
 
* ''open-xchange-drive'' - The main server components for OX Drive
 
* ''open-xchange-drive-comet'' - Provides the Push interface via long-polling for the desktop clients
 
* ''open-xchange-updater-drive'' - Adds the OX Drive application to the Windows desktop auto-updater
 
* ''open-xchange-help-drive'' (tbd.) - Online help for the OX Drive applications
 
 
 
Install the above packages as usual.
 
 
 
= Configuration =
 
 
 
The following gives an overview about the most important settings to enable file synchronization via OX Drive, especially when it comes to real-time Push notifications for the client applications.
 
 
 
== General ==
 
 
 
All settings regarding the OX Drive backend component are located in the configuration file ''drive.properties''. The default configuration should be sufficient for a basic "up-and-running" setup (with the exception of defining the Push certificates and API keys for cloud-based client notifications, see next chapters). Please refer to the inline documentation of the configuration file for more advanced options.
 
 
 
== Push via Google Cloud Messaging (GCM) ==
 
 
 
The OX Drive application for Android devices is able to receive Push notifications from the Open-Xchange Server via [http://developer.android.com/google/gcm/index.html Google Cloud Messaging (GCM)]. To issue those Push messages, the backend needs to be provided with a suitable API key for the corresponding Android client application. This API key (a String) is specified in the ''drive.properties'' file:
 
 
 
# Specifies the API key of the server application. Required.
 
com.openexchange.drive.events.gcm.key=
 
 
 
Doing so, Push via GCM can be enabled via:
 
 
 
# Enables or disables push event notifications to clients using the Google
 
# Cloud Messaging (GCM) service. This requires a valid configuration for the
 
# GCM API key, see options below. Defaults to "false".
 
com.openexchange.drive.events.gcm.enabled=true
 
 
 
Depending on the used Android client application ("vanilla" or customized versions), different API keys are needed. Please refer to your Open-Xchange contact for details.
 
 
 
== Push via Apple Push Notification service (APNs) ==
 
 
 
The OX Drive application for iOS and Mac OS devices is able to receive Push notifications from the Open-Xchange Server via [http://developer.apple.com/library/IOS/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/Chapters/ApplePushService.html Push via Apple Push Notification service (APNs)]. To issue those Push messages, the backend needs to be provided with a suitable keystore container file (PKCS #12) containing the APNs certificate and keys. Note that the Mac OS desktop client and the iOS mobile client are served with separately with different certificates, so that both needs to be configured independantly in the configuration file. The following only shows the setup for iOS. First, the path to the PKCS #12 container file needs to be specified at:
 
 
 
# Specifies the path to the local keystore file (PKCS #12) containing the APNS
 
# certificate and keys for the iOS application, e.g.
 
# "/opt/open-xchange/etc/drive-apns.p12". Required if
 
# "com.openexchange.drive.events.apn.enabled" is "true".
 
com.openexchange.drive.events.apn.ios.keystore=
 
 
 
This file is opened by the backend using the password as supplied via:
 
 
# Specifies the password used when creating the referenced keystore containing
 
# the certificate of the iOS application. Note that blank or null passwords
 
# are in violation of the PKCS #12 specifications. Required if
 
# "com.openexchange.drive.events.apn.enabled" is "true".
 
com.openexchange.drive.events.apn.ios.password=
 
 
 
Configuration also allows to swith between development and production environments, however, this setting should be ''true'' normally:
 
 
 
# Indicates which APNS service is used when sending push notifications to iOS
 
# devices. A value of "true" will use the production service, a value of
 
# "false" the sandbox service. Defaults to "true".
 
com.openexchange.drive.events.apn.ios.production=true
 
 
 
The OX backend contacts the APNs servers from time to time to get informed about clients no longer reachable clients where the applications was uninstalled. The interval can be defined with the following setting:
 
 
 
# Configures the interval between queries to the APN feedback service for the
 
# subscribed iOS devices. The value can be defined using units of measurement:
 
# "D" (=days), "W" (=weeks) and "H" (=hours). Defaults to "1D" (one day).
 
# Leaving this parameter empty disables the feedback queries on this node.
 
# Since each received feedback is processed cluster-wide, only one node in the
 
# cluster should be enabled here.
 
com.openexchange.drive.events.apn.ios.feedbackQueryInterval=1D
 
 
 
Please note that if you have multiple backend nodes in the cluster, it's recommended that only one node is configured to contact the feedback query service. Finally, Push notifications via APN for iOS can be enabled via:
 
 
 
# Enables or disables push event notifications to clients using the Apple Push
 
# Notification service (APNS) for iOS devices. This requires a valid
 
# configuration for the APNS certificate and keys, see options below.
 
# Defaults to "false".
 
com.openexchange.drive.events.apn.ios.enabled=false
 
 
 
As stated above, configuration for Push notifications via APN for the Mac OS desktop application is configured similarly, the relevant options are prefixed with ''com.openexchange.drive.events.apn.macos''. Depending on the used iOS and Mac OS client applications for your Server ("vanilla" or customized versions), different PKCS #12 container files and passwords are needed. Please refer to your Open-Xchange contact for details.
 
 
 
= Enabling OX Drive for Users =
 
 
 
OX Drive is enabled for all users that have the capability ''com.openexchange.capability.drive''. You can enable or disable this cabaility globally with the following setting in the ''drive.properties'' configuration file:
 
 
 
# Enables or disables the "drive" module capability globally.
 
com.openexchange.capability.drive=true
 
 
 
More details about capabilities can be found at [[AppSuite:Capabilities]]. Furthermore, this capability can be defined in a more granular way using the Config Cascade as described at [[ConfigCascade]].
 
 
 
 
 
[[Category: AppSuite]] [[Category: Administration]] [[Category: Cluster]]
 

Revision as of 09:18, 4 February 2014