Merge pull request 'Reservations created and reservation system documented' (#9) from reservations into main

This commit is contained in:
laurence 2026-07-18 23:04:27 +01:00
commit 36cc26d7fa
2 changed files with 34 additions and 5 deletions

View file

@ -23,9 +23,9 @@ Update after every run: date, scope, target, imaging minutes, points charged
| Date | Scope | Target | Plan file | Imaging | Est. pts | Actual pts | Notes | | Date | Scope | Target | Plan file | Imaging | Est. pts | Actual pts | Notes |
|---|---|---|---|---|---|---|---| |---|---|---|---|---|---|---|---|
| 2026-07-19 | T33 | 47 Tuc | ngc104-test.txt | 17 min | 0 (free) | | first-light test | | 2026-07-19 | T33 | 47 Tuc | ngc104-test.txt | 17 min | 0 (free) | | first-light test; reservation 749228, 00:05-00:50 SSO local 20 Jul, auto-runs |
| 2026-07-19 | T59 | NGC 6744 | ngc6744-t59.txt | 180 min | ~185 (25% moon disc.) | | first paid run; must clear scope by 17:45 UTC (astrosharp reservation 17:50-19:40 UTC) | | 2026-07-19 | T59 | NGC 6744 | ngc6744-t59.txt | 180 min | ~240 (0% moon disc. until 21 Jul) | | first paid run; reservation 749227, 00:05-03:45 SSO local 20 Jul, auto-runs, reschedule flag on; astrosharp holds 03:50-04:40 |
| 2026-07-20 | T33 | NGC 6752 | ngc6752.txt | 17 min | 0 (free) | | | | 2026-07-20 | T33 | NGC 6752 | ngc6752.txt | 17 min | 0 (free) | | reservation 749229, 00:05-00:50 SSO local 21 Jul, auto-runs |
## Planned allocation (~2,600 points, adapt as scopes/weather allow) ## Planned allocation (~2,600 points, adapt as scopes/weather allow)
@ -54,8 +54,11 @@ then (with explicit user confirmation) cancel via MyAccount/Cancel.aspx.**
## Operational notes ## Operational notes
- Every paid session follows plans/README.md (walk-in when idle; same ACP flow as - Sessions are now RESERVED, not walk-in: upload the plan to the scope, then book
the free scopes). Upload plans the day before where possible. it at reservations.itelescope.net with the plan attached (procedure in
plans/README.md); iTelescope auto-starts the plan at reservation start and the
reschedule flag retries weather losses. Claude sessions monitor rather than
drive. T59 moon discount correction: 0% until 21 Jul, 25% from 22 Jul.
- Cron jobs live only in an open Claude session; if a day's session has no live - Cron jobs live only in an open Claude session; if a day's session has no live
session to fire it, the user prompts "run today's drain session" and any session session to fire it, the user prompts "run today's drain session" and any session
picks it up from this file plus state/TODO.md. picks it up from this file plus state/TODO.md.

View file

@ -63,3 +63,29 @@ stop well before dawn.
Abort path if something looks wrong: the web UI exposes an abort on the console Abort path if something looks wrong: the web UI exposes an abort on the console
page; locate it live before starting exposures (not yet mapped). page; locate it live before starting exposures (not yet mapped).
## Reservations (verified working 2026-07-18)
Reservations live at http://reservations.itelescope.net ("Reservations Pilot"),
reached from each scope's /ac/MenuItems/reservation-edit.asp iframe as
`?t=<scope-id>&u=<username>` (scope ids look like GRAS059 for T59, GRAS033 for
T33; full list in the resources JSON on go.itelescope.net/Reservation/Overview.aspx,
whose embedded DayPilot events also show everyone's bookings, roof/sun times, and
the moon discount per night). No separate login: it trusts the u= parameter once a
session cookie exists.
Creating one is a three-step WebForms dance against
`New.aspx?start=<ISO local>&end=<ISO local>&r=<scope-id>` (times are OBSERVATORY
LOCAL): (1) GET the form, (2) POST tokens + DropDownStartTime/DropDownEndTime
(e.g. "12:05 AM"/"3:45 AM") + PlanToRunListBox=<plan file> + RescheduleCheckbox
+ ButtonRefreshPlans=Refresh Plans, which re-renders with Confirm enabled,
(3) re-POST the fresh tokens with the same fields + ReservationOKButton=Confirm
Reservation. Success = response script `ModalStatic.result("OK")` AND the booking
appearing in the grid: the modal also says "OK" on silent failure, so ALWAYS
re-fetch the grid and look for the reservation id + username.
Rules learned: maximum reservation length 4:00; recommended duration 1.5x total
imaging time; the attached plan is auto-started by iTelescope at reservation
start (no walk-in POST needed); RescheduleCheckbox auto-rebooks the identical
timeslot on the first available night of the next 30 if the run does not happen.
Delete/edit via Edit.aspx?id=<reservation id> from the grid.