SAP Knowledge Base Article - Public

3247944 - Integration of MS Teams as a CTI provider (Communication Channels/Agent Desktop/Live Activity)

Symptom

  • Your business requires using Microsoft Teams as a communication channel
  • You would like to know about the feasibility in using MS Teams as a CTI provider, per the "Widget Integration in Agent Desktop" description 

Environment

  • SAP Cloud for Customer
  • SAP Cloud for Service
  • SAP Cloud for Sale

Reproducing the Issue

Cause

Consulting related topic

Resolution

  • Due to the nature of the architecture both the Agent Desktop and Live Activity uses, such scenarios are ultimately decided by each CTI vendor.
    • As long as vendors comply with the required payloads, the integration should work.
    • We recommend CTI providers go through the SAP Certifification Program. See KBA 3307629).
  • To better understand the CTI integration options, please refer to KBA 3156554
  • The integration scenarios for both Agent Desktop or Live Activity either requires the CTI provider to:
    • Pass the messaging via URL parameters or
    • Pass the data via custom widget implementation, using window.post() messages
    • In both cases, it would be the customer/partner responsibility to ensure that the correct payload is passed to C4C
  • Currently there is no special out of the box option unique to integrate MS Teams as CTI with Live Activity or Agent Desktop
    • In the case when the CTI Local Adapter is used. Please note that the CTI Local Adapter is not supported with the Agent Desktop.
      • Customer/Partners can check with MS Teams on how to collect and pass the parametized values to the Local Adapter
      • Inbound call integration uses a parameterized URL call from the CTI desktop client to the SAP Cloud for Customer CTI Client Adapter to pass information like the ANI, DNIS, and CAD to the solution.
      • For example, passing the http://localhost:36729/?CID=<cid>&ANI=<phonenum>&DNIS=<phonenum2>&<cad1=xxxx&cad2=yyyy>, in the background. 
        • Additional parameters can be added to the URL so that extra information can be passed to SAP Cloud for Customer.
        • Check Microsoft Teams Developer Portal (https://developer.microsoft.com/en-us/microsoft-teams/apps).
          1. Create a Custom Incoming Call App: 
            • Create a custom app or incoming call app in the Microsoft Teams Developer Portal.
            • This app will handle incoming calls and trigger the URL construction.\
          1. Configure Incoming Call Webhook: 
            • Set up a webhook within your custom app to capture incoming call events.
            • You can configure this webhook to trigger when a phone call arrives.
          2. Implement Logic to Construct the URL: 
            • In your webhook handler, implement logic to extract the necessary variables such as CID, ANI, DNIS, cad1, and cad2 from the incoming call event data.
          3. Construct the URL: 
            • Use the extracted variables to construct the URL according to your desired format (e.g.,http://localhost:36729/?CID=BCM&ANI=+123456789&DNIS=54321&ExternalReferenceID=6B29FC40CA471067B31D00DD010662DA&EventType=INBOUND).
          1. Send Data to the URL: After constructing the URL, send a request to this URL with the parameterized data. You can use an HTTP POST or GET request, depending on your application's requirements.
          2. Handle URL Response (Optional): If the URL returns a response, you can handle it within your custom app. This step is optional and depends on your specific use case.
          3. Test and Debug: Test the setup by simulating incoming phone calls to ensure that the URL construction and data transfer work as expected. Debug and troubleshoot any issues that arise.
          4. Deploy and Monitor: Once you are satisfied with the functionality, deploy the custom incoming call app within your organization's Microsoft Teams environment.
        • Additional points to consider:
          • Please note that the specific implementation details may vary depending on your organization's requirements and the development tools or languages you use to create the webhook and construct the URL.
          • You may need to consider security and authentication measures when handling incoming call events and sending data to external URLs.
    • There is at least one partner who have covered such scenarios, which you may consider.

          See Also

          Keywords

          MS, Teams, Computer Telephony, Integration, Inbound and outbound phone calls, customer identification , KBA , LOD-CRM-LA , Live Activity , Problem

          Product

          SAP Cloud for Customer core applications 2208