gpt4 book ai didi

http - 如何实现 "other users viewing this object"

转载 作者:可可西里 更新时间:2023-11-01 17:03:41 25 4
gpt4 key购买 nike

例如 Zendesk 有一个名为 Agent Collision Notification 的功能- 当您编辑工单时,如果其他人正在编辑该工单,您会收到一条提示。

支持此类功能的基础设施是什么? This question似乎旨在同一件事,但水平要低得多。

为了让系统完全动态(也通知第一位观众)和合理的速度,可能需要一些 comet 或 websocket 之类的东西。但与聊天系统(一个主要的 cometd 示例)不同,在 Ticket 系统中,用户会不断切换页面。

这样的程序流程和服务器基础设施是什么?

最佳答案

如果您想允许实时协作,那么 this question其中还提到了操作转换,您可能会感兴趣。还有 a question about operational transformation libraries .

What would be the program flow and the server infrastructure for a thing like this?

我为 Pusher 工作所以我可以告诉你一个使用我们技术的解决方案。

  1. 用户 A 打开可能存在“冲突”的页面。在页面内订阅 channel对于页面。
  2. 用户 A 开始编辑页面。向服务器发送 AJAX 请求,以便页面正在编辑的事实有一些持久状态。在 channel 上触发一个事件,表明用户正在编辑页面。
  3. 用户 B 打开页面。页面加载并可以显示来自正在编辑页面的持久状态的信息。
  4. 用户 A 完成编辑并向服务器发出更新页面状态的请求。触发一个事件,表明没有人在编辑页面。此事件将分发给用户 B(更新后的页面也可以在事件内分发或在收到事件时通过 AJAX 请求分发)。
  5. 用户 B 现在知道他/她可以编辑页面。他们开始编辑(参见第 2 步),并通知用户 A 用户 B 现在正在编辑页面。

使用 presence 也很酷这样您就可以看到还有谁在查看该页面,并允许用户在发生更改时进行讨论。

关于http - 如何实现 "other users viewing this object",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8857125/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com