diff --git a/CAMPAIGN.md b/CAMPAIGN.md index 4f1c54e..261d7c7 100644 --- a/CAMPAIGN.md +++ b/CAMPAIGN.md @@ -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 | |---|---|---|---|---|---|---|---| -| 2026-07-19 | T33 | 47 Tuc | ngc104-test.txt | 17 min | 0 (free) | | first-light test | -| 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-20 | T33 | NGC 6752 | ngc6752.txt | 17 min | 0 (free) | | | +| 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 | ~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) | | reservation 749229, 00:05-00:50 SSO local 21 Jul, auto-runs | ## 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 -- Every paid session follows plans/README.md (walk-in when idle; same ACP flow as - the free scopes). Upload plans the day before where possible. +- Sessions are now RESERVED, not walk-in: upload the plan to the scope, then book + 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 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. diff --git a/plans/README.md b/plans/README.md index a55f277..1a0688d 100644 --- a/plans/README.md +++ b/plans/README.md @@ -63,3 +63,29 @@ stop well before dawn. 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). + +## 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=&u=` (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=&end=&r=` (times are OBSERVATORY +LOCAL): (1) GET the form, (2) POST tokens + DropDownStartTime/DropDownEndTime +(e.g. "12:05 AM"/"3:45 AM") + PlanToRunListBox= + 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= from the grid.