Skip to content

Latest commit

 

History

History
46 lines (40 loc) · 3.37 KB

MachineDetectionConfiguration.md

File metadata and controls

46 lines (40 loc) · 3.37 KB

Bandwidth::MachineDetectionConfiguration

Properties

Name Type Description Notes
mode MachineDetectionModeEnum [optional][default to 'async']
detection_timeout Float The timeout used for the whole operation, in seconds. If no result is determined in this period, a callback with a `timeout` result is sent. [optional][default to 15]
silence_timeout Float If no speech is detected in this period, a callback with a 'silence' result is sent. [optional][default to 10]
speech_threshold Float When speech has ended and a result couldn't be determined based on the audio content itself, this value is used to determine if the speaker is a machine based on the speech duration. If the length of the speech detected is greater than or equal to this threshold, the result will be 'answering-machine'. If the length of speech detected is below this threshold, the result will be 'human'. [optional][default to 10]
speech_end_threshold Float Amount of silence (in seconds) before assuming the callee has finished speaking. [optional][default to 5]
machine_speech_end_threshold Float When an answering machine is detected, the amount of silence (in seconds) before assuming the message has finished playing. If not provided it will default to the speechEndThreshold value. [optional]
delay_result Boolean If set to 'true' and if an answering machine is detected, the 'answering-machine' callback will be delayed until the machine is done speaking, or an end of message tone is detected, or until the 'detectionTimeout' is exceeded. If false, the 'answering-machine' result is sent immediately. [optional][default to false]
callback_url String The URL to send the 'machineDetectionComplete' webhook when the detection is completed. Only for 'async' mode. [optional]
callback_method CallbackMethodEnum [optional][default to 'POST']
username String Basic auth username. [optional]
password String Basic auth password. [optional]
fallback_url String A fallback URL which, if provided, will be used to retry the machine detection complete webhook delivery in case `callbackUrl` fails to respond [optional]
fallback_method CallbackMethodEnum [optional][default to 'POST']
fallback_username String Basic auth username. [optional]
fallback_password String Basic auth password. [optional]

Example

require 'bandwidth-sdk'

instance = Bandwidth::MachineDetectionConfiguration.new(
  mode: null,
  detection_timeout: 15,
  silence_timeout: 10,
  speech_threshold: 10,
  speech_end_threshold: 5,
  machine_speech_end_threshold: 5,
  delay_result: false,
  callback_url: https://myServer.example/bandwidth/webhooks/machineDetectionComplete,
  callback_method: null,
  username: mySecretUsername,
  password: mySecretPassword1!,
  fallback_url: https://myFallbackServer.example/bandwidth/webhooks/machineDetectionComplete,
  fallback_method: null,
  fallback_username: mySecretUsername,
  fallback_password: mySecretPassword1!
)