Setting up the new Turnitin in Sakai 11-snapshot
How to integrate the new Turnitin code to Sakai 11.
Have your TurnitIn administrator contact Turnitin to enable the LTI integration for you.
Once they have, your administrator will need to login, go to integrations, and configure it.
The output of this will be a secret key (which you choose) and the numeric account number of your account at TII.
Start with a recent copy of Sakai 11.
Integrate the following PR: https://github.com/sakaiproject/sakai/pull/2202
There will be minor conflicts in assignments, which you will need to fix. As I recall the reason for the conflcts is that some of the changes are already there. so they weren't hard to resolve.
Use this link to find the Sakai 11 version of the Oxford code: https://github.com/sakaiproject/turnitin/tree/d00bc346f1aa477cdd7c898cf916b6a64638bc37.
Use clone or download to download it. (Incidentally this is a slightly old version of the Oxford code. I looked through the patches after it, and the one I give below seems to be the only critical one.)
Take contentreview-impl from it and replace the copy in 11.
Make sure contentreview-impl is being built. I.e. in pom.xml make sure the list of modules incudes
<module>contentreview-impl</module>
We have several patches. But the most important is this: In contentreview-impl/impl/src/java/org/sakaiproject/turnitin/util/TurnitinLTIUtil.java,
*** 161,166 ****
--- 166,174 ----
log.debug("Breakdown originality values: " + breakdown.toString());//TODO when should this be showed?
}
return score;
+ } else if (type == BASIC_ASSIGNMENT) {
+ // If we get a 200 back and don't want more information it's ok.
+ return 1;
}
} else if(statusCode == 302){
log.debug("Successful call: " + defUrl);
Without this you can’t create assignments.
Once you’ve built this and started Sakai, login as admin. You need to add Turnitin as an LTI tool in “External tools”. Here’s Oxford’s instructions:
New TurnItIn Integration
Quartz Jobs
Remembers to set up Quartz job
Content Review Queue
Content Review Reports
you will have to run jobs manually unless they're set up to auto-run. for testing I've been running them manually when needed
LTI Tool Config
As admin, create a site that you’ll install the turnitin API tool into. If you can manage to set the siteid to !turnitin, do so. For me the admin site interface doesn’t let me choose the site ID. Once you create the site, remember the ID.
Add an LTI tool via Admin Workspace > External Tools. The configuration for the tool on LIVE should be
Site ID: !turnitin [or whatever site ID your site uses]
Tool Title: Turnitin
Allow tool title to be changed
Set Button Text - Turnitin
Do not allow button text to be changed
Description - optional
Tool status: Enabled
Tool visibility: stealthed [I don’t recommend this. It makes it hard to add the tool to the site]
Launch URL - https://api.turnitinuk.com/api/lti/1p0/assignment or equivalent for the US, Spain etc.
for most people this will be https://api.turnitin.com/api/lti/1p0/assignment
Do not allow URL to be changed
Tool Key - nnnn - your Turnitin account number
Do not allow Launch Key to be changed
Secret - the secret your Turnitin administrator created when configuring the LTI API
Do not allow Launch Secret to be changed
Do not allow frame height to be changed
Open in a New Windows - checked.
Send Names to the External Tool - checked.
Send Email Addresses to the External Tool. - checked.
Allow External Tool to return grades - checked.
Never Launch in pop-up
(In production) Never launch in debug mode
Allow additional custom parameters ********* very critical
for test, use https://sandbox.turnitin.com/api/lti/1p0/assignment, though I'm not sure what kind of arrangements you need with Turnitin for that to work. We used the production URL.
This mostly work, although the properties aren’t identical in the current version of 11.
More details at: http://turnitin.com/en_us/support/integrations/lti/
Once you’re created the LTI tool, go to the turnitin Sakai site and add the tool. You should be able to do add tool. Turnitin should show under "plugins" in the tool list, unless you stealthed it.
configure turnitin in sakai.properties and restart. Here’s my configuration. This includes the values we were using
for the old interface. I’m not sure whether you can remove them or not.
assignment.useContentReview = true
turnitin.enable.assignment2=true
turnitin.apiURL=https://www.turnitin.com/api.asp?
turnitin.secretKey = xxxx [the secret from the old API]
turnitin.said = nnnnn [your numeric turnitin account number]
turnitin.aid = nnnnn [same]
turnitin.useSourceParameter=true
turnitin.generate.last.name=true
studentview.roles=Student,access
turnitin.lti.site=f5ae281b-8c73-4a5f-b77a-0ac695006895 [the siteid for the site you created for the turnitin tool]
turnitin.ltiURL=https://api.turnitin.com/api/lti/1p0/
You might want
log.config.count = 2
log.config.1 = DEBUG.org.sakaiproject.turnitin.util.TurnitinLTIUtil
log.config.2 = DEBUG.org.sakaiproject.contentreview.impl.turnitin.TurnitinReviewServiceImpl
while you’re testing.
Now restart. In theory the integration in assignments should work