Viz Channel Branding User Guide

Version 5.2 | Published June 05, 2024 ©

POST Group to Playlist

To add or update a single or collection of groups in a playlist for a given channel use the POST command documented below.

For this command two examples are given. The first example (Request 1 - Example with 2 groups/Response 1 - Example with 2 groups) shows how to post two groups. Note that for this example page(s) is added by rules for both groups.

The second example (Request 2 - Example with 1 group and 2 pages/Response 2 - Example with 1 group and 2 pages) shows how to add one group and two pages. No additional pages are added by rules.

Groups can be added with or without pages depending on the requirements.

Note: Posting of multiple resources are allowed. The Location in the reponse points to the nearest parent (i.e. the entry the POST was made to). Each specific element is linked in the verbose response.

Note: After this request is done the system is primed to perform a Page Content Filling process against Promo Server as soon as there is no immediate additional requests sent.

Note: Including a timezone annotation in begin_at property is recommended, preferably in UTC (Z) time. If timezone annotation is missing the time is assumed to be in an unspecified component-centric local time.

Syntax

POST /restapi/[channel_name]/[playlist_name]

Request 1 - Example with 2 groups

POST /restapi/MovieChannel/continuous/ HTTP/1.1
Content-Type: application/vizrt.integrationshub+xml; type=payload
<payload>
<group name="group1" event_id="1" description="group 1" duration="3600" begin_at="2014-06-13T01:00:00.000Z" />
<group name="group2" event_id="2" description="group 2" duration="3600" begin_at="2014-06-13T00:00:00.000Z" />
</payload>

Response 1 - Example with 2 groups

HTTP/1.1 201 Created
Content-Type: application/vizrt.integrationshub+xml; type=playlistpostreply
Content-Location: http://localhost:9990/restapi/MovieChannel/continuous/
<playlistpostreply xmlns="http://www.vizrt.com/integrationshub">
<title>Post result info to http://localhost:9990/restapi/MovieChannel/continuous/</title>
<description>Continuous Playlist</description>
<name>continuous</name>
<link href="http://localhost:9990/restapi/MovieChannel/continuous/" rel="self" type="application/vizrt.integrationshub+xml; type=playlistpostreply" />
<broadcast_date>continuous</broadcast_date>
<group>
<title>Group info for http://localhost:9990/restapi/MovieChannel/continuous/group1</title>
<description>group 1</description>
<name>group1</name>
<link href="http://localhost:9990/restapi/MovieChannel/continuous/group1" rel="self" type="application/vizrt.integrationshub+xml; type=group" />
<begin_at>2014-06-13T01:00:00.000Z</begin_at>
<duration>3600</duration>
<event_id>1</event_id>
<trigger_id />
<attributes>
<attribute name="begin_at">
<value>2014-06-13T01:00:00.000</value>
</attribute>
<attribute name="description">
<value>group 1</value>
</attribute>
<attribute name="duration">
<value>3600</value>
</attribute>
<attribute name="event_id">
<value>1</value>
</attribute>
<attribute name="instance">
<value>relative_MovieChannel</value>
</attribute>
<attribute name="name">
<value>group1</value>
</attribute>
</attributes>
<page>
<description>00:27/00:30/00:33/00:36/00:39/Africa 2/sso4/SSO3/SSO2/confomr a conform SD/FOX 2007 EMMY WINNERS/FOX 2007 EMMY WINNERS</description>
<name>nextshow</name>
<link href="http://localhost:9990/restapi/MovieChannel/continuous/group1/nextshow" rel="self" type="application/vizrt.integrationshub+xml; type=page" />
<timecode>00:00:05:00</timecode>
<take_duration />
<page>nextshow</page>
</page>
</group>
<group>
<title>Group info for http://localhost:9990/restapi/MovieChannel/continuous/group2</title>
<description>group 2</description>
<name>group2</name>
<link href="http://localhost:9990/restapi/MovieChannel/continuous/group2" rel="self" type="application/vizrt.integrationshub+xml; type=group" />
<begin_at>2014-06-13T00:00:00.000Z</begin_at>
<duration>3600</duration>
<event_id>2</event_id>
<trigger_id />
<attributes>
<attribute name="begin_at">
<value>2014-06-13T00:00:00.000</value>
</attribute>
<attribute name="description">
<value>group 2</value>
</attribute>
<attribute name="duration">
<value>3600</value>
</attribute>
<attribute name="event_id">
<value>2</value>
</attribute>
<attribute name="instance">
<value>relative_MovieChannel</value>
</attribute>
<attribute name="name">
<value>group2</value>
</attribute>
</attributes>
<page>
<description>00:27/00:30/00:33/00:36/00:39/Africa 2/sso4/SSO3/SSO2/confomr a conform SD/FOX 2007 EMMY WINNERS/FOX 2007 EMMY WINNERS</description>
<name>nextshow</name>
<link href="http://localhost:9990/restapi/MovieChannel/continuous/group2/nextshow" rel="self" type="application/vizrt.integrationshub+xml; type=page" />
<timecode>00:00:05:00</timecode>
<take_duration />
<page>nextshow</page>
</page>
</group>
</playlistpostreply>

Request 2 - Example with 1 group and 2 pages

POST /restapi/MovieChannel/continuous/ HTTP/1.1
Content-Type: application/vizrt.integrationshub+xml; type=payload
<payload>
<group name="group1" event_id="1" description="group 1" duration="3600" begin_at="2014-06-13T01:00:00.000Z">
<page name="page1" page="now" take_duration="30" timecode="00:00:10:00" />
<page name="page2" page="nextshow" take_duration="14" timecode="00:59:30:00" />
</group>
</payload>

Response 2 - Example with 1 group and 2 pages

HTTP/1.1 201 Created
Content-Type: application/vizrt.integrationshub+xml; type=playlistpostreply
Content-Location: http://localhost:9990/restapi/MovieChannel/continuous/
<playlistpostreply xmlns="http://www.vizrt.com/integrationshub">
<title>Post result info to http://localhost:9990/restapi/MovieChannel/continuous/</title>
<description>Continuous Playlist</description>
<name>continuous</name>
<link href="http://localhost:9990/restapi/MovieChannel/continuous/" rel="self" type="application/vizrt.integrationshub+xml; type=playlistpostreply" />
<broadcast_date>continuous</broadcast_date>
<group>
<title>Group info for http://localhost:9990/restapi/MovieChannel/continuous/group1</title>
<description>group 1</description>
<name>group1</name>
<link href="http://localhost:9990/restapi/MovieChannel/continuous/group1" rel="self" type="application/vizrt.integrationshub+xml; type=group" />
<begin_at>2014-06-13T01:00:00.000Z</begin_at>
<duration>3600</duration>
<event_id>1</event_id>
<trigger_id />
<attributes>
<attribute name="begin_at">
<value>2014-06-13T01:00:00.000</value>
</attribute>
<attribute name="description">
<value>group 1</value>
</attribute>
<attribute name="duration">
<value>3600</value>
</attribute>
<attribute name="event_id">
<value>1</value>
</attribute>
<attribute name="instance">
<value>relative_MovieChannel</value>
</attribute>
<attribute name="name">
<value>group1</value>
</attribute>
</attributes>
<page>
<description>Good words need great graphics/A bad graphic is worse than no graphic/Size DOES matters! Superb HD graphics from Vizrt/Your analogue station just entered a new era - history/No Viz. No Fizz/It...s TV. You must VIZualize it/Mood music for the eyes. Vizrt/No story is complete without a Viz graphic</description>
<name>page1</name>
<link href="http://localhost:9990/restapi/MovieChannel/continuous/group1/page1" rel="self" type="application/vizrt.integrationshub+xml; type=page" />
<timecode>00:00:10:00</timecode>
<take_duration>30</take_duration>
<page>now</page>
</page>
<page>
<description>00:27/00:30/00:33/00:36/00:39/Africa 2/sso4/SSO3/SSO2/confomr a conform SD/FOX 2007 EMMY WINNERS/FOX 2007 EMMY WINNERS</description>
<name>page2</name>
<link href="http://localhost:9990/restapi/MovieChannel/continuous/group1/page2" rel="self" type="application/vizrt.integrationshub+xml; type=page" />
<timecode>00:59:30:00</timecode>
<take_duration>14</take_duration>
<page>nextshow</page>
</page>
</group>
</playlistpostreply>

Example of content for POST Group to Playlist with isLive and isLocked set to true

POST /restapi/MovieChannel/continuous/ HTTP/1.1
Content-Type: application/vizrt.integrationshub+xml; type=payload
<payload>
<group name="group3" event_id="3" description="group 1" duration="3600" begin_at="2014-06-13T01:00:00.000Z" isLive="true" isLocked="true" />
</payload>