December 22nd, 2010, 07:47 AM
XMPP/Jabber Client implementation
Im trying to implement a simple Jabber client app using C++.
I understand that connection, handshake and user login happens through XML message streams.
The code i have written is as follows :
1) open socket
iSocket = socket(AF_INET, iSocketType, 0);
2) connect to server hosted on same machine ie. localhost
if(connect(iSocket, (struct sockaddr*)&iSa, sizeof(iSa)) < 0)
3) server handshake
string str = "<?xml version='1.0'?> <stream to='192.168.2.3:5222' xmlns='jabber:client'/>";
int result = send(iSocket, str.c_str(), strlen(str.c_str()), 0);
if(result <= 0)
result = recv(iSocket, str2, strlen(str2), 0);
reply is :
<?xml version='1.0'?><stream:stream xmlns:stream='http://etherx.jabber.org/streams' id='1d01dbe8470a1700077872538724988a227c4f54' from='5222' xmlns='jabber:client'>t'>t
My doubt is after this, any XML stream Im sending doesnt receive a reply
I have tried different combinations.
I even tried to extract the id received from reply in step 3 and constructed the stream. Tried 127.0.0.1 instead of localhost.
December 28th, 2010, 06:22 AM
Re: XMPP/Jabber Client implementation
check whether server is able receive the message sent from client or not.
Post the code where ur sending it again.
Click Here to Expand Forum to Full Width