Tuesday, June 23, 2009

MS Office Communicator on Linux!

One problem I've had since ditching Windows for Linux at work has been no support for MS Office Communicator in pidgin. None of the standard plugins did the trick, and installing the Microsoft client in CrossOver or wine also didn't work. Since convincing everyone else to change their chat protocol didn't really seem like a feasible option, I decided to just live without it... until this morning that is...

With the help of The SIPE Project it's not only possible, it's actually quite easy.

Here are the steps I used on Fedora Core 10:

    • Install pidgin

    If you haven't already done so, install pidgin and libpurple.
    $ sudo yum install pidgin libpurple purple*

    • Download sipe

    There are some outdated .deb files for sipe, not no .rpm's. Installing from source is the best option...

    Download the source tarball here.

    Untar the file and compile the source:

    $ mkdir /tmp/sipe
    $ cd /tmp/sipe
    $ wget http://downloads.sourceforge.net/sipe/pidgin-sipe-1.4.0.tar.gz?use_mirror=
    $ tar xzvf pidgin-sipe-1.4.0.tar.gz
    $ cd pidgin-sipe-1.4.0
    $ ./configure --prefix=/usr
    $ make
    $ sudo make install

    • Add an Account in Pidgin

    Open pidgin and press CTRL + A to manage accounts. Select Add.

    • From the Protocol list, select Microsoft LCS/OCS

    • Enter your Email Address, Login and Password. Select "Remember Password".

    • On the Advanced tab, select "Use Proxy" and enter the domain name or IP address of the MS Office Communicator server. Select "Use non-standard port" and enter the port of the communicator server (usually 5060). Change the "Connection Type" to TCP.

      • note
        If you don't know what the IP address and port for your communicator server are, use netstat on a windows box running communicator to determine these values. Look for a TCP/IP connection from your machine to port 5060 or 5061 on a remote server. This will be your Office Communicator server's IP address and port.

    • Click "Add" and you're all done!


  1. Hello,

    Thanks a lot for the steps! Fortunately I work for a company where I am atleast given a chance to install linux (provided I am ready for "no support") and the only thing which was stopping me was MS Office Communicator. Followed the steps given here and was successful in configuring pidgin on Ubuntu. Now I am a happy developer working on his Ubuntu laptop.

    Thanks a ton.

  2. I just put my email address into office communicator...what do I put for domain\username on here...isn't that implied in the email address?

  3. Thanks for the info - i'll try it out and post back later with how it went.

  4. This comment has been removed by a blog administrator.

  5. On ubuntu based just:
    sudo apt-get install pidgin-sipe

  6. after the step:
    $ ./configure --prefix=/usr
    i receive the following error message:
    You must have zlib.h and zlib installed
    can you please help me with advice on how to install these? i don't understand anything from linux :(((

  7. On redhat based systems, try 'yum install zlib zlib-devel' as root

  8. Hi again, this is Ира.
    I have ubuntu and I ran the command sudo apt-get install pidgin-sipe, however the problem still stays the same: I receive the same error message about missing zlib.h and zlib files at the same step, i.e. ./configure --prefix=/usr
    Any other ideas??

  9. Hi Ира,
    Fedora doesn't have pidgin-sipe in it's repositories, so you have to build it from source.
    That's why you have to do ./configure, make install.
    Apparenly ubuntu does, so it's not necessary to build,
    You can simply install the compiled package from the repo.
    So if you ran ' apt-get install pidgin-sipe', it should aready be installed.
    Start pidgin and you should see the ocs/sipe option.
    If so, you're golden and you can continue from step 3.

  10. Hi, Louis, thank you!!
    I can see SIPE in the drop-down list of Pidgin's available accounts protocols. However, the config fields differ.

    On the Basic tab I have:

    Protocol [drop-down list]
    Local alias:

    And on the Advanced tab I have:

    SIPE Options:
    [check-box] Publish status (note:everyone may watch you)
    Connection Port:
    [check-box] Use UDP
    [check-box] Use Proxy
    Auth User:
    Auth Domain:
    Proxy Options:
    Proxy type [drop down list]

    So, when comparing it to step 3, I can see I'm missing a lot of fields, but let's hope ubuntu is smart enough. I think, however, that I have one more and that is the field Server: on the Basic tab (obviously different from the Proxy server on the Advanced tab). Any ideas what to put in there??

  11. Hi again,
    Be aware that pidgin supports sip by default, and that microsoft's
    Impl. Is not standard (as expected). But if you see sipE, you're on the
    Right track. Ubuntu is generally more user-friendly, but I'm no ubuntu
    Expert. I hope for your sake the ubuntu impl is intelligent
    As you do. Hopefully it will figure out the nitty-gritty's for you.

    If not, you're back to square 1. And we should go the route of installing the
    Plugin from source. If needs be, do an 'apt-get install zlib*'.

    Should enable you to ./configure


  12. If you get this: "checking for PURPLE... configure: error: Package requirements (purple >= 2.0.0) were not met:

    No package 'purple' found

    Consider adjusting the PKG_CONFIG_PATH environment variable if you
    installed software in a non-standard prefix.

    Alternatively, you may set the environment variables PURPLE_CFLAGS
    and PURPLE_LIBS to avoid the need to call pkg-config.
    See the pkg-config man page for more details."

    You might need libpurple-devel (or whatever the purple-dev is called in your repository).

  13. Thank you. I configured it on Debian. Now I can do everything on my Linux laptop.

  14. Thanks for this great step through. One update I noticed that on Fedora 15 i had to yum install libpurple-devel for the above to work. Otherwise it's a beautiful thing

  15. Same experience as matthew above, except in addition to libpurple-devel I also had to update intltool (sudo yum install intltool). This worked for pidgin-sipe-1.12.0