Original Message:
Sent: 04-16-2026 09:53
From: Phaneendra Avatapalli
Subject: Best approach for assigning incidents to final agent (Workflow vs Script)?
Hi Suryavesh,
Thank you for your input you're actually the first person I've come across who is working with BMC Helix. I've built a script‑based approach where the agent clicks a button, which then creates a ticket and opens the ticket URL in a new window. Based on your suggestion, I'm sure it will be possible to hide the "Create Ticket" button after a successful creation using a custom action I'll give that a try, so thank you for the insight.
I'm keeping everything script‑based for now because using a trigger or workflow ends up creating duplicate or unassigned tickets, which makes it much harder to manage.
The ID Number is passed in from the IVR, and if it's missing or incorrect, I've added an input field that feeds into the function to create and assign the ticket. Everything from generating the JWT through to assignment is handled within a single function in the script.
Have you also worked with the knowledge‑side integration? I've done a minimal setup where I export all BMC Helix knowledge articles into a Google Sheet as direct links. I'd be interested to hear whether you've implemented anything more advanced on the knowledge side.
------------------------------
Phaneendra
Technical Solutions Consultant
------------------------------
Original Message:
Sent: 04-10-2026 12:02
From: Suryavesh Sahani
Subject: Best approach for assigning incidents to final agent (Workflow vs Script)?
We've already built the core flow for creating and assigning incidents between Genesys Cloud and BMC Helix. Everything works technically.. When I started testing real-world call scenarios some gaps showed up:
* If a customer abandons in queue an incident still gets. Has no agent assigned to it.
* If an agent doesn't answer and the call reroutes the incident still gets. Ends up assigned to the first agent who missed the call, which is wrong.
These edge cases make it clear I need a way to determine who actually handled the interaction not just who was offered the call.
So I'm looking at two approaches.
### Option 1. Workflow-Based
My idea is to let the interaction finish use a trigger/workflow to:
* Pull conversation details via the Conversation API.
* Filter participants where:
* purpose = "agent"
* state = "connected"
* Collect all agents who were truly connected.
* Take the connected agent.
I think this pattern is commonly used in Genesys workflows. The " connected agent" logic is generally reliable because Genesys logs every state transition.
The key is filtering for actual connection not alerting or ringing.
I still need to find out if there's a precise event that fires only when the agent is fully connected.
I like this approach because:
* It's fully automated.
* No agent involvement is needed.
* It scales well. Avoids human error.
I need to watch out for:
* Timing. The workflow must run after the agent is truly connected.
* Transfers or conferences may add complexity.
### Option 2. Agent Script Button
The other approach is to shift the trigger to the agent.
Once they're connected they click a button in the script that runs:
* JWT generation
* People lookup
* Incident creation
* Incident assignment
I think it's simple and avoids the " agent" issue entirely because the agent triggers it only when they're actually handling the call.
It introduces human dependency. Agents may forget, click too early or click multiple times.
I like this approach because:
* It's very accurate.
* Easy to control and troubleshoot.
* No need to parse conversation logs.
The downside is:
* It relies on agent behavior.
* Not ideal, for high-volume environments.
------------------------------
Suryavesh Sahani