mQuery [Mediasite Video Platform]
Query Mediasite EVP (Enterprise Video Platform) Server for stored presentations (exclude Template and Player entity types) and check upon their relevant (video) streams like MP4, Slides (OCR), Smooth Streaming, Live Content, Audio and general playback.
OUTPUT
mQuery outputs OneTab import URL format for easy opening and maintenance
https://example.com/Mediasite/manage#module=Sf.Manage.PresentationSummary&args[id]=XXX | 2OP821: 2. week [AUDIO:good] [MP4:good] [OCR:bad] [PLAYBACK:bad] [SLIDES:bad]
https://example.com/Mediasite/manage#module=Sf.Manage.PresentationSummary&args[id]=XXX | 2OP821: 3. week [AUDIO:good] [MP4:good] [PLAYBACK:good] [SLIDES:good]
https://example.com/Mediasite/manage#module=Sf.Manage.PresentationSummary&args[id]=XXX | 2OP821: 4. week [AUDIO:good] [MP4:bad] [SS:good] [OCR:good] [PLAYBACK:good] [SLIDES:good]
DEPENDENCY
There is no official interface yet it is a rudimentary task for anyone administering such a video platform to be aware of pending, working or missing video streams.
-
M_AUTH
-
Open the Mediasite catalog in your favorite browser
-
Alter the catalog URI to
/Mediasite/Manage
and log in -
From browser debugger copy
MediasiteAuth
cookie or inspect any XHR request forCookie
HTTP header -
M_HOST
Mediasite Enterprise Video Platform Application (EVP) server FQDN like mediasite.example.com
( source auth.env && perl mQuery.pl --streams |tee mediasite.txt )
Filter out streams
grep -v [MP4] mediasite.txt
to list presentations missing an MP4 streamgrep [OCR:bad] mediasite.txt
to list presentations with a pending OCRgrep [PLAYBACK:bad] mediasite.txt
to list presentations with a broken playback (experimental)
-
Always check for not assigning a dummy audio interface (Recorder issue)
Except a visual check there is no way to find a presentation is silent as for a Completed video stream there is always an audio layer present. And you cannot find about the audio size (length) unless you would download and demux the whole video file.
mQuery wraps cURL requests around several Mediasite JSON URIs. Additionally it can be made to verify presentations for Status (Viewable/Scheduled/..), State (Completed/Pending/..) or Player (Multiview/Full experience/..).
- Tested for Mediasite Server Version 7.0.30 Build 3737
- There is no possible support for previous server versions
- replace recursion with iteration
- start by a folder name (InitialFolderTree)
- replace system cURL with Mojo::UserAgent
- implement login instead of storing auth session cookie (expires in 15 minutes)
Released into the public domain.
Don't blame me.