OpenTV ENTera & OpenTV Platform Documentation

Configuring ingest

There are a set of parameters that can configured for the operator for the third-party metadata ingestion according to their needs. These are source-specific. 

The following is the list of configuration parameters for the Disney+ metadata ingestion:

Parameter

Description

EnableDisneyIngestion

Enables/disables Disney+ ingestion capability

The default value is false (which means ingestion is disabled). To enable the ingestion capability, set this to true.

content_provider_url

The URL of the Disney+ endpoint

The default Value is https://disney-partner-feeds-prod.bamgrid.com/starhub/mmfs-catalog/v2.

username

User name for Disney Plus Endpoint Authentication if URL provided in content_provider_url field supports basic authentication scheme, otherwise keep it blank.

password

Password for Disney Plus Endpoint Authentication if URL provided in content_provider_url field supports basic authentication scheme. otherwise keep it blank.

ingest_movie

Option to ingest D+ Movies in to OPF. Allowed values: true or false. When it is set to true, D+ movies will be ingested. When it is set to false, D+ movies will be not be ingested.

Default value set is: ingest_movie=true

ingest_shortform

Option to ingest D+ short-form into OPF. Allowed values: true or false. When it is set to true, D+ short-form will be ingested. When it is set to false, D+ short-form will be not be ingested.

Default value set is: ingest_shortform=true

ingest_series

Option to ingest D+ series in to OPF. Allowed values: true or false. When it is set to true, D+ series will be ingested. When it is set to false, D+ series will be not be ingested.

Default Value set is: ingest_series=true

ingest_season

Option to ingest D+ seasons in to OPF. Allowed values: true or false. When it is set to true, D+ seasons will be ingested. When it is set to false, D+ seasons will be not be ingested.

Default Value set is: ingest_season=true

ingest_episode

Option to ingest D+ episodes in to OPF. Allowed values: true or false. When it is set to true, D+ episodes will be ingested. When it is set to false, D+ episodes will be not be ingested.

Default Value set is: ingest_episode=true

is_original

Option to ingest D+ Originals in to OPF. Allowed Values: true (or) false. When it is set to true, D+ Originals will alone be ingested. When it is set to false, all the D+ contents will be not be ingested.

Default Value set is: is_original=false.

This will be used in conjunction with:

ingest_movie, ingest_shortform, ingest_season, ingest_series, ingest_episode

is_original was deprecated in the OPF 2024 Q1 release.

page_size

Number of items to fetch per request from Disney Plus endpoint.

Default Value set is: page_size=250

(This is the maximum supported by the new endpoint.)

full_crontab

This configuration is for setting the schedule for automated full ingestion. Cron expression/configuration is used for the same. The cron configuration contains five fields, which are space-separated. These fields and their details are described below:

Field#

Field

Allowed values 

Allowed special characters

1

From the left, the first * corresponds to Minutes (0-59)

0–59

* , -

2

From the left, the second * corresponds to Hours (0-23)

0-23

* , -

3

From the left, the third * corresponds to Day of the month (1-31)

1-31

* , -

4

From the left, the fourth * corresponds to the Month of year (1-12)

1-12

* , -

5

From the left, the fifth * corresponds to Day of the week (0-6, Sunday to Saturday)

0–6 or SUN–SAT

* , -

The following are the special characters that are allowed:

  • Comma ( , ) – value list separator
    Commas are used to separate items in a list. For example, using "MON,WED,FRI" in the 5th field (day of week) means Mondays, Wednesdays, and Fridays.

  • Dash( - ) – range of values
    A dash defines a range. For example, using 1–6 in the 4th field (month of year) indicates months between Jan to June, inclusive.

  • Slash (/) – step values
    Slashes can be combined with ranges to specify step values. For example, */5 in the minutes field indicates every 5 minutes, It is shorthand for 5,10,15,20,25,30,35,40,45,50,55,00.

More details on Cron configuration can be found in : https://crontab.guru/https://www.cyberciti.biz/faq/how-do-i-add-jobs-to-cron-under-linux-or-unix-oses/

Default value set is (2:00 AM on a every Friday): 

full_crontab=01 01 * * *

incremental_crontab

This configuration is for setting the schedule for automated incremental ingestion. Cron expression/configuration is used for the same. The Cron configuration contains five fields, which are space separated. These fields and their details are described below:

Field#

Field

Allowed values 

Allowed special characters

1

From the left, the first * corresponds to Minutes (0-59)

0–59

* , -

2

From the left, the second * corresponds to Hours (0-23)

0-23

* , -

3

From the left, the third * corresponds to Day of the month (1-31)

1-31

* , -

4

From the left, the fourth * corresponds to the Month of year (1-12)

1-12

* , -

5

From the left, the fifth * corresponds to Day of the week (0-6, Sunday to Saturday)

0–6 or SUN–SAT

* , -

The following are the special characters that are allowed:

  • Comma ( , ) – value list separator
    Commas are used to separate items in a list. For example, using "MON,WED,FRI" in the 5th field (day of week) means Mondays, Wednesdays, and Fridays.

  • Dash( - ) – range of values
    A dash defines a range. For example, using 1–6 in the 4th field (month of year) indicates months between Jan to June, inclusive.

  • Slash (/) – step values
    Slashes can be combined with ranges to specify step values. For example, */5 in the minutes field indicates every 5 minutes, It is shorthand for 5,10,15,20,25,30,35,40,45,50,55,00.

More details on Cron configuration can be found in : https://crontab.guru/https://www.cyberciti.biz/faq/how-do-i-add-jobs-to-cron-under-linux-or-unix-oses/

Default Value set is (every 30 min): 

incremental_crontab=*/30 2-23 * * *

time_zone

Time zone (https://en.wikipedia.org/wiki/List_of_tz_database_time_zones) for the Cron expression/configuration for scheduling full and/or incremental ingestion.

Default value set is: 

time_zone = UTC

ingestion_supported

List of supported ingestion (full and/or incremental). Allowed values are: "full", "incremental", comma-separated.

For example, if the operator wanted to set only full then this configuration can be set with "full".  If the operator wanted both full and incremental ingestion then this configuration can be set with "full,incremental".

If the operator wanted further crontab-based execution beyond full and incremental, it can be supported by adding a new option, for example, ingestion_supported = full,incremental,weekly, where weekly is a new crontab-based execution other than full and incremental and the corresponding crontab option should be added under the [CronTab] section like this, for example, weekly_crontab=*/1 * * * * 

Default value set is: 

ingestion_supported = full,incremental

profile_id_set

The profile for Disney Plus metadata.

Default value set is: 

profile_id_set = ProfIdDeeplink

ott_opf_locale_mapping

Mapping for Disney+ IETF locale to operator configured locale

{"en":"en_GB", "en-US": "en_US", "zh-SG": "zh_SG", "fr-FR": "fr_FR", "es-419": "es_LA", "en-AU": "en_AU", "es-CO": "es_CO", "ar": "ar_AR", "fi":"fi_FL", "none":"none"}

Note that "none" is included.

locale_priority_order

This is the priority for credits if more than one locale is present that maps to the same value.

Default value:

{"en_GB" : ["en-GB", "en","en-US"] , "zh_SG" : ["zh-Hans", "zh-Hant", "zh-HK"]}

default_locale

This is locale for the name in text metadata.

Default value:

en,en_GB

max_retries

If the URL doesn’t give a positive response, this is the number of times it will try again.

Default value:

3

wait_time

The wait time in seconds between retries.

Default value:

2

default_delta_diff_time

Sometimes the last_modified_date received from Disney+ endpoints is older than 24 hours. In such cases, calculate the delta using (current_time - default_delta_diff_time), since the Disney+ server only provides delta data for the last 24 hours.

Default value:

default_delta_diff_time = 23