Foro Confederac.io

Cómo crear una cuenta bot para Mastodon

Confederac.io ofrece un servicio de creación de cuentas bot de medios interesantes. Las cuentas que hemos creado se pueden consultar en ConfedeRSS.

Si quieres crear una nueva cuenta bot debes proponerla abriendo un nuevo tema en esta categoría #proyectos:red-confederac-io. Si hay suficiente apoyo, la crearemos.

Instrucciones para administradoras

Instrucciones para administradoras

El primer paso es crear una cuenta en red.confederac.io (tráfico normal), newsbots.eu (alto tráfico) o cualquier otra instancia Mastodon. Cualquiera puede crear esta cuenta, pero necesitaremos la contraseña para poder activar el bot (luego la contraseña se puede cambiar para que solo sus propietarias la conozcan).

En nuestro servidor Mastodon:

cd /home/feed2toot/
register_feed2toot_app

El script hace varias preguntas obvias, documentadas aquí. Si todo va bien aparecerá esta respuesta:

feed2toot was added to your preferences=>authorized apps page.

Ahora hay que configurar los archivos relativos a esta cuenta bot. Como que manejamos varias cuentas en el mismo directorio, lo primero es renombrar los archivos que feed2toot acaba de crear.

En estos ejemplos utilizaremos la cuenta ficticia “Sangre Píkara”. Cuando crees tu cuenta bot obviamente tendrás que utilizar el nombre correspondiente en estos comandos.

mv feed2toot_clientcred.txt sangrepikara_clientcred.txt
mv feed2toot_usercred.txt sangrepikara_usercred.txt

Ahora debemos crear un archivo .ini para que feed2toot sepa qué debe hacer. Para ello partiremos de un archivo ya existente, que adaptermos a los datos de la nueva cuenta.

cp ldd.ini sangrepikara.ini
nano sangrepikara.ini

Aquí hay que modificar los campos necesarios para que apunten a los archivos de la nueva cuenta bot. El resto déjalo como está a menos que sepas qué estás haciendo.

No te olvides de cambiar ningún campo, te arriesgas a cargarte la cuenta bot de la que has copiado el archivo .ini!

[mastodon]
instance_url=https://red.confederac.io
user_credentials=/home/feed2toot/sangrepikara_usercred.txt
client_credentials=/home/feed2toot/sangrepikara_clientcred.txt
; Default visibility is public, but you can override it:
; toot_visibility=unlisted

[cache]
cachefile=/home/feed2toot/sangrepikara.db
cache_limit=100

[rss]
uri=https://((((la URL del RSS feed va aquí)))
toot={title} {link}

; [hashtaglist]
; several_words_hashtags_list=hashtags.txt

Muy bien. Vamos a ver si la cuenta funciona. Este comando es sólo de prueba, no publicará ningún toot.

feed2toot --dry-run -c /home/feed2toot/sangrepikara.ini
Would toot with visibility "public": (((resultados correctos deberían aparecer aquí)))

Si la prueba ha salido bien, es hora de poner la cuenta en marcha de verdad. Este comando sí publicará toots:

feed2toot -c /home/feed2toot/sangrepikara.ini

Comprueba que los toots han sido publicados.

Si todo ha salido bien, el último paso es añadir una entrada en el cron para que feed2toot compruebe si hay nuevas entradas RSS periódicamente. Por defecto hacemos una comprobación horaria. Busca un minuto que no esté ocupado por otras entradas.

crontab -e

16 * * * * /usr/local/bin/feed2toot -l 1 -c /home/feed2toot/sangrepikara.ini

Ya está. Si nada extraño sucede, los nuevos toots deberían ir apareciendo automáticamente a medida que el RSS traiga nuevas entradas.

La nueva cuenta bot está lista. Si esta cuenta está administrada por alguien que no sea el equipo de administración de Confederac.io, es mejor que cambien la contraseña de la cuenta para evitar posibles rollos. La conexión entre la cuenta y feed2toot se mantendrá mientras que no sea desconectada desde las preferencias de usuaria en la cuenta bot.

1 Like

Bueno, ya tocaba documentar estos pasos.

De paso he actualizado feed2toot:

Detalles
pip list --outdated
(...)
feed2toot         0.9       0.14       sdist
(...)
You are using pip version 10.0.1, however version 20.1.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
(...)
pip install --upgrade pip
(...)
Successfully installed pip-20.1.1

pip install --user --upgrade feed2toot
(...)
Successfully installed pip-20.1.1
Creative Commons License