LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Programming (http://www.linuxquestions.org/questions/programming-9/)
-   -   XMPP/Jabber Client implementation (http://www.linuxquestions.org/questions/programming-9/xmpp-jabber-client-implementation-851795/)

yannifan 12-22-2010 06:45 AM

XMPP/Jabber Client implementation
 
Hello

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);
while(true)
{
if(result <= 0)
break;
result = recv(iSocket, str2, strlen(str2), 0);
reply.append(str2);
}
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.
References :
http://java.sys-con.com/node/232087

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.

Please help.


All times are GMT -5. The time now is 02:58 AM.