Skip to content

Releases: openfun/marsha

v4.0.0-beta.7

27 Jun 12:40
Compare
Choose a tag to compare

Added

  • Allow instructor to share a video and use breakout rooms
  • Add resizing feature to the picture in picture mode

Changed

  • stopped_at is deleted and started_at is reinitialized when the
    live is restarted
  • Display number of anonymous instead of their pseudos
  • Rename markdown route in markdown-documents

Fixed

  • Missing migration to migrate video upload_state and live_state data

v4.0.0-beta.6

20 Jun 13:59
Compare
Choose a tag to compare

Added

  • Add a widget for the instructor to upload thumbnail
  • Add video stats from configurable grafana backend
  • Add shared media support for the teacher
  • Manage live media sharing with picture-in-picture on student side
  • Add a webinar tab to the LTI select view

Fixed

  • A thumbnail resource can be deleted and recreated.

v4.0.0-beta.5

07 Jun 12:51
Compare
Choose a tag to compare

Added

  • Push attendance when a student is on stage
  • Add Legacy LTI configuration XML
  • Add an instructor widget to modify join the discussion mode
  • Prevent join API calls in join mode denied

Changed

  • Use custom policy to generate cloudfront signed url
  • Upgrade front and mail apps to node version 16, the current LTS
  • On LTI select request, only send title and description for existing resources
  • Adding a new resource through LTI select (deeplinking) now creates it
    with data from Moodle activity titles and description.
  • Fetch video data after websocket reconnection
  • Use Roboto-Regular by default in our UI

Fixed

  • Do not execute start streaming in jitsi for non moderator
  • Prevent scroll when hovering a select on an iframe

v4.0.0-beta.4

18 May 08:22
Compare
Choose a tag to compare

Added

  • Add a control pane destined to contain widgets for the instructor to
    control the live
  • Add a widget to modify live title and allow / disallow live recording
  • Add a widget to schedule live and modify description
  • Add a widget to hide / unhide the chat, for the instructor and for its
    students
  • Add Markdown document edition (new feature)
  • Add a widget to make live publicly available and get the shareable url
  • New field deleted_by_cascade on all model inheriting from SafeDeleteModel
    Field added in django-safedelete version 1.2.0
  • CLOUDFRONT_SIGNED_PUBLIC_KEY_ID settings is added. It contains the
    public key id created on AWS cloudfront public keys
  • Push attendances for students watching a live
  • Add a login page to authenticate Marsha users
  • Allow live restarting after harvesting

Changed

  • Move appairing device component in the widget dashboard
  • Use cloudfront key groups to sign urls instead of using root AWS ssh key

Removed

  • CLOUDFRONT_ACCESS_KEY_ID settings is removed

v4.0.0-beta.3

22 Apr 08:33
Compare
Choose a tag to compare

Added

  • Add BBB meeting scheduling
  • Save current language of a livesession
  • Send emails in current livesession's language
  • Load livesession's language in the JWT token for direct access
    from email

Fixed

  • patch video to publish it once harvested
  • mjml files format not to break trans instructions
  • configure path for translated files in the backend

Removed

  • Presence activity in the chat

v4.0.0-beta.2

13 Apr 19:59
Compare
Choose a tag to compare

Added

  • Add a view to cancel reminder mails, link added in the footer of mails
  • Prevent multiple join to BBB meetings
  • Introduce anonymous_id mechanism
  • Create a direct access to a video out of an LMS context for a public
    or LTI ressource, based on a liveregistration
  • Auto-set in the localstorage anonymousId if it's set in the JWT token
  • Persist live video participants
  • Add a vertical slider on the live view, to resize the panel on the
    right (and close / open it)
  • Add PATCH endpoint to update a LiveSession
  • Add start and stop live recording
  • Generate a JWT token to connect to jitsi
  • Save livesession registration date

Changed

  • rename LiveRegistration model in LiveSession
  • Disable jitsi prejoin page
  • Admin can access all LiveSession belonging to a video
  • Move on-stage request functional (in Instructor view) from under
    the video to the ViewersList in the right panel
  • Prevent students from joining the discussion anonymously

Fixed

  • Allow to configure converse persistent store
  • Show a specific message to students when BBB meeting ended
  • Remove cancel button in student meeting join form
  • Replace automatic meeting joining by a button
  • Allow generated links in Django admin for objects in other applications
  • Do not install the marsha Python package in site-packages
  • Do not allow a lti user to change his email when he registers to a scheduled
    live
  • Expose XMPP info for a live once this one started
  • Continue stopping live even if input waiter fails
  • Dispatch video in the websocket when start/stop recording
  • Send registration email when livesession is updated and is_registered
    set to True
  • Stop trying to start recording jitsi when this one is already live
  • Live layout for teacher on smartphone
  • Live recording actions visibility

Removed

  • Remove email when the webinar started earlier
  • Remove video constraint video_unique_idx

v4.0.0-beta.1

15 Feb 16:23
Compare
Choose a tag to compare
v4.0.0-beta.1 Pre-release
Pre-release

Added

  • Add model and API endpoints to manage a shared live media
  • Add component to display chat, viewers and apps during a live in a panel
  • Add consumer_site in JWT token
  • Allow CORS headers configuration
  • Extract SVG pages from PDF files for shared live media in lambda-convert
  • Add fields is_registered,live_attendance,username for liveRegistration
  • Add DRF endpoint to start attendance monitoring using liveRegistration model
  • Add a new chat, using react components and design complying with the mockup
  • Add anonymous_id and display_name in LiveRegistration model
  • Add new endpoint to set display_name
  • Add API endpoints to start, navigate and end a live media sharing
  • Add fields allow_recording, estimated_duration, has_chat and
    has_live_media for Video model and API
  • Manage websocket using django channels
  • New video consumer able to send serialized video to all clients connected
    to the websocket when a video is updated through the API
  • Add email settings and configure mailcatcher in docker-compose stack
  • Transform mjml files (email's template files) to html and plaintext
  • Add a participants tab, listing all users connected to the chat
  • Add an authentificatin pop-up in the chat
  • Add a default config file for the chat
  • Add 'joined' and 'left' labels in the chat for users arrivals and departures
  • Send updated video to clients connected to the websocket for all
    events related to the live workflow (start, pause, end, shared live medias)
  • Send email when registering for a scheduled webinar
  • Management command sending reminders for scheduled webinars
  • Implement a way to address prosody controls on the nickname entered in the
    chat
  • settings DEFAULT_LTI_LAUNCH_PRESENTATION_LOCALE as fallback value when
    launch_presentation_locale missing in the LTI request
  • allow to configure CSRF_TRUSTED_ORIGINS django setting

Changed

  • docker image use python 3.10
  • Rename lambda-encode to lambda-convert
  • Registrations of a scheduled video from LTI are now based on
    lti_user_id, consumer_site, and context_id
  • Converse.js UI is not used anymore, react components are used instead
  • Add anonymous_id parameter to register a user to a scheduled webinar
  • Update live layout for students
  • Use websocket to update video resource instead of polling the API
  • Improvement of emails templates for scheduled webinars
  • Use websocket in the VOD dashboard and stop polling resources
  • Display chat and viewers list in the tabs panel
  • Upgrade to Django 4
  • Integrate live advertisement in live layout
  • Disable jitsi deeplinking

Removed

  • Remove user id in prosody JWT token

v3.27.0

07 Dec 18:19
Compare
Choose a tag to compare

Added

  • Prepare backend to manage apps
  • Prepare frontend to manage apps
  • Add BBB backend app
  • Add BBB frontend app
  • Add configuration to filter app with feature flags
  • Start and stop a live
  • Add a form to create a scheduled video on the Dashboard
  • Add frontend components to register an email for scheduled webinars
  • Add API endpoints to pair an external device to Jitsi live videos
  • Add a store in the frontend to control live layout
  • Add frontend components to pair an external device to Jitsi live videos
  • Add public availability to video api

Changed

  • Postpone AWS creation stack to the first live start action
  • Scheduled videos have a live_state set to IDLE
  • Allow access to videos with a scheduled date past

Fixed

  • Users with empty email in their token can register to scheduled webinars
  • Users with wrong email in token is properly detected as registered
  • Users waiting on the registration page are redirected if video is started
    earlier
  • Update store in the WaitingLiveVideo component
  • Set specific timeout to 30 seconds in pollForLive to update the store

Removed

  • check_live_idle management command
  • Remove validate_date_is_future validator on Video model

v3.26.0

22 Oct 12:50
Compare
Choose a tag to compare

Added

  • Add video and document downloading xAPI events
  • Video model add a starting_at field and the notion is_scheduled
  • Add email in JWT token
  • Add liveRegistration model to save registrations to scheduled events
  • Add DRF read and create liveRegistration endpoints
  • Allow DRF list action for liveRegistration endpoint
  • Use existing username in jitsi if defined

Changed

  • Redirect participant to the player once jitsi conference left
  • Redirect instructor to the waiting jitsi page once conference left
  • Only a webinar using jitsi can be created
  • Hide timed text pane when video is not a VOD
  • On app load instructor is redirected to the dashboard when the video
    is a live

Fixed

  • Implement useTranscriptTimeSelector with videojs

Removed

  • IE11 is no longer supported
  • JITSI_ENABLED feature flag

v3.25.0

29 Sep 18:29
Compare
Choose a tag to compare

Added

Changed

  • Request initial MUC config before modifying it

Fixed

  • Trigger XAPI initialized action before a first play
    for a live video
  • Listen video play event instead of playing to send the XAPI played event