|
|
Line 1: |
Line 1: |
− | '''Jabber''' is a collection of [[protocol]]s for [[instant messaging]] and online [[presence information]].
| |
− |
| |
− | Unlike [[Comparison of instant messaging protocols|most instant messaging protocols]], Jabber is an [[open standard]]. As with [[e-mail]], an account on any Jabber server can communicate with users on other Jabber servers. Unlike [[IRC]], there isn't a limit on the number of servers that can compose the Jabber network.
| |
− |
| |
− | Jabber clients can connect to other IM systems ([[ICQ]], [[AIM]], [[MSN Messenger]]), or to [[IRC]] depending on the server ([[Jabber transport]]s).
| |
− |
| |
− | == Features ==
| |
− | ; Decentralized : The architecture of the Jabber network is similar to email; anyone can run their own Jabber server and there is no central master server.
| |
− | ; Open Standard : The [[Internet Engineering Task Force]] has formalized Jabber's core XML streaming protocols as an approved instant messaging and presence technology under the name of [[XMPP]], and the XMPP specifications have been published as RFC 3920 and RFC 3921. No royalties are required to implement support of these specifications and their development is not tied to a single vendor.
| |
− | ; Proven : Jabber technologies have been in use since 1998. Multiple implementations of Jabber's standards exist for clients, servers, components, and code libraries, with the backing of large companies such as [[Sun Microsystems]] and [[Google]].
| |
− | ; Secure : Jabber servers may be isolated from the public Jabber network (e.g., on a company intranet), and robust security using [[Simple Authentication and Security Layer|SASL]] and [[Transport Layer Security|TLS]] has been built into the core XMPP specifications.
| |
− | ; Flexible : Custom functionality can be built on top of Jabber's core protocols; to maintain interoperability, common extensions are managed by the Jabber Software Foundation. Jabber applications beyond IM include network management, content syndication, collaboration tools, file sharing, gaming, and remote systems monitoring.
| |
− |
| |
− | == How it works ==
| |
− | The Jabber network is server-based (i.e. clients do not talk directly to one another) but decentralized; there is no central authoritative server, as there is with services such as [[AOL Instant Messenger]] or [[MSN Messenger]]. Some confusion often arises on this point as there is, in fact, a public Jabber server being run at "Jabber.org", to which a large number of users subscribe. However, anyone may run their own Jabber server on their own domain.
| |
− |
| |
− | A user is identified with a user name and a server name. The two fields are separated by the @ sign. This identifier is called a ''Jabber ID'' or ''[[#Jabber ID|JID]]''.
| |
− |
| |
− | Suppose ''juliet@capulet.com'' wants to chat with ''romeo@montague.net''. Juliet and Romeo each respectively have accounts on the Capulet.com and Montague.net servers. When Juliet types in and sends her message, a sequence of events is set in action:
| |
− | # Juliet's Jabber client sends her message to the Capulet.com Jabber server
| |
− | #* If Montague.net is blocked on Capulet.com the message is dropped.
| |
− | # The Capulet.com Jabber server opens a connection to the Montague.net Jabber server.
| |
− | # The Montague.net Jabber server delivers the message to Romeo
| |
− | #* If Capulet.com is blocked on Montague.net, the message is dropped.
| |
− | #* If Romeo is not currently connected, the message is stored for later delivery.
| |
− |
| |
− | {| cellspacing="10" cellpadding="5" align="center" style="text-align:center;"
| |
− | |
| |
− | {| border="1" align="center" style="border: 1px solid #999; border-collapse:collapse; background-color:#FFFFFF; text-align:center;" cellpadding="4"
| |
− | | Juliet
| |
− | |}
| |
− | | ↔
| |
− | |
| |
− | {| border="1" align="center" style="border: 1px solid #999; border-collapse:collapse; background-color:#CCCCCC; text-align:center;" cellpadding="4"
| |
− | | Capulet.com
| |
− | |}
| |
− | | →
| |
− | |
| |
− | {| border="1" align="center" style="border: 1px solid #999; border-collapse:collapse; background-color:#CCCCCC; text-align:center;" cellpadding="4"
| |
− | | Montague.net
| |
− | |}
| |
− | | ↔
| |
− | |
| |
− | {| border="1" align="center" style="border: 1px solid #999; border-collapse:collapse; background-color:#FFFFFF; text-align:center;" cellpadding="4"
| |
− | | Romeo
| |
− | |}
| |
− | |}
| |
− |
| |
− | == Jabber ID ==
| |
− | <!- this could be an article on its own.. -->
| |
− | A Jabber ID or '''JID''' is the [[username]] or account name used to access a Jabber account. It usually takes the form <tt>user@domain/resource</tt>, in a way that is similar to [[email address]]es. The resource component enables a user to contact a particular access point logged into each account, e.g. <tt>user@domain.com/work</tt> and <tt>user@domain.com/home</tt>. The resource component is not necessary in order to contact a Jabber user.
| |
− |
| |
− | Transports, agents, and other automated parts of the Jabber network may not have a user part to the JID. A common example would be the [[AOL Instant Messenger|AIM]] transport, where the transport itself has a JID along the lines of <tt>aim.domain.com</tt>, and contacts on AIM would appear as <tt>screenname@aim.domain.com</tt>.
| |
− |
| |
− | In a similar way to [[Sendmail]], accessing other protocols is possible with [[Jabber transport]]s. Users can then contact from a client such as [[MSN Messenger]] using the JID form <tt>user%msn.com@msn.jabberserver.com</tt>.
| |
− |
| |
− | ==Multi User Chat - MUC==
| |
− |
| |
− | Jabber servers can host chatrooms which are not too different from channels in [[IRC]]. Chatrooms are not accessible if the jabber client being used does not support MUC.
| |
− |
| |
− | '''Chatrooms'''
| |
− | * jabber@conference.jabber.org - The largest room in jabber.org.
| |
− | * anarchy@conference.jabber.org
| |
− |
| |
− | == Connecting to other protocols ==
| |
− | A unique feature of the Jabber system is that of ''transports'', also known as ''gateways'', which allow users to access networks using other protocols. This can be other [[List of instant messaging protocols|instant messaging protocols]], but also protocols such as [[Short message service|SMS]] or [[E-mail]]. Unlike [[Multiprotocol instant messaging application|multi-protocol clients]], Jabber provides this access at the server level by communicating via special gateway services running on a remote computer. Any Jabber user can "register" with one of these gateways by providing the information needed to log on to that network, and can then communicate with users of that network as though they were Jabber users. This means that any client which fully supports the Jabber protocol can be used to access any network to which a gateway exists, without the need for any extra code in the client.
| |
− |
| |
− | == Jabber and HTTP ==
| |
− | Another interesting aspect of the Jabber protocol and server is the [[HTTP]] binding for users behind restricted [[firewall (networking)|firewalls]]. Jabber can use HTTP in two ways: [http://www.jabber.org/jeps/jep-0025.html polling] and [http://www.jabber.org/jeps/jep-0124.html binding]. HTTP polling essentially implies messages stored on a server-side database being fetched (and posted) regularly by a Jabber client by way of HTTP 'GET' and 'POST' requests. With the binding, the client uses longer-lived HTTP connections to receive messages as soon as they are sent; it is much more efficient than polling.
| |
− |
| |
− | Because the client uses HTTP, most firewalls would allow the client to fetch and post messages without any hindrance. Thus, in scenarios where opening a native Jabber [[Transmission Control Protocol|TCP]] connection is not possible, clients can use HTTP to stay connected and provide instant messaging. This aspect of Jabber protocol has also made it popular with some users.
| |
− |
| |
| == Regional Jabber communities == | | == Regional Jabber communities == |
| In a few places around the world, communities have evolved where the main focus is advocating Jabber and bringing Jabber closer to the end user. Usually services are offered, such as a Jabber server, a web portal to assist users with signing up to Jabber and forums. | | In a few places around the world, communities have evolved where the main focus is advocating Jabber and bringing Jabber closer to the end user. Usually services are offered, such as a Jabber server, a web portal to assist users with signing up to Jabber and forums. |
Line 79: |
Line 7: |
| * [[Jabber Australia]] (Australia) - http://www.jabber.org.au/ | | * [[Jabber Australia]] (Australia) - http://www.jabber.org.au/ |
| * [[Jaim.at]] (Austria) - http://www.jaim.at/ | | * [[Jaim.at]] (Austria) - http://www.jaim.at/ |
− | * [[Jabber Brasil]] Grupo de Usuários Jabber do Brasil - http://guj.codigolivre.org.br/ | + | * [[Jabber Brasil]] Grupo de Usuбrios Jabber do Brasil - http://guj.codigolivre.org.br/ |
− | * [[Äeskýjabber]] (Czech Republic) - http://www.jabber.cz/ | + | * [[ |
| + | eskÑjabber]] (Czech Republic) - http://www.jabber.cz/ |
| * [[jabber.dk]] (Denmark) - http://www.jabber.dk/ | | * [[jabber.dk]] (Denmark) - http://www.jabber.dk/ |
| * [[jabber.ee]] (Estonia) - http://www.jabber.ee/ | | * [[jabber.ee]] (Estonia) - http://www.jabber.ee/ |
Line 86: |
Line 15: |
| * [[amessage]] (Germany/International) - http://web.amessage.info/ | | * [[amessage]] (Germany/International) - http://web.amessage.info/ |
| * [[Jabber.hu]] (Hungary) - http://www.jabber.hu/ | | * [[Jabber.hu]] (Hungary) - http://www.jabber.hu/ |
− | * [[Jabber.or.id]] (Indonesia) - http://www.jabber.or.id/ | + | * [[Jabber.or.id]] (Indonesia) - http://www.jabber.or.id/(dead) |
| + | |
| + | * [[Jabin.org]] (Indonesia) - http://www.jabin.org/ |
| + | |
| * [[Jabber Norge]] (Norway) - http://www.jabber.no/ | | * [[Jabber Norge]] (Norway) - http://www.jabber.no/ |
| * [[JabberPL]] (Poland) - http://www.jabberpl.org/ | | * [[JabberPL]] (Poland) - http://www.jabberpl.org/ |
Line 109: |
Line 41: |
| *[[Mediaring Limited|MediaRing]] (Singapore) | | *[[Mediaring Limited|MediaRing]] (Singapore) |
| --> | | --> |
− |
| |
− | == See also ==
| |
− | * [[Comparison of instant messaging clients]]
| |
− | * [[Extensible Messaging and Presence Protocol|XMPP specifications]]
| |
− | * [[List of Jabber client software]]
| |
− | * [[List of Jabber server software]]
| |
− | * [[Off-the-record messaging]]
| |
− | * [[Secure communication]]
| |
− |
| |
− | == External links ==
| |
− | * [http://www.jabber.org jabber.org Jabber Software Foundation]
| |
− | * [http://www.jabber.org/user/userguide/ Jabber User Guide] - End user introduction to Jabber.
| |
− | * [http://www.jabber.org/jeps/ Jabber Enhancement Proposals (JEPs)]
| |
− | * [http://www.xmpp.net/ List of Jabber servers by country or domain]
| |
− |
| |
− | [[Category:XML-based standards]]
| |
− | [[Category:Instant messaging]]
| |
− | [[Category:Internet protocols]]
| |
− | [[Category:Open standards]]
| |
− | [[Category:On-line chat]]
| |
− |
| |
− | {{wikipedia|Jabber}}{{infoanarchy}}
| |
In a few places around the world, communities have evolved where the main focus is advocating Jabber and bringing Jabber closer to the end user. Usually services are offered, such as a Jabber server, a web portal to assist users with signing up to Jabber and forums.