Skip to content

MagicMirror module that extracts and formats feeds from RSS sources in a format compatible with other MMM-Feed modules

License

Notifications You must be signed in to change notification settings

TheBodger/MMM-FeedProvider-RSS

Repository files navigation

MMM-FeedProvider-RSS Module

This magic mirror module is a MMM-FeedProvider module that is part of the the MMM-Feedxxx interrelated modules.

For an overview of these modules see the README.md in https://github.com/TheBodger/MMM-FeedDisplay.

the -RSS module will monitor and format any RSS (1,2,Atom) compatible feeds it is configured to get. It will extract text and the first Image that is embbeded within a feed item.

Example

Example of MMM-FeedProvider-RSS output

Dependencies

Before installing this module, use https://github.com/TheBodger/MMM-FeedUtilities to setup the MMM-Feed... dependencies and install all modules

The following node modules are required: See https://github.com/TheBodger/MMM-FeedUtilities for a simple install process for all MMM-Feedxxx modules and dependencies

moment
feedparser
request

Installation

To install the module, use your terminal to:

  1. Navigate to your MagicMirror's modules folder. If you are using the default installation directory, use the command:
    cd ~/MagicMirror/modules
  2. Clone the module:
    git clone https://github.com/TheBodger/MMM-FeedProvider-RSS

Using the module

MagicMirror² Configuration

To use this module, add the following configuration block to the modules array in the config/config.js file:

		{
			module: "MMM-FeedProvider-RSS",
			config: {
				text: "MMM-FeedProvider-RSS",
				id: "mmfp-rss",
				consumerids: ["MMFD1"],
				feeds: [
					{ feedname: 'bbc_world', 
						feedtitle: 'BBC ', 
						feedurl: 'https://feeds.bbci.co.uk/news/world/rss.xml', 
						oldestage: 'today' },
					{ feedname: 'elle2', 
						feedtitle: 'elle', 
						feedurl: 'https://www.elle.com/rss/all.xml/', 
						oldestage: 24 * 1 * 60 },
					{ feedname: 'reddit', 
						feedtitle: 'mkup', 
						feedurl: 'https://www.reddit.com/r/makeupaddiction/.rss?format=xml', 
						oldestage: '2020-04-01 00:00:00' },
				],
				datarefreshinterval: 15000,
			}
		},

Configuration Options

Option Details
text Optional -

Possible values: Any string.
Default value: The Module name
consumerids Required - a list of 1 or more consumer modules this module will provide for.

Possible values: An array of strings exactly matching the ID of one or more MMM-FeedDisplay modules
Default value: none
id Required - The unique ID of this provider module

Possible values: any unique string
Default value: none
datarefreshinterval Optional - milliseconds to pause before checking for new data in the feeds.

Possible values: a number in milliseconds
Default value: 60000
feeds required - See below for the feed format
datarefreshinterval Optional - milliseconds to pause before checking for new data in the feeds.

Possible values: a number in milliseconds
Default value: 60000
useheader Optional - Sends HTTP headers to the RSS server. Some servers require headers, other fail if they receive them.

Possible values: true or false
Default value: false
waitforqueuetime Ignore - Queue delay between ending one queue item and starting the next

Possible values: a number in milliseconds.
Default value: 10
Feed Format
feedname Required - Name of the feed for reference purposes

Possible values: Any unique string.
Default value: none
feedtitle Required - Title of the feed that will be displayed as the source if enabled in the MMM-FeedDisplay output.

Possible values: Any unique string.
Default value: none
feedurl Required - URL of the RSS feed

Possible values: any valid URL referencing a RSS v1,v2 or Atom formatted feed
Default value: none
oldestage Required - Filter out any articles older than this "age" (As defined by the pubdate in the RSS feed).

Possible values: 'today' or a number of minutes or a valid date(See Moment.js formats.
Default value: none

Additional Notes

Reddit provides access to subreddits through a RSS formatted URL. See the reddit example in the example config above.

This is a WIP; changes are being made all the time to improve the compatability across the modules. Please refresh this and the MMM-feedUtilities modules with a git pull in the relevant modeules folders.

About

MagicMirror module that extracts and formats feeds from RSS sources in a format compatible with other MMM-Feed modules

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published