<img src="https://img.shields.io/badge/%20-ALL-%2300B180" style="float:left"/><br />

<img src="https://img.shields.io/badge/%20-Beta-green.svg" /> This is a **beta** offering.

By using this documentation, you are agreeing to abide by the terms of the <a href="https://www.jwplayer.com/beta-program-agreement/" target="_blank">JWP Beta Program Agreement</a>.

<br />

Our **Electronic Programming Guide (EPG)** is a self-updating menu to visualize live channel schedules on your app.


Example EPG display

You can create an EPG for your app using an app config.

An EPG offers several advantages:

  • Enables your users to navigate live streams

  • Increases minutes watched due to clear and accessible scheduling information

  • Markets various media items to users

<br /> <hr />

## Requirements

<table> <thead> <tr> <th> Item </th> <th> Notes </th> </tr> </thead> <tbody> <tr> <td width="25%"> <strong>Active app</strong></td> <td width="75%">Learn more about <a href="/platform/docs/apps-get-started" target="_blank">apps</a></td> </tr> <tr> <td> <strong>App config</strong></td> <td> <a href="/platform/docs/apps-app-config-overview" target="_blank">App config associated</a> with your app</td> </tr> <tr> <td> <strong>Live Channel</strong></td> <td> One or more live channels in your Media Library <br /><br />

Contact your JWP representative to enable and set up live channels for your account.

</td> </tr> <tr> <td> <strong>Live Channel schedule</strong></td> <td> Live Channel schedule in JSON format <br /><br />

The EPG’s channel schedule data must conform to the Broadcast Live <a href="https://docs.vualto.com/projects/vualto-control-hub-docs/en/latest/UserGuide/Events/EditEvent/ChapterPoints.htm" target="_blank">chapter points</a> JSON format, such as these <a href="https://github.com/jwplayer/ott-web-app/tree/develop/test/epg" target="_blank">sample EPG Schedule Data files</a>.

  • If using a partner-hosted app, contact your partner representative to create and host your live channel schedule JSON.

  • If using JWP Web App, contact your JW representative for assistance. <br />

You must host your live channel schedule data on your own servers.

</td> </tr> </tbody> </table>

<br /> <hr />

## Create an EPG

The instructions described here apply to the open-source Web App. Contact your app partner for instructions for you specific situation.

Use the following steps to create an EPG:

  1. [Set custom parameters for each live channel](🔗).

  2. <a href="/platform/docs/vdh-create-a-manual-playlist" target="_blank">Create a manual playlist</a> of your live channels.<br />In step 9, add the following key-value pair under **Custom Parameters**:

    • For **Key**, enter _contentType_.

    • For **Value**, enter _Live_.


Playlist custom parameters for live channel

  1. <a href="/platform/docs/apps-add-content-to-the-landing-page#add-content" target="_blank">Add the playlist</a> of your live channels to the app config (steps 1-4) and click **Save**.

<br /> <br />

### Set custom parameters for a live channel

To incorporate a live channel into your app, you must add several custom parameters to the channel.


Live channel custom parameters

<br />

Use the following steps to set custom parameters for a live channel:

  1. In your JWP dashboard <a href="https://dashboard.jwplayer.com/p/media" target="_blank">Media Library</a>, click the name of the media item for the live channel created by your JWP representative. The details page for the media item appears.

  2. Edit the media <a href="/platform/docs/vdh-edit-video-metadata" target="_blank">metadata</a>, such as the title, description, and tags.

  3. Under **Custom Parameters**, add all the values listed in the following table.

    _catchupHours_Must match the value in your Broadcast Live configuration Contact your JWP representative for this value.
    _contentType_Routes the media item to the app’s live channels page **Value**: _LiveChannel_
    _liveChannelsid_ Playlist ID for the dynamic playlist containing your live channels
    _scheduleDemo_(Web App only) Interprets all values as **Today** when testing your content
    _scheduleUrl_ URL of <a href="https://docs.vualto.com/projects/vualto-control-hub-docs/en/latest/UserGuide/Events/EditEvent/ChapterPoints.html" target="_blank">schedule data JSON</a>
  4. (Optional) <a href="/platform/docs/vdh-create-default-custom-parameters" target="_blank">Create default custom parameters</a>.

  5. Click **Save**.

<br /> <hr />

## Manage an EPG

The following table explains the various ways to manage an existing EPG.

<table> <thead> <tr> <th> Action </th> <th> Notes </th> </tr> </thead> <tbody> <tr> <td width="25%"> <strong>Customize</strong></td> <td width="75%">You can customize the appearance of your EPG in the <a href="/platform/docs/apps-customize-branding" target="_blank">app config</a>.</td> </tr> <tr> <td> <strong>Edit</strong><br />or<br /><strong>Delete</strong></td> <td> To edit or delete schedule data, update your JSON file according to the Broadcast Live <a href="https://docs.vualto.com/projects/vualto-control-hub-docs/en/latest/UserGuide/Events/EditEvent/ChapterPoints.html" target="_blank">chapter points</a> format: <br /><br /> <ul> <li>If using a partner-hosted app, contact your partner representative to receive help with editing or deleting your JSON file.</li> <li>If using JWP Web App, contact your JW Solutions Consultant for assistance. Your Solutions Consultant will edit or delete live channel schedule data to reflect your desired changes.</li> </ul> </td> </tr> </tbody> </table>

<br />

<!-- Removes the automatic page-to-page navigation at the bottom of the page -->

<style> .rm-Pagination { display: none; } </style>