Live Communications Server 2003/2005

Archiv:
Die hier beschriebene Software ist nicht mehr im Internet verfügbar. Die Seite besteht nur noch als "Archiv" für bereits bestehende Installationen. Links zu alternativen finden Sie am Ende der Seite.

Exchange 2003 enthält keinen Instant Messaging Service mehr. Diese Funktion ist nun Teil des Office 2003 Live Communications Server (LCS). Auch wenn der LCS nicht mehr direkt in das Produktspektrum von Exchange zählt, so denke ich, dass eine kurze Beschreibung hier gerechtfertigt ist. Hinweise zum Client finden Sie unter Instant Messaging Clients.

Die Funktion des LCS ist nun als Office Live Communication Server 2007 verfügbar. Siehe Unified Communication

Einsatzbereiche

Der Office Live Communication Server ist der Nachfolger des früher in Exchange enthaltenen “Instant Messaging Servers”. Er erlaubt folgende Kommunikationsformen:

  • Instant Messaging
    Textnachrichten von Benutzer zu Benutzer (Analog zu ICQ, MSN Messenger, Miranda, AOL-Messenger etc.). Der Einsatz ist aber auch im Netzwerk zur Kommunikation zwischen Mensch und System (z.B.: MOM-Events, Server Fehler an User) brauchbar. Microsoft nutzt angeblich diesen Weg, um Anwender über Fehler aktiv zu informieren. Im Gegensatz zu einer Mail bekommen nur die angemeldeten Benutzer die Infos und Hotline-Anrufe werden angeblich reduziert. Diese Kommunikation ist von Exchange unabhängig.
  • Präsenzanzeige
    Jeder Nutzer kann andere Nutzer auf seiner Personenliste sehen und erkennen, ob diese gerade “online”, beschäftigt oder am telefonieren sind (CTI Integration möglich). Diese Information kann auch in Outlook, Sharepoint und anderen Stellen eingeblendet werden.

Diese Informationen sind natürlich die Basis für Mehrwertdienste, die mit dem Live Communication Client zur Verfügung gestellt werden: Da der LCS ähnlich wie ein Verzeichnisserver arbeitet, können so natürlich weiterführende Dienste die Informationen über die Erreichbarkeit der Partner nutzen, z.B.:

  • Audio- und Video-Verbindung
    Allerdings nur 1:1 mit entsprechender Kamera und Soundkarte. Konferenzen mit drei und mehr Teilnehmern sind z.B. mit Windows Live Meeting möglich.
  • Whiteboard
    Ein Art gemeinsames PAINT, auf dem alle Teilnehmer einfache Skizzen anfertigen können.
  • Fernsteuerung
    Ein Teilnehmer kann ausgewählte Programme oder seinen gesamten Desktop dem anderen Teilnehmer zeigen oder sogar die Fernsteuerung für eine Zusammenarbeit.
  • Dateitransfer
    Zudem ist ein direkter Transfer von Dateien möglich, was aber gerade in Firmen eher kritisch gesehen wird.

Achtung: Diese Funktionen  nutzen nicht den LSC als Server oder Gateway, sondern ist eine direkte Kommunikation zwischen Clients und schon viele Jahre als NetMeeting bekannt.

LCS ist nicht mit “Live Meeting” zu verwechseln, was eine “Konferenz” zwischen vielen Teilnehmern erlaubt. Diese Funktion ist nur Live Meeting als Hosting oder Produkte anderer Hersteller erreichbar.

Der LCS-Server selbst bietet aber noch weitere Möglichkeiten als "nur" etwas Instant Messaging Zentrale zu spielen. Dazu zählen:

  • Protokollierung / Archivierung der übertragenen Nachrichten
    Auch Kurzmitteilungen können Geschäftsrelevant sein. Der LCS erlaubt mit dem optionalen Archiv Service die Ablage aller Nachrichten in einem SQL-Server. Grund hierfür dürften sicher die verschärften Bestimmungen von Banken sein.
  • Nutzung über Internet
    Über eine Anbindung an das Internet können Sie Anwender auch ohne VPN aus dem Internet den Zugriff erlauben. Das ist z.B. interessant für mobile Geräte oder Heimarbeitsplätze.
  • Client befragt Outlook
    Der LCS-Client kann Informationen aus dem Kalender von Outlook nutzen um abhängig von den Einträgen den eigenen Status zu ändern (Abwesend, beschäftigt, Frei etc.)
  • Kopplung mit TK-Anlage
    Zudem gibt es eine Option, den LCS mit der Telefonanlage zu verbinden, so dass z.B. beim Telefonieren der Status im LCS auch auf "am Telefon" gestellt wird. Umgekehrt können Sie im LCS-Client dann einfach auf "Gegenstelle Anrufen" klicken und der LCS-Server stellt über die Telefonanlage die Verbindung her. Wenn Sie in LCS auf "beschäftigt" stehen, kann auch ihr Telefon "stumm" geschaltet oder auf die Mailbox weiter geleitet werden.
  • Kopplung mit AOL, MSN etc.
    Über die optionalen Connectoren kann ein LCS-Server sogar an MSN-Messenger, AOL-Messenger o.ä. angebunden werden.

Das Prinzip

Instant Messaging und die Präsenzkontrolle von Mitarbeitern ist eine erwünschte Funktion, um schnell und problemlos Kurznachrichten zu senden. Dazu ist der Instant Messaging Client auf allen Systemen zu installieren.

Neben der Übertragung von Kurznachrichten sind zusätzlich Audio und Videoübertragungen möglich. Ebenso sind Dateitransfers, Fernsteuerungen etc. möglich. Auch hierbei dient der LCS als zentraler Server, welcher die Verbindungen koordiniert und die Buddylisten speichert. Das gesamte Bild sieht dabei so aus:

Wie sie sehen, kommen zwei Datenbanken und der MSMQ-Service zum Einsatz. Auf dem LCS ist zwingend die MSDE zu installieren. Der Archiv Server kann hingegen auch andere SQL-Datenbanken nutzen. Die AdminTools können Sie auch auf Arbeitsplätzen installieren, um die entsprechenden Karteikarten in der MMC zu nutzen. Die Kommunikation erfolgt einzig über HTTP/TCP, HTTP/UDP oder HTTPS/TCP, so dass alle kompatiblen Clients nur eine IP-Verbindung haben müssen, um am LCS teilzunehmen. Einzig die Anbindung an TK-Anlagen ist noch im Detail zu klären.

Kommunikation und DNS

Dazu baut jeder Client eine Verbindung zu seinem Homeserver auf. Der Client findet den eigenen Homeserver über den DNS-Domänenname des Benutzers nach folgendem Schema:.

  • Name des Anwender: vorname.nachname@firma.de
  • Der Client sucht in der Reihenfolge nach den SRV Records
    _sipinternal._tcp.<domain> SRV 10 10 5060 SRV lcseerver.firma.de
    _sipinternaltls._tcp.firma.de SRV 10 10 5060 SRV lcseerver.firma.de
    _sip._tls.<domain> 10 10 5060 SRV lcseerver.firma.de
    _sip._tcp.<domain> 10 10 5060 SRV lcseerver.firma.de
    _sip._udp.<domain> 10 10 5060 SRV lcseerver.firma.de
    Sobald ein Treffer vorhanden ist, wird dieser Eintrag genutzt, d.h. wenn Sie einen TLS-Eintrag haben, aber der LCS-Server kein SSL unterstützt, kann der Client keine Verbindung aufbauen.
  • Die Einträge verweisen auf einen Hostnamen und Port eines oder mehrerer LCS-Server. Hier sollten Sie z.B.: auf sip.firma.de verweisen
  • Der Hostname zeigt auf einen A-Record (z.B. sip.firma.de) mit der IP-Adresse. Dies ist so besser, da ein SIP-Server mehrere Domains bedienen kann und Sie damit in jeder bedienten Domain
  • Der Client verbindet sich mit dem Server über SSL (TLS). Entsprechende Ports müssen geöffnet sein.

Die Kommunikation der Clients erfolgt immer mit dem „Homeserver“ des Anwenders. Dazu verbindet sich der Client mit dem Server nach obiger Methode und wird von diesem Server an den „richtigen“ Homeserver verwiesen. für eine höhere Verfügbarkeit und Skalierung können mehrere LCS-Server installiert werden. Dazu werden mehrere Homeserver mit eigenen IP-Adressen aufgestellt und als sip.firma.de im DNS eingetragen und über die SRV-Records adressiert. Homeserver ohne zugewiesene Benutzer werden als Frontend Server bezeichnet und dienen zur Verteilung der Anfragen an die eigentlichen Homeserver. Die eigentliche SIP-Kommunikation können Sie mit NETMON mitschneiden. Im LCS Resource Kit gibt es eine DLL SipParser, mit der NETMON die Inhalten besser verstehen und anzeigen kann.

Jeder Anwender hat genau EINEN Homeserver. Fällt der Homeserver aus, können diese Anwender nicht mehr den Dienst nutzen. Allerdings kann der Administrator diesen Server entweder restaurieren oder die Benutzer auf einen verbliebenen Homeserver umkonfigurieren (Verlust der Buddylisten !). Mit LCS 2005 Enterprise können Sie mehrere Server als Pool mit Network Load Balancing oder als Cluster betreiben.

Der Client kommuniziert mit wenigen Ausnahmen immer nur mit seinem Homeserver. Der Homeserver selbst ist dafür zuständig, die Mitteilungen an einen anderen Benutzer weiter zu leiten. Dazu nutzt der LCS das Active Directory, um den zuständigen Homeserver zu finden und die Daten dorthin verschlüsselt weiter zu leiten. Über die räumliche Platzierung der Server in die Nähe der Anwender kann damit eine lokale Kommunikation erreicht werden, die nicht über WAN-Leitungen führt. Die Datenmenge ist jedoch eher gering einzuschätzen, so dass in den meisten Fällen ein zentraler Homeserver die Anwender ausreichend bedienen kann.
Auch beim Zugriff über das Internet verbinden sich die Server miteinander. Dazu sind gültige Zertifikate notwendig.

Multi Forrest

Gerade größere Firmen möchten aber nicht für jede Anwendung die erforderliche Schemaerweiterung durchführen. Was machen Firmen, die nicht nur einen Forest einsetzen ?. Auch hierfür gibt es eine Lösung. Der LCS kann auch in einem Ressourcen Forest installiert werden. Das folgende Bild zeigt dazu zwei Forests mit Anmeldekonten, die einen LCS-Infrastruktur in einem gesonderten Forest nutzen.

Damit dies funktioniert, muss natürlich für jeden Anwender einer Anmeldedomäne ein deaktiviertes Konto oder besser noch ein Kontakt angelegt werden, an dem die Eigenschaften des LCS-Servers (z.B.: Home-Server, SIP-Adresse etc.) hinterlegt werden.

Bei dem Kontakt sollten nicht nur die optionalen Felder wie Telefonnummer etc. gepflegt sein, sondern auch das Feld "msRTCSIP-OriginatorSID", in dem die SID des Benutzers abgelegt werden muss.

Unterstützung durch Net at Work:
Das Anlegen der Kontakte ist natürlich von Hand viel zu aufwändig. Diese Arbeit kann z.B. der MIIS-Server für sie erledigen. Wir selbst haben entsprechenden Installationen bereits durchgeführt und auch per VBScript lassen sich problemlos diese Aufgaben bewältigen.

Server

Der Live Communications Server wird auf einem Windows 2003 Server installiert. Zur Funktion ist ein Active Directory mit Windows 2000 SP3 oder höher erforderlich. Die Konfiguration des LCS und der Benutzer auf diesem Server liegt in einer lokalen SQL-Datenbank. Dazu wird die MSDE auf dem Server zwingend mit installiert. Die zentrale Ablage der Konfiguration in einem SQL-Server ist nur in der Enterprise Version möglich. Standardmäßig wird die MSDE auf der Partition des Betriebssystem installiert. Durch den Aufruf von.

[path]\\sqlsetup.exe /L*v c:\\rtcmsde.log DISABLENETWORKPROTOCOLS=1
DISABLEAGENTSTARTUP=1 INSTANCENAME=RTC SAPWD=<SAKennworteingeben>
TARGETDIR=<Pfad zum zu installierenden Verzeichnis>

können die vorab die MSDE in ein anderes Verzeichnis installieren. Dies muss vor der Installation des LCS erfolgt sein.

Die Konfiguration, welche Anwender welchem LCS-Server nutzen, wird mit der Benutzerverwaltung des Active Directory vorgenommen. Diese Informationen werden dann über einen eigenen Replikationsdienst des LCS aus dem Active Directory  in die lokale SQL-Datenbank repliziert. Ein zusätzlicher Archivierungsdienst kann die übertragenen Textnachrichten in einer weiteren SQL-Datenbank (MSDE oder SQL2000 SP3) protokollieren.

Installation

Der Live Communications Server installiert nicht nur einen Dienst auf dem betreffenden Server, sondern erweitert auch das Schema und richten weitere Gruppen ein. Speziell in Umgebungen mit verteilter Administration und mehreren Domänen müssen verschiedene Schritte pro Domäne vorgenommen werden. Zum Glück unterstützt seit  dem LCS2005 das Setup Sie bei dieser Arbeit, indem bestimmte Funktionen einfach über einen Assistenten angeboten werden. 

Das Setup erweitert das Schema, legt in den Domänen entsprechende Gruppe und Objekte etc. an Letztlich müssen Sie manuell nur noch die DNS-Einträge durchführen. Die manuellen Aufrufe der einzelnen Prozesse ist natürlich auch möglich. Weitere Details finden Sie im Deployment Guide des LCS auf der CD.

Backup

Die Konfiguration des LCS-Server ist überwiegend in der lokalen MSDE-Datenbank enthalten. Diese Datenbank sollte regelmäßig gesichert werden. Dazu kann das Programm DBBACKUP.EXE genutzt werden, welches die SQL-Datenbank des LCS in einer Datei sichert. Der Aufruf dieser Routine sollte z.B. mit AT so gewählt werden, dass Sie vor der eigentlichen Datensicherung des Server durchgeführt wurde.

Die Konfiguration der Benutzer selbst und anderer Einstellungen sind im Active Directory und der lokalen Registrierung hinterlegt, welche über das normale SystemState Backup und die Sicherung der Active Directory Controllers erfolgt.

Clients

Für die Nutzung des LCS-Server ist die Installation eines Clients auf allen Arbeitsstationen notwendig. Der Client kann über SMS, Gruppenrichtlinien, Anmeldeskript oder andere Wege installiert werden. Wichtig ist die Wahl des „richtigen“ Clients. Von Microsoft gibt es mehrere Clients.

So unterstützt der MSN Messenger Client 6.x NICHT den LCS. Nur der Windows Messenger Client 5.0/5.1 unterstützt neben „.NET“ auch das SIP-Protokoll und das alte Exchange Messenger Protokoll.

In der Konfiguration des Clients muss das SIP-Protokoll mit dem SIP-Namen des Anwenders aktiviert werden. Der SIP-Name sollte der Mailadresse des Anwenders entsprechen. Die automatische Konfiguration der Server funktioniert problemlos, wenn die Einträge im DNS-Server korrekt gepflegt sind.

Der Windows Messenger 5.1 unterstützt nur einfache Anwesenheits- und IM-Szenarios. Empfohlener Client ist der Microsoft Office Communicator 2005. Weitere Informationen finden Sie unter http://www.Microsoft.com/office/livecomm/prodinfo/default.mspx und http://www.Microsoft.com/germany/office/communicator/leistungsmerkmale/default.mspx

Zusätzlich sollten Sie wissen dass die auch den Client über Gruppenrichtlinie und die Erstellung von angepassten Installationspaketen entsprechende Vorkonfigurieren können. Gerade die Nutzung von Gruppenrichtlinien ist ein effektives Mittel um die Konfiguration der Clients sicher zu stellen. Dazu finde sich die ADM-Vorlage "RTCClient.adm" auf der LCS CD im Verzeichnis \Server. Diese kann in die Gruppenrichtlinien eingebunden werden.

Usermanagement

Die Aktivierung eines Anwenders erfolgt über die Managementkonsole „Active Directory Benutzer und Computer“. Auf dem Managementsystem sind das die die LCS-Erweiterungen zu installieren. Erst dann ist die Karteikarte sichtbar.

Nachdem die Benutzer aktiviert wurden, können diese auch auf dem Server in der MMC für den LCS angezeigt und bearbeitet (z.B. Buddylisten) oder auf andere Server verschoben werden.

Die Aktivierung der Anwender kann auch über ein Script erfolgen. Dazu sind in der Installationsquelle entsprechende WSH-Skripte, um z.B.: die heutigen Exchange Instant Messaging Benutzer in eine Datei zu exportieren und anhand dieser Benutzerliste die gleichen Anwender für LCS zu aktivieren.

Was geht noch ?

Der Live Communications Server steht noch am Anfang seiner Einführung. So sind mit dem LCS viele weitere Lösungen denkbar und möglich, für die Dritthersteller sicher Komponenten beisteuern werden. z.B.:

  • Kopplung mit PBX
    Es gibt entsprechende Schnittstellen, um eine Kopplung des LCS mit einer Telefonanlage zu erreichen, z.B.: dass der Befehl "Teilnehmer Anrufen" aus dem IM-Client eine Verbindung über TAPI zum Teilnehmer aufbaut.
  • Kopplung mit IP-Telefonen
    SIP ist ein offener Standard, der von vielen IP-Telefonen ebenfalls unterstützt wird. Viele Anbieter haben dazu ebenfalls "SIP-kompatible" Server installiert. Es ist nur eine Frage der Zeit, bis diese Endgeräte auch den LCS nutzen können oder sogar eine direkte Kopplung eines Messenger Clients mit einem SIP-Telefon erlaubt.
  • Mobile Geräte
    Viele Mobiltelefonen unterstützten mit GRPS auch ein "Always On". Die Messagingfunktion könnte die teuren SMS-Nachrichten ablösen und Telefonate sparen.
  • LCS für Programmkommunikation
    Über den gleichen Weg könnten auch Programme Informationen austauschen. So könnte zukünftig vielleicht die Benachrichtigung von Pocket Outlook über SIP erfolgen statt SMS-Nachrichten zu verwenden.
  • Entwickler und Management
    Wenn ein Benutzer mit seinem Messenger online und für Nachrichten erreichbar ist, dann könnten viele automatische Programme diesen Weg für Kurzmitteilungen nutzen, z.B. eine Managementsoftware, die den Administrator über Fehler informiert. Eine Alarmanlage, die einen Einbruch oder Brand meldet oder auch einfach eine Ad-hoc-Meldung der IT and die Anwender, wenn eine Störung an einem anderen Server vorliegt. Dies kann sehr viele Störungsanrufe reduzieren.

Für den Messenger und den LCS gibt es ein umfangreiches SDK, mit dem Sie auch selbst entsprechende Anwendungen entwickeln können.

Auf http://www.voip-info.org/wiki/view/MS+LCS+2005+%252F+SER+%252F+Asterisk+Integration finden Sie auch eine Beschreibung, wie Sie den LCS mit Asterisk koppeln können. Dazu gibt es auch ein paar Registrierungsschlüssel, die auf dem LCS Client die Telefonfunktion konfigurierbar machen


Windows Registry Editor Version 5.00

HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Communicator
"EnablePC2Phone"=dword:00000001
"EnablePhoneControl"=dword:00000000
"EnableConferencingService"=dword:00000000

Suche nach Telefonbüchern

Der Office Live Communication Client kann seinerseits bei einer eingehenden Verbindung mit Rufnummer auch im AD oder dem lokalen Adressbuchdienst nachschlagen, um den Namen zu erhalten. Dabei nutzt LCS aber folgende Beschreibung:

+CountryVorwahlAnschluss;ext=durchwahl

oder

+CountryVorwahlAnschluss

Es werden also alle Sonderzeichen wie Klammern, Leerzeichen und Bindestriche entfernt und die Rufnummer
internationalisiert. Eine optionale Erweiterung wird mit ";ext=" angehängt.

Entsprechend müssen Sie natürlich die Rufnummern auch im Telefonbuch und Adressbuch vorhalten. LCS bringt dazu eine Textdatei mit sehr vielen regulären Ausdrücken (RegEx) mit, die der die Rufnummern aus anderen Quellen entsprechend für das LCS-Adressbuch normalisiert werden.

Interessant ist dabei, dass LCS anch der "TEL-URL" sucht, also nach einem Eintrag in der Form:

tel:+495251304;ext=613

Also wird auch hier wohl bald wieder ein Skript fällig, welche diese URL mit in die ProxyAdresses addiert

Updates

  • Live Communications Server 2003-Update: SommerzeitUmstellung
    Durch dieses Update wird ein Problem in Microsoft Office Live Communications Server 2003 behoben, das beim Beginn der Sommerzeit auftritt.
    http://go.Microsoft.com/?linkid=592459

LCS Web Access

Einen weiteren Zugangsweg zum LCS ist natürlich ein trivialer Browser. Nach der Installation des "Microsoft Office Communicator Web Access" können Sie dann einfach über einen Webbrowser sich anmelden und auf den ersten Blick ist die Ausgabe erst mal nicht von einem vollwertigen LCS-Client zu unterscheiden

Microsoft Office Communicator Web Access
http://www.Microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=a7499ac3-09a6-4491-bdd1-1e41f4719e90

Da hierbei die Kommunikation zwischen Client und Server "nur" über HTTP/HTTPS erfolgt, ist dieser Zugrang natürlich auch für Verbindungen über Proxies geeignet. Wenn ich also bei einem Kunden sitze, dann kann ich darüber meinen Status "nach Hause" melden.

Entwickeln für LCS

Wenn Sie nun schon einen LCS installiert haben, dann können Sie sich darauf beschränken, dass die Mitarbeiter einfache Meldungen damit übertragen. Aber viel interessanter wird das System durch eigene Lösungen. Dafür bietet der LCS natürlich umfangreiche Schnittstellen an. Sie können direkt den Server ansprechen oder natürlich über die Client-API den Windows Messenger Client nutzen. Es muss nun nicht gleich die Anbindung einer Telefonanlage oder die Steuerung anderer Systeme sein.

Für den Anfang kann es schon reichen, wenn Sie ihre Überwachungssoftware dazu bringen, Fehler einfach als Instant Message zu senden und nur wenn sie nicht angemeldet sind, eine E-Mail zu senden. Die folgenden Links können hier einen Einstieg darstellen:

Weitere Links