Skip to content

HoldCustomerOrAgent ​

Place the customer or agent on hold during a call. This block is typically used in agent whisper flows or when the agent needs to consult with a supervisor.

Signature ​

csharp
IFlowBuilder HoldCustomerOrAgent(
    HoldTarget target, 
    Action<HoldConfiguration>? configure = null,
    string? identifier = null)

Parameters ​

ParameterTypeRequiredDescription
targetHoldTargetYesWho to place on hold: Customer or Agent
configureAction<HoldConfiguration>NoConfigure hold settings
identifierstring?NoOptional identifier for the action

HoldTarget Values ​

ValueDescription
CustomerPlace the customer on hold
AgentPlace the agent on hold

HoldConfiguration Properties ​

PropertyTypeDefaultDescription
HoldMusicstring?nullCustom hold music prompt

Examples ​

Basic Customer Hold ​

csharp
Flow.Create("Consultation Flow")
    .PlayPrompt("Please hold while I consult with my supervisor.")
    .HoldCustomerOrAgent(HoldTarget.Customer)
    // Agent can now speak to supervisor
    .PlayPrompt("Thank you for holding.")
    .TransferToQueue("Support");

Agent Whisper with Hold ​

csharp
Flow.Create("Agent Whisper")
    .SetType(FlowType.AgentWhisper)
    .PlayPrompt("Incoming call from a VIP customer.")
    .HoldCustomerOrAgent(HoldTarget.Agent)
    // Customer hears welcome while agent prepares
    .EndFlowExecution();

AWS Connect Block Type ​

This block generates the HoldParticipant action type in the exported flow JSON.

Best Practices ​

  1. Inform the customer - Always play a message before placing on hold
  2. Keep hold time short - Monitor hold duration
  3. Use in whisper flows - Common in agent whisper scenarios
  4. Consider hold music - Provide pleasant experience during hold

See Also ​

Preview release - Licensing terms TBD before 1.0