Ghost Recall when using PJSIP and Yealink phones.
-
System I migrated over the weekend came up with a new problem that I have not dealt with before.
I posted on the Yealink forums, so hopefully I will get an answer.
http://forum.yealink.com/forum/showthread.php?tid=40843Anyway, if you transfer a call to another extension and you are using PJSIP (the new standard for SIP communication in Asterisk), you can get a ghost ring back after a transfer to another extension that goes to voicemail.
A little Googling led me to these two threads that already identified the problem for me.
https://community.freepbx.org/t/transfered-calls-from-the-operator-are-being-transfered-back-ghost-call/36205/31
https://community.asterisk.org/t/transfer-recalls-via-refer-notify-events/69764So I took a PCAP and sure enough. there it is.
Looking into how to apply the custom rule within the designed method for adding custom rules.
The GUI has a setting I can enable for this, but I am not seeing a Syntax example.
-
And there we go. Will test tomorrow.
Enable the setting pictured above.
Then open SSH as root
nano /etc/firewall-4.rules
put in the rule with the normal
iptables
syntax, less the actualiptables
command.-I OUTPUT -m string --string "SIP/2.0 503 Service Unavailable" --algo bm --to 65535 -j DROP
Save and close and then restart the firewall.
fwconsole firewall stop fwconsole firewall start
Tail the firewall log to make sure it is picking it up.
[root@bpbx ~]# tail -f /tmp/firewall.log 1494374195: /sbin/iptables -A fpbxhosts -s 127.0.0.1/32 -j zone-trusted 1494374195: /sbin/ip6tables -R fpbxlogdrop 1 -j DROP 1494374195: /sbin/iptables -R fpbxlogdrop 1 -j DROP 1494374195: /sbin/iptables -N zone-external 1494374195: /sbin/ip6tables -N zone-external 1494374195: /sbin/ip6tables -A fpbxinterfaces -i eth0 -j zone-external 1494374195: /sbin/iptables -A fpbxinterfaces -i eth0 -j zone-external 1494374195: /sbin/iptables -t nat -A masq-output -o eth0 -j MARK --set-xmark 0x2/0x2 1494374195: Custom rule: /sbin/iptables -I OUTPUT -m string --string "SIP/2.0 503 Service Unavailable" --algo bm --to 65535 -j DROP 1494374195: Custom Firewall rules file /etc/firewall-6.rules does not exist, skipping
-
Now just to wait on Yealink to respond to my post on their forum to see if they will acknowledge this as an issue or not.
-
@JaredBusch said in Ghost Recall when using PJSIP and Yealink phones.:
put in the rule with the normal
iptbales
syntax, less the actualiptables
command.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . ^^^^^Just for my own - Is
iptbales
suppose to beiptables
? -
@JaredBusch said in Ghost Recall when using PJSIP and Yealink phones.:
Now just to wait on Yealink to respond to my post on their forum to see if they will acknowledge this as an issue or not.
Yealink opened a support case based on my post. Will be getting the logs to them.
-
Been working with Yealink support on this and after confirming this happening with the T46G and the T42G phones, their support upped the severity and I got an answer back to add the below setting to the configuration files.
transfer.hang_up_after_success_trans = 3
I did so on the T46G, disabled the custom firewall rules, and had the operator repeat the transfer.
No ghost ringback.
I'll leave the custom firewall disabled and see if it stays good all day.
I'll test in more detail over the weekend or on Tuesday, whichever time I have a tech on site.