Skip to content

v0.1.7 — Room Server Client

Choose a tag to compare

@laserir laserir released this 29 Apr 10:39
· 160 commits to main since this release

Highlights

Room server client — join community message boards run by MeshCore room servers. Posts appear in the conversation list with an R icon (purple), ordered alongside DMs and channels by last activity. Up to 8 rooms.

  • Auto-login on boot with exponential backoff (1 → 2 → 4 → cap 30 min).
  • Disconnect recovery — re-login on chat-open (rate-limited 30s) and after 10 minutes of silence while a room chat is foreground. Both wake the server's 3-strike push-freeze that trips after ~36s of radio dropout, so passive readers don't miss posts after brief out-of-range moments.
  • Per-room flags mirroring channels: read_only, allow_sos (default true), send_sos (default false), scope override.
  • Sender resolution — 4-byte sender_prefix looked up against ContactStore: alias if known, else 8-hex-char fallback.
  • sync_since persisted per-room across reboots; only newer posts replay on next login.
  • AdminScreen Rooms section under Channels: name, online/offline indicator, last-sync timestamp.
  • Config tool Rooms card with all four toggles and the new info-icon collapsible-hint pattern.

Other changes

  • MAX_CONTACTS=32 → 40 (32 chat + 8 room) with cap warnings on overflow.
  • MAX_CONVERSATIONS=48 → 56.
  • Translations: sec_rooms added in de/fr/it.
  • data[5] keep-alive byte runtime watch — warns if a future MeshCore server re-enables the legacy interval.

Compatibility

  • Backward-compatible config: missing room_servers block parses as empty list. Old firmware ignores the field.
  • DM and channel history files stay byte-identical (no syncSince written when zero).
  • Telemetry, SOS, key/PIN lock, offgrid mode all unaffected.

Install

🤖 Generated with Claude Code