Microsoft OCS (Office Communications Server) is an Instant messaging platform that is largely deployed in the enterprise. We have developed a bridge that allows ejabberd to federate seamlessly with Microsoft OCS servers.
This new ejabberd component detects if the remote server that you want to talk to is an XMPP server or a Microsoft server and will use the appropriate protocol to talk with the third party server. From ejabberd user perspective, you add contacts with their Jabber ID (username@domain). It happens to be Microsoft OCS id, but ejabberd will take care of everything on the backend. It thus works with any XMPP client.
From Microsoft OCS perspective, if you have deployed the federation component (Microsoft Edge server), the OCS server is able to talk with the outside world. It normally only talks to other OCS server, but with ejabberd component, your XMPP server will be recognized by OCS as another OCS server.
OCS bridge for ejabberd takes care of the mapping between XMPP and the specific SIP dialect used by Microsoft OCS. Regarding username and ids, both XMPP and OCS use domains as basis for federation, that’s why the integration can be seamless.
In the current version, presence, messaging and roster addition and deletion are seamlessly supported.
Here is a video showing how the integration works:
Video in Quicktime format (higher quality): XMPP_OCS_demo.mov.