cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

[C4C] Multiple Providers for Live Activity Configuration

tokgozatakan
Participant
0 Likes
1,284

With the latest news about CommBox integration, is it possible have more than one provider in the live activity configuration?

Let's say we have a CTI Integration in place, using the live activity configuration, if we were to integrate CommBox which also requires live activity configuration, would we have to give up on the CTI Integration?

Accepted Solutions (0)

Answers (1)

Answers (1)

nish_murthy
Product and Topic Expert
Product and Topic Expert

Hi tokgozatakan,

It is possible to have multiple computer telephony integration (CTI) systems to be configured for one SAP Cloud for Customer tenant with the use of a BAdI exit.

Please refer the Help Center documentation that explains how to use the mentioned BAdI to achieve your requirement

Link: Support for Multiple CTI Vendors

Here's how you need to perform the configuration:

If you want to default to fallback on SAP CTI then in that case, the value passed for SAP CTI provider URL should be blank in the code.

And for custom widget you can control via CTI_WIDGET_URL implementation.

  1. Maintain CTI adapter settings in Live Activity configuration. This would be the default setting.
  2. Implement the BAdI via SDK. For users who should have CTI adapter settings, simply exit the custom code without any changes in the code.
  3. For users who should have the widget, change the provider URL and other relevant parameters in the custom code.

This way you can have both these options in the same tenant.

Kind Regards,

Nishanth

Please vote if the above answer was helpful, so that other users can also benefit from the solution.

You can refer to the link: https://www.commbox.io/commbox-to-empower-sap-c4c-solution-to-become-fully-omnichannel-customer-comm... for additional details.

Consider the below code snippet as an example and modify as per your need.

Import AP.FO.Activity.Global; 
var result : LiveActivityCTIWidgetConfigInputParameter; 
if (InputData.LoggedInUser.content == "XXXXXXX") {/*Where XXXXXXX is the end user ID */ 
var defaultParams = InputData.CTIWidgetConfigParams; 
foreach(var * in defaultParams){ 
if(param.CTIConfigParamKey.content == "PROVIDER_URL"){ 
param.CTIConfigParamValue.content = "<insert provider url here>"; 
} 
if(param.CTIConfigParamKey.content == "PROVIDER_ID"){ 
param.CTIConfigParamValue.content = "<insert provider ID here>"; 
} 
if(param.CTIConfigParamKey.content == "WIDTH"){ 
param.CTIConfigParamValue.content = "300"; 
} 
if(param.CTIConfigParamKey.content == "HEIGHT"){ 
param.CTIConfigParamValue.content = "450"; 
} 
if(param.CTIConfigParamKey.content == "DISPLAY"){ 
param.CTIConfigParamValue.content = "X"; 
} 
result.CTIWidgetConfigParams.Add(param); 
} 
} 
else 
{ 
result.CTIWidgetConfigParams = InputData.CTIWidgetConfigParams; 
// this highlighted code will return the configuration values which in this case should be SAP CTI. 
} 
return result;