Blind Transfer Bug - #1 No Longer Works

When transferring a call by using the #1 function, the call will no longer transfer. You now need to hit only # and not #1 as described in the Feature Code > On Call Features settings. Was able to reproduce this on a fresh install as well as our existing PBX.

Whats the output of:

asterisk -x"features show"

Hello,

This is because the features module is unable to load correctly, since it’s trying to include some features that doesn’t exist, to fix it comment out the custom_atxfer and custom_blindxfer custom features in /etc/asterisk/vitalpbx/features__10-application-map.conf

nano /etc/asterisk/vitalpbx/features__10-application-map.conf

image

then reload the features module

asterisk -x"module reload features"

I hope that VitalPBX will fix this in the next release.

1 Like

I’ve commented out the 2 lines, done the reload however we still can not transfer calls

features show
Builtin Feature           Default Current
---------------           ------- -------
Pickup                    *8      *08
Blind Transfer            #       #1
Attended Transfer                 *2
One Touch Monitor
Disconnect Call           *       *0
Park Call                         *4
One Touch MixMonitor

Dynamic Feature           Default Current
---------------           ------- -------
one_touch_rec             no def  *3

Feature Groups:
---------------
===> Group: custom-features
===> --> one_touch_rec (*3)

any ideas ?

I see the feature codes are loaded correctly, so you should use them without issues. Check your DTMF settings, or make sure you are not taking too much time to press all the required digits.

You can also chare a call log from Asterisk CLI to see what the Asterisk is doing.

Don’t think I was clear in my post.

The only thing that has happened with the config’s on the PBX is the upgrade to 3.1.0-1 all features on the PBX were working prior to the upgrade

We have 4 Carrier PBX’s all exhibiting the same issue.

Hi @warwick,

Please reply with the output of the following commands.

cat /etc/asterisk/vitalpbx/features__10-application-map.conf
cat /etc/asterisk/vitalpbx/features__50-main.conf
asterisk -r
module reload features

Thank you

# cat /etc/asterisk/vitalpbx/features__10-application-map.conf
[applicationmap]
one_touch_rec => *3,self/caller,Gosub(sub-call-recording-on-demand,s,1(app,fmap))
; custom_atxfer => *02,self/caller,GoSub(custom_atxfer,s,1)
; custom_blindxfer => *01,self/caller,GoSub(custom_blindxfer,s,1)

[custom-features]
one_touch_rec =>
; custom_atxfer =>
; custom_blindxfer =>


# cat /etc/asterisk/vitalpbx/features__50-main.conf
; *********************************************************************************
; @Date : Sat Aug 14 14:22:07 GMT 2021
; @Document : features__50-main.conf
; @Author : VitalPBX
; @Platform : VitalPBX
; *********************************************************************************

[general]
pickupexten = *08
transferdigittimeout => 3
featuredigittimeout = 1000
atxfernoanswertimeout = 15
atxferdropcall = no

[featuremap]
blindxfer => #1
disconnect => *0
automon =>
atxfer => *2
parkcall => *4
automixmon =>

# asterisk -r
Asterisk 18.4.0, Copyright (C) 1999 - 2021, Sangoma Technologies Corporation and others.
Created by Mark Spencer <markster@digium.com>
Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty' for details.
This is free software, with components licensed under the GNU General Public
License version 2 and other licenses; you are welcome to redistribute it under
certain conditions. Type 'core show license' for details.
=========================================================================
Connected to Asterisk 18.4.0 currently running on cpt1 (pid = 23552)
*CLI> module reload features
Module 'features' reloaded successfully.



OK, you will need to do what @miguel said. Please enable DTMF logging and provide a call trace via pastebin.

How do you enable dtmf logging ?

I imagine something must go in logger__50-general.conf but what ?

From the GUI Settings > PBX Settings > Log Files and set DTMF to on

1 Like

*2205 first and #1208 on second try

[2021-08-17 18:45:35] DTMF[14048][C-0000012d]: channel.c:3980 __ast_read: DTMF begin '*' received on SIP/NP205-00000363
[2021-08-17 18:45:35] DTMF[14048][C-0000012d]: channel.c:3991 __ast_read: DTMF begin passthrough '*' on SIP/NP205-00000363
[2021-08-17 18:45:35] DTMF[14048][C-0000012d]: channel.c:3866 __ast_read: DTMF end '*' received on SIP/NP205-00000363, duration 33 ms
[2021-08-17 18:45:35] DTMF[14048][C-0000012d]: channel.c:3917 __ast_read: DTMF end accepted with begin '*' on SIP/NP205-00000363
[2021-08-17 18:45:35] DTMF[14048][C-0000012d]: channel.c:3932 __ast_read: DTMF end '*' detected to have actual duration 19 on the wire, emulation will be triggered on SIP/NP205-00000363
[2021-08-17 18:45:35] DTMF[14048][C-0000012d]: channel.c:3939 __ast_read: DTMF end '*' has duration 19 but want minimum 80, emulating on SIP/NP205-00000363
[2021-08-17 18:45:35] DTMF[14048][C-0000012d]: channel.c:4014 __ast_read: DTMF end emulation of '*' queued on SIP/NP205-00000363
[2021-08-17 18:45:36] DTMF[14048][C-0000012d]: channel.c:3980 __ast_read: DTMF begin '2' received on SIP/NP205-00000363
[2021-08-17 18:45:36] DTMF[14048][C-0000012d]: channel.c:3991 __ast_read: DTMF begin passthrough '2' on SIP/NP205-00000363
[2021-08-17 18:45:36] DTMF[14048][C-0000012d]: channel.c:3866 __ast_read: DTMF end '2' received on SIP/NP205-00000363, duration 33 ms
[2021-08-17 18:45:36] DTMF[14048][C-0000012d]: channel.c:3917 __ast_read: DTMF end accepted with begin '2' on SIP/NP205-00000363
[2021-08-17 18:45:36] DTMF[14048][C-0000012d]: channel.c:3932 __ast_read: DTMF end '2' detected to have actual duration 19 on the wire, emulation will be triggered on SIP/NP205-00000363
[2021-08-17 18:45:36] DTMF[14048][C-0000012d]: channel.c:3939 __ast_read: DTMF end '2' has duration 19 but want minimum 80, emulating on SIP/NP205-00000363
[2021-08-17 18:45:36] DTMF[14048][C-0000012d]: channel.c:4014 __ast_read: DTMF end emulation of '2' queued on SIP/NP205-00000363
[2021-08-17 18:45:36] DTMF[14048][C-0000012d]: channel.c:3980 __ast_read: DTMF begin '2' received on SIP/NP205-00000363
[2021-08-17 18:45:36] DTMF[14048][C-0000012d]: channel.c:3991 __ast_read: DTMF begin passthrough '2' on SIP/NP205-00000363
[2021-08-17 18:45:36] DTMF[14048][C-0000012d]: channel.c:3866 __ast_read: DTMF end '2' received on SIP/NP205-00000363, duration 33 ms
[2021-08-17 18:45:36] DTMF[14048][C-0000012d]: channel.c:3917 __ast_read: DTMF end accepted with begin '2' on SIP/NP205-00000363
[2021-08-17 18:45:36] DTMF[14048][C-0000012d]: channel.c:3932 __ast_read: DTMF end '2' detected to have actual duration 19 on the wire, emulation will be triggered on SIP/NP205-00000363
[2021-08-17 18:45:36] DTMF[14048][C-0000012d]: channel.c:3939 __ast_read: DTMF end '2' has duration 19 but want minimum 80, emulating on SIP/NP205-00000363
[2021-08-17 18:45:36] DTMF[14048][C-0000012d]: channel.c:4072 __ast_read: DTMF end emulation of '2' queued on SIP/NP205-00000363
[2021-08-17 18:45:37] DTMF[14048][C-0000012d]: channel.c:3980 __ast_read: DTMF begin '0' received on SIP/NP205-00000363
[2021-08-17 18:45:37] DTMF[14048][C-0000012d]: channel.c:3991 __ast_read: DTMF begin passthrough '0' on SIP/NP205-00000363
[2021-08-17 18:45:37] DTMF[14048][C-0000012d]: channel.c:3866 __ast_read: DTMF end '0' received on SIP/NP205-00000363, duration 33 ms
[2021-08-17 18:45:37] DTMF[14048][C-0000012d]: channel.c:3917 __ast_read: DTMF end accepted with begin '0' on SIP/NP205-00000363
[2021-08-17 18:45:37] DTMF[14048][C-0000012d]: channel.c:3932 __ast_read: DTMF end '0' detected to have actual duration 21 on the wire, emulation will be triggered on SIP/NP205-00000363
[2021-08-17 18:45:37] DTMF[14048][C-0000012d]: channel.c:3939 __ast_read: DTMF end '0' has duration 21 but want minimum 80, emulating on SIP/NP205-00000363
[2021-08-17 18:45:37] DTMF[14048][C-0000012d]: channel.c:4014 __ast_read: DTMF end emulation of '0' queued on SIP/NP205-00000363
[2021-08-17 18:45:37] DTMF[14048][C-0000012d]: channel.c:3980 __ast_read: DTMF begin '5' received on SIP/NP205-00000363
[2021-08-17 18:45:37] DTMF[14048][C-0000012d]: channel.c:3991 __ast_read: DTMF begin passthrough '5' on SIP/NP205-00000363
[2021-08-17 18:45:37] DTMF[14048][C-0000012d]: channel.c:3866 __ast_read: DTMF end '5' received on SIP/NP205-00000363, duration 33 ms
[2021-08-17 18:45:37] DTMF[14048][C-0000012d]: channel.c:3917 __ast_read: DTMF end accepted with begin '5' on SIP/NP205-00000363
[2021-08-17 18:45:37] DTMF[14048][C-0000012d]: channel.c:3932 __ast_read: DTMF end '5' detected to have actual duration 19 on the wire, emulation will be triggered on SIP/NP205-00000363
[2021-08-17 18:45:37] DTMF[14048][C-0000012d]: channel.c:3939 __ast_read: DTMF end '5' has duration 19 but want minimum 80, emulating on SIP/NP205-00000363
[2021-08-17 18:45:37] DTMF[14048][C-0000012d]: channel.c:4014 __ast_read: DTMF end emulation of '5' queued on SIP/NP205-00000363




[2021-08-17 18:47:00] DTMF[15049][C-0000012e]: channel.c:3980 __ast_read: DTMF begin '#' received on SIP/NP205-00000365
[2021-08-17 18:47:00] DTMF[15049][C-0000012e]: channel.c:3991 __ast_read: DTMF begin passthrough '#' on SIP/NP205-00000365
[2021-08-17 18:47:00] DTMF[15049][C-0000012e]: channel.c:3866 __ast_read: DTMF end '#' received on SIP/NP205-00000365, duration 33 ms
[2021-08-17 18:47:00] DTMF[15049][C-0000012e]: channel.c:3917 __ast_read: DTMF end accepted with begin '#' on SIP/NP205-00000365
[2021-08-17 18:47:00] DTMF[15049][C-0000012e]: channel.c:3932 __ast_read: DTMF end '#' detected to have actual duration 20 on the wire, emulation will be triggered on SIP/NP205-00000365
[2021-08-17 18:47:00] DTMF[15049][C-0000012e]: channel.c:3939 __ast_read: DTMF end '#' has duration 20 but want minimum 80, emulating on SIP/NP205-00000365
[2021-08-17 18:47:01] DTMF[15049][C-0000012e]: channel.c:4014 __ast_read: DTMF end emulation of '#' queued on SIP/NP205-00000365
[2021-08-17 18:47:01] DTMF[15049][C-0000012e]: channel.c:3980 __ast_read: DTMF begin '1' received on SIP/NP205-00000365
[2021-08-17 18:47:01] DTMF[15049][C-0000012e]: channel.c:3991 __ast_read: DTMF begin passthrough '1' on SIP/NP205-00000365
[2021-08-17 18:47:01] DTMF[15049][C-0000012e]: channel.c:3866 __ast_read: DTMF end '1' received on SIP/NP205-00000365, duration 33 ms
[2021-08-17 18:47:01] DTMF[15049][C-0000012e]: channel.c:3917 __ast_read: DTMF end accepted with begin '1' on SIP/NP205-00000365
[2021-08-17 18:47:01] DTMF[15049][C-0000012e]: channel.c:3932 __ast_read: DTMF end '1' detected to have actual duration 19 on the wire, emulation will be triggered on SIP/NP205-00000365
[2021-08-17 18:47:01] DTMF[15049][C-0000012e]: channel.c:3939 __ast_read: DTMF end '1' has duration 19 but want minimum 80, emulating on SIP/NP205-00000365
[2021-08-17 18:47:01] DTMF[15049][C-0000012e]: channel.c:4014 __ast_read: DTMF end emulation of '1' queued on SIP/NP205-00000365
[2021-08-17 18:47:02] DTMF[15049][C-0000012e]: channel.c:3980 __ast_read: DTMF begin '2' received on SIP/NP205-00000365
[2021-08-17 18:47:02] DTMF[15049][C-0000012e]: channel.c:3991 __ast_read: DTMF begin passthrough '2' on SIP/NP205-00000365
[2021-08-17 18:47:02] DTMF[15049][C-0000012e]: channel.c:3866 __ast_read: DTMF end '2' received on SIP/NP205-00000365, duration 33 ms
[2021-08-17 18:47:02] DTMF[15049][C-0000012e]: channel.c:3917 __ast_read: DTMF end accepted with begin '2' on SIP/NP205-00000365
[2021-08-17 18:47:02] DTMF[15049][C-0000012e]: channel.c:3932 __ast_read: DTMF end '2' detected to have actual duration 21 on the wire, emulation will be triggered on SIP/NP205-00000365
[2021-08-17 18:47:02] DTMF[15049][C-0000012e]: channel.c:3939 __ast_read: DTMF end '2' has duration 21 but want minimum 80, emulating on SIP/NP205-00000365
[2021-08-17 18:47:02] DTMF[15049][C-0000012e]: channel.c:4014 __ast_read: DTMF end emulation of '2' queued on SIP/NP205-00000365
[2021-08-17 18:47:02] DTMF[15049][C-0000012e]: channel.c:3980 __ast_read: DTMF begin '0' received on SIP/NP205-00000365
[2021-08-17 18:47:02] DTMF[15049][C-0000012e]: channel.c:3991 __ast_read: DTMF begin passthrough '0' on SIP/NP205-00000365
[2021-08-17 18:47:02] DTMF[15049][C-0000012e]: channel.c:3866 __ast_read: DTMF end '0' received on SIP/NP205-00000365, duration 33 ms
[2021-08-17 18:47:02] DTMF[15049][C-0000012e]: channel.c:3917 __ast_read: DTMF end accepted with begin '0' on SIP/NP205-00000365
[2021-08-17 18:47:02] DTMF[15049][C-0000012e]: channel.c:3932 __ast_read: DTMF end '0' detected to have actual duration 20 on the wire, emulation will be triggered on SIP/NP205-00000365
[2021-08-17 18:47:02] DTMF[15049][C-0000012e]: channel.c:3939 __ast_read: DTMF end '0' has duration 20 but want minimum 80, emulating on SIP/NP205-00000365
[2021-08-17 18:47:02] DTMF[15049][C-0000012e]: channel.c:4014 __ast_read: DTMF end emulation of '0' queued on SIP/NP205-00000365
[2021-08-17 18:47:03] DTMF[15049][C-0000012e]: channel.c:3980 __ast_read: DTMF begin '8' received on SIP/NP205-00000365
[2021-08-17 18:47:03] DTMF[15049][C-0000012e]: channel.c:3991 __ast_read: DTMF begin passthrough '8' on SIP/NP205-00000365
[2021-08-17 18:47:03] DTMF[15049][C-0000012e]: channel.c:3866 __ast_read: DTMF end '8' received on SIP/NP205-00000365, duration 33 ms
[2021-08-17 18:47:03] DTMF[15049][C-0000012e]: channel.c:3917 __ast_read: DTMF end accepted with begin '8' on SIP/NP205-00000365
[2021-08-17 18:47:03] DTMF[15049][C-0000012e]: channel.c:3932 __ast_read: DTMF end '8' detected to have actual duration 20 on the wire, emulation will be triggered on SIP/NP205-00000365
[2021-08-17 18:47:03] DTMF[15049][C-0000012e]: channel.c:3939 __ast_read: DTMF end '8' has duration 20 but want minimum 80, emulating on SIP/NP205-00000365
[2021-08-17 18:47:03] DTMF[15049][C-0000012e]: channel.c:4014 __ast_read: DTMF end emulation of '8' queued on SIP/NP205-00000365



Please provide a full call trace.

grep C-0000012d /var/log/asterisk/full >> /tmp/C-0000012d
grep C-0000012e /var/log/asterisk/full >> /tmp/C-0000012e

And then upload the content of /tmp/C-0000012d to pastebin.com as well as the content of /tmp/C-0000012e to another pastebin.com

and

[2021-08-17 18:45:25] VERBOSE[14048][C-0000012d] pbx.c: Executing [1026@trk-9-dial:49] Dial("SIP/NP205-00000363", "SIP/T2_outbound/1026,90,ktrU(sub-call-recording^ea98838f5817efbf^205^1026^no)") in new stack
[2021-08-17 18:46:51] VERBOSE[15049][C-0000012e] pbx.c: Executing [1026@trk-9-dial:49] Dial("SIP/NP205-00000365", "SIP/T2_outbound/1026,90,ktrU(sub-call-recording^ea98838f5817efbf^205^1026^no)") in new stack

In both calls you have the t option which allows the callee to initiate a DTMF transfer. In your DTMF logs, we see that the caller tries to initiate the DTMF transfer.

Where do we configure that in VitalPBX ? I imagine it should be then a capital T

Just found it under dial profiles.

Was the defaults changed in the upgrade as we previously could transfer calls.

The default NEVER had it enabled, and it is SUPER dangerous to enable it if you don’t know what you are doing. This means, that anyone who calls your phone number, can now place calls to any high cost phone number through your system by “transferring” calls through DTMF.

Might be fixed with 3.1.1?

For the issue @warwick has it is not going to make a difference. But it will fix the issue described in the first post here.