Ich brauchte etwas, das mir bei bestimmten Ereignissen auf möglichst simple Weise eine Nachricht schickt. Das lässt sich auf allerlei Arten bewerkstelligen, ich fand es am einfachsten, meinem Mastodon-Account von einem schnell eingerichteten Zweit-Account Direktnachrichten zu schicken. Das lässt sich mit einem curl-Aufruf machen:
curl --location --request POST 'https://social.tchncs.de/api/v1/statuses' \
--header 'Authorization: Bearer GEHEIM' \
--header 'Content-Type: application/json' \
--data-raw '{
"status": "@scaldra@social.tchncs.de Hallo",
"language":"de",
"visibility": "direct"
}'
Code-Sprache: Bash (bash)
Das schickt @scaldra@social.tchncs.de
ein Hallo
als Direktnachricht in Deutsch. Damit das auch funktioniert, muss dazu nur noch GEHEIM durch das Bearer Token ersetzt werden. Das lässt sich schnell erstellen, indem unter Entwicklung eine neue Anwendung angelegt wird. Sobald die Anwendung erzeugt wurde, muss sie noch mal geöffnet und der Inhalt von Dein Zugangs-Token kopiert und ins Skript eingesetzt werden. Und schon ist der Bot fertig und sagt Hallo.

Hier das Ganze noch mal als PHP.
<?php
$headers = [
'Authorization: Bearer GEHEIM'
];
$status_data = array(
"status" => "@scaldra@social.tchncs.de Hallo",
"language" => "de",
"visibility" => "direct"
);
$ch_status = curl_init();
curl_setopt($ch_status, CURLOPT_URL, "https://social.tchncs.de/api/v1/statuses");
curl_setopt($ch_status, CURLOPT_POST, 1);
curl_setopt($ch_status, CURLOPT_POSTFIELDS, $status_data);
curl_setopt($ch_status, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch_status, CURLOPT_HTTPHEADER, $headers);
$output_status = json_decode(curl_exec($ch_status));
curl_close ($ch_status);
Code-Sprache: PHP (php)
Kommentare
Mastodon. Interessante Lösung. Ich habe für sowas einen Telegram Bot. Der Vorteil, ich könnte auch eine Antwort Prozedur einrichten.
Was mich dazu bringt, so etwas als kleinen php Bot zu realisieren. Mal schauen…
Die Kommentare sind geschlossen.