Genesys Cloud - Developer Community!

 View Only

Sign Up

  • 1.  Identifying Interrupted Interactions - Omnichannel Agents

    Posted 11 days ago

    We are working to make a subset of our agents "interruptible", we are looking for ways to better calculate the average handle time impacts of voice interruptions on email work.  Genesys is routing voice traffic natively and Email traffic via Salesforce External Routing.  We can see that Genesys puts that email interaction on hold, but without getting too detailed into our design, our metrics calculations require that Salesforce to process that same event in the case timeline.  The Salesforce team is discussing completely SF-related options, but it doesn't currently look like there are any.  So I am looking for options that would include events or triggers that would help me to get that information into Salesforce.

    My understanding is that this challenge (AHT-impacts to interrupted interactions) exists natively in Genesys even if you don't use Salesforce, so even if you've solved it without Salesforce, I'd love to hear how.  Might help me figure out a strategy.

    Thanks,

    Kevin


    #Integrations
    #Triggers

    ------------------------------
    Kevin Brehm
    Solution Architect
    ------------------------------


  • 2.  RE: Identifying Interrupted Interactions - Omnichannel Agents

    Posted 54 minutes ago
    Edited by Joaquin Garcia Fink 53 minutes ago

    Hi @Kevin Brehm,

    Nowadays having a similar conversation at one of my accounts, let me know if any of these helps (feel free to select "best answer" if it does and well, if its the best of course). Option 1 is good if you have an infrastructure and need guaranteed delivery, Option 2 is more of a native Genesys-only solution without external dependencies. Both can integrate with your Salesforce Data Actions integration to write hold events to the case timeline for accurate AHT calculations.


    1. Use EventBridge + Data Actions
    Amazon EventBridge Integration provides the most reliable solution with guaranteed message delivery:

    Setup: Configure an EventBridge integration to subscribe to conversation detail events
    Relevant Topics:
    v2.users.{id}.conversations - for active conversations by user
    v2.detail.events.conversation.{id}.user.start - when an agent joins
    v2.detail.events.conversation.{id}.user.end - when an agent leaves
    Benefits:
    High-throughput messaging bus for real-time data integrations
    Guaranteed message delivery with no possibility for data loss
    Can forward events to AWS Lambda, Kinesis, SQS, SNS, or other AWS services
    Implementation: From EventBridge, use an AWS Lambda function to call a Salesforce Data Action or directly use the Salesforce REST API to update the case timeline with hold timestamps


    2. Use Process Automation Triggers + Salesforce Data Actions
    Process Automation Triggers can invoke Architect workflows in response to Genesys Cloud events:

    Available Trigger Topics include:
    v2.detail.events.conversation.{id}.user.start
    v2.detail.events.conversation.{id}.user.end
    v2.users.{id}.activity
    Workflow: Create a trigger that:
    Detects when an email interaction state changes (agent starts handling voice while on email)
    Invokes an Architect workflow
    The workflow executes a Salesforce Data Action to write the hold event to your case timeline
    Salesforce Data Actions Integration allows you to:
    Create custom actions to update Salesforce records
    Write data to case timelines
    Define request/response schemas for your specific needs


    3. Use Notifications API (WebSocket-Based)
    For a more direct approach, use the Notifications API:

    Subscribe to v2.users.{id}.conversations for specific agents
    Monitor the conversation payload for the held property on participant communications
    When a hold state changes, programmatically call Salesforce APIs to update the case
    Note: This approach requires managing WebSocket connections and has more complexity compared to EventBridge.

    Key Technical Details
    Hold State Detection: The conversation participant object includes a held boolean property. When Genesys puts an email interaction on hold due to voice interruption, this property changes to true.

    Data You Can Capture:

    Hold timestamp
    Conversation ID
    Participant ID
    Media type (email vs voice)
    Agent ID
    Duration of hold


    ------------------------------
    Joaquin Garcia Fink
    Senior Customer Success Manager
    Genesys - Employees
    ------------------------------