Data feeds

From SpinetiX Support Wiki

(Redirected from Data feed)
Jump to: navigation, search

Introduction

A data feed is a mechanism to deliver structured data from one system to another (i.e from a server to a client), automatically or on demand. The data feed is often in the form of a file that contains information structured according to the specifications of the application receiving the data. Live news, weather forecast, and stock quotes from the Internet, product information, corporate communication, information about current or upcoming events, instant messages from the reception desks; these are all examples of data feeds.

The file types can vary, but formats like CSV and XML / RSS are common because of their structure, and even plain text files can be used because of their simplicity, which allows even non-technical people to easily create their own data feeds.

The HMP is able to integrate dynamic / static data feeds and present the desired information with a certain style on the screen. This can be resumed in three steps:

  1. The HMP retrieves the raw data from the data source. Any text-based data format can be used, such as: RSS, plain-text, CSV, ICS, XML, JSON etc.
  2. The HMP processes the raw data in order to retain only the meaningful data.
  3. The HMP displays the final data on the screen using the predefined content layout.

Data source

The HMP can retrieve data from a variety of local or remote data sources, the most common ones being:

  • RSS feeds
    RSS (Rich Site Summary; often called Really Simple Syndication) feeds are commonly used to share frequently updated information: news headlines, blog entries, audio, video etc.) and can be easily found on the Internet. RSS feeds enable publishers to syndicate data automatically.
    The RSS widgets can be used to display content syndicated through RSS feeds provided by different publishers.
  • Text files
    Because of their simplicity, plain text files are commonly used for storage of information, like service / product descriptions, details of a procedure / process, notifications, rules, warnings etc. There are many software tools that allows writing / modifying text files, like Notepad, WordPad, Microsoft Word, Google Docs, OpenOffice Writer, LibreOffice Writer etc.
    Text file widgets can be used to display the content of such text files, allowing to add styling information to the text and using animations whenever the entire text doesn't fit into the widget area.
  • CSV spreadsheet files
    Spreadsheets are commonly used to store data in tabular form (i.e data cells arranged into rows and columns), like sport scores, employee birthdays, production results, price lists, poll results, restaurant menus, etc. A CSV file is a delimited text file that uses a comma (though other separators can be used as well) to separate values. Almost all spreadsheets and database management systems can natively export data as CSV file - some examples include: Microsoft Excel, Google Sheets, OpenOffice Calc, LibreOffice Calc, Numbers (spreadsheet) etc.
    The spreadsheet widgets can be used to display the content of such files within digital signage projects.
  • Media folders / locations
    A media folder is commonly used to store media files (usually images and / or videos). The source directory is usually included into the project itself (total autonomy) and the files are imported into it using Elementi (simple), or they are periodically retrieved from a content server (advanced).
    It can also be located on a web server (which must have the WebDAV extension enabled) like NAS devices, Box.com, Dropbox.com, myDrive.ch etc.
    The media files widgets can be used to automatically display the media content from a given folder, with or without a filter based on the file name / extension.


"Technical note"
Other data formats, like JSON and XML, are also available for advanced users; in fact, any text-based format can be used as a data source, including web services and HTML, and be processed through custom JavaScript parsers.
The advanced data feed widgets can be used to display content extracted from data sources based on any type of text-based format.

Data processing

The information retrieved from the data source is parsed and arranged in a table-like format, with columns and rows, using the built-in data parsers:

Elementi X users can further transform the resulted information, so that only the meaningful data can be displayed on the screen, as following:

  • Each data field (column) can be further parsed using the parsers listed above, plus Date/Time and Query String parsers.
  • Each data field (column) can be filtered using Numeric, Date and / or String filters.
  • The resulted data set can be sorted by one of the data fields (columns).

Finally, the resulted data set can be limited to a certain number of rows of data.


"Technical note"
Programmers could also use jSignage data feed functions. Or getURL() function along with low-level parsing functions.

Data-driven content

Data-driven widgets

See Data-driven widgets page for more details.

The data-driven widgets included into Elementi Library have been designed to ease up the creation of data-driven content from common types of data feeds (e.g., RSS, Text, Spreadsheets, Calendars etc.). They can be used to automatically display data extracted from local or external data sources.

Data mapping

The mapping between the data retrieved from the data source and the layers composing the layout of the widget is done using data placeholders. A data placeholder is a special notation having, in its simplest form, a double-pair of square brackets around the name of the field from where the data is taken - for instance [[title]], [[description]] etc.

See the full article on Data placeholders.

Sample projects

Troubleshooting

URI encoding

  • URIs must contain only valid URI characters (as defined by RFC 3986). Other characters must be escaped. For example, the URI "http://www.acme.corp/rss/monday|01041^^3F" should be correctly written as "http://www.acme.corp/rss/monday%7C01041%5E%5E3F".
  • Note that Elementi data feed dialog does the URI encoding automatically.

Text source encoding

  • Ensure that your text file is encoded using UTF-8. Otherwise the output may be garbled or missing characters.
  • When using Notepad, the encoding can be set when the file is saved from the "Save as" window, "Encoding:" drop-down box (next to the "Save" button).

MIME types

  • In Elementi, the MIME type of a file is determined by the extension. If the image ('enclosure') content of your feed contains a link to an ASX or PHP file, or another file which generates the image on the fly, then Elementi will not be able to auto-determine the MIME type. Open the layer properties and select the correct MIME type from the drop-down.

Data feed not displayed on Elementi

  • Elementi can open data sources that require authentication, only if the correct credentials have been added within the "Network Credentials" dialog, which can be opened from "Menu" > "Settings". In addition, the HMP must have the appropriate credentials specified in HMP Control Center.
  • The files stored on Dropbox.com can be used if they are saved under the "Public" folder (i.e. there is a direct link to the file).

Data feed not displayed on HMP

When the data feed is displayed on Elementi, but not on HMP, you should do the following:

  • Check the path used for the data source:
    • SMB/CIFS file sharing (i.e. UNC path like "\\server\share\file_path") is not supported by the HMP - this is working on Elementi only (though it is strongly discouraged).
    • Check that you are not using data from your local computer (e.g. "C:\file_path").
  • Check that the HMP has full access to the Internet (for Proxy and Gateway settings, see Network Settings page).
  • Also see the generic remarks when using Web servers.
This page was last modified on 25 January 2017, at 20:12.