ODK Aggregate Tables Extension

ODK Aggregate Tables Extensions enable the ODK-X tools to share data via bi-directional synchronization with a central ODK Aggregate server.

The ODK REST Protocol is compatible with ODK Aggregate v1.4.15. The sync protocol has been augmented to cache the user's permissions on the device and, for super-users or administrators, to cache the full set of users and all of their permissions (so that the super-user and/or administrator can assign rows to particular individuals).

Server Setup

First you’ll have to install ODK Aggregate v1.4.15 to a server (see Installing Aggregate).

  1. Install ODK Aggregate v1.4.15 to a server.
  2. Log onto your ODK Aggregate v1.4.15 instance.
  3. Go to the Site Admin ‣ Preferences page.
  4. Check the checkbox for ODK Tables Synchronization Functionality.
  5. Go to the Site Admin ‣ Permissions page.
  6. Add ODK Aggregate usernames by typing one or more users' e-mail addresses into the text area and clicking Add User.
  7. If you have created an ODK Aggregate username, be sure to Change Password on that account to set the initial password for the account.
  8. Grant these users the Synchronize Tables permissions.
  9. Select at least one user to be the administrator and grant them Administer Tables permissions. This user will have the ability to Reset App Server from the Android device and add or remove tables and configuration files on the server. This is the equivalent of the Form Manager permissions in ODK deployments.
  10. Click Save Changes. These changes will not take effect until you do!

Changing the AppName

ODK Aggregate is configured by default to use the default application name. To change the name, go to the Site Admin ‣ Preferences screen and click the Change ODK-X App Name button, and enter a new application name. For example, the https://opendatakit-surveydemo.appspot.com server is configured with survey as its application name.

Note

The ODK-X tools are designed to support multiple, independent, ODK-X applications running on the Android device. Each of the tools has the ability to run in the context of either a default application name, or a specified application name.

By default, all the ODK-X tools run under the default application name. Application names correspond to the name of the directory under /sdcard/opendatakit where the data files for that application are stored.

When you run ODK Services from within ODK Survey, the ODK Survey tool informs ODK Services to run in the context of the application name under which the ODK Survey tool is running. When ODK Services then interacts with ODK Aggregate, it reports that application name to the server. The server must be configured with exactly the same application name or it will reject the requests from ODK Services. This also applies when launching ODK Services from within ODK Tables.

Using Device Synchronization

For more information on syncing, see ODK Services Syncing.