Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/306.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何区分使用smack和java的用户收到的消息?_Java_Facebook_Chat_Smack - Fatal编程技术网

如何区分使用smack和java的用户收到的消息?

如何区分使用smack和java的用户收到的消息?,java,facebook,chat,smack,Java,Facebook,Chat,Smack,我正在使用servlets通过smack向facebook发送和接收聊天信息。 在这种情况下,用户的“A”和“B”正在与用户“C”聊天。 如果用户“C”只向“A”发送消息,“B”也会收到该消息。 如何区分用户之间的消息 最后,我的问题是,给谁的信息是来自facebook的cmg 通过使用以下代码获取消息: public void processMessage(Chat chat, Message message) { if ((message != null)

我正在使用servlets通过smack向facebook发送和接收聊天信息。 在这种情况下,用户的“A”和“B”正在与用户“C”聊天。 如果用户“C”只向“A”发送消息,“B”也会收到该消息。 如何区分用户之间的消息

最后,我的问题是,给谁的信息是来自facebook的cmg

通过使用以下代码获取消息:

public void processMessage(Chat chat, Message message) {

                 if ((message != null) && (message.getBody() != null)) {

                    System.out.println(chat.getParticipant() +"--"+ message.getBody());

                  }
            }

每个
消息
对象将包含标题和正文。 Header基本上是名称-值对的映射。我建议将userid放在消息的标题中。 现在,在您的聊天客户端中,您可以在标题中实现基于用户id的消息过滤。 这将解决您的问题

编辑:


此链接:包含标题用法的详细信息。

@user2709752:请参阅我的编辑。我提供了一个链接,其中详细介绍了如何设置header.Message.getFrom()或Message.getTo()?