XMPP-based IM research on Android

Source: Internet
Author: User
Tags vcard

Because the project requires an android Communication Software Based on XMPP protocol. So we started to study XMPP.

The XMPP protocol uses the client-server architecture. All messages and data sent from one client to another must be forwarded by the XMPP server, and supports DNS routing between servers, that is to say, you can build a server cluster so that clients under different servers can communicate with each other. The predecessor of XMPP is the network communication protocol developed by an open-source organization-jabber, the core of XMPP is the protocol for sending XML streams by fragment on the network. This protocol is a means of transmitting XMPP instant messaging commands.

To prevent data sent between servers from being tampered or eavesdropped, XMPP server communication introduces the TLS mechanism, which can be used to encrypt data, this ensures data security during data transmission.

The IP address of an XMPP object is called jabber identifier or jid, which is similar to an IP address. A valid jid includes the node name and domain name Resource Name. Its format is: jid = [node '@'] domain ['/' resource]

 

The namespace of the XMPP protocol:
Jabber: IQ: Private -- private data storage, used for private setting information of local users, such as user remarks.
Jabber: IQ: Conference-a general meeting used for information sharing among multiple users
Jabber: X: Encrypted-encrypted message, used to send encrypted messages
Jabber: X: expire -- message termination
Jabber: IQ: Time -- client time
Jabber: IQ: Auth-Simple user authentication, which is generally used for authentication between servers or between servers and clients.
Jabber: X: roster-internal roster
Jabber: X: signed -- marked online status
Jabber: IQ: search-user database query, used to send query requests to the server
Jabber: IQ: Register -- registration request, used for User Registration Information
Jabber: X: IQ: roster -- roster management
Jabber: X: conference -- meeting invitation, used to send a meeting notification to participants
Jabber: X: event -- message event
VCard-temp-temporary vCard, used to set the user's profile picture and nickname

 

I found an open-source project beem, an open-source XMPP framework asmack for Android, and asmack is the Android version of smack. Start learning smack now

. XMPP is a magic horse. First, click openfire and Spack on the Internet. If you don't know what these two items are, Google directly. Installing openfire requires MySQL support. Of course, Oracle and sqlserver are certainly acceptable.

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.