Discourse Open edX SSO Connector

I have just published a beta version, of an open edx plugin app to integrate with discourse.

From the repo readme.md

The purpose of this project is exactly the following:

You are using Open edX and you want to use discourse.org as place where learners and teachers can communicate. But you don’t want the users to have two accounts, for the open edx and discourse forum

By using this plugin, you can let your Open edX utilize, the SSO (single-sign-on) of discourse, thus when users access the forum they will be redirected to the LMS to authticate, and then redirect back the forum if success.

For more information how to install, use…etc check github repo GitHub - zaatdev/discourse-openedx-sso: An Open edX plugin app, to integrate with discourseconnect sso.

8 Likes

Hi @ghassan!

This is a very interesting project, and relevant to my interests. Open edX now has support for embedding external discussion tools into a course tab as a alternative to the in-built discussion forums.

Discourse is one such potential discussion tool that can be embedded this way. This embedding relies on LTI, and uses the discourse-edx-lti plugins for Discourse to add support for LTI and the discourse-allowiframe plugin to allow embedding Discourse in an iframe.

The LTI plugin also allows seamless logging in from Open edX to Discourse. I wonder if you’ve looked into this?

1 Like

Thank you for your reply. Below is my answer about LTI and iframe.

Regarding the LTI

I didn’t know about that spesfic plugin, but I knew that discourse support LTI with this official plugin Now I opted out from this path and I might be wrong. Because I though when using LTI; The LMS would be integared with the forum as a login option, simliar to how social OAuth works.
Thus using SSO is better option here if the purpose of the forum is only to serve learner expirence. But again I am do not have expierence with LTI, so I might be wrong or there might a way around it.

Regarding iframes

I have been thinking about that as well. So yeah discourse deliebirtray doens’t allow to embed the whole forum in an iframe, so a plugin like what you linked would be essential, if you want to embed the whole forum.

On the other hand, discourse natively support to embed replies as comments. For example in Jeff Atwood blog, in every post it would embed replies from forum topic as a comments on the blog. Here is a blog post. I guess in our context we can think of blog post as a unit. The only caveta I personally would have with this approach is that learner would need to jump to the forum site in order to reply beacuse the composer commened embed iframe doesn’t include the composer tool (the discourse tool to create topic, reply). To read more about this featuer check this topic at meta.discoruse.org

Yup, I was definitely interested in learning if you’ve looked into the LTI approach. An SSO option definitely better in the scenario that you’ve outlined. In fact they can go hand in hand to allow a seamless login when embedded in the course, and also to log in using your Open edX credentials otherwise.

I was also interested at a time to support embedding a full Discourse thread in a unit much like the current discussion block. This is not supported by Discourse and AFAIK they have not intention of supporting it (and might not accept PRs that add such a feature) but it can probably be done as a plugin.

In other words, you are referring to being able to have reply to a reply? instad of just one thread. I think this discourse plugin might closet to what you looking for Discourse Post Voting - plugin - Discourse Meta. But yeah you are right pure threaded isn’t something discourse totally in favour of.