Messaging Observers of Students in Canvas

Jump to solution
Steve_25
Community Participant

Hi All,

We've put together a script here at Strath to allow us to send messages to the observers of students from the Canvas Inbox (Conversations) and Marksbook ('Message Students Who...') pages. We're a K-12 institution, so while the ability to send messages to students who have not submitted their assignments is awesome, sometimes we need to let their parents know too! It looks a little something like this:

demo.gif

It's pretty simple. The script inserts some buttons on the 'Message Students Who...' and Inbox 'Send Message' buttons for inserting observers and removing students. Once clicked, the script does a few API calls in the background to determine who the observers of the students are and pops them in the recipient list.

Our CSM mentioned this might be something that other institutions might be interested in, so I've made the script and some instructions available here: https://github.com/sdjrice/msgobs.

If you decide to give it a crack, I'd be interested to hear how it goes! I've tested this with a demo Canvas instance and it's worked ok, but that's the extent of my testing.

All the best!

---------------

Download v0.07 Here: https://github.com/sdjrice/msgobs

---------------

Changelog:

Version 0.07 on 17/04/20

  • Fixed issue where conversations (Inbox) recipients would become invalid after a recipient was removed.

Version 0.06 on 11/10/17

  • Added support for courses with more than one hundred enrolments.

Version 0.05 on 07/07/17

  • Added auto tick "Send an individual message to each recipient" function. This behaviour is active by default, but can be disabled in the msgobs options.

Version 0.04 on 06/07/17

  • Fixed issue where multiple course enrolment lookups were made for the same course in account admin mode.

Version 0.03 on 03/07/17

  • Added support for any kind of group in the recipient list.

Version 0.02 on 15/03/17

  • Fixed issue with unescaped message content.
  • Prevented clicking Remove Students while Include observers function is running.
  • Added dialog to preserve message content if sending fails in Gradebook function.

Version 0.01 on 20/09/16

  • Initial Release
1 Solution
Steve_25
Community Participant

Hi all,

MSGOBS Version 1.01 is now available here https://github.com/sdjrice/msgobs with the following fixes:

  • Re-written for ES2020 and a slightly improved lookup speed.
  • Fixed issue where students on gradebook with the same name could not be distinguished between.
  • Fixed issue where that occurred when replying to a messages as a user with some admin privileges, but not all. In this scenario, MSGOBS now asks the user to select a course for observer lookup.
  • Fixed issue with colour highlighting of observers after the insert observers button was pressed for a second time.
  • Added warning message for replies in conversations that will create a group messages for all recipients.
  • Added Observer and Student removal counts to success messages.
  • Changed conversations behaviour as an admin sending a message. MSGOBS now asks the user to select a course for the observer lookup, rather than trying all enrolments for the user (which took a long time).

Unfortunately I wasn't able to build in New Analytics, for for that overzealous promise, I am sorry. I didn't notice that the New Analytics LTI is hosted on a different domain which means that browser security features prevent the script from accessing what it needs. I'll keep an eye on it in the future.

@dlourcey Thanks for the feedback Don, I'm truly glad to hear about this positive effect!

@christopher_gil I'm afraid that is the expected behaviour, as replies in conversations always create group messages rather than individual messages (the 'send individual checkboxes' element doesn't exist on a reply). Your feedback though inspired me to put a warning in for the teacher when they choose to include observers on a reply message. I'll address this problem further in a future update.

EDIT: 1.01 fixes issue with Safari web browser. 

View solution in original post