DemevengDerrick / ETL-Connector-for-ODK

QGIS plugin to connect to an ODK Instance, retrieve forms and load them into QGIS as shapefiles, geopackage or csv.
GNU General Public License v3.0
10 stars 1 forks source link

Error connecting to ODK Central #11

Open walking-the-talk opened 1 year ago

walking-the-talk commented 1 year ago

I am trying to connect to a self-hosted version of ODK Central but I'm getting a Python error when I try to preview the data.

I followed the discussion in the ODK Forum to point to the json output from the server: https://forum.getodk.org/t/qgis-etl-connector-for-odk/39864 So I constructed my URL as: [https://[mydomain]/v1/projects/1/forms/[formname].svc/Submissions and the plugin can connect (response 200)

When I click 'preview data' there is a python error:

[path/to/QGIS..]/python/plugins\odkconnector2\ETLConnector4ODK.py", line 262, in previewJsonData
              self.dlg.jsonText.appendPlainText("----" + str(list(i.values())) + "\n")
             AttributeError: 'str' object has no attribute 'values'

Did I do something wrong or is the plugin not designed to work with Central?

Thanks.

DemevengDerrick commented 1 year ago

Sorry for the late reply @walking-the-talk. I don't know why but I completely missed this. The connector does not currently support central. But we are working on a new release that will do. We will keep you posted.

Best

etorresmoya commented 1 year ago

I am trying to connect QGIS 3.28.5 with ODK Central versions: 86c843b0a2bcf1dac186a07ac4feeb688455b652 (v2023.2.1-2-g86c843b) d4c964826031477962b05b6d08dfa8fecec98db2 client (v2023.2.0) 05ebccdea1736240ceafa929399d25920c7bdb2f server (v2023.2.0)

But I receive this error

2023-06-03T06:37:59 WARNING Traceback (most recent call last): File "C:\Users/etorr/AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\odkconnector2\ETLConnector4ODK.py", line 258, in previewJsonData jsonData = data.json() #load the data into a json data structure File "C:\OSGeo4W\apps\Python39\lib\site-packages\requests\models.py", line 898, in json return complexjson.loads(self.text, **kwargs) File "C:\OSGeo4W\apps\Python39\lib\json__init__.py", line 346, in loads return _default_decoder.decode(s) File "C:\OSGeo4W\apps\Python39\lib\json\decoder.py", line 337, in decode obj, end = self.raw_decode(s, idx=_w(s, 0).end()) File "C:\OSGeo4W\apps\Python39\lib\json\decoder.py", line 355, in raw_decode raise JSONDecodeError("Expecting value", s, err.value) from None json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

I hope some help.

JLHI commented 3 months ago

Hi,

The connector does not currently support central ?