LTI 1.3 not synchronizing grades

LTI 1.3 not synchronizing grades

by Sali Kaceli -
Number of replies: 7

I have an integration with a third party integration using LTI 1.3. I can select the activity via LTI 1.3, students are able to complete the activity through the integration on the external platform but the grades are not coming in despite various settings for the grade integration: 

Under the LTI Setup, we have the following settings, which aligns with the settings for LTI 1.1 integration: 
blobid0.png
 
We also tried setting the following services, consistent with other LTI 1.3 integrations but with no results. 
blobid1.png
 
The third party tool uses JKWS on their end. Other LTI 1.3 integrations work fine. 
Our Moodle version is 4.4.1 LAMP
 
Average of ratings: -
In reply to Sali Kaceli

Re: LTI 1.3 not synchronizing grades

by Jake Dallimore -
Piksa bilong Core developers Piksa bilong Moodle HQ Piksa bilong Particularly helpful Moodlers Piksa bilong Peer reviewers Piksa bilong Plugin developers Piksa bilong Testers
Hi Sali,

Those tool settings look correct (also worth pointing out that 'tool settings' is a legacy service that you likely don't need to concern yourself with nowadays. It's not part of LTI 1.3). The issue with grade sync could come down to an issue in the activity grade settings though. Can you check that you've:
  1. Got a grade section in the activity settings and that there's a max grade set
  2. Can see the grade item in the gradebook

If the above are ok, then we'd need to troubleshoot at the tool end. Is the tool sending the grade sync request? If so, what's it getting back? Does it log the responses? etc. Grade sync is certainly possible (we can't certify without that), so it's very likely a configuration issue on one end. Another thing to check would be the JWKS section of the tool configuration, making sure that's set to the tool JWKS endpoint.

Cheers,
Jake

In reply to Jake Dallimore

Re: LTI 1.3 not synchronizing grades

by Sali Kaceli -

Thank you, Jake, for taking the time to respond. 

The activity on the Moodle side has been configured to post a grade and the activity item shows up in the gradebook but the grades are not updated. 

image.png

On the tool end, I have limited access to only the configuration setup and cannot view logs etc. The provider suddenly is claiming that they will support LTI 1.3 with only Canvas despite having used their LTI 1.1 for years now and our students paying $20/per course.... 

Even the integration for the part that is working, I had to figure it out on my own. 

Is there somewhere on the Moodle side that I could check a log? Looking at the scheduled tasks log, I could not determine any that could shed some light on it. 

The public keyset on the tool config. on the Moodle side is set to point to the jkws instance number on the remote vendor configuration. Is that what you are referring to by "making sure that's set to the tool JKWS endpoint"? 

Thank you again. 

In reply to Sali Kaceli

Re: LTI 1.3 not synchronizing grades

by Jake Dallimore -
Piksa bilong Core developers Piksa bilong Moodle HQ Piksa bilong Particularly helpful Moodlers Piksa bilong Peer reviewers Piksa bilong Plugin developers Piksa bilong Testers
Hi Sali,

Just to confirm the JWKS bit first: What you want is for the JWKS URL in the tool configuration to be set to the URL at which the tool JWKS resides. if you hit that URL in your browser, you need to see a list of keys. If you do, you know that's the right URL to use there. I'm not quite sure what you mean when you say 'instance number', however.

With regards to tracking down the sync issues, it's not a case where we can look at scheduled tasks. All the syncs happen through a web service and tasks aren't involved. Unfortunately, the logging on the Moodle side is lacking and you'll likely only see a log when the grade is updated, but not when the service responds with any number of other responses, in cases where the grade cannot be set. This is why I suggested looking at the tool side, since they're the ones posting the grade and presumably would be able to tell you what response they're getting back for the various attempts to post.

Sorry I can't give you much more to go on for now. I'd assume the tool vendor would provide assistance in this matter, given the issue is with their tool syncing grades. Hopefully, they can accommodate.

Cheers,
Jake
In reply to Jake Dallimore

Re: LTI 1.3 not synchronizing grades

by Sali Kaceli -

Hi Jake, 

Yes, the URL returns the keys as below but cropped intentionally. 

image.png

By 'instance number' I mean the configuration instance on their end. It seems that each time you create a new configuration, the number after the JKWS entry as in the URL from the snapshot changes. 

I will try to reach out again to their support. It appears they were recently acquired and they are no longer developing the product for some strange reason and thus the unwillingness. 

Thanks again for your time. 

In reply to Jake Dallimore

Re: LTI 1.3 not synchronizing grades

by Sali Kaceli -
Hi Jake,
Assuming the vendor will not make any provision, is there any workaround to still embed LTI 1.1 activities via a URL? Our old LTI 1.1 links still work for older courses. This issue started with the Moodle 4.4 upgrade changing the LTI setup and no longer allowing Direct LTI URLs.
In reply to Sali Kaceli

Re: LTI 1.3 not synchronizing grades

by Sali Kaceli -
I received the following from the vendor and am wondering whether there is any setting somewhere to omit the query parameter at the end of the URL for grades. Anyone have any input? 
 
"Here's a rundown after looking at the logs. The LMS tells us where to send the grades by providing a url for a 'line_item.' We take that URL and append '/scores' to it to get the URL that we should post the scores to. The problem is the url for the 'line_item' that moodle is providing us looks like this: 'https://moodlelmsURL/mod/lti/services/php/31549/lineitems/380783/lineitem?type_id=50' . It has a query parameter at the end. So when we append '/scores' to that it's not a valid URL." 
 
Is there anything on our Moodle end that we can adjust? 
 
In reply to Sali Kaceli

Re: LTI 1.3 not synchronizing grades

by Jake Dallimore -
Piksa bilong Core developers Piksa bilong Moodle HQ Piksa bilong Particularly helpful Moodlers Piksa bilong Peer reviewers Piksa bilong Plugin developers Piksa bilong Testers
Hi Sali,

That's useful information. Thanks for reporting back. Basically, the tool is doing it wrong. Per the spec, the scores endpoint is defined as:

"The scores service endpoint MUST be the line item resource URL with the path appended with '/scores'. Any query or route parameters from the line item URL must also be added".

Basically, what they should end up with is a URL in the following format. Note /scores is appended before any query params.

https://SITE/mod/lti/services.php/2/lineitems/1605/lineitem/scores?type_id=1

Once the tool does that it'll work fine.

HTH,
Jake