gpt4 book ai didi

JSF+AJAX推送: realtime chat/notification system

转载 作者:行者123 更新时间:2023-12-02 04:01:38 24 4
gpt4 key购买 nike

我正在尝试向我的网络应用程序添加一些功能,例如“实时用户对用户”聊天(如 Facebook 的聊天)和实时通知系统。

让我们考虑一下这种情况:
我们有两个用户,A 和 B。

A 向 B 发送消息。

如果 B 和 A 之间的聊天窗口在 B 的浏览器上打开,我们更新它,在 B 的浏览器上显示新消息。
如果窗口没有打开,我们需要在 B 的浏览器上显示通知或其他内容。

那么,有一个 PrimeFaces Dialog 作为聊天窗口和一个 PrimeFaces NotificationBar 来显示通知,我该怎么做呢?

我不能使用 PrimeFaces 的推送,因为它们不适用于 Glassfish。

我发现了 ICEPush,这似乎是一个不错的方法,但是关于“渲染组”的事情阻止了我尝试它。
如果 ICEPush 谈论群组,我如何只更新单个客户端?

我应该为每个客户创建一个新组吗?

就像是 :
B 有一个“BwithA”组,当 A 向 B 发送消息并打开聊天时更新,还有一个“notificationsB”组,当聊天窗口关闭时更新?

我不知道该怎么做,因为即使以这种方式使用组,A 也必须告诉 B 他需要更新,而 A 不知道 B 是否必须更新对话框或 notificationBar !

我希望问题是清楚的,因为它不容易解释它|

提前致谢 :)

最佳答案

我不知道专业的 Java 程序员会如何解决您的问题,但是当我想创建聊天时,我使用标准的 Primefaces 远程命令组件和回调参数来创建聊天并从服务器向用户发送新消息。

有一个p:remoteCommand网页上的组件。该组件的目的是在调用 Action 监听器时从特定用户获取最新消息。新消息通过“回调参数”从服务器传递到 javascript 函数(oncomplete 组件事件的处理程序)。然后该函数检查是否有任何消息并将它们附加到聊天框。

如需更多信息,请参阅 How to create JSF chat with AJAX

UPD:上述解决方案已过时。现在我将使用 JAX-RS Web 服务或 Web 套接字来实现聊天。还有一个用于实时数据流的商业解决方案:酒馆 , 推杆 , ETC。

关于JSF+AJAX推送: realtime chat/notification system,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10270355/

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