RocketChat / RocketChat/Rocket.Chat
[Omnichannel] Agents can see other Chats
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 46.1k
- Forks
- 13.9k
- Avg merge
- 3d 3h
- Merged PRs (30d)
- 130
Description
Description:
We have two agents, both in the same department. We have a new incoming omnichat and agent A clicks on the omnichat channel in the sidebar, but does not accept the chat. Agent B also clicks on the incoming omnichat and can read the chat, which is correct at first, but does not take the chat yet either.
Now agent B takes over the chat and starts the conversation. What we expected is that agent A can no longer read the chat that agent B took over. But for now, agent A can read the open chat conversation until the browser loses focus (e.g. by clicking outside the browser) and the agent clicks back into the browser. Then the message "You do not have permission to read this channel" appears, which should be displayed immediately after agent B takes over the chat. The chat correctly disappears from the sidebar, but on the right side the chat conversation remains open.
Steps to reproduce:
- Create two agents
- Create a department and add both agents to this department.
- Log in with both agents in different browsers.
- Make sure both agents are available in Omnichannel.
- Start a new omnichannel
- Both agents should see the incoming chat
- Click on the chat for each agent, but do not accept it
- Use one agent to accept the chat and write some messages
- Now the bug appears, the other agent can still read the guest's and the other agent's messages
Expected behavior:
When an agent accepts a chat, the chat should be removed from the current view by other agents so that they can no longer read what the other agent is discussing with the guest.
Actual behavior:
When an agent accepts a chat, the chat remains open for other agents who have clicked on the chat in the sidebar, but they do not accept the chat.
Server Setup Information:
- Version of Rocket.Chat Server: 6.2.4
- Operating System: Official Helm Deployment
- Deployment Method: Official Helm Deployment
- Number of Running Instances: 1
- DB Replicaset Oplog: ---
- NodeJS Version: v14.21.3
- MongoDB Version: 5.0.14 / wiredTiger (oplog Enabled)
Client Setup Information
- Desktop App or Browser Version: Tested with Chrome 116.0.5845.179 and Firefox 117.0, both 64-Bit
- Operating System: Windows / MacOS / Linux
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Reproduce the issue with two agents in separate browsers, following the listed omnichannel steps. Trace the selected chat view and the update triggered when one agent accepts it; done means the other agent’s open conversation closes or becomes unreadable immediately, without requiring browser focus to change.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- full-stack
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100