Skip to content

Surface PhoneNotResponding instead of swallowing it (cryptic UNKNOWN sends) #44

Description

@MaxGhenis

Problem

internal/client/events.go receives libgm's PhoneNotResponding / PhoneRespondingAgain events but only logs them (line ~90). The user never learns the phone is unreachable — outgoing sends just fail with a bare UNKNOWN, and inbound silently stops.

Ask

  • Track a phoneResponding bool on the App (set false on PhoneNotResponding, true on PhoneRespondingAgain / ClientReady / a successful inbound message), exposed in GoogleStatusSnapshot (e.g. phone_responding).
  • When a send fails while phone_responding == false, tailor the error ("your phone isn't responding to OpenMessage right now — make sure it's on and online") instead of the generic re-pair guidance from Detect a stuck Google Messages session and offer re-pair #42.
  • Optionally show a subtle "phone unreachable" indicator in the UI.

Complements #42 (which handles the unlinked-device case). This handles the phone-temporarily-offline case, which #42's repeated-failure heuristic would otherwise eventually misattribute to a stuck session.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions