Skip to content

Repository files navigation

SSDL SatPass Notification

Automated notification system that notifies bright artificial objects expected in 10 days and writes iCalendar format(.ics) file for Kyushu University Hanada Lab Pegasus Observatory.
Data provided by heavens-above, Meteoblue and SatPhotometry Library.

Usage

iCalendar Subscription

iCalendar example

usage :
Subscribe this URL at calendar App.

https://github.com/kiyo-astro/SSDL-SatPass-Notification/raw/refs/heads/main/output/heavens-above/SatPass.ics

Please set auto refresh frequency of your calendar subscription LESS OFTEN than every 30 mins.

Also, you can manually download .ics file from here.

update frequency :
Orbital information is updated every 1 hour at the top of the hour, and weather information is updated daily at 00:00 UTC.
Note : Update frequency and timing are currently controlled by cron-job.

iCalendar update follows GitHub Actions workflow SSDL-SatPass-Notification-hourly.yml

Slack Notification

update frequency :
Slack notification is sent weekly at 22:00 UTC on Sunday (07:00 JST on Monday).
Note : Update frequency and timing are currently controlled by cron-job.

Slack Notification follows GitHub Actions workflow SSDL-SatPass-Notification-weekly.yml

Management

Overview

cron-job => GitHub Actions workflow => SSDL-SatPass-Notification.py => Slack App (SSDL SatPass Notification System)

  1. cron-job sets running schedule of GitHub Actions workflow
  2. GitHub Actions runs Python script
  3. SSDL-SatPass-Notification.py retrives data from heavens-above and Meteoblue, makes iCalendar format file and sends notice to Slack via Slack API.

Schedule settings

Due to unacceptable delay of the GitHub Actions native scheduler (written in workflow files), running frequency and timing are now controlled by cron-job via GitHub PAT. Only the repository owner can change these settings. Therefore, in the future, this repository should ideally be managed by an organization rather than an individual developer.
For further information about cron-job, please refer to this useful article (in Japansese).

Workflow file settings

The repository contributers can change some settings about notice contents at workflow files.

Contributers can change :

  • SLACK_CHANNEL
  • SEND_NOTICE
  • METEOBLUE_UPDATE
  • NOTIFY_TYPE
  • TIME_WINDOW
  • MIN_ALT
  • MIN_DURATION

ONLY owner can change from Repository Settings > Secrets and variables > Actions > Repository secrets :

  • SLACK_TOKEN
  • METEOBLUE_API_KEY

Caution : DO NOT HARDCODE ANY API KEYS (SLACK_TOKEN and METEOBLUE_API_KEY) on workflow files! The workflow files are in public!

Parameters

SLACK_CHANNEL :
Slack channel ID.
Note that Slack channel ID is displayed at the bottom of Channel settings on the desktop Slack App.

SEND_NOTICE :
SEND | NOT : Send notice to Slack or not.

METEOBLUE_UPDATE :
FORCE | DAY : Force Meteoblue update at every run, or update once a day.
The option DAY is highly recommended because the number of free calls of Meteoblue API is strictly limited (about 400 times per year).

NOTIFY_TYPE :
bydate | bysat : Slack notification type.

  • bydate : Satellite passes is displayed by date (recommended)
  • bysat : Satellite passes is displayed by satellites

TIME_WINDOW :
evening | morning | all : Observation time window.

  • evening : ONLY visible satellite passes in evening are notified
  • morning : ONLY visible satellite passes in morning are notified
  • all : All visible satellite passes are notified

MIN_ALT :
Minimum highest-altitude [deg] of visible satellite passes. Value must be integer greater than 10 and less than 90.

MIN_DURATION :
Minimum duration [sec] of visible satellite passes. Value must be integer greater than 0.

SLACK_TOKEN :
Slack API token.
Note that this value is saved as Secrets of this repository and can be changed ONLY by the repository owner.
For security reason, DO NOT HARDCODE THIS VALUE ON WORKFLOW FILES!

METEOBLUE_API_KEY :
Meteoblue API key.
Note that this value is saved as Secrets of this repository and can be changed ONLY by the repository owner.
For security reason, DO NOT HARDCODE THIS VALUE ON WORKFLOW FILES!

Author

(c) 2026 Kiyoaki Okudaira
Kyushu University Hanada Lab (SSDL)

About

Notify bright artificial objects passes expected in 10 days on Slack

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages