Twitter ist kaputt gemacht worden und mein Bot funktioniert nicht mehr auf Twitter. Ich habe ihn auf Mastodon hinübergerettet. Außerdem prüfe ich Möglichkeiten, ihn mit einem KI-Bot ala ChatGPT von einzelnen Social Media Plattformen unabhängig und damit umfänglicher erreichbar zu machen.
Der astronomische Bot läuft auf einem Raspberry Pi. Ich habe ihn von Grund auf neu auf Basis von Python 3 programmiert. Der Bot wird über den Mastodon Account @raspivona@astrodon.social bedient. Er sendet täglich astronomische Informationen und nimmt bestimmte Anfragen entgegen, siehe die Featurebeschreibung unten.
Folgende Funktionen habe ich derzeit programmiert (Stand: Dezember 2023):
- Posten von täglichen Informationen (Standort: Deutschland, geografischer Mittelpunkt)
- Sonnenauf- und -untergang sowie Dämmerungszeiten
- Mondinformationen inkl. Auf- und Untergangszeiten
- Animierter Sternenhimmel der kommenden Nacht.
- Abfrage von Informationen zu
- #Mond: Abruf von Mondinformationen (Aufgang, Untergang, Phase usw.)
- #Sonne: Abruf von Sonneninformationen (Aufgang, Untergang, Uhrzeiten der Dämmerungsphasen usw.)
- #ISS: Prüft, ob die ISS in nächster Zeit über dem angegebenen Ort sichtbar ist.
- #Sonne: Abruf von Sonneninformationen (Aufgang, Untergang, Uhrzeiten der Dämmerungsphasen usw.)
- #AstroEvent: Prüft, ob ich zum angegebenen Datum ein Ereignis in meiner astronomischen Vorschau „Astronomie ohne Teleskop: Vorschau für den Monat x“ geschrieben habe und liefert ggf. den Link zum Artikel.
Posten von täglichen Informationen
Der Bot liefert täglich abends Informationen zu #Mond, #Sonne und #AstroEvent für den kommenden Tag. Bei letzterem natürlich nur, wenn ich auch tatsächlich ein Ereignis im Blog dokumentiert habe:
Zusätzlich twittert der Bot täglich kurz nach 6 Uhr ein Video vom Sternhimmel der kommenden Nacht:
Der Bot nutzt hierfür dafür das Astronomieprogramm Stellarium. Das Video fängt zum Zeitpunkt des Sonnenuntergangs an und zeigt in 5 Minuten Schritten den Himmel bis zum Sonnenaufgang. Als Standort ist Berlin ausgewählt.
Ich verwende hierfür das Python Programm kalstar von Ingo Berg, siehe GitHub. Es wurde für den Upload auf meinen sftp Server ergänzt und legt die notwendigen Twitter Card html-Dateien dazu. Letztere sind notwendig, damit im Tweet eine Vorschau des Videos angezeigt wird.
Anfragen an den Bot
Die Anfragen erfolgen an den Mastodon Account
@raspivona@astrodon.social
Über die Hashtags #Mond, #Sonne, #ISS, #Sternbild oder #AstroEvent wird festgelegt, welche Information man erhalten möchte. Der Botbot reagiert immer nur auf einen dieser Hashtags im Tweet. Sollten mehrere im Tweet angegeben werden, ignoriert der Bot diese.
Noch ein Hinweis: die folgenden Beispiele beschreiben die minimalen Angaben, die solch eine Anfrage enthalten muss. Sie können zu vollständigen Sätzen ergänzt werden. Diese Ergänzungen werden vom Bot allerdings nicht weiter interpretiert.
#Mond – Abruf von Mondinformationen
Variante 1: „@raspivona@astrodon.social #Mond tt.mm.jj“
- Abruf allgemeiner Mondinformationen zum angegebenen Datum.
- Enthält der Tweet kein Datum, geht der Twitterbot von heute aus.
- Die Auf- und Untergangszeiten werden für die Koordination Lat=51.10 /Long = 10.27 berechnet. Sie entsprechen der geografischen Mitte Deutschlands.
Variante 2 (optional):
Angabe des Orts für die genauen Auf- und Untergangszeiten
Variante A: „@raspivona@astrodon.social #Mond … #Ort <ortsname in deutschland>“
Variante B: „@raspivona@astrodon.social #Mond … #Plz <postleitzahl in deutschland>“
Variante C: „@raspivona@astrodon.social #Mond … #lat <latitude> #lng <longitude>“
- Beispiel Variante A: „@raspivona@astrodon.social #Mond … #Ort Berlin“
- Beispiel Variante B: „@raspivona@astrodon.social #Mond … #Plz 10243“
- Beispiel Variante C: „@raspivona@astrodon.social #Mond … #lat 52.512 #lng 13.439“
#Sonne – Abruf von Sonneninformationen
Variante 1: „@raspivona@astrodon.social #Sonne tt.mm.jj“
- Abruf allgemeiner Sonneninformationen zum angegebenen Datum.
- Enthält der Tweet kein Datum, geht der Twitterbot von heute aus.
- Anstatt eines Datums kann auch „heute“, „gestern“, „morgen“ angegeben werden.
- Die Auf- und Untergangszeiten werden für die Koordination Lat=51.1633333 /Long = 10.4475 berechnet. Sie entsprechen der geografischen Mitte Deutschlands.
Variante 2 (optional):
Angabe des Orts für die genauen Uhrzeiten des eigenen Standorts
Variante A: „@raspivona@astrodon.social #Sonne … #Ort <ortsname in deutschland>“
Variante B: „@raspivona@astrodon.social #Sonne … #Plz <postleitzahl in deutschland>“
Variante C: „@raspivona@astrodon.social #Sonne … #lat <latitude> #lng <longitude>“
- Beispiel Variante A: „@raspivona@astrodon.social #Sonne … #Ort Berlin“
- Beispiel Variante B: „@raspivona@astrodon.social #Sonne … #Plz 10243“
- Beispiel Variante C: „@raspivona@astrodon.social #Sonne … #lat 52.512 #lng 13.439“
#ISS
Aufruf Variante 1: „@raspivona@astrodon.social #ISS #Ort <ortsname in deutschland>“
Aufruf Variante 2: „@raspivona@astrodon.social #ISS #Plz <postleitzahl in deutschland>“
Aufruf Variante 3: „@raspivona@astrodon.social #ISS #lat <latitude> #lng <longitude>“
- Prüfung, ob die ISS in den folgenden 2 Tagen (ab heute) über dem angegebenen Standort sichtbar ist.
- Achtung: sichtbar bedeutet auch, dass der Bot ihre Überflüge bei Tageslicht nicht (!) meldet.
- Der Bot nutzt den Onlinedienst https://www.n2yo.com.
- Die Ortsangaben erfolgen wie schon unter #Mond und #Sonne beschrieben.
Hashtag Sternbild
Aufruf: „@raspivona@astrodon.social #Sternbild sternbildname“
- Der Bot durchsucht beim Blog nach einem Artikel über das Sternbild. Der gibt in jedem Fall eine Rückmeldung, auch wenn ich bisher über das angefragte Sternbild nichts geschrieben habe.
- Als Sternbildnamen werden die offiziellen deutschen und lateinischen Ausdrücke akzeptiert.
- Achtung: es kann passieren, dass der Twitterbot mit mehreren Tweets antwortet. Das kann dann bedeuten, dass ich per Schlagwort Artikel mehrerer Sternbilder dem angefragten Sternbild zugeordnet habe.
#AstroEvent
Aufruf: „@RasPiVoNa #AstroEvent tt.mm.jj“
- Der Bot sucht in meinen Artikel zur astronomischen Monatsvorschau, ob dort ein Ereignis zum angegebenen Datum beschrieben ist.
- Achtung: der Bot kann nur zurückliefern, was ich schon beschrieben habe. Die Monatsvorschau veröffentliche ich i.d.R. 1-2 Wochen vorher. Ich habe auch eine Jahresvorschau geschrieben. Hier bin ich allerdings nicht so detailliert, wie in der Monatsvorschau. D.h. der Jahresüberblick enthält nur die gängigsten Ereignisse.
3 thoughts on “[Update] Mein astronomischer Bot auf Mastodon @raspivona@astrodon.social”