Skip to content

connector: put calls and voicemails in the SMS chat - #28

Closed
iFixRobots wants to merge 1 commit into
mainfrom
iFixRobots/merge-call-threads
Closed

iFixRobots wants to merge 1 commit into
mainfrom
iFixRobots/merge-call-threads

Conversation

@iFixRobots

@iFixRobots iFixRobots commented Oct 2, 2026 •

Copy link
Copy Markdown
Contributor

Fixes #3.

Google Voice gives every call and voicemail its own thread (c.<id>), separate from the SMS thread with the same person (t.<number>). The bridge maps threads to portals one-to-one, so every call becomes a new chat.

What changes

  • Routing. A call or voicemail thread with exactly one phone number now goes into that number's SMS portal, t.<number>. If there's no SMS chat yet, it creates one, so all calls from someone you've never texted still end up in a single chat. Group threads and threads without a normal phone number are unchanged.
  • Thread tracking. Each merged message records its source thread in message metadata (thread_id).
    • Read receipts mark the merged call and voicemail threads read in Google Voice, not just the SMS thread.
    • Deleting the chat also deletes the merged threads, so they don't bring the chat back on the next fetch. A failure on a merged thread is only logged, so one bad thread can't make the chat undeletable.
  • Forward-only. Existing per-call portals are left as they are. A call thread whose latest message is already bridged is skipped. Backfills of merged threads use AggressiveDeduplication, because message IDs are unique per login across portals.

Google Voice gives every call and voicemail its own thread, so the bridge
was creating a new chat for each one. Calls and voicemails with a single
phone number now go into that number's SMS chat (t.<number>) instead.

Each merged message remembers which thread it came from, so marking the
chat as read and deleting it also reach the call and voicemail threads.
Calls that were already bridged into their own chat stay where they are.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@iFixRobots
iFixRobots force-pushed the iFixRobots/merge-call-threads branch from 26dadeb to 5d437ca Compare October 2, 2026 12:20
@iFixRobots iFixRobots closed this Oct 2, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

[Enhancement] Merge calls and texts into one thread instead of creating new rooms

1 participant