package org.yaxim.androidclient.service; import java.util.List; import org.yaxim.androidclient.exceptions.YaximXMPPException; import org.yaxim.androidclient.util.ConnectionState; public interface Smackable { boolean doConnect(boolean create_account) throws YaximXMPPException; boolean isAuthenticated(); void requestConnectionState(ConnectionState new_state); void requestConnectionState(ConnectionState new_state, boolean create_account); ConnectionState getConnectionState(); long getConnectionStateTimestamp(); String getLastError(); void addRosterItem(String user, String alias, String group, String token) throws YaximXMPPException; void removeRosterItem(String user) throws YaximXMPPException; void renameRosterItem(String user, String newName) throws YaximXMPPException; void moveRosterItemToGroup(String user, String group) throws YaximXMPPException; void renameRosterGroup(String group, String newGroup); void sendPresenceRequest(String user, String type); void addRosterGroup(String group); String changePassword(String newPassword); void setStatusFromConfig(); void sendMessage(String user, String message); void sendServerPing(); void setUserWatching(boolean user_watching); void registerCallback(XMPPServiceCallback callBack); void unRegisterCallback(); void sendMucMessage(String room, String message); void syncDbRooms(); boolean inviteToRoom(String contactJid, String roomJid); String getNameForJID(String jid); String getMyMucNick(String jid); List<ParcelablePresence> getUserList(String jid); }