0c68fb2461
- kit-connect SPK (ipq806x): postinst with hub registration, start-stop-status, connect-daemon management, Tailscale + reverse SSH tunnel integration - syno-balance SPK (noarch, test build): SmartWAN-aware dual-WAN load balancer with 6-factor scoring engine, syno-daemon lifecycle - Busfleet hub: register.sh (port pool 2230-2299), Python HTTP server, systemd service, port-registry.json with x4078/x5925 assignments - .gitignore: exclude SSH keys (*_id_ed25519), SPK artifacts (*.spk) Gitea releases: - kit-connect v0.1-0001 → x5925-kit-connect-v1 (production) - syno-balance v0.1-0001 → syno-balance-test-v1 (prerelease) Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
39 lines
989 B
Markdown
39 lines
989 B
Markdown
# Busfleet Hub
|
||
|
||
Registration endpoint for kit-connect devices. Runs on the VPS at `162.243.83.36:8080`.
|
||
|
||
## Files
|
||
|
||
- **register.sh** — Called per-device. Assigns a tunnel port from pool 2230-2299, records it in `port-registry.json`, returns JSON.
|
||
- **server.py** — Minimal Python HTTP server. Routes `GET /api/register/<DEVICE_ID>` → `register.sh`.
|
||
- **port-registry.json** — Persistent device→port mapping.
|
||
|
||
## Deploy
|
||
|
||
```bash
|
||
scp hub/register.sh hub/server.py root@162.243.83.36:/opt/busfleet-hub/
|
||
ssh root@162.243.83.36 systemctl restart busfleet-hub
|
||
```
|
||
|
||
## API
|
||
|
||
```
|
||
GET /api/register/<DEVICE_ID>
|
||
```
|
||
|
||
Response (existing device):
|
||
```json
|
||
{"device_id": "x5925", "tunnel_port": 2230, "tailscale_auth_key": "tskey-auth-...", "status": "existing"}
|
||
```
|
||
|
||
Response (new device):
|
||
```json
|
||
{"device_id": "x9999", "tunnel_port": 2231, "tailscale_auth_key": "tskey-auth-...", "status": "new"}
|
||
```
|
||
|
||
## Port Pool
|
||
|
||
2230–2299. Already assigned:
|
||
- x4078: 2226 (grandfathered)
|
||
- x5925: 2230
|