Another RSS to Mastodon bot.
cmake | ||
man | ||
src | ||
.drone.yml | ||
.editorconfig | ||
.gitignore | ||
CMakeLists.txt | ||
CODE_OF_CONDUCT.adoc | ||
CONTRIBUTING.adoc | ||
LICENSE | ||
README.adoc | ||
watchwords.json |
mastorss reads RSS feeds and posts the items via the Mastodon API. Does not support Atom at the moment.
Each <item>
in feeds must have <link>
, <title>
and <description>
.
Install
Dependencies
-
Tested OS: Linux
-
C++ compiler (tested: gcc 5 / 8)
-
cmake (tested: 3.14 / 3.9)
-
boost (tested: 1.71 / 1.62)
-
mastodon-cpp (at least: 0.111.3)
-
jsoncpp (tested: 1.9 / 1.7)
Get sourcecode
Development version
git clone https://schlomp.space/tastytea/mastorss.git
Compile
mkdir build
cd build/
cmake ..
cmake --build .
Install with make install
.
Usage
Put watchwords.json
into ${XDG_CONFIG_HOME}/mastorss/
[1]. Launch with profile
name. The first occurence of every watchword in an RSS item will be turned into
a hashtag. For profile-specific watchwords see the example in
watchwords.json
. In the first run only the newest entry is posted.
The profile can’t be named "global".
Example session
% mastorss example
Example config file
${HOME}/.config/mastorss/config-example.json
{
"example": {
"access_token": "123abc",
"append": "#bot",
"feedurl": "https:\/\/example.com\/feed.rss",
"fixes":
[
"delete this",
"<p>[Rr]ead more(\.{3}|…)</p>"
],
"instance": "botsin.space",
"interval" : 600,
"max_size": 400,
"skip":
[
"If the entry starts with this, skip it",
"Skip me too!"
],
"titles_as_cw" : false,
"titles_only": false
}
}