Files
skyview.astronomiemuseum.de/todo.md
T
2026-06-20 20:06:33 +02:00

4.5 KiB

Magnitude / Helligkeit Magnitudendifferenz in Helligkeitsfaktor und zurück

Teleskop Öffnung, Brennweite, Öffnungsverhältnis (f/), Vergrößerung, Austrittspupille, Gesichtsfeld

Wellenlänge / Frequenz / Energie nm, Å, Hz, eV

Temperatur Kelvin, Celsius, Fahrenheit

Größe bei gegebener Entfernung scheinbarer Winkel in reale Größe und zurück

Geschwindigkeit / Raumfahrt km/s, AE/Tag, Prozent von c

TODO Telegram Satelliten-Abo

  • Ziel: Ein Benutzer soll für seinen Favoriten-Satelliten eine Telegram-Nachricht abonnieren können, wenn am Abend ein guter Überflug bevorsteht.

  • Definition „guter Überflug“ für die erste Version:

    • Satellit ist sichtbar
    • Himmel ist dunkel genug
    • maximale Höhe ist groß genug
    • optional später zusätzlich Helligkeit / Sichtbarkeits-Score
  • Grundentscheidung:

    • Überflüge nicht bei jedem Telegram-Cron-Lauf live neu berechnen
    • stattdessen vorberechnen, in der Datenbank zwischenspeichern und aus diesem Bestand Benachrichtigungen versenden
    • vorhandene Tabelle sat_pass_predictions dafür nutzen und erweitern
  • Datenbank:

    • app_user_satellites erweitern um:
      • telegram_evening_alert_enabled tinyint(1) not null default 0
      • optional später:
        • telegram_min_elevation decimal(5,2) null
        • telegram_min_score decimal(5,2) null
        • telegram_darkness_only tinyint(1) not null default 1
    • sat_pass_predictions erweitern um:
      • visibility_score decimal(5,2) null
      • peak_magnitude decimal(5,2) null
      • sun_altitude_deg decimal(5,2) null
      • is_dark_enough tinyint(1) not null default 0
      • alert_eligible tinyint(1) not null default 0
      • alert_sent_at datetime null
      • optional alert_message_hash varchar(64) null zur Deduplizierung
  • UI / Benutzerseite:

    • in my_favorites.php beim Favoriten-Satelliten einen Schalter ergänzen:
      • „Telegram bei gutem Abendüberflug“
    • nur aktivierbar, wenn:
      • Telegram mit dem Benutzerkonto verbunden ist
      • ein Favoritensatellit gesetzt ist
      • ein Standard-Standort vorhanden ist
    • optional später kleine Erklärung daneben:
      • „Benachrichtigt nur bei dunklem Himmel und ausreichend hoher Passage“
  • Berechnung:

    • neue Hilfsfunktion für Favoriten-Satelliten-Überflüge bauen
    • Grundlage ist die bestehende Logik aus satellitenhimmel.php
    • nur berechnen für:
      • Benutzer mit telegram_chat_id
      • Benutzer mit aktiviertem Satelliten-Abo
      • den als Favorit markierten Satelliten
      • den Standard-Standort des Benutzers
    • Zeitfenster für die erste Version:
      • heute Abend und die kommende Nacht
      • optional zusätzlich schon der nächste Abend
  • Bewertung „gut genug“ in Version 1:

    • is_visible = 1
    • sun_altitude_deg <= -8 oder besser <= -10
    • max_elevation >= 25° oder >= 30°
    • wenn vorhanden zusätzlich visibility_score >= 0.55
    • diese Schwellwerte erstmal zentral im Code halten, noch nicht pro Benutzer konfigurierbar
  • Telegram-Cron:

    • neuen Task ergänzen:
      • prepare_satellite_evening_alerts
      • berechnet und aktualisiert vorbereitete gute Überflüge
    • empfohlenes Timing:
      • nachmittags und am frühen Abend
      • Beispiel: alle 30 oder 60 Minuten
    • zweiten Task ergänzen:
      • send_satellite_evening_alerts
      • versendet nur Einträge mit alert_eligible = 1 und alert_sent_at is null
    • nach erfolgreichem Versand:
      • alert_sent_at = now()
  • Nachrichtentext:

    • kurz und direkt
    • Beispiel:
      • ISS heute 21:43 bis 21:49 Uhr
      • Maximale Höhe 62°
      • Sichtbar bei dunklem Himmel
      • Richtung: Westen nach Südosten
    • optional später mit Emoji oder Score, aber erstmal schlicht halten
  • Deduplizierung:

    • pro Benutzer und Überflug nur genau eine Nachricht senden
    • Grundlage:
      • user_id
      • satellite_id
      • aos_utc
    • vorhandener Unique-Key in sat_pass_predictions hilft bereits
    • Versand zusätzlich über alert_sent_at absichern
  • Offene Umsetzungsreihenfolge:

      1. Datenbankfelder erweitern
      1. UI-Schalter in my_favorites.php
      1. Vorberechnungslogik für Favoriten-Satelliten auslagern
      1. Task prepare_satellite_evening_alerts
      1. Task send_satellite_evening_alerts
      1. Telegram-Nachrichtentext bauen
      1. Test mit einem Benutzer und einem Favoriten-Satelliten
  • Wichtige Entscheidung für später:

    • wenn das stabil läuft, kann daraus auch ein allgemeines Satelliten-Abo für mehrere Satelliten werden
    • für die erste Version aber bewusst nur:
      • ein Favorit
      • ein Standort
      • eine Abendbenachrichtigung