Ghost Recall when using PJSIP and Yealink phones.


  • Service Provider

    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=40843

    Anyway, 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/69764

    So I took a PCAP and sure enough. there it is.

    0_1494371755743_upload-f4aa17c3-3bef-4a38-b717-51700ec9a84d

    0_1494371922427_upload-05c1a402-5c8b-4e57-9321-405f38d7eeb0

    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.

    0_1494373062837_upload-8c431bcf-1b82-4a69-a444-482bb9977b4c


  • Service Provider

    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 actual iptables 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.

    [[email protected] ~]# 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
    

  • Service Provider

    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 actual iptables command.
    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ^^^^^

    Just for my own - Is iptbales suppose to be iptables?


  • Service Provider

    @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.


  • Service Provider

    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.


Log in to reply
 

Looks like your connection to MangoLassi was lost, please wait while we try to reconnect.