Sending/Receiving UUI Data

UUI (User to User Information) is a method for transmitting information not directly related to the call between users, originating from legacy ISDN networks. It is still occasionally used in SIP implementations for similar purposes. Both Genesys and Parloa support UUI data in both directions.

Sending UUI Data from Genesys to Parloa

Enabling UUI data headers in Genesys allows you to send additional information from Genesys to Parloa, enhancing the context of the call and enabling customized interactions.

Enabling UUI Data Transfer in the SIP Trunk

To enable UUI data headers in Genesys for sending information to Parloa, we have to enable it in the trunk settings first:

  1. Access the External Trunk Configuration settings.

    • Under the Protocol section, locate the option for User to User Information (UUI).

    • Enable the UUI feature in this section.

  2. In the External Trunk Configuration, set the following parameters:

    • Type: Set it to "User-to-User".

    • Protocol Discriminator: You can leave this as it is.

    • Encoding Format: You have the option to choose between Ascii and Hex. Note that if you choose Hex, you should be aware that the User-to-User data will need to be decoded in Parloa upon reception.

    • Static User Data: Keep this option disabled unless there is a specific requirement to send static data on every call.

  3. To send unique call information via this header, follow these steps in the Architect:

    • In the Main Menu of your configuration, create a new task.

    • Within the empty task box, right-click to open the Toolbox.

    • From the Toolbox, select Data -> Set UUI Data.

  1. In the settings of the Set UUI Data block, configure it to be used "For Transfers." This setting allows you to define UUI data specifically for transfer scenarios.

  2. Within the For Transfers configuration, you can leverage the extensive capabilities provided by Genesys to populate variables with the desired information. Use this section to customize the UUI data for transfers as needed.

Extracting UUI Data in Parloa

To extract the UUI data in Parloa and make it usable in your flow:

  1. Set up a Storage block within your Parloa flow.

  2. In this Storage block, use a one-liner of JavaScript (JS) code to sanitize and extract the UUI data. For example:

const UUId = platform.sipInviteHeaders['User-to-User'].split(";",1).toString().substring(2) || "No UUI found";
UUId;

This code snippet retrieves and sanitizes the UUI data, making it available as the variable UUId for further use within your Parloa flow.

And from this point on, the variable can be called and used anywhere in the flow.

Sending Data from Parloa to Genesys Cloud

During a call transfer from Parloa back to Genesys Cloud using a SIP REFER, it's possible to include UUI data, as discussed earlier. To accomplish this:

  1. Within your Parloa flow, set up a Storage block to process the values and create the necessary SIP headers.

  2. Define the required variables in the Storage block. For example:

const text = "Hello, this is Parloa! I am a bot. How can I assist you?";
const pureCloudTerminationIdentifier = "exampleCustomer";
const hexText = '00' + Buffer.from(text).toString('hex');
const ReferTo = `sip:DID@${pureCloudTerminationIdentifier}.byoc.mypurecloud.de?User-to-User=${hexText};encoding=hex`;
ReferTo;

In this code:

  • text represents the message you want to include in the UUI data.

  • pureCloudTerminationIdentifier is the identifier used in the REFER destination.

  • hexText converts the text message to hexadecimal format.

  • ReferTo constructs the Refer-To header, including the UUI data in the appropriate format.

  1. Use the ReferTo variable in a Call Control block to define the REFER destination. This ensures that the UUI data is included in the SIP URI when initiating the transfer.

  2. The UUI will then be passed to Genesys Cloud during the transfer, and it can be addressed in Architect or Scripts as a variable named Call.UUIData.

Note: When sending a REFER back, Genesys Cloud does not expose the SIP headers to the new inbound flow. Only the UUI Data is exposed.

For more detailed information on handling UUI data in Genesys, you can refer to the Genesys documentation.

Last updated