State of knowledge

May 2021

This article was created with the kind support of GN Audio Germany GmbH (Jabra). We would like to thank them for the creation of this article.


Enclosed you will find some background information about the Citrix functions for handling softphone and USB headsets (especially the Jabra brand):

In a Citrix environment, these are usually executed either in optimized or generic mode.

Optimized mode

In optimized mode, quit/retain audio locally on the thin client and set up the audio stream directly between the thin client device and the called party's endpoint to avoid loading the network and virtualization server with audio/video traffic.

Generic mode

In generic mode, audio/video traffic is directed back to the virtual workstation running the softphone and from there to the endpoint of the called party. (This increases the load on the network and the virtualization server, even if you call your colleague in the office next to you).

Softphones for optimized mode

ProCall 7 Enterprise (and earlier) has no support for the optimized mode.

For many of the major softphone vendors, there are solutions that can be run in optimized mode.
The following list is a summary from Citrix.com (May 19, 2020)

  • HDX-optimized softphone support (recommended), where the media engine runs on the user device and VoIP (Voice over Internet Protocol) traffic is peer-to-peer. Examples include:
  • HDX optimization for Microsoft teams
  • HDX RealTime Optimization Pack that optimizes the deployment of Microsoft Skype for Business
  • Cisco Jabber Softphone for VDI (formerly known as VXME)
  • Cisco Webex Meetings for VDI
  • Avaya VDI Equinox (formerly known as VDI Communicator)
  • Zoom VDI Plugin
  • Genesys PureEngage Cloud
  • Nuance Dragon PowerMic Dictaphone

In optimized mode, CallControl headset handling functions are also implemented, allowing HID commands to be sent between the headset and the softphone (running on the virtual server).

Softphones for generic mode

For softphones for which no optimized solution is available, a generic mode is an option.

Citrix has implemented various functions for compressing and processing audio streams in generic mode to achieve good audio quality and limit the network load:

XenApp and XenDesktop 7.6 and higher include numerous technologies to support generic softphone deployment:

  • Voice-optimized codec for fast encoding of real-time audio and bandwidth efficiency
  • Low-latency audio stack
  • Server-side jitter buffer to smooth audio when network latency fluctuates
  • Packet tagging (DSCP and WMM) for QoS
    • DSCP tagging for RTP packets (layer 3)
    • WMM tagging for Wi-Fi

The Workspace App versions (formerly Citrix Receiver) for Windows, Linux, Mac, Android and Chrome are also VoIP capable.

The Citrix Workspace App for Windows offers:

  • Client-side jitter buffer
    Ensures smooth audio even with fluctuating network latency
  • Echo cancellation
    Allows greater variation in the distance between microphone and speakers for employees who do not use a headset
  • Audio-Plug-n-Play
    Audio devices do not need to be connected before starting a session. They can be connected at any time
  • Routing of audio devices
    Users can direct the ringtone to the speakers, but the voice path to their headset
  • Multi-Stream-ICA
    Enables flexible QoS-based routing (Quality of Service) over the network
    ICA supports 4 TCP and 2 UDP streams. One of the UDP streams supports real-time audio over RTP

HID Commands

Citrix has also implemented functionality for handling USB devices such as headsets using HID commands. These include: Generic USB redirection and composite USB redirection.

Generic USB redirection

With generic USB redirection, the HID commands (and audio stream) from the headset are sent natively to the softphone (running on the virtual server).

In installations where Jabra Direct is used, the headset firmware updater also works.

Composite USB redirection

With composite USB redirection, the HID commands and the audio stream can be split and handled differently. This way HID commands can be sent back to the softphone natively and some audio compression can be added to the audio stream.

The USB device (headset) must support the shared interface option for composite USB redirection to work.

Citrix Ready Headsets

Here you can find information from Citrix about suitable headsets:

Jabra 

Plantronics

Further information

Optimize ProCall Enterprise real-time communications in the Citrix environment