| 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] |
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!
)