我正在尝试创建一个聊天组件以添加到现有的 Rails Web 应用程序中(并可能在此过程中优化与客户的通信)。我想到的架构是:当用户在 Rails 上进行身份验证时,创建他/她的 Jabber 凭据并在页面加载时在 JS 中设置它们。使用 ejabberd 接受来自客户端的 flash TCP 或 BOSH(可能使用jquery-bosh)连接,使用 xmpp4r 将 Rails 连接到 ejabberd(作为常规客户端)并查看来自客户端的消息。如果它们是特定于应用程序的消息,请执行相关操作,如果它们是用户到用户的消息,请将它们传递给适当的用户/组。同时,继续使用 Thin/Apache 服务于常规网页。
我有一些问题:
- 这种架构是否有意义,或者其中有什么不可行的?
- 除了我目前正在阅读的 ejabberd 文档和 xmpp4r 文档之外,您还可以指出我可能感兴趣的其他资源吗?
谢谢你。