Actions

User

User:Aaronw/Quick Mnet setup

From Mahara Wiki

< User:Aaronw

In working on the Mahara assignment submission plugin & Mahara assignment feedback plugin for Moodle, I've had to set up Mnet lots and lots of times. I've gotten pretty quick at it. Here is basically what you have to do to:

  1. Set up MNet roaming between a Moodle & Mahara site
  2. Set up the Mahara assignment plugin for Moodle

The short version

Most of the steps are on the Moodle side.

  1. Moodle: Enable networking (Advanced Features)
  2. Mahara: Enable networking (Configure site -> Networking)
  3. Mahara: Set up an XML-RPC authentication instance that goes to your Moodle site
  4. Moodle: Create an MNet host for your Mahara site (Networking -> Manage Peers)
  5. Moodle: Tick all the services boxes for the Mnet host
  6. Moodle: Enable the Mnet authentication plugin
  7. Moodle: Allow the "Roam to a remote application via ment" permission for the "Authenticated Users" role
  8. Moodle: Add a "Network Servers" block to a course
  9. Moodle: Add an "Assignment" activity to a course, and add the "Mahara" submission type
  10. Moodle: Enrol a student user & a teacher user in that course

The long version

In Mahara

0. Get a Mahara instance. For dev work this is often a clean install, or you can just configure an existing instance.

1. Log in as an admin. Go to "Administration" -> "Configure site" -> "Networking"

  • Set "Enable networking" to "Yes"

In Moodle

0. Get a Moodle instance. Again, clean install or configure existing install. The admin options here assume you're using Moodle 2.6; in other versions some things may be labelled differently.

  • Install the Mahara assignment submission plugin in your Moodle site.
  • You may also want to install the Mahara assignment feedback plugin, depending on what you're testing.

1. Log in as an admin. Go to "Site administration" -> "Advanced Features".

  • Set "Networking" to "On"

2. Go to "Site administration" -> "Networking" -> "Manage Peers"

  • Hostname: The URL to your Mahara site (doesn't have to end with a slash)
  • Application type: Mahara
  • Click "Save changes"

3. It should now load up a screen showing the public key of your Mahara site. If it doesn,t make sure that the web server your Moodle site is on has HTTP/HTTPS access to the web server your Mahara site is on, and vice versa.

  • If it does show the public key, click "Save changes"

4. The page will reload, still showing the public key. You should now have some tabs on the top that say "Review host details", "Services", and "Profile fields"

  • Go to the "Services" tab and tick these boxes
  • Assign Submission Mahara services: Subscribe
  • SSO (Identity Provider): Publish
  • SSO (Service Provider): Subscribe
  • Click "Save changes"

5. Now go to "Site Administration" -> "Plugins" -> "Authentication" -> "Manage authentication"

  • Tick the eye icon to enable the "MNet authentication" plugin

6. Now go to "Site Administration" -> "Users" -> "Permissions" -> "Define roles"

  • Tick the "edit" icon next to the "Authenticated user" role
  • Find the permission "Roam to a remote application via MNet" i.e. "moodle/site:mnetlogintoremote"
    • It's under the "System" permissions.
  • Tick "Allow" for this permission
  • Scroll to the bottom and click "Save changes"

7. Go into a course (or create a course)

8. Add a "Network servers" block to the course page

  • If you don't have an option for the "Network servers" block, make sure that you've carried out all the above steps
    • Enabling Networking
    • Setting up an Mnet host with SSO services
    • Enabling the Mnet auth plugin
    • Setting the "moodle/site:mnetloginremote" permission to "Allow"

9. Add an "assignment" activity to the course.

  • In the assignment's "Submission types" section, make sure "Mahara portfolio" is ticked.

Back in Mahara

Now for users to be able to roam to Mahara, you need to set up an auth instance for Moodle in your Mahara site.

1. Go to "Administration" -> "Institutions"

2. Create an institution (or edit an existing one)

3. Once the institution is created, you'll now be able to edit its "Authentication plugins" on its settings page.

  • Add an "XML-RPC" instance

4. Fill in the details of your Moodle site into the popup

  • Authority name: Name displayed to admins to describe this auth instance
  • WWW root: The URL of your Moodle site
  • Site name: Doesn't really matter.
  • Application: Moodle
  • Parent authority: Internal is a good choice
  • SSO direction: They SSO in
  • Update user info on login: Yes
  • We auto-create users: Yes
  • We import content: Yes
  • Click "Submit"
  • Once the popup closes, it automatically saves the details to the DB and you don't actually need to save on the parent page.

Back in Moodle

1. Go to the course where you added a "Network Servers" block

2. You should see a link to your Mahara site. Click on it.

3. You should roam through to your Mahara site. There'll be a sideblock that says "You have logged in from (site name you entered into Moodle)". Clicking on that link should take you back to Moodle

4. Create a suitable student user in Moodle. Enrol them in the course with the Mnet assignment.

5. Log in to Moodle as the student user. Go to the course with the "Network Servers" block. Roam across to Mahara and create some pages and/or collections.

6. Go back to Moodle (still as the student user). Go into the assignment activity you created earlier as an admin. When you go to edit your submission, you should see an option to choose one of your Mahara pages (and/or collections)

  • You should also be able to link through to your pages and view them.
  • Note that one important test-case is to test what happens if you try to do this but you don't have any pages or collections in Mahara

7. Pick a Mahara page (or collection) for your submission, and submit your submission in Moodle.

  • Unless you're using the assignment "draft" settings, your Mahara page should now be locked from editing in Mahara
  • This means that if you roam over to Mahara, you should not be able to edit or delete the page

8. Now log in again as an admin in Moodle

9. Enrol yourself as a teacher in the course

10. View the assignment.

  • You should see a gradebook
  • The gradebook should have a link to the submitted page for the student
  • If you click the link to grade the student's submission, the grading page should also have a link to the submitted page