Customize your bot's conversational behavior & tune the responsiveness and conversational mechanics of your agent. These parameters are as follows:

Interrupt Sensitivity

  • Agents are designed to handle interruptions from humans, and the interrupt_sensitivity parameter controls how sensitive the bot is to these interruptions.
  • Interrupt sensitivity has two options: low (default) and high. Low sensitivity makes the bot ignore backchannels (e.g. “sure”, “uh-huh”) while the bot is speaking. High sensitivity makes the agent treat any word from the human as an interruption.
  • In summary:
    Possible values: low, high
    Default value: low
    low = ignore non-interrupting words
    high = stop at any word

Response Sensitivity

  • endpointing_sensitivity controls how the bot determines when the human is done speaking so it can kick off its response. It can be one of sensitive, relaxed, or auto (default and currently equivalent to relaxed).
    A bot with endpointing_sensitivity == 'sensitive' treats the end of a sentence or a short pause as the end of the human’s turn. This works well for quick conversations in which you expect short, single-sentence responses from the human. A bot with this sensitivity runs the risk of interrupting the human if they continue speaking after a single sentence.
  • A bot with endpointing_sensitivity == 'relaxed' waits a short time after the end of a human’s sentence before considering their turn over. Alternatively, when a sentence is not finished, relaxed sensitivity waits for a longer pause before marking the end of the human’s speech. This sensitivity has less risk of interrupting the human but can potentially have a slower response time. Note that auto sensitivity is equivalent to relaxed.
  • Note: the amount of time the agent waits during a pause adapts to the human’s utterance speed. If the human speaks fast, the bot will wait less, and if the human speaks slow the bot will wait longer.
  • In summary:
    Possible values: sensitive, relaxed, auto
    Default value: auto
    sensitive = end of first sentence or shorter pause
    relaxed/auto = pause after end of first sentence or longer pause​

Conversation Speed

  • conversation_speed controls the length of endpointing pauses, i.e. how long the bot will wait before responding to the human. This includes normal utterances from the human as well as interruptions.
  • The amount of time the bot waits inversely scales with the conversation_speed value. So a bot with conversation_speed of 2 responds in half the time compared to a conversation_speed of 1. Likewise a conversation_speed of 0.5 means the bot takes twice as long to respond.
  • In summary:
    Possible values: between 0.5 and 2
    Default value: 1
    Response time inversely scales with this value

Actions

  • "action_transfer_call": If certain conditions are met during the call, this action allows the system to transfer the call to another specified phone number.
  • "action_dtmf": Allows the system to input DTMF tones, which are typically used for navigating phone menus. actions=[DtmfActionParams(type="action_dtmf")]

Initial Message Delay

  • "initial_message_delay": Indicates how long of a delay before the initial message is played. People when they answer the phone will immediately say “Hello who’s this? Who’s calling?” in the first seconds of a call and could potentially throw off the agent. So initial message delay lets you set how many seconds of a delay before the agent start talking/saying their “initial_message”:

IVR Navigation Mode

  • Configuring the ivr_navigation_mode to default allows the voice bot to remain silent during hold times and extends the automatic call termination from 30 seconds of silence to 10 minutes.

HIPAA Compliance

  • The hipaa_compliant flag in outbound calls API configures the system to not persist any potentially sensitive information. Turning on the flag makes the API supportable for use-cases requiring HIPAA compliance.
  • In particular, turning on the flag(hipaa_compliant=True):
  • Redacts the content of the prompt on the calls resource
  • Prevents the transcript from being written to the calls resource
  • Configures the call not to be recorded