1
0
Fork 0
mirror of https://codeberg.org/Mercury-IM/Smack synced 2024-11-02 14:55:58 +01:00
No description
Find a file
Florian Schmaus 6caf2cbdb5 Don't use IQReplyFilter for resource binding
as the local username is only available after binding (and legacy
session establishment). This makes Smack compatible again with XMPP
services that use the user's JID as from attribute in the result IQ
after the bind set IQ, e.g. Facebook:

SENT:
<iq id='sqvTK-1' type='set'>
  <bind xmlns='urn:ietf:params:xml:ns:xmpp-bind'>
    <resource>Smack</resource>
  </bind>
</iq>

RCV:
<iq from='user.name.1@chat.facebook.com' id='sqvTK-1' type='result'>
  <bind xmlns='urn:ietf:params:xml:ns:xmpp-bind'>
    <jid>user.name.1@chat.facebook.com/Smack</jid>
  </bind>
</iq>

Fixes SMACK-590
2014-08-04 18:01:05 +02:00
config Substitute MXParser with a call to XmlPullParserFactory 2014-02-20 13:48:36 +01:00
documentation Move "Message Events (XEP-22)" code to legacy 2014-07-16 12:01:03 +02:00
resources Smack 4.0.2 2014-07-27 23:59:48 +02:00
smack-android Configure default Hostname Verifiers 2014-08-03 21:15:41 +02:00
smack-bosh Add smack-android and redesign SASL authentication 2014-08-01 10:34:47 +02:00
smack-compression-jzlib Replace deprecated Z(Input|Output)Stream 2014-05-15 16:44:34 +02:00
smack-core Don't use IQReplyFilter for resource binding 2014-08-04 18:01:05 +02:00
smack-debug Add smack-android and redesign SASL authentication 2014-08-01 10:34:47 +02:00
smack-experimental Merge branch '4.0' 2014-07-20 14:19:59 +02:00
smack-extensions Add API to find services for a given feature 2014-07-26 07:14:42 +02:00
smack-java7 Configure default Hostname Verifiers 2014-08-03 21:15:41 +02:00
smack-jingle Merge branch '4.0' 2014-07-05 14:37:22 +02:00
smack-legacy Move "Message Events (XEP-22)" code to legacy 2014-07-16 12:01:03 +02:00
smack-resolver-dnsjava Reworked OSGi support of Smack (SMACK-343) 2014-05-15 16:09:37 +02:00
smack-resolver-javax Add SmackAndOsgiInitializer 2014-07-20 12:58:50 +02:00
smack-resolver-minidns Use jxmpp 0.2.0 2014-07-15 23:32:19 +02:00
smack-sasl-javax Add smack-android and redesign SASL authentication 2014-08-01 10:34:47 +02:00
smack-sasl-provided Add smack-android and redesign SASL authentication 2014-08-01 10:34:47 +02:00
smack-tcp Add smack-android and redesign SASL authentication 2014-08-01 10:34:47 +02:00
.gitignore Migrate from Ant to Gradle (SMACK-265) 2014-02-14 18:46:33 +01:00
.travis.yml Add smack-android and redesign SASL authentication 2014-08-01 10:34:47 +02:00
build.gradle Add smack-android and redesign SASL authentication 2014-08-01 10:34:47 +02:00
README.md s/ohloh/openhub/ in README.md 2014-07-23 08:29:47 +02:00
settings.gradle Add smack-android and redesign SASL authentication 2014-08-01 10:34:47 +02:00

Smack

Build Status Project Stats

About

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:

    AbstractXMPPConnection connection = new XMPPTCPConnection("jabber.org");
    connection.connect();
    connection.login("mtucker", "password");
    Chat chat = ChatManager.getInstanceFor(connection)
        .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.

Bug Reporting

Only a few usrs have acces for for filling bugs in the tracker. New users should:

  1. Create a forums account (only e-mail is a requirement, you can skip all the other fields).
  2. Login to a forum account
  3. Press New in your toolbar and choose Discussion
  4. Choose the Smack Dev forum of Smack and add the tag 'bug_report' to your new post

Please search for your issues in the bug tracker before reporting.

Contact

The developeres hang around in #smack (freenode, IRC). Remeber that it may take some time (~hours) to get a response.

You can also reach us via the Smack Developers Forum.

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.