The properties of this class aren't stored in the system registry and can be set with the PropsSet method only.
Here is a list of the MFSignalingDTMFClass properties:
| Name | Default value | Description |
|---|---|---|
samples_msec | 80 | Duration of each generated DTMF tone, in milliseconds. Used only for DTMF generation. |
space_msec | 80 | Duration of the generated silence gap between DTMF tones, in milliseconds. Used only for DTMF generation. |
max_amplitude | 50 | Maximum amplitude of generated DTMF tones, in percent. Used only for generation. |
channel_generate | 0 | Audio channel where generated DTMF tones are inserted. |
channel_detect | 0 | Audio channel used for DTMF/custom tone detection. |
check_buffer_msec | 30 for DTMF, 50 for custom tone | Size of the audio window analyzed by the detector, in milliseconds. Larger values can improve stability, but increase detection latency. Smaller values react faster, but may be less stable. |
max_buffer_msec | 100 for DTMF, 200 for custom tone | Maximum internal audio buffer length, in milliseconds. Older samples are dropped when the buffer exceeds this size. |
inaccuracy_dtmf | -1 | DTMF frequency detection threshold. If -1, the internal default threshold is used: 70. Lower values make detection more sensitive but increase false positive risk. Higher values make detection stricter but may miss weak/noisy tones. |
wait_silence | true | When enabled, the detector waits for a silence/space interval after a detected DTMF digit before allowing the same digit to be emitted again. This protects against detecting one long tone as repeated digits. |
skip_duplicate | true | Used when wait_silence=false. Suppresses consecutive duplicate DTMF results detected in adjacent buffers. |
silence_max_level | 10 | Advanced silence detection threshold, in percent. It controls how much amplitude variation is still accepted as “silence/space”. The value is relative to the average absolute level of the first 10 samples of the analyzed buffer. Higher values make noisy gaps easier to treat as silence; lower values make silence detection stricter. |
inaccuracy_tone | 800 | Custom tone detection threshold. Lower values make custom tone detection more sensitive; higher values make it stricter. |
low_hz | -1 | Low-frequency component for custom tone detection. If negative, this custom tone component is disabled. |
high_hz | -1 | High-frequency component for custom tone detection. If negative, this custom tone component is disabled. |
output.combined_tone | false | For custom tone detection. If enabled, emits one combined custom event when both configured frequencies are detected together. If disabled, detected custom frequencies may be emitted separately. |
on_event.sync | false | Controls whether events are fired synchronously. Applies to emitted DTMF and custom events. |
wait_silence=true is the safer default. It prevents one long or noisy DTMF tone from being detected as repeated digits. If two identical digits must be detected consecutively, there must be a detectable silence/space between them. For noisy gaps, adjust silence_max_level instead of disabling wait_silence first.
silence_max_level is an advanced tuning parameter. It is not dB and not a percentage of the DTMF tone amplitude. It is a relative threshold used by the internal silence detector.