43bd2a2825
This should address #1 |
||
---|---|---|
.github/workflows | ||
artifacts | ||
.gitignore | ||
get_context.py | ||
LICENSE.md | ||
README.md | ||
requirements.txt |
Pull missing responses into Mastodon
This GitHub repository provides a GitHub action runs every 10 mins, and pulls remote replies into your instance, using the Mastodon API. It has two parts:
- It gets remote replies to posts that users on your instance have already replied to during the last
REPLY_INTERVAL_IN_HOURS
hours, and adds them to your own server. - It gets remote replies to the last
HOME_TIMELINE_LENGTH
posts from your home timeline, and adds them to your own server.
Either part can be disabled completely, and the values for REPLY_INTERVAL_IN_HOURS
and HOME_TIMELINE_LENGTH
are configurable (see below).
Be aware, that this script may run for a long time, if these values are too high. Experiment a bit with what works for you, by starting with fairly small numbers (maybe HOME_TIMELINE_LENGTH = 50
, REPLY_INTERVAL_IN_HOURS = 12
) and increase the numbers as you see fit.
For full context and discussion on why this is needed, read the blog post: Pull missing responses into Mastodon
Setup
1) Get the required access token:
- In Mastodon go to Preferences > Development > New Application
- give it a nice name
- enable
read:search
,read:statuses
andadmin:read:accounts
- Save
- Copy the value of
Your access token
2) Configure and run the GitHub action
- Fork this repository
- Add your access token:
- Go to Settings > Secrets and Variables > Actions
- Click New Repository Secret
- Supply the Name
ACCESS_TOKEN
and provide the Token generated above as Secret
- Provide the required environment variables, to configure your Action:
- Go to Settings > Environments
- Click New Environment
- Provide the name
Mastodon
- Add the following Environment Variables:
MASTODON_SERVER
: The domain only of your mastodon server (withouthttps://
prefix) e.g.mstdn.thms.uk
HOME_TIMELINE_LENGTH
: An integer number. E.g.200
. (See above for explanation.) Set to0
to disable this part of the script.REPLY_INTERVAL_IN_HOURS
: An integer number. E.g.24
. (See above for explanation). Set to0
to disable this part of the script.
- Finally go to the Actions tab and enable the action.
Acknowledgments
This script is mostly taken from Abhinav Sarkar, with just some additions and alterations. Thank you Abhinav!