Update Collect Forms Remotely
How to do over-the-air updates of forms in Collect
To do over the air Medic Collect form updates via HTTP rather than sending APKs which have a long manual install process, follow the steps below:
- Have your xls forms ready in the folder.
- They should use underscore as name separators. e.g form_name.xlsx
- They should have
nameproperties in the settings
- Upload the forms to the instance using
upload-collect-formsaction as shown below.
cht --instance=user:email@example.com upload-collect-forms
- Go to the Collect App. Delete All forms then go to
Get Blank Formand select all the forms you need.
When you go to
Get Blank Forms and instead of getting a list of the forms available, you get a pop-up error which has a portion of this message instead
...OpenRosa Version 1.0 standard: Forms list entry 1 is missing one or more tags: formId, name or downloadUrl
This means you probably uploaded a XLS file without a
form_id property. To find out which form is missing that, use this command:
curl -vvvv -H "x-openrosa-version: 1" http://user:pass@host:port/api/v1/forms
Should bring a list like this one
Go through the list and see which form has a missing
<formID> property. Add it and reupload the forms using
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.
Last modified 16.07.2021: Update references from medic-conf to cht-conf (#529) (8879b50)