5
0
Fork 1
forked from encrypt/toot
MastodonMegafono/README.md

15 lines
1.8 KiB
Markdown
Raw Permalink Normal View History

2019-12-11 16:03:10 +01:00
# Megafono Mastodon Bida [![Build Status](https://drone.bida.im/api/badges/bida/MastodonMegafono/status.svg)](https://drone.bida.im/bida/MastodonMegafono)
2019-02-21 15:16:59 +01:00
2019-12-11 16:27:09 +01:00
Il bot megafono prende linea per linea da un file che può essere configurato settando `DATA_FILE` in `megafono_bot.sh` o passato come primo argomento.
#### ~ Vecchia spiegazione dello script ~
2019-02-21 15:16:59 +01:00
Il bot megafono prende linea per linea da un file che può essere configurato settando `DATA_FILE` in `megafono_bot.sh`.
2019-12-10 12:05:44 +01:00
Ogni linea del file è evalutata con `eval ./toot.sh $line` quindi **ATTENZIONE**:
2019-02-21 15:16:59 +01:00
- bisogna eseguire il bot dalla directory in cui si trova perchè usa il path relativo, se vi da fastidio questo settate i path assoluti modificando lo script
- siccome viene usato un eval è importante che i permessi su `DATA_FILE` siano settati bene, faccio un esempio di come NON devono essere settati: mettiamo io sia l'utente `pippo` e che l'utente `megafono` sia quello che esegue il file, nel caso in cui `DATA_FILE` sia scrivibile da utenti che non siano esclusivamente `megafono`, `pippo` puo' aggiungere a `DATA_FILE` la linea `lol ; echo Ora sono l'utente megafono` eseguendo l'echo come utente `megafono`. Questo non è un problema grave salvo malconfigurazione dei permessi. Quindi se settate bene i permessi su `DATA_FILE` (i.e. `chmod 660 $DATA_FILE`) non ci saranno problemi (e ovviamente non eseguite il bot come `root`, ma sembrava ovvio).
2019-02-21 15:40:22 +01:00
- per lo stesso motivo sopra è necessario che caratteri speciali come `;` `&` `\n` `"` e tutti quelli che potrebbero creare problemi a `bash` siano URL encoded (ad esempio `\n` diventa `%0A` oppure `"` diventa `%22`).
- ogni linea dovrà essere quindi strutturata così `--eventuali="parametri da dare" -a="toot.sh" "TESTO DEL TOOT"`, guardate l'help di `toot.sh` per i parametri.