Skip to content

DTMF Capture cannot be stopped with break #2968

@soft1c

Description

@soft1c

Describe the bug
When calling dtmf capture with play_and_get_digits the action cannot be stopped with break. uuid_break only stops media playback but freeswitch still waits for dtmf capture to finish by terminator, limit or timeout.

To Reproduce
This issue was noticed when having a call leg inside a conference. play_and_get_digits was called on the call leg, after that uuid_break, and when tried kicking the participant it is stuck and waits for dtmf capture to timeout.

Expected behavior
uuid_break should stop dtmf capture on channel.

Package version or git hash

  • Version - master

Trace logs
freeswitch.log:f3e21b14-15d8-48c6-a2a9-59573e6052e4 EXECUTE [depth=2] sofia/WEBRTC/name@332380.domain.com play_and_get_digits(1 1 1 10000 any silence captured_dtmf 10000)
freeswitch.log:f3e21b14-15d8-48c6-a2a9-59573e6052e4 2025-12-09 13:12:07.461438 93.27% [DEBUG] switch_ivr.c:1385 Codec Activated L16@48000hz 1 channels 20ms
freeswitch.log:f3e21b14-15d8-48c6-a2a9-59573e6052e4 2025-12-09 13:12:07.481442 93.27% [NOTICE] switch_core_media.c:16026 Deactivating write resampler
freeswitch.log:f3e21b14-15d8-48c6-a2a9-59573e6052e4 2025-12-09 13:12:17.462146 93.70% [INFO] conference_loop.c:1668 Channel leaving conference, cause: NONE

between the play_and_get_digits we called uuid_break and kick from conference, but kicked happened only when dtmf capture timed out.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions