0

我正在 Grails 中制作一个 xmpp 网络聊天应用程序。我有一个消息监听器,可以在控制台中记录收到的消息。但是我怎么能在一个网站上做到这一点呢?我是 webapp 开发的新手,所以请不要投反对票。我猜是阿贾克斯,但不确定。

我的听众:

private MessageListener messageListener = new MessageListener() {
        @Override
        public void processMessage(Chat chat, Message message) {
            // 'from' and 'to' fields contains senders ids, e.g.
            // 17792-1028@chat.quickblox.com/mac-167
            // 17744-1028@chat.quickblox.com/Smack
            String from = message.getFrom().split("@")[0];
            String to = message.getTo().split("@")[0];

            org.jivesoftware.smack.packet.Message.Type type = message.getType();
            String tajp = type.toString();
            println String.format(">>> Message received (from=%s, to=%s, type=%s): %s", from, to, tajp, message.getBody())

            if (onMessageReceivedListener != null) {
                onMessageReceivedListener.onMessageReceived(message);
            }
        }
    }
4

1 回答 1

3

我建议你看看事件推送插件。有了它,您可以传播您的消息并通知您的客户。

你会需要:

  • 通知新消息的服务
  • 调用此服务的控制器方法
  • 向控制器发出ajax请求,发送用户消息
  • 处理传入消息的 JavaScript

我是 webapp 开发的新手

Web 开发与桌面开发有很大不同,所以我建议你放慢速度,做一些更简单的事情。StackOverflow 上还有其他主题将向您介绍 Grails。

此外,对于 webdev,了解前端的 JavaScript、CSS 和 HTML 也很重要。

于 2013-08-30T14:40:28.357 回答