Commit Graph

109 Commits (master)

Author SHA1 Message Date
Sebastian Woetzel f7e11c683a satnogs_client: Use the new scheduling API
[kerel+git@mailbox.org:
- Rebased on master (`schedule_observations` moved from `utils.py`
  to `satnogs_client.py`)
- Moved error logging into the `schedule_observations` function
  (more context available)
- Import python-requests in `satnogs_client` directly instead of
  passing a `requests` object to `schedule_observations`
- Squashed the commits and reworded the commit message
- Changed code formatting]
Signed-off-by: Fabian P. Schmidt <kerel+git@mailbox.org>
2019-11-04 21:04:03 +01:00
Fabian P. Schmidt 0ae102d19b get_scheduled_passes_from_network: Fix next_url logic
The observations endpoint is paginated and ordered by observation
start time, i.e. most recent / future observations come at first.

The `get_scheduled_passes_from_network` method fetches the first page,
parses it, and then fetches new pages as long as the last observation
is still before the user-provided pass scheduling end time.

"Established" stations have plenty of past observations, so this pass
scheduling end time will be reached before the endpoint runs out of
observations (and thus stops to provide a `links['next']['url']` header.

For "young" stations the endpoint will run out of observations though
and the old `get_scheduled_passes_from_network` implementation didn't
detect the missing header and thus failed as described in issue #15.

This commit introduces logic to detect a missing link header.

Fixes issue #15.
2019-11-02 23:44:53 +01:00
Fabian P. Schmidt 3e69cfdcd7 Refactor SatNOGS API calls into an own module
Eventually this module will be replace by the offical SatNOGS API client.
2019-11-02 22:11:17 +01:00
Fabian P. Schmidt 0cbf664991 Refactor caching into a CacheManager module and add CACHE_DIR setting
This commit contains mostly re-location of code, but some
logic changes as well:
- Added the CACHE_DIR setting (previously it was hardcoded)
- Fixed the "cache last updated"/tnow timestamp re-using the
  args.starttime variable. Previously, if a user invoked the script
  with the starttime argument in the far future, the caches
  "last_update" timestamp would've used this future date as a reference
  (and thus the cache wouldn't be updated until this startdate passed)
2019-11-02 22:02:26 +01:00
Fabian P. Schmidt ea84f8a0e7 Satellite: Fix class name (uppercase) 2019-11-02 21:31:45 +01:00
Fabian P. Schmidt 86d86b2269 Twolineelement: Fix class name (uppercase) 2019-11-02 21:31:45 +01:00
Fabian P. Schmidt 33832f0dbd Refactor find_passes into the pass_predictor module 2019-11-02 21:31:45 +01:00
Fabian P. Schmidt 2744db70ee schedule_single_station.py: Fix import style 2019-11-02 21:31:45 +01:00
Fabian P. Schmidt f1ab63149d Refactor schedulers into an own module 2019-11-02 21:31:45 +01:00
Fabian P. Schmidt 44c37aaff2 Refactor overlap method into the pass_predictor module 2019-11-02 21:31:45 +01:00
Fabian P. Schmidt 54d4ee8895 Refactor satellite into an own module 2019-11-02 21:31:45 +01:00
Fabian P. Schmidt fd2cf996bc Refactor twolineelement into a seperate module 2019-11-02 21:31:45 +01:00
Fabian P. Schmidt df1aaacfae utils/find_passes: Remove unused passid
This ID is unused, arbitrary and prevents this code to be parallized.
2019-11-02 21:31:45 +01:00
Fabian P. Schmidt a6a5ddaa4b Revert "utils/find_passes: Remove unused passid"
This reverts commit 3577778eb8.
2019-11-02 21:23:12 +01:00
Fabian P. Schmidt 3577778eb8 utils/find_passes: Remove unused passid
This ID is unused, arbitrary and prevents this code to be parallized.
2019-11-02 20:07:37 +00:00
Fabian P. Schmidt 4f654502aa README: Add systemd-timer section 2019-11-02 20:41:03 +01:00
Fabian P. Schmidt 810edb721a README: Use variables for station_id and filenames 2019-10-23 16:13:51 +00:00
Alfredos-Panagiotis Damkalis d93a19f49e Fix scheduling form fields for Network 1.10
Signed-off-by: Alfredos-Panagiotis Damkalis <fredy@fredy.gr>
2019-10-07 19:39:12 +03:00
cgbsat d7f9f09018 Clarified culmination and rise/set elevations 2019-08-07 14:55:50 +00:00
cgbsat b818f4e1af Disable auto-scheduling in testing mode (fixes #12) 2019-08-06 15:05:38 +00:00
Cees Bassa 07c6e0c352 Fix bug with computation of minimum altitude 2019-08-06 16:45:47 +02:00
cgbsat 8457026388 Fixes altitude bug 2019-07-19 13:30:28 +00:00
cgbsat 8b99d8ffa6 Fix bug with priority scheduling 2019-07-14 12:31:46 +00:00
cgbsat 532316a9ec Change description of -f option 2019-07-14 11:58:04 +00:00
cgbsat 464afa5ddf Allow setting a minimum priority limit for scheduling passes. 2019-07-14 10:58:33 +00:00
cgbsat d1d950717a Added minimum priority limit 2019-07-14 10:23:15 +00:00
cgbsat 15d6b17739 Print transmitter mode in output 2019-07-14 10:01:29 +00:00
Patrick Dohmen b2d0e842f5 Fix typos in README.md examples
Signed-off-by: Patrick Dohmen <dl4pd@darc.de>
2019-07-10 17:24:15 +00:00
Fabian P. Schmidt b2b5310b28 Update satellitetle
Fixes #11.
2019-07-05 03:17:35 +02:00
cgbsat c83426e19b Added a test run to the readme. 2019-06-25 21:10:20 +00:00
Patrick Dohmen a994f28f0d Add example configuration to README.md
Signed-off-by: Patrick Dohmen <dl4pd@darc.de>
2019-06-25 21:05:43 +00:00
Cees Bassa 6334d41c09 Graceful exit if station is offline or in testing 2019-06-25 13:58:20 +02:00
Cees Bassa 9771cfed91 Fix minimum horizon bug 2019-06-25 11:04:21 +00:00
Cees Bassa 9b6135f8b0 Log transmitter modes in cache for easy identification 2019-06-25 12:55:16 +02:00
cgbsat a7f477db9b Fix pass_duration bug 2019-05-12 09:31:44 +00:00
Pierros Papadeas 6869ce2635
Add checks and argument for ground station horizon
Signed-off-by: Pierros Papadeas <pierros@papadeas.gr>
2019-05-12 00:32:00 +03:00
cgbsat 5c2cca6dc8 Usage cleanup and wait time bug fix 2019-05-11 17:45:41 +00:00
cgbsat 79bbdab3fc Exit on authentication failure (fixes #8) 2019-05-11 17:24:03 +00:00
Fabian P. Schmidt 03cc1f75b7 Check if ground station has no observations yet
Fixes issue #9.

Signed-off-by: Fabian P. Schmidt <kerel@mailbox.org>
2019-05-11 16:31:06 +00:00
Fabian P. Schmidt addbab1012 Add detailed error messages in ground station handling
Signed-off-by: Fabian P. Schmidt <kerel@mailbox.org>
2019-05-11 16:30:35 +00:00
Pierros Papadeas 19d1c4d235
Reduce complexity of main() function
Signed-off-by: Pierros Papadeas <pierros@papadeas.gr>
2019-05-11 18:43:17 +03:00
Pierros Papadeas fee88c5fc1
Fix code for pep8 via yapf
Signed-off-by: Pierros Papadeas <pierros@papadeas.gr>
2019-05-10 10:33:54 +03:00
Pierros Papadeas 289bad05cb
Decoupled credentials from argparse into configuration file
Signed-off-by: Pierros Papadeas <pierros@papadeas.gr>
2019-05-10 10:21:26 +03:00
Pierros Papadeas 02ec88ba03
Fix fetching of stats from Network
And various codestyle fixes

Signed-off-by: Pierros Papadeas <pierros@papadeas.gr>
2019-05-08 22:55:08 +03:00
Fabian P. Schmidt 11edc9df7b README: Add short usage section 2019-05-07 17:14:15 +02:00
cgbsat abc45cf836 Schedule specific sats 2019-03-24 10:06:58 +00:00
Cees Bassa 943c33595e Add authentication failure and success \!7 2019-03-24 10:11:35 +01:00
Cees Bassa 0788b580ec Ignore re-entered satellites 2019-03-18 20:01:09 +01:00
Fabian P. Schmidt 239897b4cd Add custom user agent to the scheduling request
Fixes #5.
2019-01-31 21:10:53 +01:00
Cees Bassa 3ec7f4c19f Merge branch 'fxh71/satnogs-auto-scheduler-favorite_transmitters' into HEAD 2019-01-26 15:32:06 +01:00