The Reservations Pilot app at reservations.itelescope.net is now mapped and driven end to end: three-step WebForms flow (form GET, Refresh Plans postback with plan+times selected which enables Confirm, then Confirm), observatory-local times, 4-hour maximum, plan attachment causing iTelescope to auto-start the run at reservation start, and the reschedule flag that rebooks weather losses on the next free night. Crucial gotcha recorded: the confirm modal returns OK even when nothing was created (first attempt silently failed on the 4-hour rule), so verification against the grid is mandatory. Live reservations: 749227 (T59, NGC 6744, 00:05-03:45 SSO local 20 Jul), 749228 (T33, 47 Tuc test, 00:05-00:50 same night), 749229 (T33, NGC 6752, 00:05-00:50 following night). Ledger corrected: T59 moon discount is 0% until 21 Jul (the earlier 25% figure came from a Utah scope's grid), so the NGC 6744 estimate returns to ~240 pts. Monitoring crons replace the old starter crons since the scheduler now fires the plans itself.
91 lines
4.6 KiB
Markdown
91 lines
4.6 KiB
Markdown
# Observing plans and the T33 session runbook
|
|
|
|
ACP observing plans for iTelescope scopes, plus the procedure to run one on T33
|
|
(the free Siding Spring scope). Credentials are NOT in this repo: they live in
|
|
the local claudetemp itelescope folder (creds.txt, `username=`/`password=` lines).
|
|
|
|
## Plan format (ACP)
|
|
|
|
See [ngc104-test.txt](ngc104-test.txt). Directives, then a target line:
|
|
`Name<TAB>RA_decimal_hours<TAB>Dec_decimal_degrees`. Counts, intervals, binning
|
|
and filters are parallel comma-separated lists. `#shutdown` parks safely at the
|
|
end (iTelescope's own one-click plans do the same).
|
|
|
|
## T33 endpoints (base http://t33.itelescope.net:8033, HTTP auth = iTelescope creds)
|
|
|
|
| Purpose | Path |
|
|
|---|---|
|
|
| Status JSON (times, obsStat, obsOwner) | /ac/SystemStatus/asystemstatus.asp |
|
|
| Console text | /ac/SystemStatus/aconsread.asp |
|
|
| Scope connect control | /ac/SystemStatus/ascopeconn.asp |
|
|
| Shutter/roof status | /ac/SystemStatus/ashutterctl.asp |
|
|
| My plan folder (list/upload/delete) | /plans/qisback/aindex.asp, aupload.asp, adelfile.asp |
|
|
| Run a plan ("Acquire Images") | POST /ac/Plans/plan.asp |
|
|
| My logs | /logs/qisback/aindex.asp |
|
|
| Finished data | data.itelescope.net |
|
|
|
|
Upload: multipart POST to `/plans/qisback/aupload.asp`, fields `File1` (the file)
|
|
and `DestPath=/plans/qisback`. Verified working 2026-07-18; content round-trips
|
|
exactly.
|
|
|
|
Run: the web UI posts the plan select to `/ac/Plans/plan.asp`; the select's value
|
|
is the WINDOWS path `C:\ProgramData\ACP\ACP Web Data\Doc Root\plans\qisback\<file>`.
|
|
Field names seen: `plan`, optional `VPhot`, `AutoLogoff`. NOT yet exercised live
|
|
(observatory was closed, daytime); the first live session must confirm whether a
|
|
scope-connect POST (ascopeconn.asp) is required first, and capture the exact
|
|
response shape.
|
|
|
|
## The 47 Tuc free-session test (ngc104-test.txt)
|
|
|
|
- Target: NGC 104 / 47 Tucanae, RA 0.4015 h, Dec -72.0814 deg (circumpolar at SSO).
|
|
- L 4x120 s, RGB 2x90 s each, Bin2: about 17 min exposure, about 24 min with
|
|
overhead, inside the daily free 30 minutes.
|
|
- Uploaded to /plans/qisback/ on 2026-07-18 and verified.
|
|
|
|
### When to run
|
|
|
|
47 Tuc clears T33's 20 degree minimum elevation in the second half of the SSO
|
|
night. SSO local = UTC+10; the good window is roughly 14:00-19:30 UTC (UK
|
|
afternoon/evening). Sunrise at SSO was 06:14 local (20:14 UTC) at recon time;
|
|
stop well before dawn.
|
|
|
|
### Procedure
|
|
|
|
1. GET asystemstatus.asp: confirm observatory open (obsStat) and no other user
|
|
(obsOwner n/a). If someone is on, wait and retry; T33 is first-come.
|
|
2. Confirm the plan file is still in /plans/qisback/ (aindex.asp).
|
|
3. POST plan.asp with the plan's Windows path to start acquisition.
|
|
4. Poll aconsread.asp (console) every minute or two: slew, centering, filter
|
|
changes, exposures. The run self-terminates via #shutdown.
|
|
5. Images land in /images/qisback/ on the scope server and then on
|
|
data.itelescope.net; logs in /logs/qisback/.
|
|
6. Record the session outcome in state/NOTES.md.
|
|
|
|
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=<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.
|