Server in Rust for generating notifications from RSS, 4chan threads, YouTube subscriptions and more.
Config is stored in config.json
in the working directory.
See config_example.json for example configuration.
web
interface hosts HTTP server providing read only access to data.
Only one route is currently supported:
Field |
Type |
Comment |
filter |
String |
Optional. Regex. Only feeds with name matching filter will be returned. If absent, all feeds will be returned. |
format |
rss or json |
Optional. Specified output format. json by default. |
flat |
Boolean |
Optional. Flattens output into single Feed. true by default. |
If you choose rss
format, server will respond with RSS 2.0 feed.
Otherwise server will respond with either single Feed
Field |
Type |
Comment |
status |
Array of Entries |
"Fixed" notifications that disappear after some time. eg. 4chan threads, live streams, etc. |
errors |
Array of Entries |
Error notifications indicating problems during fetching. |
notifications |
Array of Entries |
Regular notifications. eg. RSS entries or youtube videos |
Field |
Type |
Comment |
title |
String |
Primary content |
guid |
String |
ID unique for specific feed |
feedName |
String |
Name of the parent Feed |
description |
String |
Optional. Secondary content |
link |
String |
Optional. |
color |
String |
Optional. eg. "#FF00FF" |
imageURL |
String |
Optional. Image thumbnail or preview. |
timestamp |
Integer |
Optional. JS timestamp, amount of milliseconds since UNIX epoch. |
extra |
Object |
Optional. Additional data. |
Field |
Type |
Comment |
fetchIntervalSecs |
Number |
Interval at which new notifications will be fetched |
feeds |
Map of FeedConfig |
Keys represent the name of the feed |
providers |
Map of ProviderConfig |
Keys represent the name of the provider |
interfaces |
Map of InterfaceConfig |
Keys represent the name of the interface |
Field |
Type |
Comment |
provider |
String |
Name of the feed provider to use. eg. "rss", "chan" |
providerData |
Any |
Additional data for provider, see below |
color |
String |
Optional. Default color for entries |
RSS
String value of the URL of RSS feed.
String value of YouTube Channel's ID.
Field |
Type |
Comment |
boards |
Array of Strings |
Boards to search |
filter |
String |
Regex. OPs matching will be returned. |
Field |
Type |
Comment |
channels |
Array of Strings |
Names of channels to subscribe, eg: ["vinesauce", "vargskelethor"] |
Field |
Type |
Comment |
enabled |
Boolean |
Enables specific provider |
Additionally youtube
provider requires following fields:
Field |
Type |
Comment |
apiKey |
String |
Youtube Data API v3 key |
Field |
Type |
Comment |
enabled |
Boolean |
Enables specific provider |
Additionally web
provider requires following fields:
Field |
Type |
Comment |
port |
Number |
Port on which web interface should be hosted |
rest |
Boolean |
Enabled REST API (doesn't do anything yet) |
websocket |
Boolean |
Enabled WebSocket API (doesn't do anything yet) |
rss |
Boolean |
Enabled RSS API (doesn't do anything yet) |