config

Added in v0.7.4

The config verb allows the developer to change the default speech settings for the current session, or to gather speech or dtmf input in the background while other verbs are executing. The latter technique is useful mainly for certain scenarios when integrating with certain conversational AI systems.

This verb is non-blocking; i.e. the specified settings are changed and execution immediately continues with the next verb in the application.

  {
    "verb": "config",
    "synthesizer": {
      "voice": "Jenny"
    },
    "recognizer": {
      "vendor": "google",
      "language": "de-DE"
    },
    "bargeIn": {
      "enable": true,
      "input" : ["speech"],
      "actionHook: "/userInput"
      }
    }
  },

You can use the following attributes in the config command:

option description required
amd enable answering machine detection; see answering machine detection for details. no
actionHookDelayAction object, see here for details. no
bargein this object contains properties that are used to instantiate a 'background' gather verb. no
bargeIn.enable if true, begin listening for speech or dtmf input while the session is executing other verbs. This is known as a "background gather" and an application to capture user input outside of a gather verb. If false, stop any background listening task that is in progress. no
bargeIn.sticky If true and bargeIn.enable is true, then when the background gather completes with speech or dtmf detected, it will automatically start another background gather. no
bargeIn.actionHook A webhook to call if user input is collected from the background gather. no
bargeIn.input Array, specifying allowed types of input: ['digits'], ['speech'], or ['digits', 'speech']. yes
bargeIn.finishOnKey Dmtf key that signals the end of dtmf input. no
bargeIn.numDigits Exact number of dtmf digits expected to gather. no
bargeIn.minDigits Minimum number of dtmf digits expected to gather. Defaults to 1. no
bargeIn.maxDigits Maximum number of dtmf digits expected to gather. no
bargeIn.interDigitTimeout Amount of time to wait between digits after minDigits have been entered. no
boostAudioSignal A string or integer value indicating the number of decibels to boost or reduce the strength of the outgoing audio signal to the caller/called party, e.g. "-6 dB". Note this applies to the main track only, not to any dub tracks. no
fillerNoise play audio to the caller while the remote application is processing gather transcriptions. This is a session-wide setting that may be overridden at the gather verb level. See Using filler noise for more details. no
fillerNoise.enable boolean, whether to enable or disable filler noise yes
fillerNoise.url http(s) audio to play as filler noise yes
fillerNoise.startDelaySecs integer value specifying number of seconds to wait for a response from the remote application before playing filler noise no (default: play immediately after sending results)
listen a nested listen action, which allows recording of the call from this point forward by streaming the audio to a remote server over a websocket connection no
notifyEvents boolean, whether to enable event notifications (verb:status messages) over websocket connections. Verbs that are sent over the websocket must also contain an "id" property to activate this feature. no
onHoldMusic string, provides the URL to a remote music source to use when a call is placed on hold no
recognizer change the session-level default speech recognition settings. See the transcribe verb for details on the recognizer property. no
reset string or array, resets either 'recognizer' and/or 'synthesizer' to the default application settings no
record options to manage call recording using SIPREC no
record.action "startCallRecording", "stopCallRecording", "pauseCallRecording", or "resumeCallRecording" yes
record.siprecServerURL sip uri for SIPREC server required if action is "startCallRecording"
record.recordingID user-supplied string to identify the recording no
transcribe a nested transcribe action, which allows a transcription of the call to be sent in the background no
transcribe.enable boolean, if true start the transcribe, if false stop it yes
transcribe.transcriptionHook the webhook/websocket identifier to send transcriptions to yes if enabling transcription
transcribe.recognizer recognizer options no
sipRequestWithinDialogHook object or string, a webhook to call when a sip request is received within the dialog (e.g. an INFO, NOTIFY, or REFER) no
synthesizer change the session-level default text-to-speech settings. See the say verb for details on the synthesizer property. no