.gitignore | ||
config.toml | ||
CONTRIBUTING.md | ||
LICENSE | ||
README.md | ||
requirements.txt | ||
welcome_bot.py |
🐘 Welcome Bot pro Mastodon
Tento bot slouží k automatickému zasílání uvítacích zpráv novým uživatelům na Mastodon instanci.
Vytvoření souborů s klientským klíčem a klientským secret
-
Přihlaste se na svůj server a přejděte do adresáře, kde máte svůj projekt.
-
Vytvořte aplikaci na webu Mastodon a získejte potřebné klíče:
- Přihlaste se do své Mastodon instance.
- Přejděte do
Nastavení > Vývojářské nástroje > Aplikace
. - Klikněte na
Vytvořit novou aplikaci
. - Pojmenujte aplikaci (např. "Welcome Bot").
- Nastavte následující oprávnění:
write:statuses
- pro posílání příspěvků.admin:read:accounts
- pro čtení informací o účtech (pokud je to potřeba).
- Klikněte na
Uložit změny
. - Zkopírujte
Klientský klíč
,Klientský secret
aPřístupový token
.
-
Vytvořte soubor client_id.secret a vložte do něj klientský klíč:
echo "your_client_id" > client_id.secret
Nahraďte your_client_id skutečným klientským klíčem, který získáte při registraci aplikace na Mastodon instanci.
- Vytvořte soubor secret_storage.secret a vložte do něj klientský secret:
echo "your_client_secret" > secret_storage.secret
Nahraďte your_client_secret skutečným klientským secret, který získáte při registraci aplikace na Mastodon instanci.
- Přihlášení a získání přístupového tokenu:
Vytvořte soubor credential_storage.secret a vložte do něj přístupový token:
echo "your_credential_storage.secret> credential_storage.secret" > credential_storage.secret
Pokud ještě nemáte přístupový token, spusťte skript s vašimi přihlašovacími údaji:
python3 welcome_bot.py --email vas_email@example.com --password vase_heslo
Co udělat při dalším spuštění
Při dalším spuštění již nebudete muset zadávat přihlašovací údaje, protože token bude uložen v souboru credential_storage.secret:
python3 welcome_bot.py
Požadavky
- Python 3.7+
- Mastodon.py
- python-dotenv
- SQLite3
Instalace
- Naklonujte repozitář:
git clone https://your-repo-url.git
cd welcome_bot
- Vytvořte virtuální prostředí a aktivujte ho:
python3 -m venv venv
source venv/bin/activate
- Nainstalujte potřebné balíčky:
pip install -r requirements.txt
Vytvořte konfigurační soubory:
- config.toml:
[mastodon]
base_url = "url_instance_mastodon"
client_id = "client_id.secret"
secret_storage = "secret_storage.secret"
credential_storage = "credential_storage.secret"
[database]
sqlite_path = "welcome_bot.db"
[[messages]]
content = "Vítej na naší instanci Mastodon!"
content_warning = "Upozornění"
[[messages]]
content = "Jsme rádi, že jsi tady!"
[[messages]]
content = "Doufáme, že si užiješ pobyt na naší platformě!"
-
client_id.secret:
Vložte svůj client ID. -
secret_storage.secret
: Vložte svůj client secret. -
credential_storage.secret:
Vložte svůj access token.
Použití
- Ujistěte se, že je aktivováno vaše virtuální prostředí:
source venv/bin/activate
- Spusťte bota:
python3 welcome_bot.py
- stěte se, že je aktivováno vaše virtuální prostředí:
source venv/bin/activate
Spusťte bota:
python3 welcome_bot.py
Nastavení systemd
služby
- Vytvořte soubor služby:
sudo nano /etc/systemd/system/welcome_bot.service
Vložte následující obsah:
[Unit]
Description=Welcome Bot pro Mastodon
After=network.target
[Service]
User=your_username
WorkingDirectory=/cesta/k/adresari/projektu
ExecStart=/cesta/k/adresari/projektu/venv/bin/python /cesta/k/adresari/projektu/welcome_bot.py
Restart=always
[Install]
WantedBy=multi-user.target
Nahraďte your_username
vaším uživatelským jménem a /cesta/k/adresari/projektu skutečnou cestou k adresáři, kde máte svůj projekt.
Znovu načtěte konfiguraci systemd:
sudo systemctl daemon-reload
Povolte službu při startu systému:
sudo systemctl enable welcome_bot
Spusťte službu:
sudo systemctl start welcome_bot
Testování bota
- Zkontrolujte stav služby:
sudo systemctl status welcome_bot
Ujistěte se, že služba běží bez chyb.
- Sledujte logy služby:
sudo journalctl -u welcome_bot
Logy vám pomohou zjistit, zda bot funguje správně a zda posílá uvítací zprávy novým uživatelům.
Příspěvky
Příspěvky jsou vítány! Pro více informací viz CONTRIBUTING.md
Licence
Tento projekt je licencován pod MIT licencí - viz LICENSE soubor pro detaily. Acknowledgements
Tento projekt je založen na isosphere/mastodon-welcome projektu. Děkujeme autorům za jejich skvělou práci.