<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">使用Chat GroupChat发送消息</span>
往复的发送消息处于通信的核心地位,两个类辅助发送消息与接收消息
Chat
一个Chat在两个用户之间建立一个消息线程(通过线程ID),下面这段代码用来展示创建一个新的Chat与发送一个条固定内容的消息
// 假设我们已经创建了一个名为"connection"的XMPPConnection。
Chat newChat = connection.createChat("jsmith@jivesoftware.com");
newChat.sendMessage("Howdy!");
chat.sendMessage(String messageContent)可以方便的创建一个Message对象,用字符串设置消息的内容,在一定的情况下,你可能希望在消息的发送前设置额外的值使用Chat.CreateMessage 与mChat.sendMessage,如下面代码片段展示
// 假设我们已经创建了一个名为"connection"的XMPPConnection。
Chat newChat = connection.createChat("jsmith@jivesoftware.com");
Message newMessage = newChat.createMessage();
newMessage.setBody("Howdy!");
message.setProperty("favoriteColor", "red");
newChat.sendMessage(newMessage);
// 假设我们已经创建了一个名为"connection"的XMPPConnection。
Chat newChat = connection.createChat("jsmith@jivesoftware.com");
newMessage.setBody("Hi, I'm an annoying parrot-bot! Type something back to me.");
while (true) {
// 等待用户发送给我们的下一条消息。
Message message = newChat.nextMessage();
// 将对方发送过来的消息原样发送给他。
newChat.sendMessage(message.getBody());
}
以上方法通过chat.nextMessage得到下一条消息,他将等待不知道何时到来的另一条消息,当然还有其他的方法能够等待特定时间到来的新消息,或者您可以添加消息监听器,他将每次消息到来的时候,通知你
GroupChat
通过GroupChat将消息内容上传到服务器的聊天室,您可以在一群人中发送群组消息,但是你在接收消息之前,必须在聊天室里面有一个昵称,下面这段代码展示连接到聊天室并且发送消息
// 假设我们已经创建了一个名为"connection"的XMPPConnection。
GroupChat newGroupChat = connection.createGroupChat("test@jivesoftware.com");
// 用昵称"jsmith"加入这处群。
newGroupChat.join("jsmith");
// 向聊天室中的其它人发送一条消息。
newGroupChat.sendMessage("Howdy!");