I tried following the directions for this here:
https://docs.openclinica.com/3.1/technical-documents/developing-openclinica/using-openrosa-api-openclinica-experimentalI am not able install enketo-express-oc on a debian virtualbox, keep getting errors. I tried both the manual and the Vagrant method of installing. I was able to get the ODK Aggregate to work in the pre-packaged VM but am not able to connect it in anyway to the 3.5 OpenClinica install. The 3.5 OpenClinica does not even show the option to mark certain eCRFs as participant forms.
I am wondering if any of you have tried this and succeeded or if this is something that will only work for enterprise customers.
Comments
But I am not able to get the formList from OpenClinica. It seems that I am missing something. Here is what I tried:
>I specified the PortalURL in datainfo.properties for OpenClinica and OpenClinica-ws (i.e., PortalURL=http://127.0.0.1:8005/api_v1).
>I then tried getting the formList in the browser using enketo-express-oc: http://127.0.0.1:8005/api_v1/surveys/list?server_url=http://127.0.0.1:8080/OpenClinica/rest2/openrosa/1/formList.
>I also tried accessing the formList using ODK Collect, but get the error "Form listing failed. http://oclocalip:8080/OpenClinica/rest2/openrosa/1/formList responded with: Internal Server Error (500).
>Going to http://127.0.0.1:8080/OpenClinica/rest2/openrosa/1/formList in the browser brings up an openclinica page with the message "Oops! An error has occurred".
It must be something basic that I am not understanding. I would appreciate if someone can point out what I am doing incorrectly.
Thank you
We were very surprised to find out that Participate is not free of charge. Apparently you must subscribe to a part of it running on OpenClinica LLC servers in the UK or US, You would have to pay a certain fee depending on how much you use it. It becomes rather expensive at the end and for us working with academic institutions we can not afford it. We were fotunate to be able to test it before the release and were very impressed how well it worked. We still hope that it will become a true open source! It is really something that we would find very useful.
May be Cal can explain this further on the forum.
Regards
Krister
Participate work. Or are there deployments already with 3.5?
The fees / location thing would probably be tied to the SMS reminder
feature. Cal said a while back that Participate is open source / able to be
set up locally, but if that has changed it would be good to get some
clarification.
During the early spring we were rather involved with the testing of Participate, We got access to a 3.5 Community Edition and were working closely together with the University of Linkoping in Sweden. They wanted to use the Participate application for the collection of sport injuries during the World Athletic Champs in Beijing in August. Unfortunately this did not pan out because it suddenly became apparent to us that we had to run it on a OpenClinica LLC server based in the US or UK and that it would be involving a cost of a total of 50 000 USD for the first year. This was clearly beyond any anything that a small research unit at the university would be able to afford so we have put in on ice until it becomes real open source. Hopefully soon! The product is definitely a breakthrough in the application of patient collecting data using the BYOD method.
Regards
Krister
Thanks for trying it out. I have been able to request the formlist
successfully in the past using ODK Collect, it's not clear to me exactly
where you're having issues. Can you issue the formlist request to OC by
pasting the URL into your browser? What do you get?
As noted in the documentation, overall this API is not production-ready yet
but you can track the progress at
https://jira.openclinica.com/browse/OC-6091.
Lindsay, Krister -
Our near-term goal is to enable enketo-express, or other OpenRosa clients
like ODK Collect, to work with OpenClinica seamlessly, whether its OC
Community, Enterprise, or your own custom build. This part of the work is
all 100% open source and will happen faster the more people contribute to
the development & testing. The complete Participate product relies on
enketo, but the whole platform is not currently 100% open source (Lindsay,
I don't think I ever said it was but apologies if I didn't clearly
communicate). The major pieces of Participate are:
- Forms - using enketo-express. 100% open source
- Scheduling and notifications - powered by the OpenClinica Rules
Engine. 100% open source (though it uses a 3rd party service to send SMS,
the connection to that is not OSS)
- Participant 'Dashboard' - handles participant security/authentication,
UI for access to forms, messages, securely mediates form submissions,
administrative backend - not currently open source.
Right now using Participate requires OpenClinica Enterprise. This is so we
can focus on ensuring it is well-supported, secure and reliable for our
initial customers. Down the road we hope to make it available as a (paid)
module for Community Edition users, though we need to be sure it can be
secured and supported reliably in the CE context first, which is much more
diverse and varied set of environments than for Enterprise Edition.
Regarding pricing mentioned by Krister, I won't go into detail here but
will say it's a pay per form-submitted model. If you already have
OpenClinica Enterprise or start with a single study OCE subscription in our
cloud environment, most studies will cost far less $50k.
I'd love to make everything we do open source. We invest millions of
dollars each year in improving and maintaining OpenClinica and need to have
a sustainable business to continue doing so. The biggest criteria is, will
open sourcing feature X make the software better? That means there has to
be some level of contribution in development, testing, design, best
practices, integrations/extensions, or that we can expect $ to sponsor
development of a feature.
Lindsay and Krister, you are two of the biggest contributors and have
helped make OpenClinica the vibrant community that it is. But the truth of
the matter is the OpenClinica LLC engineering team still writes and tests
~90% of the core code. That brings me to one of the reasons we're moving
not just Participate, but all of OpenClinica, to a new architecture.
Getting under the hood of the core Java code is hard - it's a complex
architecture, the tools have a lot of overhead, and if you don't do it as a
full time job it's hard to make progress. So, we're investing in tools like
enketo not just because they are great at what they do, but because we
believe it will make developing and extending OpenClinica more accessible
to many of you, and that working with the existing OSS communities around
these tools will bring great benefits. See
http://blog.openclinica.com/2015/03/19/engineering-openclinicas-future/ for
a description of the trajectory we're on.
Believe it or not, this stuff is developing really fast and you'll start
seeing it in our git repository soon. At OC15 we talked about an
open-source OpenClinica Toolkit which will comprise a few basic components,
with examples and scripts to help you get started quickly. The major
components include:
- an OC UI 'Skeleton', so you can build dashboards, reports, and views of
your own, share them, and re-use them (v 0.1 coming soon)
- the enketo form engine tied to OC, for both patient forms and clinical
eCRFs (let's get that OpenRosa API working!)
- an API that is JSON/REST based. Like the current API, it will continue to
use ODM as the basic information model but will use more of a microservices
approach
Our goal is to use this approach (and enable others to use it) to quickly
create functionality that is powerful, flexible, and mobile-friendly. The
OpenClinica 3.x code base and database schema will continue to serve as the
backend, and over time most of the modules in the current OpenClinica user
interface will be replaced by similar (better!) functionality based on this
toolkit, and it will be possible to add new modules as well.
Feedback welcome! I'm sure this sounds a bit abstract right now but we'll
share some tangible examples soon.
Best,
Cal
Thanks for the in depth explanations and for sharing your visions for the future development.
Best,
Krister
Thank you for your response. When trying to get the fomrList from the browser using http://127.0.0.1:8080/OpenClinica/rest2/openrosa/1/formList takes me to an OpenClinica page with the message "Oops! An error has occurred". There is no other meaningful error message on the page. Is the address I am inputting into the browser incorrect? Also, what should be the PortalURL in the datainfo.properties if I am trying to get the formList using ODK collect on Android or is the PortalURL not really required for this?
Thank you,
Stan
Replace the '1' in your URL with the Study OID you are accessing, eg:
http://127.0.0.1:8080/OpenClinica/rest2/openrosa/[STUDY_OID]/formList
Note, make sure you're logged in to this study as a valid user.
Best,
Cal
marked as a 'Participant Form'?