Lync 2010 Mobile Server
Letzte Updates und Versionen:
Siehe dazu
Lync Builds
Troubleshooting External Lync
Mobility Connectivity Issues Step-by-Step
http://blogs.technet.com/b/nexthop/archive/2012/02/21/troubleshooting-external-lync-mobility-connectivity-issues-step-by-step.aspx
Lync Server 2010 - Mobility
Deep Dive – Autodiscover Service
http://blogs.technet.com/b/nexthop/archive/2012/04/25/lync-server-2010-mobility-deep-dive-autodiscover-service.aspx
Sehr lesenswerter Artikel zu den Internals
Achtung:
Keiner der Lync Mobile Clients von Microsoft
bietet bislang VoIP an. Es geht aktuell um
Status, Präsenz, Kontakte, Kurzmitteilungen und
Vermitteln von Telefonaten. Telefoniert wird
aber über GSM und nicht über UMTS, GPRS oder
WIFI.
Wer aber VoIP machen will, kann für 60 uS$ eine
SkypNummer kaufen und Lync diese Nummer anrufen
lassen.
Siehe auch
http://windowspbx.blogspot.de/2011/12/lync-User-quicktip-15-adding-voip.html
Mobiletelefone sind heute leistungsfähige PDAs und kleine Computer und immer häufiger "online": Schon mit OCS2007 konnten Anwender mit Communicator Mobile auch unterwegs mit OCS arbeiten. Lync-Anwender mussten hierauf etwas länger warten. Aber mit Lync 2010 CU4 + dem gesondert zu installierenden Mobility-Service kann es dann auch hier los gehen: Hier die Links für ganz Eilige.
Ich hab natürlich alles schon
installiert. War ganz einfach (auf Windows Phone
7):
1. Download aus Marketplace
2. Eingeben von SIP-Adresse und Kennwort
3. Willkommensmeldung weg drücken
4. Die Mobilfunknummer für "Call from Office"
bestätigen (bzw. anpassen)
5. Fertig.
Und nun sind sie dran :-). Dummerweise ist das nur die Beschreibung für den Client. Auf dem Server muss ein Administrator natürlich noch einiges einrichten.
- 2493736 Updates für Lync Server 2010
http://www.microsoft.com/download/en/details.aspx?id=11551 - Microsoft Lync Server 2010 Mobility Guide
http://www.microsoft.com/download/en/details.aspx?id=28355 - Microsoft Lync Server 2010
Mobility Service and Microsoft
Lync Server 2010 Autodiscover
Service
http://www.microsoft.com/download/en/details.aspx?id=28356 - Windows Phone 7 Client
http://www.windowsphone.com/en-US/apps/9ce93e51-5b35-e011-854c-00237de2db9e - Android-Client
https://market.android.com/details?id=com.microsoft.office.lync - IPhone/IPod Client
http://itunes.apple.com/de/app/microsoft-lync-2010-for-iphone/id484293461?mt=8&ls=1
http://itunes.apple.com/us/app/microsoft-lync-2010-for-ipad/id484222449?mt=8 - Symbian Client
Links fehlt noch
Tech·Ed North America 2011 Keynote Address
Keynote zur TechEd 2011.
Interessant auch der erste Blick auf den Lync
Mobile Client ab ca. Minute 40
- Introducing Lync mobile
clients…
http://blogs.technet.com/b/uc/archive/2011/12/12/introducing-lync-mobile-clients.aspx - Lync 2010 für Windows Phone
verfügbar
http://blog.karstenkleinschmidt.de/2011/12/lync-2010-fur-windows-phone-verfugbar.html - Mobile Client Comparison
Tables
http://technet.microsoft.com/en-us/library/hh691004.aspx
Stückliste
Ehe Sie nun gleich an das Konfigurieren gehen, möchte ich als "Kurzfassung" eine Stückliste der Komponenten aufführen. Das ein oder andere könnten Sie bereit haben. Fehlendes muss dann nachgerüstet werden.
Komponente | Beschreibung | Ok |
---|---|---|
Lync Edge. |
Alle Clients sprechen per HTTPS mit einem Webservice. Aber bei iPhone und Windows Phone 7 schlafen die Anwendungen, wenn Sie nicht im Vordergrund sind. Meldung an das Telefon werden über den Edge Server als SIP-Paket an "lync.com" gesendet, welches diese dann über die Push-Funktion an das Telefon weiterreicht.
Die Aufwandsschätzungen beziehen sich auf Erfahrungswerte für durchschnittliche Arbeitszeiten ohne Wartezeiten bei korrekt installierten "einfachen" Umgebungen ohne Hochverfügbarkeit |
|
Lync WebServices im Internet per Reverse Proxy veröffentlichen. |
Die Webservices werden von iPhone und Windows Phone 7 genutzt. Der vorhandene Lync Poolserver kann zwar um die Mobility-Dienste erweitert werden, aber müssen diese dann dennoch im Internet sicher "veröffentlicht" werden.
Die Aufwandsschätzungen beziehen sich auf Erfahrungswerte für durchschnittliche Arbeitszeiten ohne Wartezeiten bei korrekt installierten "einfachen" Umgebungen ohne Hochverfügbarkeit. |
|
Es ist zwar schön, dass seit Lync die Edge-Rolle keine eigene Lizenz mehr benötigt, aber wer bislang Lync nur intern genutzt hat, wird nun erst mal in einen weiteren Server, IP-Adressen, Zertifikate und Dienstleistung investieren müssen. Als kleiner Nebeneffekt können Sie dann aber eine vollständige externe Lync-Anbindung umsetzen, wenn Sie dies wollen, was ihnen z.B. erlaubt...
- Sie könnten dann auch mit dem Lync Client von Extern (zuhause) ohne VPN o.ä. arbeiten.
- Sie könnten „Federation“ mit anderen Partnern (Microsoft, Net at Work o.ä. machen
- Sie könnten Federation with MSN etc. machen.
- Sie können Meetings mit externen Teilnehmern (Lync Attendee, Lync WebApp) hosten.
Sie bekommen also mehr als nur etwas Mobilität, wenn Sie diese Funktionen noch komplett nachrüsten müssten.
Funktionsweise
Da nicht alle mobilen Geräte den parallelen permanenten Betrieb von Programmen im Hintergrund erlauben, muss Lync Mobile für das jeweilige Endgerät die passende Option finden, über eingehende Meldungen zu informieren. Beim Abgleich von E-Mails mit Activesync wird dies auch als "Push"-Notification bezeichnet. Der Client stellt eine HTTP(s)-Anfrage an einen Webserver/WebService und bekommt vom Server eine Antwort, wenn etwas ansteht. Das eigentliche Programm kann in der Zeit schlafen und den Akku schonen.
Eine permanente Statusanzeige der Kontakte erfolgt nur, wenn der Lync Client im Vordergrund ist. Nutzt der Anwender andere Programme auf dem Smartphone, sind diese Informationen ja nicht relevant.
Endgerät | Server Endpunkt | Push |
---|---|---|
Windows Phone 7 |
HTTPS Lync Web Service wenn im Vordergrund |
SIP über Edge zu Microsoft Cloud |
iPhone |
HTTPS Lync
Web Service wenn
im Vordergrund |
SIP über Edge |
Android |
HTTPS Lync Web Service. Verbindung bleibt aktiv ! |
HTTPS zum LyncWeb |
Symbian |
HTTPS Lync Web Service. Verbindung bleibt aktiv ! |
HTTPS zum LyncWeb |
Blackberry |
RIM SRP via
NOC gegen Firmen
BES-Server |
Proprietär über BES |
Sie sehen schon, dass Windows Phone 7 und iPhone selbst per HTTPS mit einem von ihnen veröffentlichten Webservice arbeiten und Meldungen an den Client werden über den Edge-Server quasi per "Federation" an den Provider gesendet, der diese dann über die eigenen Plattformen an das Endgerät meldet. Sie müssen also sowohl einen Lync Webservice installieren und veröffentlichen als auch einen Edge-Server mit Federation betreiben. Nur die Blackberry Clients nutzten ihre eigene Infrastruktur über das Blackberry NOC zum internen Blackberry Enterprise Server, welcher dann die Anfragen per SIP an den Lync Pool intern sendet.
Es kommen als ganz schön viele verschiedene Kommunikationswege zusammen. Und erst wenn alle funktionieren, ist das System betriebsbereit:
Quelle: Microsoft Powerpoint: "Lync Mobile –
Clients, Server & Deployment Planning"
Der Mobilclient spricht über einen Reverse Proxy mit den Lync Webservices und der Edge-Server übernimmt die Arbeit, ausgehende Push-Benachrichtigungen über ein Clearinghouse zu versenden.
- Lync 2010 Mobility – Push
Notifications
http://blog.kloud.com.au/2012/01/01/lync-2010-mobility-push-notifications/
Enthält auch ein nettes Bild der Zusammenhänge
DNS für Lyncdiscover. und Lyncdiscoverinternal.
Analog zu Autodiscover bei Exchange hat sich Microsoft für die mobilen Lync Clients einen Mechanismus einfallen lassen, bei dem ein Client quasi mit Angabe der ihm bekannten SIP-Adresse und eines Kennworts eine Verbindung herstellen kann. Der mobile Client sucht einfach nach einem fest definierten Namen, der sich nur nach Intern und Extern unterscheidet. In der Microsoft Dokumentation ist dazu ein nettes Bild, wie die Webservices mit einem Reverse Proxy und den Namen zusammen arbeiten.
Quelle: Microsoft Mobility Deployment White
paper (Word-Dokument: "LS_Mobility.doc")
Sie sollten erkennen, dass nur das "Lync External Web" auf Port 4443 auch das Mobility-Verzeichnis hostet. Das "lync Internal Web" hingegen enthält nur einen kleinen Autodiscover-Eintrag.
Wenn Sie Lync Mobile so konfigurieren, dass ein Client auch von extern arbeiten darf, dann greifen interne Clients auch über extern zu. Die hat als Grund, dass ein Client ja per WiFi intern und per GSM extern kommen kann und beim Standortwechsel dies beiden Netzverbindungen sich abwechseln. Damit die Session dann bestehen bleiben kann, muss der Client immer über den Reverse Proxy gehen, welcher auch über "Cookies" die Affinität bei einem Lync-Pool herstellen muss. Der Loadbalancer muss dazu natürlich den SSL-Traffic inspizieren.
Der Client versucht beim Start zwei URLs zu erreichen, die per per DNS natürlich auflösen muss:
- lyncdiscoverinternal.<sipdomain>
Verweist idealerweise auf den internen Lync Web Service - lyncdiscover.<sipdomain>
Verweist im Internet undaus dem Intranet auf den externen Veröffentlichungsserver. Nicht alle ReverseProxy-Server sind darüber erfreut, wenn ein Internet Client quasi über das interne Interface den Proxy anspricht und die angefragte Seite auch wieder intern ist.
Der interne Name lyncdiscover.<sipdomain> darf im Internet demnach nicht auflösbar sein. Beide URLs haben aber nur die Funktion, den Client auf die richtige URL umzuleiten. Das hört sich für kleine Firmen erst mal komplex an, ist aber für Cloud-Anbieter natürlich einfacher, da der Zugriff auf diese URLs auch ohne SSL erfolgen kann und daher kein Zertifikat erforderlich ist. Der Redirect kann dann aber auf eine ganz andere URL gehen, deren Domain-Part auch nicht mit dem SIP-Part übereinstimmen muss. So kann ein Hoster eben viele SIP-Domains über die gleiche Veröffentlichung abwickeln.
Der mobile Client versucht immer beide URLs zu erreichen. Kann er die interne URL erreichen nimmt er an er ist im lokalen Netz.
- Microsoft Lync Server 2010
Autodiscover Service
http://www.microsoft.com/en-us/download/details.aspx?id=28356 - Lync Server 2010 - Mobility
Deep Dive – Autodiscover Service
http://blogs.technet.com/b/nexthop/archive/2012/04/25/lync-server-2010-mobility-deep-dive-autodiscover-service.aspx - Lync Server Autodiscover and
the Lync Windows Store App
http://blogs.technet.com/b/nexthop/archive/2012/11/09/understanding-lync-server-autodiscover-to-support-the-lync-windows-store-app.aspx - Lync 2013 Client
Autodiscover
http://blog.schertz.name/2012/12/lync-2013-client-autodiscover/
Lync Mobile und Edge Server
Eigentlich könnte man erwarten, dass der mobile Lync Client einfach per Webservice nun funktionsfähig wäre. Die meisten Dienste werden auch über die Webservices abgewickelt, aber ein WebService kann immer nur vom Client angesprochen werden aber nicht selbst zum Client hin aktiv werden.
Wenn eine eingehende Verbindung vom Client zum Webservice aufgebaut ist, dann kann der Client natürlich eine Anfrage stellen und der Webservice zu gegebener Zeit darauf antworten. Nun sind aber mobile Clients eben "Mobil" und es ist nicht gerade sicher, dass eine Verbindung noch besteht. "Zuverlässig" wäre dies demnach nicht.
Daher gibt es auch den Edge-Server, welcher für ausgehende Nachrichten verwendet wird. Der Android-Client, der permanent im Hintergrund aktiv sein kann, nutzt diesen Weg auch für die normale Kommunikation aber iPhone und Windows Phone 7 werden von ihrem "Anbieter" mit Updates per Push versorgt. Der WebService auf dem Lync Server sendet daher ausstehende Anfragen per SIP über den Edge zum Provider, welcher dann die Nachricht über die eingebauten Push-Funktionen an das mobile Gerät sendet.
Hier sehen Sie so eine Meldung. Ein Kollege von Net at Work hat von interne eine Message an mich gesendet. Sie sehen gut, dass der Absender der McxUser ist, der sich aber im "Displayname" als Frank Carius" ausgibt und die Meldung an "push@pushl.lync.com" gesendet wird.
Auf dem Handheld wird natürlich die "richtige" Information ausgegeben, die hier unten im "MessageBody" enthalten ist. Der wurde aber hier im Log per Default abgeschnitten. Es bleibt dann der "Push-Plattform" überlassen, die Daten an das Mobiltelefon zu senden, welches sich dort natürlich als Empfänger registriert hat.
Software
Auf der Seite Lync Updates habe ich schon beschrieben, dass mit dem CU4 die Lync Serverdienste entsprechend erweitert werden. Wer die Hilfe zu "Set-CSWebService" aufruft, erkennt auch schon neuen Parameter:
PS C:\> get-help Set-CsWebServer NAME Set-CsWebServer SYNOPSIS Modifies one or more of the Web Server services used by Microsoft Lync Serv er 2010. SYNTAX Set-CsWebServer [-Identity <XdsGlobalRelativeIdentity>] [-AppSharingPortCou nt <UInt16>] [-AppSharingPortStart <UInt16>] [-Confirm [<SwitchParameter>]] [-ExternalFqdn <Fqdn>] [-ExternalHttpPort <UInt16>] [-ExternalHttpsPort <U Int16>] [-Force <SwitchParameter>] [-InternalFqdn <Fqdn>] [-McxSipExternalL isteningPort <UInt16>] [-McxSipPrimaryListeningPort <UInt16>] [-PrimaryHttp Port <UInt16>] [-PrimaryHttpsPort <UInt16>] [-PublishedExternalHttpPort <UI nt16>] [-PublishedExternalHttpsPort <UInt16>] [-PublishedPrimaryHttpPort <U Int16>] [-PublishedPrimaryHttpsPort <UInt16>] [-ReachExternalPsomServerPort <UInt16>] [-ReachPrimaryPsomServerPort <UInt16>] [-UserServer <String>] [- WhatIf [<SwitchParameter>]] [<CommonParameters>]
Und auch ein Auslesen der aktuelle Einstellungen ist möglich:
Vor dem CU4 Update gab es noch nicht die Parameter McxSipPrimaryListeningPort und McxSipExternalListeningPort
- Set-CsWebServer
http://technet.microsoft.com/de-de/library/gg398759.aspx
Da der String "Mcx" da nun interessant ist kann man danach auch mal per PowerShell mit "get-help *mcx*" suchen.
Name Category Synopsis ---- -------- -------- Get-CsMcxConfiguration Cmdlet Get-CsMcxConfiguration [[-Identi... New-CsMcxConfiguration Cmdlet New-CsMcxConfiguration [-Identit... Remove-CsMcxConfiguration Cmdlet Remove-CsMcxConfiguration [-Iden... Set-CsMcxConfiguration Cmdlet Set-CsMcxConfiguration [[-Identi... Test-CsMcxConference Cmdlet Test-CsMcxConference [-TargetFqd... Test-CsMcxP2PIM Cmdlet Test-CsMcxP2PIM [-TargetFqdn] <S...
Das CU4 alleine reicht aber nicht, denn wichtigster Dreh und Angelpunkt ist ein Webservice, welcher auf dem Lync Server installiert wird und per HTTPS einen Zugriff von Intern und Extern bereit stellen.
Einrichtung DNS
Da speziell die Konfiguration von DNS im Internet auch immer etwas zeit dauert, sollten Sie mit dem Schritt anfangen und dafür sorgen, dass in der DNS-Domäne, die auch die SIP-Domäne des Anwenders ist, die entsprechenden Einträge vorgenommen werden.
- Intern: lyncdiscoverinternal.<sipdomain>
Über einen A-Record oder CNAME müssen Sie dafür sorgen, dass interne Clients diesen Namen auf den internen Lync Webservices auflösen. Bei einem Standard Server ist dies einfach der Servername und bei einem Pool in der Regel die IP-Adresse oder der Name des Loadbalancers, welcher die Anfragen auf die LyncWeb-URL annehmen und auf die Server verteilen. - Extern: lyncdiscover.<sipdomain>
Im Internet muss der Name ebenfalls veröffentlicht werden.
So findet der Client immer den Weg zum Server, der ihm als erstes eine Datei mit den richtigen "Autodiscover URLs" übermittelt.
Zertifikate und HTTP-Request
Durch den Einsatz weitere DNS-Namen, die per A oder CNAME auf einen Webserver gelenkt werden, müssen diese Services natürlich auch im Zertifikat um den Namen erweitert werden. Die beiden Namen können gefahrlos als SAN-Eintrag addiert werden.
Laut LS_Mobility.doc ist es auch möglich ein "SAN=*.<sipdomain>" zu nutzen. Ein Wildcard-Zertifikat, in dem der CN kein Wildcard ist, funktioniert. Siehe auch Wildcard Zert
CNAME oder A-Record, HTTP
oder HTTPS
Beide Varianten sind voll unterstützt. Ein
Client findet so oder so einen Webserver. Beim
Einsatz von HTTPS muss der Webserver aber
natürlich den Namen auch im Zertifikat haben
Einrichtung auf dem Lync Frontend Server
Auf den Lync Frontend bzw. Standard-Servern sind nun einige Installationen vorzunehmen.
- CU4 (oder neuer)
Auf dem Lync Server müssen Sie zuerst das Lync Cumulative Update 4 (oder neuer) installieren.
Durch das Update werden die Lync Dienste für eine kurze Zeit gestoppt. Wenn Sie vorher den IIS und die Lync-Dienste manuell stoppen, reduziert sich die Wahrscheinlichkeit, dass das Setup einige Dateien nicht aktualisieren kann und einen Neustart anfordert.
- Datenbankupdate
Sofern noch nicht erfolgt, müssen Sie die Datenbank aktualisieren.
Install-CsDatabase -Update -ConfiguredDatabases -SqlServerFqdn sqlservername -ExcludeCollocatedStores
- "ListenPorts" einrichten
Es müssen zwei Ports angegeben werden, auf die die Webservices "lauschen". Vielleicht erinnern sie sich noch an die Einrichtung von CWA Web Access. Auch hier waren Ports erforderlich. Auch der Blackberry Server braucht einen "Callback"-Port an den der Frontend die Nachrichten senden kann.
Set-CSWebserver ` - identity webserver:pool.msxfaq.de `get- - MCXSIPPrimaryListeningPort 5086 ` - MCXSIPExternalListeningPort 5087
- "Enable-CSTopology"
Vergessen Sie nicht die Änderungen mit einem "Enable" auch scharf zu schalten. Hierbei werden auch Rechte auf dem Lync-Share gesetzt. Eventuell sind hier administrative Rechte auf diesem Server erforderlich
Enable-CSTopology
- IIS-Komponenten
nachinstallieren
Sofern diese Module des IIS noch nicht durch andere Dienste installiert wurden, sind diese auf dem Server nach zu installieren.
Import-Module ServerManager Add-WindowsFeature Web-Server, Web-Dyn-Compression
- McxStandalone.msi
installieren
Installieren Sie dann auf dem Server das MCX-Installationspaket, welches Sie nach dem Download in das folgende Verzeichnis abspeichern und dann aus der Lync PowerShell den Bootrapper starten. Alternativ können Sie einfach das MSI auf jedem Frontend und Director starten.
Zuvor muss sichergestellt sein, dass die CMS-Replication schon auf dem Server angekommen ist, damit dieser weiß, dass eine neue Funktion addiert wird.
Hinweis: Das EXE ist auch im CU5 nicht "enthalten". Dort ist nur ein "Patch" (msp) drin. Sie müssen also immer noch das MSI installieren und danach das CU drüber.
C:\ProgramData\MicrosoftLync Server\Deploymentcache\4.0.7577.0\setup
cd C:\Program Files\Microsoft Lync Server 2010\Deployment\ .Bootstrapper.exe
- Kontrolle-Konfiguration der
WebURLs
Vergleichbar zu den Exchange CASURLs muss Lync wissen, unter welchem Namen die Webservices erreichbar sind. für LyncWeb werden diese Einträge im Topologiebuilder gemacht und MCX nimmt erst mal an, dass die Mobility-Erweiterungen unter dem gleichen Namen erreichbar sind. Kontrollieren Sie die Einstellung und ändern Sie diese gegebenenfalls ab,
Get-CsService -WebServer | fl identity,mcx* Identity : WebServer:nawlync001.netatwork.de McxSipPrimaryListeningPort : 5086 McxSipExternalListeningPort : 5087 McxServiceExternalUri : https://lyncweb.netatwork.de/Mcx/McxService.svc McxServiceInternalUri : https://nawlync001.netatwork.de/Mcx/McxService.svc
- Kontrolle im IIS
Ob die ganze Installation nun fehlerfrei durchlaufen wurde, können Sie am besten im IIS Manager sehen. Beide Webseiten sollten nun ein virtuelles Verzeichnis "Autodiscover" und "Mcx" haben und ein neuer Applicationpool wurde ebenfalls angelegt.
- Interne Zertifikate erneuern
Die meisten Firmen werden intern Zertifikate ihrer eigenen CA betreiben und bei der ersten Einrichtung vermutlich auch noch nicht die beiden Namen für lyncdiscover.<sipdomain> und lyncdiscoverinternal.<sipdomain> addiert haben. Dann ist es nun an der Zeit die Zertifikate neu mit den zusätzlichen Namen zu beantragen. - URL-Filtering anpassen
OCS und Lync können Anwender vor "URLs" in Kurzmitteilungen schützen. für iPhone und Windows Mobile sendet der Lync Mobility Server auch SIP-Meldungen über den Edge und Microsoft Online an die Endgeräte. Diese Meldung enthält in einer XML-Struktur auch URLs die vom OCS/Lync-Server als "Schutz" verändert werden. Das bricht natürlich diese Funktion. Bis es eine eingebauten Fix gibt, müssen Sie daher die URL-Filter-Funktion anpassen
2664650 Microsoft push notification messages are not delivered to Lync mobile clients
Hinweis: Ich habe noch keine klare Aussage dazu gefunden aber mein Lync Server hat ein Wildcard-Zertifikat und bislang funktioniert Lync Mobile problemlos.
Normalweise ist der Zugriff auf Mobility in der globalen Richtlinie eingeschaltet. Ein prüfender Blick kann aber nicht schaden:
Get-CsMobilityPolicy Identity : Global Description : EnableOutsideVoice : True EnableMobility : True
Einrichtung auf dem Reverse Proxy
Anhand dem Parameter "McxServiceExternalUri" ist es offensichtlich, dass aus dem Internet ein Webservice angesprochen werden soll, welcher natürlich genauso sicher wie die anderen Lync Webservices (LyncWeb) abzusichern und per Loadbalancer zu verteilen ist. Die meisten Firmen können hier schon den bestehenden ReverseProxy (z.B. TMG und UAG) oder andere Lösungen einsetzen.
Wer hingegen den Zugriff nur von intern erlauben möchte, kann dies über folgenden PowerShell-Befehl erreichen.
# Beschraenkung von Lync Mobile auf intene Clients Set-CsMcxConfiguration -ExposedWebURL Internal
Damit wird der internen Lyncdiscover-URL mitgeteilt, dass er keine externe URL als Umleitung an den Client senden soll.
If you support push
notifications and want Apple mobile devices to
receive push notifications over your Wi-Fi
network, you also need to open port 5223 on your
enterprise Wi-Fi network. Port 5223 is an
outbound TCP port used by the Apple Push
Notification Service (APNS). The mobile device
initiates the connection. für details, see
http://support.apple.com/kb/TS1629
Quelle: Microsoft: LS_Mobility.doc
Hinweis:
Die Mobility Webseite unterstützt keinen "unencrypted
Traffic" und damit kein Offloading. Er einen
Loadbalancer einsetzt, um die Anbindung
hochverfügbar zu machen, MUSS das Zertifikat auf
dem Loadbalancer installieren und die Affinity
auf Cookies ausrichten. Eine Lastverteilung auf
Basis von Source-IP soll nicht ausreichen, da
die Clients ja auch mal die IP-Adresse wechseln
(Sie sind ja mobil!)
Hinweis zu Load Balancing für Lync Webservices
Bei Loadbalancer gibt es da zwei Optionen: Layer
4 (d.h. einfach TCP Umsetzung) oder Layer7 (d.h.
HTTPS Zertifikat auf LB und der LB macht http
Reverse Proxy. Der LB kann dann als Kriterium
zur Zuordnung der Inhalte im http-Datenstrom
nutzen
Bei Lync Mobile MUSS es Layer7 sein . nur dann
kann der LB z.B. anhand der Authentication
Header oder einen eingefügten Cookies einen
Client „wiedererkennen“, auch wenn dieser die
IP-Adresse ändert. Und das ist wichtig, da ein
Lync Mobile Client ja durch den Wechsel zwischen
GPRS, UMTS, WIFI immer wieder eine andere
Adresse bekommen kann. Extremfall:
Geschäftsführer läuft einmal durch die Firma und
durchläuft mehrere WiFi Funkzellen undFunklöcher und das Handheld ist also immer „von
innen“ oder „von außen“ aktiv.
Das Problem: Sie könnenschlecht testen, denn
wenn der LB nicht sauber funktioniert, dann muss
der Client sich immer neu anmelden. Die Last auf
dem Lync ist (durch erneute Anmeldungen) höher,
es gibt mehr Sessions, die der IIS „vorhält“ die
aber nicht mehr aktiv sind u.a.. Im
Testbetrieb fällt das nicht auf. Bei tausenden
Lync Mobile Clients aber schon.
- Hardware Load Balancer
Requirements für Lync 2010
(Updated für CU4)
http://blogs.technet.com/b/nexthop/archive/2011/11/03/hardware-load-balancer-requirements-for-lync-server-2010.aspx
Einrichtung bezüglich Edge-Server
Damit der Edge-Server die Push Notifications senden kann, muss die Konfiguration erweitert werden.
Hinweis
Bei OCS mussten Sie solche Einstellungen noch
auf jedem Edge Server machen. Bei Lync stellen
Sie dies alles auf einem Frontend per PowerShell
ein und lassen die Konfigurationseinrichtung
über die
Lync CMS-Replikation
auf den Edge Server bringen.
Hinweis:
Bei Push-Benachrichtigung an "lync.com" muss ihr
Access Edge ein von Microsoft "vertrautes"
Zertifikat haben.
Folgende PowerShell-Befehle sind notwendig
New-CsHostingProvider -Identity "LyncOnline" -Enabled $true -ProxyFqdn "sipfed.online.lync.com" -VerificationLevel useSourceVerification New-CsAllowedDomain -Identity push.lync.com -Comment "Lync Mobile Push Notifications" Set-CsPushNotificationConfiguration -EnableApplePushNotificationService $true -EnableMicrosoftPushNotificationService $true Set-CsAccessEdgeConfiguration -AllowFederatedUsers $true
Diese Befehle "öffnen" Lync dafür, dass SIP-Anfragen an "lync.com" nach draußen gehen und nebenbei dieser Access-Edge sipfed.online.lync.com auch für andere Domains (Siehe Office 365 Lync) dann eingerichtet, die bei Office 365 gehostet werden.
Hinweis:
Bei der "CsAlloweDomain" dürfen Sie keinen
AccessEdge eintragen, wenn dieser schon als
Hosting Provider vorhanden ist. Ansonsten haben
Sie den folgenden Eventlog Eintrag auf dem Edge
Server
Log Name: Lync Server Source: LS Protocol Stack Event ID: 14518 Task Category: (1001) Level: Warning Keywords: Classic Computer: LYNCEDGE.msxfaq.de Description: The server configuration validation mechanism detected some potential problems. The server might not behave as expected. 1 warnings were detected: The server at FQDN [sipfed.online.lync.com] is configured as both type 'allowed partner server' and type 'IM service provider'.
Konfiguration für den Benutzer
Die Konfiguration für die Anwender erfolgt wie bei Konferenzen und anderen Einstellungen über Policies, d.h. es wird nicht pro Benutzer gepflegt, was er darf, sondern ein Verweis auf eine Richtlinien. Ein get-help zeigt die Befehle nach der Installation von CU4 schon an
PS C:\> Get-Help *csmob* Name Category Synopsis ---- -------- -------- Get-CsMobilityPolicy Cmdlet Retrieves information about the ... Grant-CsMobilityPolicy Cmdlet Grants a per-User mobility polic... New-CsMobilityPolicy Cmdlet Creates a new mobility policy at... Remove-CsMobilityPolicy Cmdlet Removes an existing mobility pol... Set-CsMobilityPolicy Cmdlet Modifies an existing mobility po...
Die per default wirkende "Globale" Richtlinie ist sehr "offen"
PS C:\> Get-CsMobilityPolicy Identity : Global Description : EnableOutsideVoice : True EnableMobility : True
Sie können natürlich eine eigene Policy anlegen und den Benutzern zuweisen.
Einschränkungen
Der mobile Client trägt zwar die Versionsnummer 4.0 aber ist letztlich noch eine Version 1.0 die sicher bald noch weiter entwickelt werden wird. Es gibt also noch die ein oder andere Einschränkung, die ich selbst schon festgestellt habe.
- Bilder Ich sehe wohl die Bilder meiner Kollegen aber nicht die Bilder von Kontakten in der Federation.
- Geblockte Kontakte
Wie durch ein Wunder habe ich wieder einen Benutzer gesehen, den ich schon länger geblockt habe. Anscheinend blendet der mobile Client solche Kontakte (noch) nicht aus. Dumm nur, dass ich ihn nun anchatten kann, aber er aufgrund der Blockade mir nicht antworten kann.
Ich kann nicht sagen, ob diese Funktionen nur bei mir oder in Verbindung mit meinem Clients nicht gehen. Wenn jemand etwas andere Beitragen kann, bitte ich um eine kurze Mail.
Andere Lösungen
Auch vor der "offiziellen Lösung" durch Lync gab es schon Programme, Add-ons und Tools, die auf Mobilgeräte eine Lync Funktion gebracht haben. Mit der von Lync offiziell unterstützten Lösung sind die meisten Programme aber hinfällig oder es ist zumindest fraglich, ob diese weiter entwickelt werden. Es war sicher Ende 2010 bis Dez 2011 interessant, die Lücke, die Microsoft gelassen hat, zu füllen.
ClientOS | Funktion |
---|---|
Windows Mobile 6.5 |
Für Windows Mobile 6.5 gibt es aktuell nur den Communicator Mobile, welcher aber nicht mit Lync 2010 zusammen arbeitet. Mal sehen wann sich hier etwas tut. |
Windows Mobile 7 |
ältere Anwendungen wie der CoMo laufen nicht auf Windows Mobile 7. Bis es einen passenden Client gibt, ist aktuell wohl noch kein Communicator auf Windows Mobile 7 verfügbar. Umgekehrt beinhaltet WM7 leider keinen Messenger Client, der mit OCS/Lync kompatibel ist. Aber ich bin recht sicher, dass Microsoft daran ist. Erste Hinweise gibt es schon Lync Mobile brings
the
Lync experience to Windows Phone
customers by delivering Unified Communications capabilities, including
instant messaging and the ability to see
the presence of your co-workers. The
Lync app will be a free download from
Windows Phone Marketplace and will be
enabled with support from your business
organization Unabhängig von der offiziellen
Produktgruppe hat Michael W. Olesen
(Ebenfalls Microsoft) in seiner Freizeit
dran gesetzt) |
Apple iPhone OS |
Noch keine Integration. Es gibt wohl eine App für die Kommunikation mit OCS 2007R2 CWA, der auch noch gegen Lync arbeiten kann. (Status, Präsenz, Kurzmitteilungen) Mit dem Produkt Xync gibt es aktuell
schon eine passende App für IPhone,
Android und Symbian |
Blackberry |
RIM hat mit dem Blackberry Enterprise Server 5.0 SP3 nun endlich auch eine direkte Verbindung zwischen BES und OCS/Lync entwickelt ohne über den CWA Web Access gehen zu müssen. Auf dem BES müssen dazu die "Blackberry Collaboration Services" und UCMA API 2.0 installiert sein.
Beachten Sie aber das Limit The BlackBerry
Collaboration Service supports up to
2000 connections für instant messaging
sessions ... |
Android |
Noch keine Integration. Ich habe auch hier gehört dass es einen Client gäbe der mit OCS und danke CWA auch mit Lync arbeitet Mit dem Produkt Xync gibt es aktuell
schon eine passende App für IPhone,
Android und Symbian |
Symbian |
Noch keine Integration. für OCS gibt es eine App, die aber noch den OCS2007 CWA benötigt aber so auch mit Lync arbeiten kann (Status, Präsenz, Kurzmitteilungen) Mit dem Produkt Xync gibt es aktuell
schon eine passende App für IPhone,
Android und Symbian |
Browser |
Noch keine Integration. Abgesehen von der Nutzung per CWA |
Mac |
http://blog.officeformac.com/announcing-communicator-for-mac/ |
Natürlich gibt es für verschiedene Clients natürlich Instant Messenger Clients für MSN, AOL, Google, Yahoo etc., die dann wieder über Federation mit Lync/OCS verbunden werden können. Aber das ist keine Lösung in dem hier gewünschten Sinne.
Aktuell arbeiten noch viele Clients über den "alten" Communicator Web Access von OCS 2007 R2, der auch mit Lync eingesetzt werden kann. Eine Middleware ist sicher eine vernünftige Idee, um den Client auf dem Mobilgerät möglichst schlank zu haben. Zudem lassen sich Updates auf einem Backend einfacher einspielen und diverse Protokolle erfordern regelmäßige "ich bin noch da"-Pakete. Müsste die ein PDA selbst erzeugen, würde das Datenvolumen und Strombedarf steigen. Auch bei ActiveSync (Pushmail) kommuniziert der PDA ja nicht direkt mit dem Postfach, sondern nutzt die WebApplikation "ActiveSync" als Vermittler.
Lync Mobile wieder abschalten
Bislang habe ich alles beschrieben, das man Lync auf Mobilgeräten einsetzen kann. Es ist ja ab CU4 quasi überall dabei. Nun kann es aber sein, dass jemand CU4 oder neuer installiert aber dennoch keine mobilen Clients unterstützen möchte. Man könnte nun auf dem Reverse Proxy die MCX-Pfade blocken oder im IIS direkt entfernen aber es geht auch einfacher.
Set-CSWebServer <pooFQDN> -McxSIPPrimaryListeningPort 0 Set-CSWebServer <pooFQDN> -McxSIPExternalListeningPort 0
Damit werden die Ports für dem Mcx-Service auf "0" gestellt und der Dienst bedient dann einfach keine Anfragen mehr für den Pool.
Weitere Links
- Communicator Mobile
- Preise und Lizenzierung
http://lync.microsoft.com/de-de/HowToBuy/Seiten/pricing-licensing.aspx - Lync Licensing
http://lync.microsoft.com/en-us/HowToBuy/Pages/pricing-licensing.aspx - http://lync.microsoft.com/en-us/Product/UserInterfaces/Pages/lync-2010-mobile.aspx
- http://technet.microsoft.com/en-us/library/gg398996.aspx
-
Lync Server 2010 - Mobility Deep
Dive – Autodiscover Service
http://blogs.technet.com/b/nexthop/archive/2012/04/25/lync-server-2010-mobility-deep-dive-autodiscover-service.aspx - Lync 2010 Mobility – Push
Notifications
http://blog.kloud.com.au/2012/01/01/lync-2010-mobility-push-notifications/
Enthält auch ein nettes Bild der Zusammenhänge - Deploying the Lync 2010
Mobility Service
http://blog.schertz.name/2011/12/deploying-the-lync-2010-mobility-service/ - Set-CsMcxConfiguration
http://technet.microsoft.com/en-us/library/hh690050.aspx - 2664650 Microsoft push notification messages are not delivered to Lync mobile clients
- Lync Mobile on a Windows Phone 7 Emulator
http://www.confusedamused.com/notebook/lync-mobile-on-a-windows-phone-7-emulator/ - Unofficial Lync client für Windows Phone 7
http://blogs.technet.com/b/fareedmk/archive/2011/03/04/unofficial-lync-client-for-windows-phone-7.aspx - Lync 2010 Mobility – Push Notifications
http://blog.kloud.com.au/2012/01/01/lync-2010-mobility-push-notifications/