nextcloud / nextcloud/spreed

Federated typing indicators with same userId

Open
#12,802 13 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug feature: federation 🌐 feature: frontend 🖌️ feature: signaling 📶
Dominant language
PHP
Stars
2.2k
Forks
587
Avg merge
18h 27m
Merged PRs (30d)
333

Description

Since it's not directly related to federated calls, I thought creating a new issue makes the most sense.

While testing https://github.com/nextcloud/spreed/pull/12604 I was unable to get typing indicators to work at first. For my testing I used the same userId on both servers, so I basically had 2 admins in my conversation:
image

Since we suppress typing indicators for ourselves, the federated indicator did not show up, but the signaling messages from that user were received fine.

Purely from the signaling message, I don't see a way to distinguish if it's "my" userId or a federated one:

{
  "type": "message",
  "message": {
    "sender": {
      "type": "session",
      "sessionid": "Tco...",
      "userid": "admin"
    },
    "data": {
      "type": "startedTyping",
      "to": "2fJ7u..."
    }
  }
}

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Review pull request 12604 and the signaling handling for startedTyping messages, then reproduce the case with the same userId on both servers. Trace where typing indicators are suppressed for the local user and define a way for the federated indicator to remain visible; done means the indicator works in this setup without breaking local-user suppression.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
full-stack
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.