Continuously capture Qualtrics results and push them to another location (OneDrive is included)
889
This package contains scripts that will allow you to automate the export of Qualtrics survey data and deliver it to OneDrive.
All the scripts contained in this project are simple, and can run standalone if needed. This gives you the ability to fork and modify it in a way that is useful to you. The overall project is a representation of how it can be used.
We understand that every use case may differ. This should get you past the basics and move you right to the step where you process your survey results and take action.
You can easily replace the OneDrive upload code with something else to send the data to a reporting tool, another data storage service, or read and act on the data in realtime. If you think your modification might be useful to others, please consider opening a pull request.
At the bottom of this README you will find references to some sample code that shows how to interact with the ModoLabs Communicate APIss that can be used to send push notifications to your mobile app users based on data pulled from your survey results.
This is built and tested using Python 3.8.3 and will run on Windows and Linux.
A requirements.txt file is included that lists all required pip packages. All of this can be installed either globally, using python virtual environments, or run in a container.
Additionally, a Docker image is available on the Docker Hub. The required settings detailed below can be provided using any of the popular container orchestration platforms.
This process requires several settings and a few secret values. There are three general ways to manage all these inputs, and you can use a combination of the three ways.
CV_SECRETS_PATH equal to the directory name.QUALTRICS_CLIENTID and the file would contain a single entry with the value of the clientid. This approach will also work for any or all required settings.CV_CONFIG_PATH set equal to the directory where you will store this file. settings:
QUALTRICS_DATACENTER: xxxxx.cal
QUALTRICS_SURVEYID: YOURSURVEYID123
QUALTRICS_DATACENTER
QUALTRICS_SURVEYID
QUALTRICS_CLIENTID
QUALTRICS_UPLOADPATH
QUALTRICS_UPLOADFILE
MS_AUTHORITY
MS_TENANT
MS_RESOURCE
MS_CLIENTID
MS_CLIENTCERT
MS_USER
MS_USERFOLDER
CV_SECRETS_PATH
CV_CONFIG_PATH
CV_CONFIG_PATH and CV_SECRETS_PATHLOOP_DELAY
TIME_BUFFER
QUALTRICS_EXPORTFORMAT
json or csvMS_UNIQEFILENAME
QUALTRICS_CLIENTIDQUALTRICS_SECRETQUALTRICS_DATACENTERbearerToken used for subsequent Qualtrics API callspython gettoken.pyQUALTRICS_DATACENTERQUALTRICS_SURVEYIDbearerTokenQUALTRICS_EXPORTFORMAT - Can be either csv or jsonprogress_id used in exportprogress.py scriptpython generateexport.py --bearerToken [bearerToken]QUALTRICS_DATACENTERQUALTRICS_SURVEYIDprogress_idbearerTokenfile_id used in exportfiledownload.pyexportprogress.py --progressId [progress_id] --bearerToken [bearerToken]QUALTRICS_DATACENTERQUALTRICS_SURVEYIDfile_idbearerTokendownloadfile = None - Path and filename for writing the file. Defaults to None and is only required if you intend to download and write the file locallywrtiefile = False - True or False and tells the process to write the file locally. Defaults to False and is only required if you intend to download and write the file locallyexportfiledownload.py --fileId [file_id] --bearerToken [bearerToken]MS_AUTHORITYMS_TENANTMS_RESOURCEMS_CLIENTIDMS_THUMBPRINTMS_CLIENTCERTMS_USERMS_USERFOLDERMS_UNIQEFILENAMEfileobject = None - Output of exportdownloadfile.py if the direct stream to OneDrive options is used. Otherwise, set to NoneQUALTRICS_UPLOADFILE - Desired filename when written to OneDriveuploadfilepath = None - If file was downloaded locally before being uploaded to OneDrive, the path to the fileuploadtoonedrive.pyWe welcome contributions to this project. Feel free to open an issue or pull request.
Also included in this code are two scripts that can be used to manage push notifications through the ModoLabs mobile platform. This functionality requires the Communicate Premium feature. I recommend reading Modo support documentation on how to generate the two required tokens needed to use these APIs, setting up the directory and the personal channel and documentation on the appropriate file scructure of the notification directory.
Content type
Image
Digest
Size
341.4 MB
Last updated
about 6 years ago
docker pull wmit/continuous-qualtrics-exporter