I ran prosody server and used Siskin IM as a client, it worked pretty well. But as others mentioned, since this is Apple, the client developer has to run a push server, no background processes and long-polling allowed. Some other XMPP clients (Secret Messenger I think) did not have that set up and do not have notifications.


IMO Snikket (XMPP) is the easiest all-in-one solution with audio/video chat at the moment. Pretty good on resources too.
I currently host a Matrix Synapse server, but: