Update Collect Forms Remotely
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:
Step 1
Have your xls forms ready in the folder.
- They should use underscore as name separators. e.g form_name.xlsx
- They should have
form_id
andname
properties in the settings

Name property
Step 2
Upload the forms to the instance using cht-conf
Using the upload-collect-forms
action as shown below.
cht --instance=user:pass@instancename.app.medicmobile.org upload-collect-forms
Step 3
Go to the Collect App. Delete All forms then go to Get Blank Form
and select all the forms you need.
Troubleshooting
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 name
or 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:

Xform List
Go through the list and see which form has a missing <name>
or <formID>
property. Add it and reupload the forms using cht-conf
again.