itelescope/state/NOTES.md
Laurence 07713c2f13 Record 19-20 Jul session outcomes: T59 success (381 pts), T33 free runs missed
- T59 NGC 6744 (reservation 749227) ran 00:05-03:30 SSO local 20 Jul and billed
  381 points (txn 851148), not the ~240 estimated. Full LRGB dataset verified on
  the scope server (L 15x300s BIN1, R/G/B 7x300s each BIN2); preview JPEGs
  checked: round stars, clean galaxy, no weather damage, so no refund claim.
- Rate correction in state/NOTES.md: history 'Time Used' equals wall-clock
  session time (3h24m32s), and the effective rate was ~112 pts/hr wall /
  ~127 pts/hr exposure vs the 80/hr the UpdatePlan rate card predicted. All
  existing queue estimates flagged ~1.6x low until more bills confirm the model.
- Both free T33 reservations (749228 47 Tuc, 749229 NGC 6752) expired unused:
  no images, no logs; grid shows reschedule=No despite the flag being set at
  booking. First-light test is still outstanding; plans remain uploaded on T33.
- Ledger, booked-reservations table and queue updated: balance verified 2,257
  via GetAccountStatus; queue #1 (Cen A T32) missed its 21 Jul slot and needs a
  new night.
2026-07-20 21:30:11 +01:00

4 KiB

Notes

Working notes, gotchas, environment quirks, and dead ends to avoid. Free form. The point is to save a future session from rediscovering something the hard way.

  • Refresh the specs snapshot with: curl -sL "https://docs.google.com/spreadsheets/d/1jZWkkjewOuyNC9YzQ8y2d0pO1e4T7EBeysmQMPBVSOk/export?format=csv" -o data/itelescope-telescopes.csv
  • The CSV has multi-line cells (quoted); line count is not row count. Telescope rows start T<number>,; observatory header rows have an empty first column.
  • Sensors are 16-bit ADC unless noted (T20's ASI2400C is 14-bit).
  • Free scopes (30 min/day): T68 (Utah), T33 (Siding Spring).
  • Minimum elevation limits come from the support article, not the sheet.

Automation recon (2026-07-18, all verified live)

Credentials live OUTSIDE this repo (local claudetemp, never commit them).

  • go.itelescope.net is ASP.NET WebForms. Login: GET /login.aspx, POST UsernameTextBox/PasswordTextBox plus __VIEWSTATE, __VIEWSTATEGENERATOR, __EVENTVALIDATION, LoginButton=Login; session cookie then works everywhere.
  • JSON service at /DataService.svc (session-cookie auth): GetAccountStatus (balance, plan, renewal), GetMyAvailablePlans (per-plan, per-scope AccessDiscount), ApplyPromoCode (POST). More methods likely; enumerate from inline $.ajax calls on each page (Scripts/Common.js has none).
  • Home page /default.aspx carries live network status text (per-scope offline/online reasons) plus points balance: cheap to poll.
  • Reservation/Overview.aspx links every telescope's own control server: https://tNN.itelescope.online/ or http://tNN.itelescope.net:80NN/. These are ACP web servers behind HTTP auth accepting the same iTelescope credentials (verified read-only on T33: index.asp is a TiddlyWiki info page, min elevation 20 degrees, 900 s max exposure). Session control and plan submission happen here; ACP endpoint mapping is the next step.
  • Reservation/Planner.aspx now redirects to https://lookup.itelescope.online (new planning tool, not yet explored).
  • Weather per site: Weather/Weather.aspx?site=UDRO|SSO|DSC|SRO|AC|EYE.
  • Account: Plan-40 (GBP 32.00 per 28 days), renewal 12 Aug 2026, subscribed since Apr 2019, balance 2,638 points at recon time.

Rate card (2026-07-18, points per imaging hour, billed per minute)

Extracted from MyAccount/UpdatePlan.aspx: each scope row carries data-default-rate (dark-of-moon base); effective rate = base x (1 - AccessDiscount from DataService GetMyAvailablePlans) x (1 - moon discount, server-side table keyed on illumination, not extracted yet). Plan-40 discount is 10% on most scopes, 20% on a few, 0% on the newest (T25, T26, T73, T74).

Plan-40 rates before moon discount: T2 50, T5 68, T8 130, T10 146, T11 161, T14 97, T17 135, T18 81, T20 89, T21 76, T24 186, T25 322, T26 394, T30 161, T32 146, T33 0 (free), T59 80, T68 0 (free), T70 119, T71 106, T72 202, T73 224, T74 295, T75 202, T80 119.

Standouts: T59 at 80/hr is the value big scope (20" CDK, square 37 arcmin field, 900 s subs); T5 at 68/hr the cheapest paid; T26 at 394/hr the dearest. Billing is per minute of imaging (exposure) time, so overhead is not billed.

RATE CORRECTION (2026-07-20, from the first real bill): the paragraph above underestimates. T59 session 851148: 180 min of exposure, wall clock 00:05:22 to 03:29:56 (3h24m34s), history "Time Used" 3h24m32s = WALL time, billed 381 points at 0% moon discount. That is ~112 pts/hr of wall time or ~127 pts/hr of exposure time, vs the 80/hr the card predicted. So either Time Used (wall clock) is what gets billed, or the card's data-default-rate is stale. Consequence: estimate sessions at rate x reserved-slot-length (slots run ~1.15-1.5x imaging time), i.e. multiply old exposure-based estimates by ~1.6 until more bills confirm the model. Paid imaging needs no reservation when a scope is idle: same walk-in ACP flow as the free scopes, points just deduct. Reservations (to guarantee a slot) go through lookup.itelescope.online, which is Cloudflare-protected: Playwright needed.