views:

62

answers:

2

Can anyone explain how an XMPP server pushes data to an XMPP client? This client will most likely be behind a firewall and will not have its own IP on the Internet so how can the client be notified? Does the client leave a connection open with the server at all times?

+4  A: 

It depends on the type of connection: HTTP polling or a direct TCP/IP connection over port 5222.

HTTP polling relies on the client sending a long-running HTTP request (Comet-style) to the server and waiting for replies.

Direct TCP/IP connection keeps a connection open to the server at all times.

Jon Benedicto
+3  A: 

XMPP is a TCP/IP connection that is kept alive. So if you're client is able to connect to an XMPP server, said server will be able to send data to the client.

Julien Genestoux