Articulate Studio Tin Can Packages -- Unsupported request content type text/plain
Nov 18, 2015
We're developing a LMS and using Articulate Studio '13 (upgraded to latest version) to create content for the LMS.
We're publishing the presentations in Tin Can format.
Everything works fine with the default Flash player.
When Flash is unavailable the HTML 5 player or "Mobile" player kicks in.
The HTML 5 player or "mobile player" is unable to communicate to the LRS.
In the javascript console of the browser I see the error:
Failed to load resource: the server responded with a status of 406 (Not Acceptable: Unsupported request content type text/plain) for the request ..../xAPI/state?method=GET
Why is this so? Shouldn't the player be communicating to the LRS with the application/json HTTP Content type? Is this a bug? According to the Tin Can 1.0 specification, requests should be made with application/json.
12 Replies
Hi Peter,
Does your LRS offer support for the Tin Can API? If not, you may want to look at removing the option to publish for the mobile player and just let it default to the HTML5 output to be viewed in mobile safari or the google Chrome on the Android tablet.
Thanks for your reply.
The LRS we are using does support the Tin Can API, the default flash version of the published packages communicate fine with the LRS. Its only when Flash is unavailable and the "html5" version of the player launches that the above error is given. Unchecking the "use Articulate mobile player" option has no effect...
So what's the difference? Why don't they communicate the same? Why does the "html5" version not use the content type application/json ?
Hi Peter,
What browser are you viewing the content in? Also, it looks like I shared Storyline links with you vs. Studio - my apologies about that. I've updated them above.
I think we'd want to take a look at your Presenter package to see how it's behaving and the information being communicated. Can you send it along to our Support engineers here?
We've tested this in all major browsers: Firefox, Chrome, Safari, IE etc...none of which makes a difference and the javascript console reporting is always the same...
I'll add a sample package that we are using...both here and will contact your support engineers with the package as well
Its a very simple package created with Presenter '13 upgraded to the latest version, 2 slides...
Thanks Peter and I'll follow along in your case as well (# 00695725 for my reference) as our team takes a look and goes through testing.
another problem with the HTML5 version is that it wants to try to post statements with an improperly formatted url:
POST https://[our_domain]/xAPI/statements/?method=PUT
instead of https://[our_domain]/xAPI/statements?method=PUT
Your support "engineers" are no help at all, trying to say there is nothing wrong, but there is something wrong.
The Flash version works fine communicating with the LRS, BUT THE HTML5 version has many issues.
Here's what I think, I think you'll have it all working with Flash, but don't know what to do with anything that doesn't support Flash
Here's a third problem with the HTML5 player:
The request parameter for the activityID is coming in to the server as "undefined"
I've replaced the authorization token with [our_token].....
Authorization=[our_token]®istration=68de53c1-2ca3-4243-a554-5d31c9b584bd&Content-Type=application%2Fjson&X-Experience-API-Version=1.0.0&tincan=true&activityId=undefined&agent=%7B%22account%22%3A%7B%22homePage%22%3A%22https%3A%2F%2Foursite.org%22%2C%22name%22%3A%2229%22%7D%2C%22name%22%3A%22My%20Name%22%7D&stateId=resume&
Hi Peter,
Thanks for sharing this here. It's a bit outside my normal realm of support - and I know you've been working with Renato, so the additional information will assist in helping identify what's occurring.
Hi Peter,
I just wanted to follow up on your case as I heard from our Support engineers that they were able to reproduce the statements you were seeing in the HTML5 output and have shared a report of information with our QA team for additional evaluation. We'll be in touch as a part of your case and here in the thread once we have additional information to share, but I cannot offer a time frame in regards to when I'd hear back.
We can confirm that the Articulate Mobile Player, for Android works as expected and communicates both state and statements with our LRS.
We can confirm that the Articulate Mobile Player app, for iPad works as expected and communicates both state and statements with our LRS
Thanks Peter for sharing that here and I'll include that update as a part of the issue filed with our QA team.
This discussion is closed. You can start a new discussion or contact Articulate Support.