How to use custom plugins and parsers in BrightAuthor?

Last Updated: May 2, 2016

To get started writing plugins or parsers, see the Parsers and Plugins tech note. For more information on BrightScript, please see the BrightScript section on the documentation website.

Plugins

Note: When adding a plugin to a BrightAuthor presentation, ensure the plugin Name is the same as the name of the BrightScript subroutine.

Plugins allow you to add custom scripts to a standard BrightAuthor presentation without actually modifying the autorun file. For example, you can use plugins to change variable values, extract information from a .txt.csv, .xml, or .json file to display it onscreen, change the contents of a playlist, or change how the presentation responds to external input. Plugins also allow you to access features that are enabled in player firmware, but that have not been built out in BrightAuthor yet.

This custom functionality can be triggered by events (button press, touch, video end, etc.) or by commands (e.g. a Zone Message or UDP Command). A plugin can also be triggered at any point by a Plugin Message command, which allows you to target a specific plugin, as well as a specific function within that plugin.

You can find examples of plugins on the BrightSign GitHub page

  • Widget Hide or Show: Allows you to hide or show a Ticker or Clock zone by sending Plugin Message commands.
  • RTSP Media Server: Converts a 4K or XD player to a media server that waits for clients to connect, then starts streaming video to them via RTSP.
  • Touch Audio Feedback: Plays an audio file over HDMI whenever a touch event is triggered in the presentation.

Important: To retrieve a plugin from the GitHub page, right-click the Raw link on the plugin page heading and click Save Link As....

Plugin_Command.png

Parsers

NoteWhen adding a parser to a BrightAuthor presentation in File > Presentation Properties > Data Feeds, ensure the Parser Function Name is the same as the subroutine name in BrightScript.

Parsers can perform many of the same custom functions as plugins (for example, extracting information from a .txt.csv.xml, or .json file to display it onscreen or changing the contents of a playlist); however, rather than being triggered by a command or being associated with an event, parsers are associated with a downloaded data feed or a file on the SD card. This means that any function that is triggered by an event must be written as a plugin, not a parser.

A parser does not need to work exclusively with the data in the feed associated with it. Once the parser starts running, you can use it to delete a file on the storage, send a UDP command, or download another feed or file.

You can find examples of parsers on the BrightSign GitHub page:

  • RSS Converter: Converts a standard RSS feed into the same format as a BSN Live Text feed, allowing you to display RSS feed items by index number in a Live Text state.
  • Live Text Title and Description: Allows you to display both the title and description of an RSS item in a Live Text State.
Have more questions? Submit a request

0 Comments

Please sign in to leave a comment.
Can't find what you're looking for? Try to
Powered by Zendesk