OpenTV ENTera & OpenTV Platform Documentation

Internal Release Notes – Q1 : 25.12.0 OpenTV Video Platform - DRAFT version

Release summary 

This release…  


[CLC] SSO [OPF-7185] - integrate to new CLC SSO API - Q1

Customer Specific

This feature is to update the AGS to use Claro Columbia's new API for SSO authentication


nPVR series handling of 72 hour delay RECORDING state UserRecordings

Product

This feature is to support the deletion of episodes from a series recording with status = RECORDING (and status = RECORDED & status = FAILED) with a broadcast.enddate in the past. Note that in case of 4iG with Velocix we assetize recordings after 72h, i.e. the status will change from RECORDING to RECORDED only after this period of time

User-recordings performance improvements for 4iG - Jobs queue

Product

This feature is to address the below performance issues observed in 4iG :

  1. The consumption of EPG queues from MDS is slow. It is identified that auto delete functionality needs performance improvement. 

  2. Check if RabbitMQ messages can be processed in parallel.

Enhancements are provided for 2 scenarios : while processing EPG queue & while processing Jobs queue

CLC - IP Autologin (OPF)

Customer Specific

This feature supports API to allow the automatic login of devices in the home via IP resolution with Claro’s IP/account service

In Home Detection (TC with 3SS impact)

Product

This feature is to check if a mobile app is within a users home it shall perform a network lockup for the STB/VSB, assuming it resides within the home network of the user. If a TCU (PYUR) STB/VSB is found a handshake between devices shall be performed to verify the STB/VSB is in fact a valid TC device.

[Platform] Upgrade Kubernetes to 1.32 Kubernetes/Istio system components + Helm [MUST]

Internal

This feature is to upgrade Kubernetes cluster to 1.32 for OPF. To upgrade all Kubernetes system components to the latest possible release compatible with k8s 1.32.

[Platform] Keycloak 23.0.4 to 26.0.x (or above) upgrade

Internal

Keycloak community is not maintaining latest major versions (issued every 3 month approx.). Current v23 version is EOL since 04 Mar 2024.

This feature is to keep OPF Keycloak key security services up-to-date.

Update to CONTENT mode for User Recs [CLB]

Customer Specific

Currently with CONTENT mode, shared recording will create same recording url for all channels (having same event linked with same content), but with this new feature no of workflow will be different as per no of channels (having same event linked with same content). Current scope is only for nPVR.

A/B Test Targeting OPF Data Points (OPF Segments)

Product

This feature is to allow the user to set values within the OPF platform as targets for A/B Testing. 

Example 

  • Device Profile

  • In-Home

  • Country from Billing Address 

  • OnNet 

  • Profile filter string 

  • Account Profile Name 

  • Premium or Standard Subscriber (Any paid product = premium)

 The Operator must be able to define segments 

Blackout Rules per Event (Current implementation allows one ruleset only)

Product

This feature is to add the ability for an operator to specify multiple blackout rules and assign them to specific events, the current implementation allows a set of rules to be specified at the platform level.

[ENTEL] Purchase Service integration

Customer Specific

This feature supports ENTEL requirements to pre-validate Client purchase service requests via a call to an ENTEL purchase authorization service. Where authorization is granted the OPF Purchase service will proceed to add the appropriate entitlement for the Client caller OPF Account. If rejected then no OPF entitlement will be added for the OPF Account.

Internal

ION is implementing deeplinks as part of "E-43316: Support for generic deeplink structure to handle deeplinks" in Q1.25 

This feature is to have the following API support: 

  • Media card : CDF response to include links structures for all types of media card. ( at the moment, its not returned )

  • SF response should include that the search result is a deeplink with provider to show the logo for.

  • SF query to accomdate an option to exclude deeplinks from search results. ( possibly usage in filter with negation logic of the #2 above )

    • This is required for voice search where the matches of content we have deeplinks for will also be presented by the individual apps as search query results.

3rd Party Bundling/Add On Integration (Bango)

Product

Bango offers subscription bundling - bringing together the content providers with telcos to create biggest subscription bundling.

This feature is to support initially Netflix entitlement workflow for 4iG

  1. Signup

  2. Create Entitlement

  3. Update Entitlement

  4. Remove Entitlement

  5. Suspend Entitlement

  6. Token Refresh for Signup

  7. Upsell  / Downgrade (to be confirmed)

Generic product implementation to include synchronous and asynchronous use cases from Bango.

Extraction of VOD rules from CPM BRE - Continuation

Internal

This feature is to extract VOD rules from CPM BRE. This deepens the two-tier CWM model either by extending JGS or building another JGS (leave deletion in MAS for time being)

Move all VOD rules out of CPM into JGS or building another JGS which generate VOD jobs

Move all customer related VOD rules out of Business rules engine

A/B Testing XRM Segmentation Integration

Product

The integration with XRM to retrieve user segments 

The ability for customers to bulk load segments from CRM systems -  how those segments get into OPF.

  • Import of segments via bulk API or flat file

    • Matching of user IDs and properties of the profile

    • Could be part of/extension of existing CRM / Profile API’s

  • Automatic definition of segments from XRoadMedia APIs for segmenting users

Because you watched - Rails

Product

Because you watched should support

  • Automatically Picking 1..N rails based on your viewing history (like Netflix)

  • Naming the rail based on the item it's based on

RAILS Blueprint / KvP Enhancements

Product

This feature covers

  • General layout and structuring / navigation to make a cleaner view

  • Improvement of “configuration” pages

  • Discussion about optimising space in layout page with new “section layout”

  • Discussion about removing “edit properties” and having this collapsed into a single page with content / section details

  • Blueprint Typing - is it Rail, is it a KVP collection, is it a Rail Section, must be defined 

  • Standardise key definition

  • Ability to group blueprints (arbitrary grouping, e.g. branding, cache control etc)

  • Ability to apply multiple blueprints to a template / RAIL

  • Ability to select different values other than image / string

  • Ability to upload metadata along with images

  • Ability to filter images and videos by keyword(s)

Operational Efficiency: DIP -> CIM file transfer

Internal

This feature is to support the transfer of XML files from DIP to CIM avoiding the use of sftp between the two modules.

Operator Deployment - Configuration Rationalization

Internal

Feature to replace the previous feature to move to Helm deployment and configuration management. Now we will move apps to be deployed using the Operator + Kustomize model. Goal being to reduce the complexity of managing system configuration particularly around new deployments and upgrades. We will move away from Helm/JQube deployments, managing configuration as follows:

  • Operator service in the cluster to manage deployments and configurations

  • Application definition for resources defined in a single YAML managed by development/devops teams

  • Versioned configuration overrides for customers/labs

  • Clean management of applying infra inc config maps

  • Move away from previous config map definition of Platform/Business/Technical

[Independent Services] Monitoring config updatable independently from Platform playbook

Internal

Purpose of the feature is to be able deploying the OPF3 Monitoring (Prometheus alert definitions, metric exporters, Kibana dashboards, etc.) independently from the rest of the OPF3 Platform infra

Enable caching at Cloudflare level incl. complex caching control (geofiltering, max-age rating, etc.)

Internal

Caching is handled within the origin behind Cloudflare, which may not be the most efficient approach.

Objective of this feature is to

  • Industrialize the Cloudflare Cache Rules deployment (deployed as code)

  • Extend caching rules to more use cases

    • Relying on cache-control headers returned from the origin when possible (i.e. Content Delivery Facade)

    • Relying on complex cache-keys (with user profiles info extracted from JWT token)

  • Support cache invalidation (i.e. for Image Service use case)

  • OPF3 monitoring provides caching metrics retrieved from Cloudflare (i.e. traffic monitored at CF edge, including cache-hit ratio)


UIC A/B Testing Get Data

Product

The feature is to display any real AB data in UIC. 

The api's being called by UIC to get AB testing data were not implemented by the DWH team, the existing solution was a mock-up for IBC only. 

 UIC now has direct access to the DWH. 

UIC to implement SQL to get the AB test data required to display on the Rails AB testing pages. 


[OPF] [Cost reduction] Create and Validate Automated procedure to Downscale/Upscale DB Clusters on Demand

Internal

The goal of the feature is to fully automate the procedure to Downscale  (from 3-Node Cluster to Standalone) and Upscale  (from Standalone to 3 Node Cluster)  DB Clusters  on OPF as needed.

[OPF] Upgrade Atlas MongoDB to 8.0 on 23.Q4, 24.Q2, 24.Q3 andInternal 24.Q4 Baselines

Internal

This feature is to do database upgrade based on various factors like bugfixes, taking advantage of new features and most important is to be in line with the official Database Release Support. The current version of MongoDB deployed in OPF3 Atlas cluster  is version 6.0

  • Mongo DB 6.0  will be End of Life by July, 2025

  • MongoDB 7.0 will be End f Life by August, 2026


[OPF] Upgrade Elasticsearch Cluster (DB) from 6.2 to 8.17.x

Internal

Current version of Elasticsearch Cluster deployed on DB stack (EC2 instances) is 6.2.1.

This feature is to upgrade the Elasticsearch version to 8.15.x based on various factors like bugfixes, taking advantage of new features and most important is to be in line with the official ES release support.


Non-UI Locale Support (Image Ingest)

Product

This feature is to prioritize image selection for locales that are not defined in BCM. The current IMDS/images solution in OPF supports locales, as per config defined at BCM.

But while ingesting images via MAS into IMDS that specify a locale that has not been defined in BCM, it is not possible to then influence the selection process using these locales.

For PrimeVideo (and indeed any other third party catalogue), there is very little consistency in the availability of images for a specific locale. While it is true that popular or PrimeVideo original content has decent metadata / images, the rest of the content is very hit and miss.
It must be possible for IMDS to have a configuration (separate to BCM) where the locales can be specified.

Redshift SSO and MFA Sign On - SRE - DWH

Internal

This feature is to track impact on SRE to enable the DWH SSO feature to deploy a nagra-dwh client into the nagra-opcon realm to integrate with AWS IAM Identity Center.

Metamorph REX Transform

Internal

As of today, MDS(ingester) emits/publishes a rabbit message containing event/channel/content/series details, which then consumed by REX, which is very much NCanto specific.

REX acts upon receiving rabbit message, does necessary transformation to NCanto understandable asset format. 

REX posts/sync the data with NCanto. 

Problem: Transformations at MDS and at REX. 

With metamorph, we need to come up with a standard/generic rabbit message structure and all the required attributes. 

REX should be able to consume and transform it into the required format. Eg. Ncanto or Spideo etc. 

Parental Ratings - Series / Season Finalisation

Product

This feature to complete the non-critical impacts for adding Parental Ratings to Series / Season

[CLB] - CR [SCP-313] - Channelmaker

Customer Specific

The ChannelMaker Script must be able to signal CatchUp and StartOver individually, that is, it can have both enabled, or only one of the services enabled, similar to the signaling sent in the EPG as detailed below:

VALUE

DESCRIPTION

0

Disabled

1

CatchUP Only

2

StartOver Only

3

CatchUP + StartOver

[NG MDS]: Metamorph & SF integration with Elastic

Internal

This feature supports alternative options to SOLR: Elastic, Mongo Atlas.

[CLB] - CR [SCP-312] - Channelmaker Script

Customer Specific

The script must be able to take into consideration the profile in the CSV file and, if it's the STBDASH profile, inserting then the new URL format : Content/Channel /(ChannelID)/(CLUSTER VOS)/manifest.mpd

Replacement of BCM (Config Manager) - Continuation

Internal

The goal of this feature is to be in a position to remove

  • BCM

  • the underlying BCM MongoDB database

  • rabbitMQ config change notifactions

  • the configmap watcher

Rails Builder - Content Visibility Indicators - Continuation of E-43145

Product

Currently we can add content to a Rail in the admin UI that's not returned as part of a client response. This is because there are a number of criteria that have to be met for a content to be visible. For example a content has to have at least one technical, be sold via a product etc. 

The proposal here is to add badges in the UI to indicate to the operator if the content is visible to the end client or not. This will help the operator make an informed decision about what to add to a Rail, and also help operationally with debugging content visibility issues. 

Continuation for OPCON (UIC) Push Messaging UI from Q3

Product

This feature is to support a new OpCon (UIC based) section that can control the building and distribution of messages to subscriber devices. OPF DMM will be used as the reference for topic/queue availability.

 This will offer an operator the following capabilities:

  1. A dedicated UI section in OpCon providing a publication centre for general messaging

  2. This new centre is references to DMM to access in order to discover and target messages on-demand towards:

     a. Current topics defined in the deployment

     b. Current individual devices registered for messaging the deployment

     c. All current devices registered for a particular Account user

     d. New topics defined by the operator

  1. Messages sent are traceable via DWH reporting / analytics

4.Messages sent can be of a number of forms, including:

    a. Plain Text

    b. HTML with images

    c. HTML with deeplinks to application content

  1. There should be an ability broadly to edit a message sent, via some recall/republish mechanism

Spring Boot upgrade of CWM solution merge to latest CWM

Internal

CWM has been upgraded to latest Spring Boot (3.x.x) version in Q3 2024 and hence all X-ray issues are fixed.

The Stateless CWM solution, which is present in CWM Spring Boot 2.x.x version needs to be merged into latest CWM where SB 3.x.x is present.

Operator Deployment - Configuration Rationalization - Q4

Internal

Feature to replace the previous feature to move to Helm deployment and configuration management. Now we will move apps to be deployed using the Operator + Kustomize model. Goal being to reduce the complexity of managing system configuration particularly around new deployments and upgrades. We will move away from Helm/JQube deployments, managing configuration as follows:

  • Operator service in the cluster to manage deployments and configurations

  • Application definition for resources defined in a single YAML managed by development/devops teams

  • Versioned configuration overrides for customers/labs

  • Clean management of applying infra inc config maps

  • Move away from previous config map definition of Platform/Business/Technical

[SHB][D+][Disney+] New endpoints and metadata updates

Customer Specific

This feature is to update D+ adapter to new endpoints and change of schema in metadata feed.


Compatibility matrix

OPF

Q1 : 25.12.STD0

DWH (25 Q1)

tick.png

SSP (24.48) Q4

tick.png

List of new issues

The following issues are newly opened in this OPF3_24.xxSTD0 release.

Issue Type

Key

Component/s

Summary

























List of known issues

The following issues are still open (not resolved) in this OPF3_24.xxSTD0 release.

Issue Type

Key

Component/s

Summary









List of resolved issues

The following are the Critical & High severity issues resolved as part of the OPF3 (24.xx STD0) release.

Issue Type

Key

Component/s

Summary













Deprecated APIs

Component

API

Description

Deprecated in release

Supported until