Skip to content
56K

56K

La web de Fanta

Menu
  • Unix/Linux
  • Cacharreo
  • Games
  • Streaming
  • Notas
  • /dev/null
Menu

En ocasiones veo bots que me cansan el alma – 0x01 – Pleroma status

Posted on 09/12/202116/01/2023 by fanta

Es posible que actualmente funcione este script contra un nodo pleroma. En 2019 funcionaba sin problemas en las instancias pleroma de entonces.

No esperes un cliente pleroma en bash y si simplemente un script sencillo que te permita poder hacer cosas más chulas y sirva de ejemplo.
El siguiente sencillo script sirve para mandar un estado desde un script en bash a un nodo pleroma.

#!/bin/bash

DOMAIN="https://asocial.56k.es"
USERNAME="elusuarioenlainstancia"
PASSWORD="lapasswordquetengas"
CLIENT_NAME="AsocialBot"

APP_DATA=$(curl --silent -X POST -d "client_name=$CLIENT_NAME" -d "redirect_uris=urn:ietf:wg:oauth:2.0:oob" -d "scopes=write read" $DOMAIN/api/v1/apps)
CLIENT_ID=$(echo $APP_DATA | cut -d ":" -f 2 | cut -d "\"" -f 2)
CLIENT_SECRET=$(echo $APP_DATA | cut -d ":" -f 3 | cut -d "\"" -f 2)
ACCESS_TOKEN=$(curl --silent -X POST --data-urlencode "client_id=$CLIENT_ID" --data-urlencode "client_secret=$CLIENT_SECRET" -d "grant_type=password" -d "username=$USERNAME" --data-urlencode "password=$PASSWORD" -Ss $DOMAIN/oauth/token | rev | cut -d "\"" -f 2 | rev)
STATUS="Hola mundo. Prueba de estado desde un script en bash"

curl --header "Authorization: Bearer $ACCESS_TOKEN" -X POST --data-urlencode "status=$STATUS" -Ss $DOMAIN/api/v1/statuses

Podemos guardar ese contenido en un archivo llamado por ejemplo bot.sh, luego lo podemos ejecutar así sin necesidad de darle permisos de ejecución:

$ bash bot.sh

Evidentemente para que funcione has de cambiar el user y password y el contenido de la variable DOMAIN por la de la instancia en la que tengas cuenta.

Este script por si mismo no es de mucha utilidad, es decir, tendríamos que estar entrando todo el rato en el archivo y cambiar el valor de la variable STATUS, guardar y ejecutar de nuevo (lo ideal es pasarle el conntenido como parámetro $1 por ejemplo).

Y si pesado que ya sabemos que almacenar la password en claro no es muy seguro.

Saludos.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Generic selectors
Exact matches only
Search in title
Search in content
Post Type Selectors

Comentarios recientes

  • fanta en i3wm en el ordenador del trabajo con 3 pantallas
  • Punk en i3wm en el ordenador del trabajo con 3 pantallas
  • Twicsy en Eliminar kernels viejos en redhat y liberar espacio en /boot
  • fanta en Capturar el audio de Firefox en archivos ogg en GNU+Linux
  • Jorge en Capturar el audio de Firefox en archivos ogg en GNU+Linux
  • fanta en Capturar el audio de Firefox en archivos ogg en GNU+Linux
  • Camilo en Capturar el audio de Firefox en archivos ogg en GNU+Linux
  • eovoltio en Mastodon.madrid se apaga el 12 de Octubre
  • fanta en Time Machine – Las Nuevas Aventuras de la Maquina del Tiempo sobre GNU+Linux
  • Alberto Salvia Novella en Time Machine – Las Nuevas Aventuras de la Maquina del Tiempo sobre GNU+Linux
©2023 56K | Built using WordPress and Responsive Blogily theme by Superb