QGisODK plugin


(Enrico Ferreguti) #1

I'm pleased to announce that I submitted to the QGis repository a new
plugin called QgisODK
The plugin allow XlsForm/Xform generation from datasources, quick authoring
and collected data retrieving/syncronization: http://plugins.qgis.org/
plugins/QgisODK/

Source repository and issues tracker: https://github.com/enricofer/QgisODK

Best Regards
Enrico Ferreguti


QRealTime: A QGIS plug-in for ODK
QgisODK plugin supports aggregate
(Richard Fletcher) #2

Hey, I am a novice QGis user, this sounds interesting. What have you used
it for ? (or are planning to use it for?)

ยทยทยท On Tuesday, December 20, 2016 at 11:31:53 AM UTC, Enrico Ferreguti wrote: > > I'm pleased to announce that I submitted to the QGis repository a new > plugin called QgisODK > The plugin allow XlsForm/Xform generation from datasources, quick > authoring and collected data retrieving/syncronization: > http://plugins.qgis.org/plugins/QgisODK/ > > Source repository and issues tracker: https://github.com/enricofer/QgisODK > > Best Regards > Enrico Ferreguti >

(Tanya Tejassvi) #3

Hi Enrico

Do you have an updated version of this plugin for Qgis 2.4.0?


(Tanya Tejassvi) #4

Hi, do you have an updated version to be used with Python 2.4.0?

ยทยทยท On Tuesday, December 20, 2016 at 5:01:53 PM UTC+5:30, Enrico Ferreguti wrote: > I'm pleased to announce that I submitted to the QGis repository a new plugin called QgisODK > The plugin allow XlsForm/Xform generation from datasources, quick authoring and collected data retrieving/syncronization: http://plugins.qgis.org/plugins/QgisODK/ > > > Source repository and issues tracker: https://github.com/enricofer/QgisODK > > Best Regards > Enrico Ferreguti

(Yaw Anokwa) #5

I'm not sure how often Enrico looks at the list, so it might be best
to file an issue at https://github.com/enricofer/QgisODK/issues asking
Enrico to update the plugin for QGIS 2.4.0.

Yaw

ยทยทยท On Fri, Jun 2, 2017 at 3:25 AM, wrote: > Hi Enrico > > Do you have an updated version of this plugin for Qgis 2.4.0? > > -- > -- > Post: opendatakit@googlegroups.com > Unsubscribe: opendatakit+unsubscribe@googlegroups.com > Options: http://groups.google.com/group/opendatakit?hl=en > > --- > You received this message because you are subscribed to the Google Groups "ODK Community" group. > To unsubscribe from this group and stop receiving emails from it, send an email to opendatakit+unsubscribe@googlegroups.com. > For more options, visit https://groups.google.com/d/optout.

(Enrico Ferreguti) #6

Hi Tanya, the plugin currently works under at least QGIS 2.14 and this means Python 2.7 and no standalone release.
I will migrate the plugin to QGIS3 when it will be available (late fall/winter 2017) and this means Python 3.5.
Regards


(Tanya Tejassvi) #7

Thanks for your reply Enrica. I shall download and install Qgis 2.14 and
try the ODK plugin with it


(Souirji Abdelghani) #8

Hi @Enrico_Ferreguti,

I use both QGIS and ODK so I'm delighted by your plugin. However, I find its documention, as for most plugins, very very minimal.
It would be nice if you could provide a page or two of more detailed explanations about the use of the plugin, preferably with an example.
All in all, thumbs up for this nice initiative!
Regards


(Tanya Tejassvi) #9

Thanks for putting this up. I also am looking for some documentation


(Enrico Ferreguti) #10

However, I find its documention, as for most plugins, very very minimal

I included a brief doc in github files


perhaps it would need a step by step tutorial.


(Souirji Abdelghani) #11

Hi @Enrico_Ferreguti,

Thanks for the shared link. Indeed the information displayed is much more detailed. However, as you kindly mentioned, a step-by-step tutorial would be appreciated by most users.

Thanks again and thumbs up again to you.


(Enrico Ferreguti) #12

Hi all.
I want to inform you that the last release QgisODK, the plugin for authoring ODK surveys from QGIS, now supports ODK_aggregate server
Any feedback, issue report or suggestion are welcome:


http://plugins.qgis.org/plugins/QgisODK/

Best Regards
Enrico Ferreguti


(Souirji Abdelghani) #13

hi @Enrico_Ferreguti,

I congratulate you again for your plugin which is apparently very useful. However, as for many QGIS plugins, there are no tutorials and not even a user guide. This is a major drawback for people who want to use your plugin.

Although your explanations at https://github.com/enricofer/QgisODK are a good start, I again ask you kindly to provide a tutorial and/or a full user guide.

Best


(Yaw Anokwa) #14

@Souirji_Abdelghani Perhaps you can write the first draft of a user guide and send in a pull request?


(Souirji Abdelghani) #15

Hi Yaw,

I have never used the QGISODK plugin so far. This is why I said that it
is "apparently very useful". However, I am interested in doing so as
soon as I can. I have been very busy the last 2-3 months and this will
continue until June-July.

I shall try the plugin and perhaps prepare a tutorial during the coming
summer.

Best regards,

Abdelghani


#16

Hi @Enrico_Ferreguti,
Thanks for sharing the plugin. I think this has potential to be very powerful tool. I am struggling to make sense of it (probably my fault!!). What would be REALLY useful is to be able to connect an existing ODK form to this plugin via Aggregate. Although this might be possible I can't work out how to do it from the documentation available.
For very stupid people like me please can you tell me how to connect / import data from Aggregate? I have a project with existing data that I would like to connect with QGIS - do I need to create a new qgis layer with matching fields before I can connect to Aggregate (tried this and failed), or can I import the XML version of my form to your plugin (can't see how to do that)?

I'm not sure how to import / transpose geometry as the ODKcollect form has two fields (lat and long) to represent the location (as well as Altitude and accuracy, of course) and you have a geometry field... so I need to concatenate them? and if so is there a standard script to use for points and lines?

What is the Aggregate URL that I need to supply - is that https://rhubarb_rhubarb.appspot.com/Aggregate.html for example, or something more specific? I don't seem to be able to get the plugin to connect to my Aggregate server so wonder if I'm not pointing in the right direction.

Sorry if this sounds fundamentally stupid, but I can't get past the first hurdle to test the plugin. I would prefer not to have to start again with my ODK Collect form, so being able to import it to QgisODK would be really helpful... I guess that I might be in a similar place to @Souirji_Abdelghani

Thanks for your help


(Enrico Ferreguti) #17

Hi @seewhy, once installed the qgisODK plugin is very simple to connect to ODK aggregate for uploading forms and downloading submissions. I assume that you have already installed QGIS and the qgisODK plugin.
Now you can open the plugin dialog and click on gear icon on the top right of the window to open services settings dialog, then click on ODK aggregate tab and insert server endpoint url, in your case https://rhubarb_rhubarb.appspot.com and your credentials, You'll need form upload and submissions download rights.
Now selecting a qgis layer in the combobox at the top left of the plugin dialog a default form will be build up from layer field structure, you'll now want to rearrange and group form items, or straight upload the form to service by clicking the "export to web service" button on the bottom. At this point if everything went right the form will be available for ODK collect and you will be able to download submissions clicking on "import collected data" button.
If you are managing your surveys from qgisODK, location fields should be correctly interpreted as features geometries, otherwise if you are downloading submitted forms created with other tools you'll have to manually map the location field as geometry in the import form.
If you send me screenshots your workflow I will drive you though operating steps
Best Regards. Enrico.


#18

Hi @Enrico_Ferreguti
Thanks for the step-by-step instructions. I have managed to link to Aggregate now (I tried those steps before but I just found a typo in the connection!!!)
So I can create a form from QGIS, and upload it to Aggregate,which is great. Thanks for helping me get this far. I might be able to implement a simplified version of my form to get things started.

Maybe what I misunderstood was downloading data from Aggregate

I have created a QGIS layer with the same field structure as my Aggregate layer then tried to import collected data in case that would work... when I click 'import collected data' and select my existing form (built using Xforms) I get an error "IOError: [Errno 9] Bad file descriptor". Perhaps it is not possible to work this way? Your response implies that it is possible, but there are probably lots of cross checks required to make sure that everything matches exactly.

If you could expand on 'manually map the location field' that would also help me - on Aggregate there are 4 fields that presumably map to the 1 field in QGIS plugin so I don't know how to 'concatenate' them into a geometry column. sadly not. I think there might be lots of questions underlying this - ESRI shapefile format and ODK image, for example.

I have an instance name on my form which helps to identify the item in a 'human readable' format... so the person collecting data can find the right form if they want to edit it on their mobile device. That's part of the reason that I wanted to import from my existing form rather than use the QGIS plugin as the form creator (no disrespect!).

Sorry if this is a complicated and painful set of questions. If I can help document things when I work out how to use it I will do my best!
Thanks in advance.


(Enrico Ferreguti) #19

Hi, @seewhy,
The error message you are reporting is a minor issue related to qgis console print output, that I will fix soon.
Sometimes, when python console is hidden, Qgis throws this exception when a plugin try to print a message, at the moment, you can simply bypass this issue executing qgisODK plugin keeping python console opened by clicking on menu Plugins -> Python console or CTRL-ALT-P on keyboard.
About the location field, The plugin is expected to process a single text string for gps field containing latitude, longitude, height and precision separated by spaces (this is true for geopoints; geotraces and geoshapes are geopoints lists separeted by semicolon ";") so I think that you are receiving back a geopoint splitted in multiple fields. The reason why you get this result is for me not clear. Perhaps building form in odk build or decoding it in odk aggregate there is some metadata options checked... But I think thet you should anyway retrieve the original gps location field in order to map geometry to qgis layer: https://github.com/enricofer/QgisODK/raw/master/doc/16-import-collected-data-table.png
Otherwise, you can always load the csv that comes from ODK aggregate output mapping latitude and longitude as x y values in the csv import dialog: https://i.stack.imgur.com/woUo2.png


(Mathieubossaert) #20

Hi @Enrico_Ferreguti,

I miss some times to test your promising QGIS plugin. If my conf proposal is accepted for the FOOS4G-FR, I will take time and test it :wink:

By the way, ODK, QGIS and LizMap are the main tools we use here in Montpellier over our PostGIS database to collect and create data.