Reporting grades back to Blackboard Learn

131 views
Skip to first unread message

Tom Salyers

unread,
May 19, 2021, 9:10:26 AM5/19/21
to Numbas Users
Hi, all.

I've been bugging poor Christian with questions about this for a while (Hi, Christian), so I thought I'd throw it open to a wider audience and give him a bit of a break if I can.

We've got two Numbas LTI providers set up--one for our staging instance of Blackboard and the other for our live one. The staging one will report grades to Blackboard and they'll show up in the course's gradebook just like you'd expect. The live one, however, *says* the grades are being reported, but they never actually show up in the gradebook.

Now, both LTI provider servers are basically identical, with the main difference being that the staging server was built maybe a couple of months ago and the live one was just rebuilt yesterday (partly to try to solve my problem), so the code on it is a bit newer. There are also one or two small differences between their Nginx setups--mainly header configurations--but I don't think that would enter into things.

I've gone through the process of reporting grades with Christian, and it looks like the Numbas system is working properly and sending the grades *somewhere* and getting the expected response back, but they're never actually arriving. I've also consulted with Blackboard, but their support doesn't see anything unusual or suspicious in their logs.

Does anyone else have any similar experiences to this? I've got no idea why one server works and the other doesn't. In the worst case, our instructors can download the grades and import them into Blackboard manually, but having it done automatically would be ideal. Thanks in advance for any help and/or insight.

Johan Slabbert

unread,
May 24, 2021, 3:24:48 AM5/24/21
to numbas...@googlegroups.com
Hi Tom, Christian.

Also seems that since upgrading from 2.9 to 2.12 it is not working anymore. Are you on SaaS so also getting "weekly" Blackboard updates?

Yeah difficult to know if this was a Numbas or Blackboard SaaS update that is now stopping marks being passed back to Blackboard.

Any more news Christian? 


Please rate my servicehttps://forms.gle/9QbJEbpSQiTa5DwP7  

Johan Slabbert
Educational Technology Project Manager
BEng (Pret), BEng Hons (Pret), MIT (Pret), MEng(Pret)

Tel +27 (0)12 420 3825
Fax +27 (0)12 420 3697
Email johan.s...@up.ac.za
www.up.ac.za

Department for Education Innovation 
Room 3-34, IT Building, Hatfield Campus
University of Pretoria, Private Bag X20
Hatfield 0028, South Africa





--
You received this message because you are subscribed to the Google Groups "Numbas Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to numbas-users...@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/numbas-users/ad5575c6-71ba-4194-817b-ecf29d32e892n%40googlegroups.com.

This message and attachments are subject to a disclaimer.
Please refer to http://upnet.up.ac.za/services/it/documentation/docs/004167.pdf 
for full details.

Christian Lawson-Perfect

unread,
May 24, 2021, 4:08:19 AM5/24/21
to numbas...@googlegroups.com
I had a video call with Tom on Thursday and it looked like Blackboard wasn't sending the lis_result_sourcedid parameter that is needed to report scores back. However, for Tom's staging environment, it was sending that parameter. We couldn't work out what the difference was between the two placements.
We tried setting up a connection to the saLTIre testing tool at https://saltire.lti.app/, to see what was sent. That didn't get the lis_result_sourcedid parameter either. Could one of you please give that a go, and send the raw POST parameters to christia...@ncl.ac.uk?

I found this blog post - https://blog.corrlabs.com/2019/12/blackboard-lti-payload-does-not-include.html - noting that Blackboard has some logic about when it sends the lis_result_sourcedid. Maybe that changed recently?

I've diffed the code between v2.9 and v2.12, and the score reporting part hasn't changed at all.

Based on all of this, I think the problem is with Blackboard, but on the other hand it'd be a huge coincidence that everyone is reporting this after upgrading the Numbas LTI tool to v2.12. I suppose we could check by setting up a Numbas instance on v2.9, and seeing if it can report scores.

Johan Slabbert

unread,
May 24, 2021, 9:43:44 AM5/24/21
to numbas...@googlegroups.com
OK, seems there was an issue in 2019, but fixed in 2019.

Did you get some POST results (which I can maybe also attach to a Blackboard Case)?

I will log a call with Blackboard about this. Yes seems NEWEST Blackboard Release might have changed stuff under the hood:



LTI Launch Parameter in DeepLinking Launch Causing Trouble: launch_presentation_return_url

Date Published: Mar 14,2019

Category: Planned First Fix Release:SaaS - v3500.x.x; Product:Learn Administration; Version:SaaS
Article No.: 000063809


Product: Blackboard Learn

Release: SaaS

Service Pack(s): SaaS

 Information: The issue has been traced down to an inconsistency with the IMSGlobal specs for DeepLinking/ContentItemMessage.
It appears a basic LTI launch parameter has made its way into the DeepLinking launch causing trouble: launch_presentation_return_url

From https://www.imsglobal.org/specs/lticiv1p0/specification-3
The following parameters should not be passed:
resource_link_id
resource_link_title
resource_link_description
launch_presentation_return_url
lis_result_sourcedid
Target Release: SaaS - Fixed (v3500.9.0)
Patch Available: No

Christian Lawson-Perfect

unread,
May 24, 2021, 9:45:13 AM5/24/21
to numbas...@googlegroups.com
I don't think that's relevant: we don't use the deep linking launch method.

Peter Steele

unread,
May 24, 2021, 10:12:17 PM5/24/21
to Numbas Users
Hopefully this information helps in the diagnosis.

I've now spun up an old Blackboard 3900.6 instance and connected it to our Numbas LTI v2.12 server. Unfortunately, it still fails to report scores back to Blackboard 3900.6 as well.
(BB 3900.6 is a fair few versions behind the current SaaS version 3900.13)

The dates that score reporting stopped seem to directly correlate with the date we upgraded Numbas to 2.12 (based on the information provided by our academics)

Possibly unrelated, but when clicking on End Exam and reaching the Attempt data is being saved... screen - I've also noticed that in the debug console I'm getting the following error (x 3). The attempt is eventually saved using the POST fallback method.
robust-websocket.js:149 WebSocket connection to 'wss:// (redacted) /websocket/attempt/19049/scorm_api?uid=1621906100763%3A0.7228704295329447&mode=normal' failed: 
newWebSocket @ robust-websocket.js:149

Is there any documented downgrade pathway available?

Tom Salyers

unread,
May 25, 2021, 9:29:13 AM5/25/21
to Numbas Users
Hi, all.

Just getting caught up after a couple of days off...Johan, if you're logging a case with Blackboard, I've got one filed with them already if you'd like to refer to it--it's # 04896319.

Christian Lawson-Perfect

unread,
May 25, 2021, 9:32:15 AM5/25/21
to numbas...@googlegroups.com
Well, this is embarrassing! It turns out the problem was indeed on the Numbas side.
v2.12 introduced an intermediate check that the session cookie is set properly, to get round the stricter cross-site security policies in Chrome and Safari. The meant that when it gets the user data from the LTI launch, it's using the cached copy saved by the django_auth_lti module, not the original POST data sent by the browser. I'd assumed that this copy contained all of the data, but it's missing the lis_result_sourcedid value!
I've updated our copy of the django_auth_lti module so it saves this parameter, and score reporting should now work. A kind person has given me a login for their Blackboard site, and I've verified that with this change score reporting now works.

Sorry about this, everyone!



Tom Salyers

unread,
May 25, 2021, 9:49:15 AM5/25/21
to Numbas Users
Oh, thank *god*. No worries, Christian--it's just nice to know that I'm not actually going crazy. Thanks for finding and fixing the problem. :)

Johan Slabbert

unread,
Jun 25, 2021, 10:13:55 AM6/25/21
to numbas...@googlegroups.com
Hi everyone 

We are now on 2.13 and our users still report grades don't push back to Blackboard (SaaS) 3900.15.

Are other's LTI working? 

Johan Slabbert
Educational Technology Project Manager (University of Pretoria)

Peter Steele

unread,
Jul 6, 2021, 10:15:17 PM7/6/21
to Numbas Users
Dear Johan,

I have the same problem. Did you have any luck getting it working?

I've now updated our numbas-lti-provider production instance to v2.13, but I still cannot get scores reporting to Blackboard (SaaS).

The lis_outcome_service_url value is now properly filled, but the scores are still not posted through to the Grade Centre (even after clicking Report Scores to VLE button)

I've now set up another fresh test instance of numbas-lti-provider 2.13 and another Blackboard instance, connected the two and amazingly the scores are reported to the Grade Centre.

The only difference that I can see (so far), is that the LTI consumer connection was created after updating to v2.13.

Peter Steele

unread,
Nov 16, 2021, 7:29:08 PM11/16/21
to Numbas Users
We are now on Numbas LTI 2.13.4 and have created a fresh consumer/connection to Blackboard. 

Unfortunately, the score reporting issue still persists.

As I mentioned previously, we can spin up a fresh copy of Blackboard, connect it to our Numbas LTI server and score reporting works normally.

Christian has looked at the XML response sent back from one of our Blackboard instances. The response suggests the score was reported successfully, but still nothing shows up in the Grade Centre.

It's almost like our staging and production Blackboard instances have blacklisted our Numbas LTI server after it was sending requests without a lis_outcome_service_url.

I've asked Blackboard to investigate further.

Christian Lawson-Perfect

unread,
Nov 17, 2021, 3:11:56 AM11/17/21
to numbas...@googlegroups.com
One thing that I noticed with someone at another institution was that in Blackboard you have to specifically enable grading for each LTI content item. In BB Learn it's part of the form when you create the item, but in Ultra I think you have to go back and edit the item after creating it. If grading isn't enabled, then BB will return a success response to the LTI tool, but won't actually save the score to the grade book.


Peter Steele

unread,
Nov 24, 2021, 9:20:38 PM11/24/21
to Numbas Users
Thanks Christian. We've been sure to enable this Enable Grading option, but that is definitely something easily missed in the Blackboard Classic courses.

Christian - We now received a response back from Blackboard. I was wondering if you could provide the following information so they could proceed with their investigations:
"... we need to know API request which Numbas is using. Therefore, I would request you to please provide what API request Numbas is using to pass grades over to the course grade book. Could you please check from your end and update us to proceed further trouble shooting..."

Cheers,
Peter

Christian Lawson-Perfect

unread,
Nov 30, 2021, 8:49:21 AM11/30/21
to numbas...@googlegroups.com
Hi Peter,
The Numbas LTI tool sends a request to the URL given in the lis_outcome_service_url parameter of the LTI launch, to perform a "replaceResultRequest" action, following the LTI 1.1 specification. I hope that's enough information for Blackboard.

Earlier today, helping someone at an institution with Blackboard, I noticed that Blackboard doesn't send the lis_result_sourcedid parameter when "enable evaluation/grading" is turned off, so even if you later turn it on, students who accessed the resource earlier would have to launch it again in order for Blackboard to send the parameter.

Reply all
Reply to author
Forward
0 new messages