[JDEV] [Protocol 1.0]

Jeremie jeremie at jabber.org
Wed Feb 3 17:24:15 CST 1999


#### Intro

The protocol is currently only half-complete, as many have pointed out. 
The reason it is currently not implemented "correctly" is simply because
it was easier to write software to process it on the server side when it
was done with one common main level tag(<j type='packettype'></j>).  I
thought it might be able to work just fine that way, but after looking at
it again it's probably worth the effort to write the code and do it the
right way. 

The proposal here is to model the protocol after a typical XML document. 
All communications between the clients and the server(Jabber Transport)
will look like: 

<?xml version="1.0"?>
<jabber type="client" version="Name/OS version/version" protocol="19990101">
...rest of client communication happens in here
</jabber>

Comments should be allowed anywhere, and will be ignored.  When the client
sends a </jabber> it will signal a close, but is not necessary(just
closing the connection will work identically).  The server should respond
in an identical fashion, with the exception that it will be type="server". 


#### Example protocol

<login>
	<user>jeremie</user>
	<pass>Ph0niks</pass>
	<name>jabalot</name>
</login>

<message>
	<to>jeremie</to>
	<say>test</say>
</message>

<message>
	<to>someone</to>
	<to name='Jenny(work)'>jenny</to>
	<to>jeremie</to>
	<to name='HAhah!'>safdsgh at asdfg.asdfasdf</to>
	<thread>sdfa</thread>
	<priority>1</priority>
	<subject>Did you see that?</subject>
	<say>asdgf asdfkjasgoijqwert asdgaldgjkas</say>
</message>

<status>
	<say type='online'>This is my status</say>
	<priority>10</priority>
	<icon>normal</icon>
</status>

<roster>
	<add group='main'>fred</add>
	<add group='friends'>user at jabber.server.com</add>
	<add group='main'>545212 at ICQ</add>
	<del group='system'>olduser</del>
</roster>

<roster>
	<get group='main'/>
</roster>


#### Server to client

<message>
	<from name='nickname'>fred</to>
	<thread>sdfa</thread>
	<priority>1</priority>
	<subject>Did you see that?</subject>
	<say>asdgf asdfkjasgoijqwert asdgaldgjkas</say>
</message>

<status>
	<from name='nickname'>jenny</from>
	<say type='online'>This is my status</say>
	<priority>10</priority>
	<icon>normal</icon>
</status>

<roster>
	<group name='main'>jenny</group>
	<group name='friends'>user at jabber.server.com</group>
	<group name='main'>545212 at ICQ</group>
	<group name='system'>olduser</group>
</roster>




More information about the JDev mailing list