instructure / canvas-lms

The open LMS by Instructure, Inc.
https://github.com/instructure/canvas-lms/wiki
GNU Affero General Public License v3.0
5.4k stars 2.42k forks source link

Modify the BigBlueButton parameters for `context.name` and `context.course_code` so they map to `meta-` parameters on create for BigBlueButton #2371

Open ffdixon opened 1 week ago

ffdixon commented 1 week ago

Summary:

Modify the BigBlueButton parameters for context.name and context.course_code so they map to meta- parameters on create for BigBlueButton and can be used.

Steps to reproduce:

See the code https://github.com/instructure/canvas-lms/commit/edb39093e9d678789bdf6c403a3ef91f06b7e83e, which adds two new parameters.

    if context.is_a?(Course)
      req_params[:bbbCanvasCourseName] = context.name
      req_params[:bbbCanvasCourseCode] = context.course_code
    end

The problem is that these parameters should be passed as meta- parameters (the name space for platform-specific parameters), see https://docs.bigbluebutton.org/development/api/#get-post-create.

Expected behavior:

The solution is to change the parameters as follows

    if context.is_a?(Course)
      req_params[:meta_canvas-course-name] = context.name
      req_params[:meta_canvas-course-code] = context.course_code
    end

(and update the tests as well).

Additional notes:

This change will enable the BigBlueButton server to receive the Canvas parameters using the existing meta-.