The Cinegy Type RSS Controller sample is implemented as a console application that reads RSS data from the specified URL and posts updates to defined Cinegy Type variables.

All sources are available for download on Cinegy GitHub in the CinegyType.RSS.Controller section.

To run this example, the playout engine should be started, and the Cinegy Type template should be loaded to one of the layers. The playout engine host name should be specified in the "App.config" file:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <appSettings>
    <add key="RSS_Url" value="http://4pda.ru/feed/" /> <!-- http://feeds.bbci.co.uk/news/world/rss.xml https://habrahabr.ru/rss/feed/posts/6266e7ec4301addaf92d10eb212b4546/ -->
    <add key="RSS_StartPubDate" value="" /> <!-- (Wed, 11 Jan 2017 08:30:16 GMT) Format[ddd, dd MMM yyyy HH:mm:ss GMT]. If empty – the current time is taken. -->
    <add key="RSS_DateTimeFormat" value="ddd, dd MMM yyyy HH:mm:ss zzzz"/>

    <add key="Update_Interval" value="10000" />

    <add key="Template_File" value="C:\\Type RSS Task\1080i_25.CinType" /> <!-- support only CinType  -->
    <add key="Target_TextVariable" value="Text_Marquee" /> <!-- support only TEXT and STRING -->

    <add key="Playout_Hostname" value="." />
    <add key="Playout_Instance" value="0" />

  </appSettings>
    <startup>
        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" />
    </startup>
</configuration>

Here you can configure the following settings:

  • RSS_Url – defines the RSS source URL to be listened;

  • RSS_StartPubDate – defines the start RSS item publication date, all items before this date will be ignored;

  • Update_Interval – defines the RSS URL scan period in ms; the default value is to check for new items every 10 sec;

  • Template_File – defines the Cinegy Type template to be scanned for variables;

  • Target_Variable – defines Cinegy Type template variable to be updated with RSS data;

  • Playout_Hostname – defines the name or IP of the machine where the playout engine is running;

  • Playout_Instance – defines the playout engine instance to send updates to.

The Cinegy Type template should contain at least one text variable that is exported for the external modifications. When this template is running on the playout engine, its text will be updated with RSS data once a new item becomes available.

Note
Please note, this is an example to show a very simple quick way of controller sample implementation, and there are many more variants of how it can be of benefit.