import java.util.*;
import org.jivesoftware.smack.Chat;
import org.jivesoftware.smack.ConnectionConfiguration;
import org.jivesoftware.smack.MessageListener;
import org.jivesoftware.smack.Roster;
import org.jivesoftware.smack.RosterEntry;
import org.jivesoftware.smack.XMPPConnection;
import org.jivesoftware.smack.XMPPException;
import org.jivesoftware.smack.packet.Message;
public class Function implements MessageListener {
XMPPConnection connection;
public String[] login(String userName, String password) {
try {
ConnectionConfiguration config = new ConnectionConfiguration(
"host", port, "Work");
connection = new XMPPConnection(config);
connection.connect();
connection.login(userName, password);
} catch (XMPPException e) {
System.out.println(e);
}
return displayBuddyList();
}
public String[] displayBuddyList() {
Roster roster = connection.getRoster();
Collection<RosterEntry> entries = roster.getEntries();
String[] buddy = new String[entries.size()];
int i = 0;
for (RosterEntry r : entries) {
buddy[i] = r.getUser();
i++;
}
return buddy;
}
public void sendMessage(String message, String to) {
try {
Chat chat = connection.getChatManager().createChat(to, this);
chat.sendMessage(message);
} catch (XMPPException e) {
System.out.println(e);
}
}
public void disconnect() {
connection.disconnect();
}
@Override
public void processMessage(Chat chat, Message message) {
if (message.getType() == Message.Type.chat)
System.out.println(chat.getParticipant() + " says: " +
message.getBody());
}
}