TR-NewsWall - Setup

Quick Install
Enabling manual advance buttons
Adding RSS and Instagram feeds
Adding your Twitter timeline
Running NewsWall on http port 80
Keybord shortcuts

Quick Install

Out of the box, TR-NewsWall is configured to fetch a list of RSS and Instagram feeds. To include your Twitter timeline, a special permission must be granted via Twitter settings. You can find more about this below.

Note that you can start NewsWall right away and have it receive live updates from the preconfigured RSS and Instagram feeds. You may want to give this a try before you add your own content sources.

Two-step install:

1) Unzip installer anywhere, cd newswall, run: ./newswall
2) Point your browser to: http://{host-ip}:9095

Enable manual advance buttons

TR-NewsWall offers three buttons ("Next", "Previous", "Play") to interact with the server manually. To enable these buttons, simply add "?su" to your requrest URL, like so:

  http://{host-ip}(:9095)?su
    or
  http://raspberrypi.local(:9095)?su
  
Move your mouse pointer to the upper right corner and you should see the "Next" button light up. Below the "Next" button you will find the "Previous" button. And a little further down the "Play" button. The "Play" button let's you activate and deactivate auto-mode. If the "Play" button shows up as "Pause", then this is because auto-mode is already enabled.

To prevent NewsWall from starting with auto-mode enabled, remove (or outremark, or set to false) the following line in your config.txt.

  newswall_autoMode=true

Then just restart the server. You can stop the server by hitting Ctrl-c.

Add some RSS/Atom and Instagram feeds

All RSS feeds are specified in the "rss.txt" file. All Instagram feeds are specified in "ig.txt" file. The location of these files is specified in "config.txt":

  newswall_rssConfigFile = rss.txt
  newswall_igConfigFile = ig.txt
  
With this configuration, the two files are expected to be located in the newswall folder, right next to "config.txt". You can also host these two files on a remote web server. In this case the two entries would look like this:
  newswall_rssConfigFile = https://myserver.com/files/rss.txt
  newswall_igConfigFile = https://myserver.com/files/ig.txt
  
You might want to host these files on a remote server, because you have easier access to that server. Or maybe you have several NewsWall servers which you want to operate with the exact same feeds.

If you intend to disable the RSS or Instagram feeds (or both), all you need to do, is to outcomment the two lines in "config.txt".

RSS-feeds in "rss.txt" are specified with four bits of data per entry (per line), separated by pipe characters:
  URL|refresh-minutes|friendly-name|icon-file
  URL|refresh-minutes|friendly-name|icon-file
  ...
  
Instagram-feeds in "ig.txt" are specified with two bits of data, separated by a single pipe character. The second entry is optional:
  feed-name|refresh-minutes
  feed-name|refresh-minutes
  ...
  
To disable individual feeds, delete their lines. Or outcomment these entries by inserting a '#' character at the beginning of each line.

To force the server to re-process the modified rss.txt and ig.txt files at runtime, just force a page reload in your browser with the ?su parameter set in the URL.

You should, in general, use "refresh-minutes" values not smaller than "10". If you try to fetch a public feed much more frequently, there is a certain risk you might get blocked. NewsWall itself does not enforce a minimal value. If you like to fetch some RSS feed that is under your control, you can use any "refresh-minutes" value.

Adding your Twitter timeline

To integrate your Twitter timeline, you need to grant NewsWall access to your Twitter account. NewsWall only asks for read permission. This means that it will not be able to send tweets or retweets on your behalf. It will also not be able to "like" tweets or read your private chats. Because of this you will be able to leave your NewsWall server unattended and there is no risk anybody would be able to misuse your account.

Here is a web service that will generate a custom OAUTH access-token that will allow your NewsWall server to read-access your Twitter timeline:

  Generate Custom Twitter AccessToken for NewsWall
  
The generated custom "accessToken.txt" file must be stored in your 'newswall' folder. No additional configuration is needed to access your Twitter feed. When you restart your NewsWall server, it will immediately pick up your timeline. You can withdraw this permission at any time via your Twitter "Apps" settings:
  Twitter Apps Settings
  
Note that a Twitter access-token is only valid for a single app instance. You can always generate a new access-token. Doing so will de-authorize all previously generated access-tokens.

Running NewsWall on http port 80

By default, the NewsWall server will run on http port 9095. In order to run the server on port 80, two things need to be done.
1. Edit "config.txt". Add an entry "newswall_httpport=80" (or remove the '#' character in front of the existing entry).
2. To run a http server on port 80 the program binary needs to be executed as root ("su ./newswall"). Alternatively you can set a specific permission and keep running the binary as a regular user (preferred solution). To do this, run this command once:

  sudo setcap 'cap_net_raw,cap_net_admin,CAP_NET_BIND_SERVICE=eip' newswall
  
From now on you should be able to host the service on http port 80 while still running the NewsWall server from your default user. You can now remove port ":9095" from the URL when accessing the NewsWall server:
  http://{host-ip}
    or:
  http://raspberrypi.local
  

Keybord shortcuts

If you have a keyboard connected to the client device running your browser and you have enabled the manual advance buttons, then the following keyboard shortkeys can be used:

a, + Next
w, 0 Previous
p Play/Pause
x Mark all shown
c Mark all clear