Solved 3CX sending CANCEL to handsets - can't answer incoming calls

Discussion in '3CX Phone System - General' started by ChrisHerrmann, Jul 13, 2017.

Thread Status:
Not open for further replies.
  1. ChrisHerrmann

    Joined:
    Jul 13, 2017
    Messages:
    8
    Likes Received:
    0
    Hi all,

    Just installed the 3CX Linux iso as a VM. I've got outbound & internal calls working OK, but having problems with inbound routes. When an inbound call occurs the phone rings for a fraction of a second then hangs up.

    This occurs for the main trunk line, and all other DIDs that have been setup for ring groups, individual extensions etc.

    If I test ringing a single extension that has no call forwards in place...

    In the 3CX admin page I see:

    07/13/2017 9:26:15 AM - [CM503003]: Call(C:5): Call to <sip:404@voip0.mydom.local:5060> has failed; Cause: 487 Request Terminated/INVITE from 192.168.30.110:2051

    If I tcpdump on the phone and download the PCAP, I can see that the PBX itself is sending the cancel:

    Session Initiation Protocol (CANCEL)
    Request-Line: CANCEL sip:402@192.168.30.60:2057;line=xoq4bnoa SIP/2.0
    Method: CANCEL
    Request-URI: sip:402@192.168.30.60:2057;line=xoq4bnoa
    Request-URI User Part: 402
    Request-URI Host Part: 192.168.30.60
    Request-URI Host Port: 2057
    [Resent Packet: False]
    Message Header
    Via: SIP/2.0/UDP 192.168.30.11:5060;branch=z9hG4bK-524287-1---f2039d7c41957367;rport
    Max-Forwards: 70
    To: <sip:402@voip0.mydom.local>
    From: <sip:0400123456@192.168.30.11:5060;nf=e>;tag=34ad3a54
    Call-ID: yNutAUDrMPjlFsLvgufmJw..
    CSeq: 1 CANCEL
    Sequence Number: 1
    Method: CANCEL
    User-Agent: 3CXPhoneSystem 15.5.1694.0 (1694)
    Reason: SIP;cause=480;text="NO_ANSWER"
    Reason protocols: SIP
    Content-Length: 0

    So this is a test from a mobile phone to a DID that goes directly to the extension in question, which shows up as being "green" in the admin console. The same behaviour appears for all inbound calls.

    Any ideas where to start looking? Also is there any way to get realtime logs of what's going on or to test a call plan in the same way that you'd use the asterisk CLI? for example:

    asterisk -r
    show dialplan

    etc etc?

    Thanks,

    Chris
     
  2. ChrisHerrmann

    Joined:
    Jul 13, 2017
    Messages:
    8
    Likes Received:
    0
    The devices in use:
    SNOM 320/360/370 with several firmware revisions
    Bria Softphone
    MicroSIP softphone

    (these devices were all previously working fine with old Asterisk PBX).
     
  3. ChrisHerrmann

    Joined:
    Jul 13, 2017
    Messages:
    8
    Likes Received:
    0
    OK worked it out. The problem was that there was a call forward setup by the provider on the main trunk number, so what was happening was:
    - PBX is registered with provider
    - Call comes in
    - PBX finds extension in question, INVITES extension to join
    - Extension starts ringing
    - Provider sends CANCEL
    - PBX in turn sends CANCEL to handset(s)
    - Handset returns 487 Terminate

    Worked it out by:
    - Installing tcpdump on the pbx and watching what was happening on 5060

    What would be reaaaaally nice is if the GUI actually told you what the provider had said - so you weren't guessing. Also the GUI should report on the message that it passes to the phones. Currently it's ambiguous and looks like maybe the phone terminated the connection, when it didn't.
     
Thread Status:
Not open for further replies.