Optimierung des Unified Communications SDK
Einführung
Mit Citrix Virtual Apps and Desktops können Sie Anwendungen für Ihre Benutzer auf einer Vielzahl von Endgeräten bereitstellen. Viele dieser Anwendungen umfassen Echtzeitkommunikationsfunktionen (RTC), wie Audio- und Videokonferenzen. Bei der Bereitstellung dieser Anwendungen in einer virtualisierten Umgebung können jedoch Herausforderungen auftreten. Herkömmliche Bereitstellungsmethoden leiten Medienströme (Audio/Video) vom Clientgerät zum VDI-Server im Rechenzentrum, bevor sie an den Endpunkt zurückgesendet werden. Dieses „Hairpinning“ führt zu unnötigem Datenverkehr und Verarbeitungsaufwand auf dem Server, insbesondere bei bandbreitenintensiven Audio- und Videoanrufen.
Das Citrix Unified Communications SDK (UCSDK) ist eine Technologie, die es Technologieanbietern ermöglicht, diese RTC-Anwendungen für die Verwendung in Citrix Umgebungen zu optimieren. Wenn eine Anwendung optimiert ist, kann sie eine Benutzererfahrung bieten, die der der Anwendung auf einem lokalen Desktop entspricht oder diese sogar übertrifft. In der heutigen Welt ist eine nahtlose Echtzeitkommunikation für Produktivität und Zusammenarbeit unerlässlich. Bei der Verwendung von Anwendungen in einer virtuellen Umgebung ist es entscheidend, dass Audio- und Videoanrufe, Bildschirmfreigabe und andere Kommunikationsfunktionen so reibungslos funktionieren, wie sie es auf einem lokalen Desktop tun würden. Optimierte Anwendungen bieten diese Erfahrung.
Diese Produktdokumentation enthält alle Informationen, die Citrix Kunden benötigen, um UCSDK-optimierte Anwendungen kennenzulernen und bereitzustellen.
Funktionsweise
Citrix bietet eine optimierte Bereitstellungsmethode für Echtzeitkommunikationsanwendungen innerhalb von VDIs. Dieser Ansatz nutzt das Unified Communications SDK (UCSDK), um die virtualisierte Anwendung in zwei Teile aufzuteilen:
- Benutzeroberfläche (UI): Die Benutzeroberfläche verbleibt im virtuellen Host und wird nahtlos im virtuellen Desktop oder Anwendungsfenster angezeigt.
- Medien-Engine: Die Medienverarbeitungsaufgaben (Kodierung/Dekodierung von Audio und Video) werden auf das lokale Gerät des Benutzers ausgelagert. Dies minimiert die Serverlast und optimiert die Netzwerknutzung.
Typischerweise bietet Citrix UCSDK Technologieanbietern im Bereich der Echtzeitkommunikation an und arbeitet mit ihnen zusammen, um UCSDK in diese Anwendungen zu integrieren. Nach der Integration profitieren alle Citrix Kunden, die eine UCSDK-optimierte Anwendung verwenden, von einer verbesserten Erfahrung. Citrix UCSDK kann auch von Citrix Kunden genutzt werden, wenn eine kundenspezifische Inhouse-Anwendung entwickelt wird. In den meisten Fällen müssen Kunden UCSDK jedoch nicht nutzen und damit entwickeln – sie müssen lediglich die Citrix Umgebung und die Anwendung konfigurieren, um eine optimierte Erfahrung zu erzielen.
Hinweis:
Verweise auf Citrix WebRTC SDK (oder) eine HDX™-optimierte Anwendung weisen auf die Integration mit Citrix UCSDK hin und können synonym verwendet werden.
Hauptvorteile
Wenn Sie Anwendungen verwenden, die mit Citrix UCSDK optimiert sind, können Sie Folgendes erwarten:
- Verbesserte Medienverarbeitungsleistung durch Auslagerung der prozessorintensiven Medienkodierung/-dekodierung vom Citrix Virtual Delivery Agent (VDA) auf den Client-Endpunkt, wodurch die Gesamtansprechzeit für Endbenutzer erhöht wird.
- Reduzierter CPU- und Bandbreitenverbrauch auf Citrix VDA, wodurch die IT mehr gleichzeitige Benutzer pro Host unterstützen und Unternehmen Citrix Virtual-Desktop-Bereitstellungen kostengünstig skalieren können.
- Niedrigere Gesamtbetriebskosten für Unternehmen, da optimierte Endpunkte die Lebensdauer älterer virtueller Desktops verlängern und den Bedarf an Host-Infrastruktur reduzieren, wodurch Investitionsausgaben und Betriebskosten im Laufe der Zeit gesenkt werden.
- Unterstützung für Windows-, Mac-, Linux-, ChromeOS- und HTML5-Endpunktplattformen.
Anwendungsfälle
UCSDK wurde speziell entwickelt, um Echtzeit-Kommunikationsanwendungen zu optimieren, die dem WebRTC-Standard entsprechen. Hier sind wichtige Szenarien und die Arten von WebRTC-basierten Anwendungen, die UCSDK nutzen können/bereits nutzen.
-
Contact Center as a Service (CCaaS) / Cloud Contact Center Platforms: Verwalten hauptsächlich Kundeninteraktionen über mehrere Kanäle und optimieren die Arbeitsabläufe der Agenten.
- Beispiele: Amazon Connect, Twilio, Avaya Experience Platform, Talkdesk, Content Guru
-
Unified Communications as a Service (UCaaS) / Cloud Business Communications: Integrieren Sprache, Video, Team-Messaging und Präsenz für eine umfassende Geschäftskommunikation.
- Beispiele: Ring Central, 8x8, Intermedia, Alcatel-Lucent Rainbow
-
Communications Platform as a Service (CPaaS): Bieten APIs zum Einbetten von Echtzeit-Kommunikationsfunktionen direkt in benutzerdefinierte Anwendungen.
- Beispiele: Twilio, Ribbon Communications
-
Enterprise Video Conferencing and Collaboration: Dedizierte Plattformen für hochwertige Videokonferenzen, Meetings und erweiterte Kollaborationsfunktionen.
- Beispiel: Pexip
-
Financial Trading Communications: Entwickelt für die einzigartigen, hochleistungsfähigen und konformen Kommunikationsanforderungen der Finanzmärkte.
- Beispiel: IPC Unigy
-
Virtuelle Lern- und Schulungsplattformen: Entwickelt für interaktive, hochwertige virtuelle Klassenzimmer- und Schulungserlebnisse.
- Beispiel: Vitero
Die zugrunde liegende WebRTC-Grundlage des Citrix UCSDK bedeutet, dass seine Optimierungsfunktionen auf alle WebRTC-basierten Kommunikationsanwendungen ausgeweitet werden können. Dies eröffnet die Möglichkeit, eine Vielzahl von Anwendungen zu optimieren, die WebRTC für Echtzeitinteraktionen nutzen, auch wenn sie derzeit nicht als mit UCSDK optimiert aufgeführt sind. Wir ermutigen Kunden, sich an Citrix zu wenden, wenn sie Anwendungsfälle oder Anwendungen optimiert sehen möchten.
UCSDK-Architektur

-
Herstelleranwendung: Dies kann jede Echtzeit-Kommunikationsanwendung eines Drittanbieters sein, die Desktop-basiert oder Browser-basiert ist und UCSDK integriert hat.
-
UCSDK JS: UCSDK JS stellt die APIs bereit, die Herstelleranwendungen nutzen, um Audio/Video an den Endpunkt auszulagern.
-
HdxRtcEngine: Dies ist die eingebettete WebRTC-Medien-Engine in der Citrix Workspace App, die den ausgelagerten Audio-/Videoanruf verarbeitet und handhabt.
Sobald das SDK geladen und verwendet wird, wird der HdxRtcEngine.exe-Prozess auf dem Client-Endpunkt gestartet, wenn die Umleitung erfolgreich ist. Sobald HdxRtcEngine.exe auf dem Client-Endpunkt gestartet wurde, fließen alle Signalisierungs- und Nutzlastdaten vom Citrix VDA zum Client-Endpunkt, erreichen die Cloud, kehren zum Client-Endpunkt zurück und werden dann an den VDA weitergeleitet. Zum Beispiel könnte ein vollständiger Roundtrip des Datenflusses wie folgt aussehen:
Vendor App -> CitrxWebrtc.js SDK -> Citrix VDA components -> Citrix Client Endpoint components -> Cloud -> Citrix Client Endpoint components -> Citrix VDA components -> CitrxWebrtc.js SDK -> Vendor App
Systemanforderungen
Die Systemanforderungen geben an, welche verschiedenen Versionen von Citrix Komponenten mit der neuesten Version von UCSDK - 5.0.0 benötigt werden. Details zur Kompatibilität für ältere Versionen des SDK und spezifische Funktionsanforderungen finden Sie in der Tabelle Versions- und Funktionsmatrix unten.
Hinweis:
Damit Kunden eine Funktion nutzen können, die zu UCSDK hinzugefügt wurde, stellen Sie sicher, dass die Herstelleranwendung die entsprechende UCSDK-Version integriert und die Funktion aktiviert hat, und verwenden Sie die entsprechenden VDA- und CWA-Versionen in Ihrer Umgebung.
Vollständig kompatible Versionen
Vollständig kompatible Versionen zeigen an, dass Kunden durch die Verwendung dieser Versionen von Citrix Komponenten zusammen mit der neuesten Version von UCSDK alle verfügbaren Funktionen nutzen können. Für die aktuellste Version von UCSDK – 5.0.0 – sind die vollständig kompatiblen Versionen der Citrix Komponenten wie folgt:
- Citrix Virtual Apps™ und Desktops: 2603
- Citrix Workspace App Windows: 2603
- Citrix Workspace App Mac: Wird noch veröffentlicht
- Citrix Workspace App Linux: 2603
- Citrix Workspace App ChromeOS/HTML5: Wird noch veröffentlicht
Hinweis:
Die UCSDK-Optimierung wird auf allen Endpunktplattformen unterstützt: Windows, Mac, Linux, ChromeOS und HTML5. Wenn die obige Liste für eine bestimmte Endpunktplattform Wird noch veröffentlicht anzeigt, bedeutet dies lediglich, dass eine Version, die vollständig mit den neuesten UCSDK-Funktionen kompatibel ist, noch nicht veröffentlicht wurde. Daher können Kunden weiterhin ältere Versionen der Citrix Workspace-App verwenden, um bestehende Funktionen zu nutzen, selbst mit dem neueren UCSDK.
Konfiguration
Die UCSDK-Funktionalität hängt von drei Faktoren ab: der UCSDK-Version, die der Anbieter integriert und welche Funktionen der Anbieter aktiviert hat, Citrix Virtual Apps and Desktops und der verwendeten Version der Citrix Workspace-App.
Stellen Sie auf der Citrix-Seite sicher, dass Folgendes konfiguriert ist, damit die optimierte Anwendung optimiert werden kann:
- Stellen Sie sicher, dass die Umleitungsrichtlinie für Microsoft Teams aktiviert ist. Weitere Informationen finden Sie unter Multimedia-Richtlinieneinstellungen. Beachten Sie, dass diese Richtlinie standardmäßig aktiviert ist.
- Drittanbieter-Anwendungen auf Electron- oder Browser-Basis, die das
CitrixWebrtc.jsSDK nutzen, werden standardmäßig nicht unterstützt. DerCtxHdxWebSocketService(WebSocketService.exe) lässt keine Verbindungen von Anwendungen zu, die nicht auf der Zulassungsliste stehen. Der gewünschte Name der ausführbaren Anwendungsdatei muss einem Registrierungsschlüssel für die Whitelist hinzugefügt werden.
Auf dem VDA
- Schlüsselpfad erstellen:
HKLM\Software\WOW6432Node\Citrix\WebSocketService - Schlüsselname:
ProcessWhitelist - Typ:
MULTISZ - Schlüsselwert:
Mytestapp.exe
Wenn Sie mehrere Anwendungen haben, geben Sie jede Anwendung in einer neuen Zeile ein. Kopieren Sie nicht aus einer Textdatei und fügen Sie keine Kommas ein. Stellen Sie sicher, dass der angegebene Name mit dem ausführbaren Namen der Anwendung übereinstimmt. Dieser Registrierungswert ist nicht Groß-/Kleinschreibung-sensitiv.
Wenn die Anwendung über einen Browser anstelle einer vollwertigen Desktopanwendung aufgerufen wird, müssen Sie beispielsweise chrome.exe im Registrierungswert zulassen.
Sobald die obige Registrierung erfolgreich konfiguriert wurde, starten Sie den VDA neu oder starten Sie CtxHdxWebSocketService neu, um die Whitelist-Einrichtung abzuschließen.
Auf dem Client
Es ist keine Konfiguration erforderlich. Installieren Sie einfach die Citrix Workspace-App.
Jeder Anbieter kann einen sehr spezifischen Anwendungsnamen haben. Beachten Sie daher die in der Sektion Aktuelle Anbieterunterstützung verlinkte Anbieterdokumentation, um zu bestimmen, welcher Anwendungsname im WebSocketService zugelassen werden muss.
Funktionsreferenz
Verbesserte Anrufverbindungszeiten mit Smart Sync
Die in UCSDK 5.0.0 eingeführte Smart Sync-Funktion beschleunigt die Anrufverbindungszeiten, indem sie die Kommunikation zwischen dem VDA und dem Client-Endpunkt optimiert. Diese Verbesserung ermöglicht schnellere Anruf-Setups auf breiter Front und bietet die bedeutendsten Leistungsverbesserungen für Netzwerkumgebungen mit hoher Latenz.
Citrix empfiehlt Kunden, sich an ihre Anwendungsanbieter zu wenden, um auf UCSDK 5.0.0 zu aktualisieren und diese Funktion nutzen zu können.
Hinweis:
Diese Funktion hängt nur von UCSDK 5.0.0 und der Citrix Workspace-App ab. Genaue Client-Versionen finden Sie in der Versions- und Funktionsmatrix. Es gibt keine VDA-Versionsabhängigkeit, sodass ältere unterstützte VDAs weiterhin verwendet werden können.
Optimiertes Overlay-Clipping für verbesserte Leistung und Benutzererfahrung
Ab CVAD 2511 wurde der Mechanismus zur Handhabung umgeleiteter Video-Overlays in Funktionen wie der HDX Microsoft Teams-Optimierung und der UCSDK-Optimierung neu konzipiert, um sowohl die Benutzererfahrung als auch die Serverleistung zu verbessern.
Wesentliche Vorteile
-
Verbesserte visuelle Genauigkeit: Diese Verbesserung behebt visuelle Fehler, bei denen Anwendungselemente, wie Pop-up-Menüs oder Benachrichtigungen, fälschlicherweise hinter Videoinhalten angezeigt wurden. Die neue Logik stellt sicher, dass alle Komponenten in der richtigen Reihenfolge gerendert werden, was eine nahtlosere und vorhersehbarere Erfahrung bietet.
-
Verbesserte Leistung: Diese Optimierung reduziert die CPU-Auslastung auf dem Virtual Delivery Agent erheblich. Durch den Ersatz älterer, ressourcenintensiver Abfragemethoden durch einen effizienteren grafikbasierten Ansatz verbessert diese Änderung die Serverskalierbarkeit und ermöglicht eine höhere Benutzerdichte.
Hinweis:
Die Funktionalität hängt von einer zukünftigen Version von Microsoft Teams (oder einer anderen UCSDK-Partneranwendung) ab und erfordert Citrix Workspace App für Windows 2511.
Versionen und Funktionsmatrix
Da Versionsaktualisierungen häufig erfolgen, lesen Sie bitte die Produktlebenszyklusseiten von Citrix Virtual Apps and Desktops und Citrix Workspace app, um sicherzustellen, dass eine bestimmte Version unterstützt wird. Für viele der älteren Funktionen sind die in der Tabelle genannten Versionen die letzten unterstützten Current Release (CR)-Versionen zum Zeitpunkt der Erstellung dieses Dokuments.
| Funktion | UCSDK-Version | VDA | CWA Windows | CWA Mac | CWA Linux | CWA ChromeOS/HTML5 |
|---|---|---|---|---|---|---|
| Audio / Video (P2P & Konferenz) | 3.1.0 | 2203 LTSR Neuestes CU / 2311 CR | 2402 LTSR Neuestes CU / 2311 CR | 2311 | 2311 | 2312 |
| Bildschirmfreigabe | 3.1.0 | 2203 LTSR Neuestes CU / 2311 CR | 2402 LTSR Neuestes CU / 2311 CR | 2311 | 2311 | 2312 |
| DTMF | 3.1.0 | 2203 LTSR Latest CU / 2311 CR | 2402 LTSR Latest CU / 2311 CR | 2311 | 2311 | 2312 |
| Proxy-Server-Unterstützung | 3.1.0 | 2203 LTSR Latest CU / 2311 CR | 2402 LTSR Latest CU / 2311 CR | 2311 | 2311 | 2312 |
| App-Freigabe | 3.1.0 | 2203 LTSR Latest CU / 2311 CR | 2402 LTSR Latest CU / 2311 CR | 2311 | 2311 | N/A |
| Dynamisches e911 | 3.1.0 | 2203 LTSR Latest CU / 2311 CR | 2402 LTSR Latest CU / 2311 CR | 2311 | 2311 | 2312 |
| Mehrfenster | 3.1.0 | 2203 LTSR Latest CU / 2311 CR | 2402 LTSR Latest CU / 2311 CR | 2311 | 2311 | 2312 |
| SDP Unified Plan Unterstützung | 3.1.0 | 2203 LTSR Latest CU / 2311 CR | 2402 LTSR Latest CU / 2311 CR | 2311 | 2311 | 2312 |
| Stream-Auflösung / Simulcast | 3.1.0 | 2203 LTSR Latest CU / 2311 CR | 2402 LTSR Neuestes CU / 2311 CR | 2311 | 2311 | 2312 |
| Remote Audio (mit Schleife) | 3.1.0 | 2203 LTSR Neuestes CU / 2311 CR | 2402 LTSR Neuestes CU / 2311 CR | 2311 | 2311 | 2405 |
| Browserbasiertes UCSDK (Bootstrap-Unterstützung) | 4.0.2 | 2407 CR | 2402 LTSR Neuestes CU / 2311 CR | 2311 | 2311 | 2312 |
| Web HID API | 4.0.2 | 2203 LTSR Latest CU / 2311 CR | 2409.10 | 2411 | 2411 | 2505 |
| Web Audio API | 4.0.2 | 2203 LTSR Latest CU / 2311 CR | 2405 | 2405 | 2405 | N/A |
| ICE neu starten | 4.1.0 | 2203 LTSR Neuestes CU / 2311 CR | 2503.2 | 2503 | 2503 | 2502.10 |
| Bildschirmaufzeichnung (Vorschau)¹ | 4.1.0 | 2503 | 2503.2 | N/A | N/A | N/A |
| SmartSync | 5.0.0 | 2203 LTSR neuestes CU / 2311 CR | 2603 | N/A | 2604 | N/A |
Hinweis:
Wir haben eine neue Richtlinie für die Bildschirmaufzeichnung eingeführt, daher benötigen Sie die Version 2503 des Delivery Controller™, die mit CVAD 2503 geliefert wird.
Aktueller Anbieter-Support
Mehrere Drittanbieter haben das Unified Communications SDK in ihre Produkte integriert. Die aktuelle Liste der Anbieter und ihrer unterstützenden Dokumentation ist unten aufgeführt:
Fehlerbehebung
Informationen zur Fehlerbehebung finden Sie unter Anleitung zur Fehlerbehebung für Apps, die mit dem Citrix Unified Communications SDK optimiert wurden.
Bekannte Probleme und Einschränkungen
Dieser Abschnitt dokumentiert die aktuellen bekannten Probleme und Einschränkungen, sofern sie erkannt werden.