[cvs] [Wiki] changed: Project/ActiveSync
Michael Rubinsky
mrubinsk at horde.org
Sun Apr 11 15:31:11 UTC 2010
mrubinsk Sun, 11 Apr 2010 11:31:10 -0400
Modified page: http://wiki.horde.org/Project/ActiveSync
New Revision: 1.43
Change log: Tasks are now supported, move some stuff around
@@ -34,24 +34,18 @@
</code>
+++ What works
-Contacts and Calendar syncing is mostly working. Provisioning along
with remote wipe is also working on devices that actually support it.
No user interface yet exists for initiating a remote wipe, if you want
to test this you need to:
-
-# Open up the device's info file. This is in your state directory and
is named info-{deviceidgoeshere}.
-# Set the 'rwstatus' value from 0 to 2.
-# Change the policykey to 0 (actually, any value other then the
current policykey would work).
-# Save the file
-
-The next time the device attempts to request a command other then
PING or OPTIONS, it will be wiped. DO THIS AT YOUR OWN RISK!!! After
it is wiped, if you wish to allow the device to connect to your server
again, you should remove the info-{deviceidgoeshere} file so it can be
rebuilt.
+Contacts, Calendar and Task syncing are mostly working. The only
client with task support that has been tested is the !TouchDown
client. Neither Android or the iPod/iPhone have a native !ActiveSync
tasks application.
+Provisioning along with remote wipe is also working on devices that
actually support it.
This code has been tested to some degree on the following devices:
|| Device || Version(s) || Provisioning || Notes ||
|| Android SDK Emulator|| 2.0.1 and 2.1 || Does NOT support
provisioning and will NOT work with it set to //Force// or
//Allow//.||Contacts only as the emulator does not have a native
calendar application ||
|| Motorola Droid || 2.0.1 and 2.1 || No (See above) ||Contacts and
Calendar data (Droid's Corporate Calendar has a buggy client
implementation) ||
||Motorola Milestone || 2.1 || See important note below || ?? ||
-|| !TouchDown For Droid || Version 5.1.0028 || Yes ||Contacts and
Calendar (You can **create** recurring events, but cannot edit them.
Also, recurring events with exceptions are not supported at all. See
Touchdown website for details). ||
+|| !TouchDown For Droid || Version 5.1.0028 || Yes ||Contacts,
Calendar (You can **create** recurring events, but cannot edit them.
Also, recurring events with exceptions are not supported at all. See
Touchdown website for details), and Tasks. ||
|| iPod Touch || 3.1.3 || Yes ||Contacts and Calendar ||
**IMPORTANT NOTE** There have been reports that some devices running
Android 2.1 DO have support for provisioning, however there have been
reports of major issues with regards to the unlock password screen.
Evidently, once a password is set it looks like it's impossible to
remove it. I have tested both the 2.1 SDK emulator as well as the
Motorola Droid (NOT the Milestone) and these still do NOT support
provisioning. This issue might be limited to the Milestone device.
That being said if you plan on having users with Android 2.1 devices,
do NOT enable provisioning unless you are willing to deal with this
issue.
@@ -61,8 +55,21 @@
A special note for the iPhone/iPod (and possibly others) - if you do
not use a SSL enabled site you may receive errors about not being able
to find the !ActiveSync server. If this happens, just continue, or
save, or whatever your option is to continue. On the iPhone, after
everything is completely set up, you must go back into the account
settings and disable SSL.
After the connection particulars are entered, you should choose to
enable the folders that you want sync'd. Right now only Contacts and
Calendar are supported.
+
++++ Provisioning/RemoteWipe
+
+Provisioning allows devices to be more tightly registered with a
particular server. It enables the server to be able to send policy
settings to the device. These policy settings include things like
requiring a PIN to unlock the device, the complexity of the PIN
required, the number of failed login attempts allowed etc...
Additionally, it enables devices to be remotely wiped so that if a
device is lost or stolen, the user or administrator can request the
device to be wiped.
+
+As of yet, no user interface yet exists for initiating a remote wipe,
but the functionality is there. If you want to test this you need to:
+
+# Open up the device's state info file. This is in your state
directory and is named info-{deviceidgoeshere}.
+# Set the 'rwstatus' value from 0 to 2.
+# Change the policykey to 0 (actually, any value other then the
current policykey would work).
+# Save the file
+
+The next time the device attempts to request a command other then
PING or OPTIONS, it will be wiped. DO THIS AT YOUR OWN RISK!!! After
it is wiped, if you wish to allow the device to connect to your server
again, you should remove the info-{deviceidgoeshere} file so it can be
rebuilt. If you do not remove this file, or at least set the value of
rwstatus back to 0, the device will continue to be wiped each time it
reconnects to the server.
++ Rough list of issues/todos/development notes in no particular order
* Horde_History state driver. Currently, !ActiveSync support uses a
file-based state driver to persist the PIM state so we know what
changes. This is a refactored implementation of what the Z-Push
library does. For Horde, this is inefficient, as we have the data
needed to know what has changed and when. Once the majority of the
feature set is working, a Horde_History driver should be written to
replace the file based driver when syncing contacts, calendar, and
todo data. We might still need it if/when push email is implemented.
The backend drivers are able to specify a particular state storage to
enable this functionality if it is needed.
More information about the cvs
mailing list