2 KiB
2 KiB
description
the bot will post the timeline from the specified Twitter/Tumblr accounts and RSS feeds to Mastodon
installation
- install Node.js
- run
npm install
to install Node modules - run
npm start
to, well, start
usage
- create a Mastodon API key following the instructions here
- create a Twitter API key follwing the instructions here
- create a Tumblr API key following the instructions here
- create a file called
config.edn
with the following contents:
{;; add Twitter config to mirror Twitter accounts
:twitter {:access-keys
{:consumer_key "XXXX"
:consumer_secret "XXXX"
:access_token_key "XXXX"
:access_token_secret "XXXX"}
:accounts ["arstechnica" "WIRED"]} ;; accounts you wish to mirror
;; add Tumblr config to mirror Tumblr accounts
:tumblr {:access-keys
{:consumer_key "XXXX"
:consumer_secret "XXXX"
:token "XXXX"
:token_secret "XXXX"}
:accounts ["cyberpunky.tumblr.com" "scipunk.tumblr.com"]}
;; add RSS config to follow feeds
:rss {"Hacker News" "https://hnrss.org/newest"
"r/Clojure" "https://www.reddit.com/r/clojure/.rss"}
:mastodon {:access_token "XXXX"
:api_url "https://botsin.space/api/v1/"
:max-post-length 300}}
-
the bot looks for
config.edn
at its relative path by default, an alternative location can be specified either using theMASTODON_BOT_CONFIG
environment variable or passing the path to config as an argument -
run the bot:
./mastodon-bot.cljs
-
to poll at intervals setup a cron job such as:
*/30 * * * * mastodon-bot.cljs /path/to/config.edn > /dev/null 2>&1
License
Copyright © 2018 Dmitri Sotnikov
Distributed under the MIT License.