Go to file
Florian Schmaus 6dd64da930 Create new subproject 'legacy', move workgroup API into it 2014-02-17 08:24:10 +01:00
compression-jzlib/src/main/java/org/jivesoftware/smack/compression Migrate from Ant to Gradle (SMACK-265) 2014-02-14 18:46:33 +01:00
config Migrate from Ant to Gradle (SMACK-265) 2014-02-14 18:46:33 +01:00
core Move privacy lists from core to extensions 2014-02-15 22:35:38 +01:00
debug/src/main Migrate from Ant to Gradle (SMACK-265) 2014-02-14 18:46:33 +01:00
documentation Fix copy&paste error in intro.html 2014-02-15 22:36:52 +01:00
experimental/src Create new subproject 'legacy', move workgroup API into it 2014-02-17 08:24:10 +01:00
extensions/src Move privacy lists from core to extensions 2014-02-15 22:35:38 +01:00
integration-test Migrate from Ant to Gradle (SMACK-265) 2014-02-14 18:46:33 +01:00
jingle Migrate from Ant to Gradle (SMACK-265) 2014-02-14 18:46:33 +01:00
legacy/src Create new subproject 'legacy', move workgroup API into it 2014-02-17 08:24:10 +01:00
resolver-dnsjava/src/main/java/org/jivesoftware/smack/util/dns Migrate from Ant to Gradle (SMACK-265) 2014-02-14 18:46:33 +01:00
resolver-javax/src/main/java/org/jivesoftware/smack/util/dns Migrate from Ant to Gradle (SMACK-265) 2014-02-14 18:46:33 +01:00
resources Migrate from Ant to Gradle (SMACK-265) 2014-02-14 18:46:33 +01:00
sample Fixed smack sample for updated API 2009-09-03 08:42:07 +00:00
.gitignore Migrate from Ant to Gradle (SMACK-265) 2014-02-14 18:46:33 +01:00
README.md Add resource URLs to README.md 2014-02-16 15:22:47 +01:00
build.gradle Create new subproject 'legacy', move workgroup API into it 2014-02-17 08:24:10 +01:00
settings.gradle Create new subproject 'legacy', move workgroup API into it 2014-02-17 08:24:10 +01:00

README.md

Smack

Smack is an Open Source, cross-platform, easy to use Java XMPP client library.

Communicate with XMPP servers to perform real-time collaboration, including instant messaging and group chat.

Key Advantages :

  • Extremely simple to use, yet powerful API. Sending a text message to a user can be accomplished in only a few lines of code:

    Connection connection = new XMPPConnection("jabber.org");
    connection.connect();
    connection.login("mtucker", "password");
    Chat chat = connection.getChatManager()
        .createChat("jsmith@jivesoftware.com", new MessageListener() {
    
        public void processMessage(Chat chat, Message message) {
            System.out.println("Received message: " + message);
        }
    });
    chat.sendMessage("Howdy!");
    
  • Doesn't force you to code at the packet level, as other libraries do. Smack provides intelligent higher level constructs such as the Chat and Roster classes, which let you program more efficiently.

  • Does not require that you're familiar with the XMPP XML format, or even that you're familiar with XML.

  • Provides easy machine to machine communication. Smack lets you set any number of properties on each message, including properties that are Java objects.

  • Open Source under the Apache License, which means you can incorporate Smack into your commercial or non-commercial applications.

Smack is an Open Source XMPP (Jabber) client library for instant messaging and presence. A pure Java library, it can be embedded into your applications to create anything from a full XMPP client to simple XMPP integrations such as sending notification messages and presence-enabling devices.

Smack - an Ignite Realtime community project.

Resources

Ignite Realtime

Ignite Realtime is an Open Source community composed of end-users and developers around the world who are interested in applying innovative, open-standards-based Real Time Collaboration to their businesses and organizations. We're aimed at disrupting proprietary, non-open standards-based systems and invite you to participate in what's already one of the biggest and most active Open Source communities.