Skip to content

v6.37

Choose a tag to compare

@ekassos ekassos released this 21 Dec 08:04
· 715 commits to main since this release
7f401f4

Release Notes

This update introduces Canvas Connect, PingPong’s LTI 1.3 implementation, along with other important bug fixes and improvements.

Canvas Connect

New Features

  • Link an existing PingPong group or create a new one right from your Canvas course's sidebar.
  • Once set up, students can seamlessly join the linked PingPong group with the necessary permissions.
  • Canvas Connect works out of the box with PingPong groups that already have a Canvas Sync connection with no setup needed. When students access PingPong through a Canvas course that utilizes Canvas Sync, they automatically gain access to the associated group.
  • Canvas administrators can set up Canvas Connect with PingPong's Dynamic LTI 1.3 registration page. A registration form on the page captures admin contact details and SSO field mapping in Canvas payloads. Canvas administrators can also select which institutions instructors should be able to create new PingPong groups in through Canvas Connect.
  • Canvas Connection supports the full LTI OIDC login/launch flow with state/nonce storage, replay protection, and JWT verification via JWKS.
  • LTI key management supports local and AWS Secrets Manager backends.

Known Issues

  • While PingPong records all necessary information to perform a roster sync through Canvas Connect, the syncing functionality isn't currently available.
  • Instructors are unable to view or manage linked Canvas Connect courses in the Manage Group page.

Notes

  • Each PingPong group can be linked to multiple Canvas courses.
  • Each Canvas course can only be linked to one PingPong group.
  • Canvas Connect works out of the box for Canvas courses that are linked to only one PingPong group through Canvas Sync.
  • Given the automated billing handling for new groups created through Canvas Connect, new registrations require a review by a PingPong staff member before activation. Canvas administrators will receive an email notification once their registration is approved.

Canvas Sync

Deprecations

  • Canvas Connect is the new and recommended method for linking and synchronizing Canvas courses with PingPong. It offers several advantages, such as a faster setup process that eliminates the need for authentication with an instructor’s Canvas account and automatic provisioning of student accounts. Canvas Sync will continue to be supported until Canvas Connect achieves feature parity. Support for new Canvas Sync connections will end in the next major release (v7.0), with support for syncing of existing Canvas Sync connections to end in the following major release (v8.0).

Anonymous Sessions

Updates & Improvements

  • Moved Anonymous Share and Session Token stores from web/pingpong/src/lib/api.ts to dedicated web/pingpong/src/lib/stores/anonymous.ts. This unified design will simplify things as we move to incorporate more session tokens to support future capabilities.
  • Share Token is now also parsed through a header (X-Anonymous-Link-Share) instead of a URL parameter for all endpoints with the exception of the WebSocket for Voice mode sessions.

Institutions

New Features

  • Associate one of the pre-configured default API keys with an institution when editing an institution. This change will enable instructors authenticating through an LTI integration to create new groups without entering billing details.

Deployment Information

Schema Upgrade Migration Script Permissions Update Task Definition Update Configuration Update
YES No No YES YES

Deployment Details

  • Schema Upgrade: New LTI tables: lti_registrations, lti_classes.
  • Task Definition Update: New python -m pingpong lti generate-initial-key, python -m pingpong lti test-jwks, python -m pingpong lti rotate-keys commands.
  • Configuration Update: Set up [lti.key_store].

Related PRs

Full Changelog: 874-srv438-web266...877-srv441-web269