Version 2.0.5.x
v2.0.5.7 - 2020-02-12
Enhancements
NEM-228 - Show release Version and Date in the Frontend
NEM-288 - Asset Page - UI and extra fields on metadata
Changed the headlines and structure in the asset section to be more user friendly.
NEM-311 - VOD-Stack integration
It is possible to select VoD channels as a new channel format.
Find details on how to use them at: https://nowtilus.gitbook.io/serverside-ai/video-player-app/vod-dash-hls
NEM-417 - Channel Player: warn when original source stream cannot be played due to CORS/SSL issues
The channel player now shows error that occur on load or while playback.
NEM-419 - Manifest Analyser: VOD: warn if example is mp4
The system only accepts dash or hls manifests as source for VOD channel. THis is now reflected in the analysis as well.
NEM-412 - Channel API - expose route(s) to enable/disable a channel / channels
A dedicated method can now be used in order to activate or deactivate a channel
Fixes
NEM-230 - Clicking on Action on the enhanced table component gives an empty list
NEM-231 - Do not expose the ApiKey (systems key) to the frontend
NEM-253 - Display meaningful error when elastic search not set up correctly for ssai report
NEM-281 - fix not user friendly message
NEM-284 - Occasional backend crash on page switch
NEM-315 - Prevent the transmitter from logging everything in debug mode
NEM-322 - API key save fails silently (user login for non-existent tenant?)
NEM-324 - User not found even if user exist
NEM-325 - Player does not work with HLS
NEM-330 - Test-Player is not playing back HLS-Streams on Chrome
NEM-355 - Empty Reports Display
NEM-356 - Map shows data after a new tenant has registere
NEM-358 - Improve Test-Coverage to 70%
NEM-361 - Failed job does not change its status to 'failed'
NEM-378 - Error during ssai channel creation via API PRD
NEM-382 - SSAI PRD - encoding job never end
NEM-385 - Failing tasks do not add the error (reason for failing) to the task and job
NEM-386 - Failing channel synchronizer test
NEM-387 - Failing enable channel
NEM-389 - Ad Slates get generated to many times NEM-394 - Backend: crash in refresh.
NEM-396 - SSAI create new tenant error - Invalid template NEM-397 - Histories records all contain only 'undefined'
NEM-400 - Fix unstable tests
NEM-402 - Channel Synchroniser: if sync fails for one tenant, subsequent tenants are not synced.
NEM-403 - The notification Service is responding extremely slow
NEM-410 - VOD GPAC static HLS mainfests fail to parse
NEM-411 - VOD DASH channel creation attempts to create adSlates?
NEM-415 - Dash Encoding doesn't work
NEM-416 - Player gets stuck with buffering
NEM-420 - Output URI for VoD channels
NEM-422 - Segments to replay after midroll = 0 gives JSON error
NEM-424 - Channel config on a ad-server level
NEM-431 - Remove the Back link in Asset-Details
NEM-432 - Change columns in the job-lis
v2.0.5.6 - 2020-01-02
Enhancements
NEM-318 - Channel Synchronisation based on NEM-243
Synchronise channels with the assigned SSAI-Cluster automatically so that:
Channels never get out of sync
In case of a Redis outtake/reboot channels get recreated quickly
NEM-333 - Raise Notifications on channel synchronisation errors
In case an error happens in the synchronisation process it is saved to the notifications and every user can subscribe to this event to get notified via email, slack or webhook.
NEM-360 - Added VoD services to SSAI-Cluster
The SSAI-Cluster now supports live and VoD channels. The administration of such VoD channels is planned to be added with version 2.0.5.7
NEM-204 - Ad-Slate (mp4) upload and automatic transcoding
The Ad-Slate for a channel can now be added by uploading a mp4 file. This supersedes the old process of defining a URL because it directly transcodes and packages the ad-slate in the required renditions to fit smoothly into the stream.
Fixes
NEM-369 - Channels that only exist in Serverside.ai database cannot be deleted
Fixes: Channels that where only existing in the Serverside.ai database but not in the SSAI-Cluster Redis database could not be deleted.
NEM-375 - InitDB causing issues on CosmosDB since a dependency update. Refactored InitDB-Process.
After updating the dependencies to Azure and inside the project to the latest versions the process to initialise new collections caused crashes in multiple scenarios. This initialisation process has been refactored and runs only once on system boot up. Which is not only decoupling the processes to fix the current issues but also speeds up the resource creation and update process,
NEM-376 - Use env variables in Jest test
In order to make use of the Jest vs-code extension default environment variables have been added to the Jest configuration.
Systems
SSAI-Cluster
Integrated: VoD Ad-Aggregation Service v4.0.2
Integrated: VoD Ad-Stitcher Service v4.0.3
Both services above allow the creation of VoD SSAI channels based on a .mrss playlist forwarded by the player
v2.0.5.5 - 2019-12-05
Enhancements
NEM-88 - Default database entries on tenant level
A newly registered tenant gets all the important resources out of the box which simplifies the the setup process. The setup includes:
Connection to the shared SSAI-Cluster
Connection to the shared Azure Media Services account
A default HLS and DASH channel
Logic for processing advertisements in the format required for a dedicated channel
Note: The settings existing tenants made to their processes, systems and channels will not be changed.
NEM-98 - Notifications and subscription to notifications
Some internal processes emit notification that are listed in the notification section in the app: https://admin.serverside.ai/app/settings/notifications
Additionally users can subscribe to the notifications (https://admin.serverside.ai/app/settings/profile):
Job created
Job failed
Job is done
The currently supported subscription methods are Email, Slack and Webhook.
NEM-226 - Frontend: Improved handling of unknown routes
Unknown routes will lead to a friendly error message :-)
NEM-275 - Replace chart.js with Nivo for rendering charts
To provide a richer experience when looking at your stats we included the Nivo charting framework.
NEM-338 - DASH: Support trick play tracks
Additionally to the video representations a trick-play representation can be defined.
<Representation
id="video=260000(mode=trik)"
bandwidth="260000"
width="416"
height="234"
codecs="avc1.64000D"
scanType="progressive"
></Representation>
Serverside.ai understands the difference to the main video track and adjusts the encoding profile accordingly.
v2.0.5.4 - 2019-11-15
Enhancements
NEM-319 - Logging in Elastic Search and Elastic Cloud
The system can now be deployed with additional environment variables that enable the forwarding of the logs to a ElasticCloud instance.
Details: Underneath there is a Filebeat instance started and configured that is forwarding the logs to ElasticSearch.
NEM-227 - Deleting a title will also delete the related medias and jobs
Until today a user needed to delete all the jobs and medias that are related to a title in order to be able to delete a title and not have any orphan entries. Now those related entries will be deleted automatically in the background whenever a title is deleted.
Fixes
NEM-313 - Restricting user and tenant access to delete of single items
Knowing the UUID of an entry it was possible to delete an item of another tenant. This Security flaw was removed.
Systems
SSAI
[DASH] Synchronization of source manifest scan is now added to DASH, too.
[DASH] Enhance client-side VAST tracking capabilities by signaling the ads complete VAST documents (supporting FreeWheel PoC)
[DASH] Service names (for DASH) made configurable.
[DASH] Update log format
[Channel-API] enhance synchronization of scan-jobs by new 'scan-job-generation' for DASH
[DASH] Signal URL to client-VAST in view request
[DASH] added route to fetch VAST document for client-side VAST tracking
[DASH-Scanner] enhance synchronization of scan-jobs by new 'scan-job-generation' for DASH
[DASH-Scanner] added SERVICE_NAME=dash-scanner to ENV
[DASH-Scanner] scan source manifest at the defined minimumUpdatePeriod interval signaled in the source MPD
[DASH-Scanner] format logging by prepending channel- (cid:), replacement- (rid:), period- (pid:) ids accordingly to any log message
[DASH-Replacer] Signal complete VAST responses to clients i.o. to enable full VAST tracking
[DASH-Replacer] added SERVICE_NAME=dash-replacer to ENV
[DASH-Replacer] store complete VAST responses for delivery to the sai-client (client-side VAST tracking)
[DASH-Replacer] format logging by prepending channel- (cid:), session- (sid:), replacement- (rid:) ids accordingly to any log message
[DASH-Replacer] Fix: Multiple enable crashes channel
[DASH-Replacer] Fix: Disable-enable cycle needs time to propagate correctly
[DASH-Replacer] Fix: Duplicate scan-job on re-schedule orphaned scan-jobs, source scan errors, channel re-synchronisation errors
v2.0.5.3 - 2019-10-30
Fixes
NEM-188 - Apply correct styles on SweetAlert dialog boxes
Buttons did not get the CSS styles. This is changed to the correct styling. See: NEM-105
NEM-296 - token refresh seems to be broken
After the time-to-live of the user token was expired after 1 hour there was no automated fetch with the refresh token which led to fetching errors and empty pages.
The Frontend was logging:
Fixed by an improved handling of the refresh token.
NEM-301 - Fixed: Navigation to /app route causes a wrong redirection
Issue: Pasting https://admin.serverside.ai/app/ into the browser redirects you to: https://admin.serverside.ai/app/app/dashboard which is not a route and so is a blank page.
Fixed by refactoring the routing.
NEM-304 - Fixed: Cannot add a channel on staging because faulty id in url
Creating a new channel forwarded the user to a wrong URL with [object%20object] instead of the channel id:
Fixed by refactoring the routing.
Enhancements
NEM-105 - Frontend: Error/ Success Messages handled by the SweetAlerts framework
Added unified success and error message handling utilising SweetAlert2: https://sweetalert2.github.io/
NEM-136 - Show more detail on errors
Sending an error from the backend can now be resolved completely by the frontend to show all the details of the error message.
Example of error handling in the backend:
NEM-216 - Admins can now resend the verification e-mail for a particular user
It is now possible to resend the confirmation email by an admin via:
NEM-216 - Users can request the verification e-mail if they ave not received the original mail
Users that have not yet verified their email address can now choose to resend the confirmation email after trying to login in case they have nor received the first one.
NEM-276 - Frontend routing has changed from hash to a path based approach
The frontend routing has changed from a hash based approach like
to a path based schema
to enable multiple layers of nesting like
NEM-293 - Add Freewheel as possible ad-server
On the channel detail page freewheel
can now be used as another supported ad-server.
In order to use freewheel
please always add the following line to the ad source parameters (optional)
field:
Systems
SSAI
Synchronisation within the channel scan process is enhanced leading to more stability in cases of source stream manifest or connection errors, ssai-component updates and ssai-channel-api interactions
API-Keys are enabled for DASH
HLS source updates are safely throttled to half the segment target duration. HLS output manifests are defaulted to 10 in length.
Earlier fixes to the FreeWheel adapter are included.
Fix typo in parameter name (flag)
Add HTTP-header for client IP
SpotX adapter now features GDPR client parameters.
Whitelist regs[...] in client/session url parameters
Whitelist user[...] in client/session url parameters
Fix: Multiple enable crashes channel
Fix: Disable-enable cycle needs time to propagate correctly
Fix: Duplicate scan-job on re-schedule orphaned scan-jobs, source scan errors, channel re-synchronisation errors
v2.0.5.2 - 2019-10-14
Enhancements
NEM-205 - Frontend: Enable channel params on the channel detail page
NEM-232 - Clean up the registration page
NEM-244 - Replace use of specific subclasses (e.g. ForbiddenError) with MoleculerError
NEM-256 - Clean up the login page
NEM-279 - Frontend: remove "handleJSONChange" from DataConnector
NEM-280 - Frontend: Allow maxWidth for List columns to be passed in props
Fixes
NEM-220 - Frontend: Make sure buttons are always accessible in lists
NEM-225 - Add error handling to "Invite User"
NEM-257 - Asset metadata: Type should be a dropdown
NEM-274 - Remove Elastic Environment Variables (They are no longer used because the channel service pulls the elastic config now from the systems service)
v2.0.5.1 - 2019-10-02
Enhancements
NEM-97 - Finalize asset detail page (including: limit with of tables and auto-generated detail page for medias+jobs)
NEM-259 - DASH analyzer to support the alternative DASH-Manifest representation structure
v2.0.5.0 - 2019-09-27 - Alpha Release
Enhancements
NEM-87 - Improved the registration flow by making the mails cleaner and improving the process
NEM-90 - Handling of forbidden sections. Section display is now dependent on the role of a user: SuperAdmin, Admin or Viewer
NEM-91 - Implement the Reporting and Dashboard section
NEM-92 - Implement pagination, sorting and reload on the table view
NEM-153 - Changed flow.tasks to taskTemplates in the code to make the purpose clearer
NEM-163 - Reviewed the readme.md and put most of the docs in the wiki
NEM-189 - Updated the new logo on main page and favicon
NEM-206 - Changed the configuration to come from the systems service
NEM-211 - Added x-total-count to the response headers
NEM 213 - Implemented the new SSAI-Cluster API
NEM-242 - Improved the API error http status codes
NEM-245 - Replace 501 errors with 500 errors
NEM-247 - Improve channel API responses handling on update
NEM-251 - Implemented SSAI-Cluster channels API interface changes
NEM-258 - In the profiles set bFrame to 0 by default
Fixes
NEM-219 - FIX: Cannot login again after logout or token expiration - SOLUTION: Delete existing token before login
NEM-223 - FIX: Search on assets and users not working
NEM-246 - FIX: Updating a channel doesn't update ad server url
NEM-248 - FIX: On Windows docker often cannot start dependencies after machine restart
Last updated