title: What is the best architecture to bridge to XMPP?
body: <p>If I have a separate system with its own concept of users and presence, what is the most appropriate architecture for creating a bridge to an XMPP server network?  As far as I can tell there are three primary ways:</p>
  
  <ol>
  <li><p>Act as a server.  This creates one touchpoint, but I fear it has implications for compatibility, and potentially creates complexity in my system for emulating a server.</p></li>
  <li><p>Act as a clients.  This seems to imply that I need one connection per user in my system, which just isn't going to scale well.</p></li>
  <li><p>I've heard of an XMPP gateway protocol, but it's unclear if this is any better than the client solution.  I also can't tell if this is standard or not.</p></li>
  </ol>
  
  <p>Any suggestions or tradeoffs would be appreciated.  For example, would any of these solutions require running code inside the target XMPP server (not likely something I can do).</p>