DIDs and outbound caller ID

Discussion in '3CX Phone System - General' started by mschmidt, Mar 26, 2008.

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

    Joined:
    Oct 25, 2007
    Messages:
    8
    Likes Received:
    0
    First of all, I wanted to say that the basic functionality for our new phone system worked just as expected with minimal configuration - great job, especially the VOIP gateway configuration templates! Internal calls, inbound- and outbound calls, T.38 fax etc. just worked "out of the box".

    However there is an annoying problem that I cannot solve: We have ISDN lines connected to a Patton SmartNode. The base phone number is 123456-x. We created DIDs in 3cx for each extension, with the three-digit extension number always matching the DID number. So e. g. an inbound call to 123456-123 is forwarded to extension 123 - that works great. (And "Override incoming Caller ID with DID name" is a really nice feature.) But for outbound calls, the caller ID for some reason is always 123456-0, no matter which extension the caller is using.

    This is unfortunate, because if we call someone and the callee later uses the call history of his phone to call back, he will never reach the original caller but always the -0 extension (reception).

    I played with some settings in the 3cx gateway configuration as well as in the Patton configuration file, but no luck so far. Thank you very much in advance for any hints pointing me to the right direction, or even working configuration settings!

    Details of our setup:

    3cx 5.1 Professional Edition
    Patton SmartNode 4638, Firmware 4.2
    Snom 360 phones
    ISDN lines: DSS1 point-to-point ("Anlagenanschluss"), Germany, Deutsche Telekom
     
  2. 5qg4

    5qg4 Active Member

    Joined:
    Jan 31, 2007
    Messages:
    643
    Likes Received:
    0
    If V5.1 can pass correct E164 calling number to your gateway, it should be more easy to solve this issue. However, the default setting of 3CX still pass the WRONG E164 calling number to gateway. Normally, the outbound caller id should be define as:
    At 3CX V5.x Gateway / Provider Outbound Parameters
    SIP Field (From : User Part )
    Value ("Caller Num" Caller's number Default: From->User)

    At 3CX V3.x it using this setting as default (System Value)

    Therefore, if you issue PSTN call at EXT 333
    At V3.X the E164 calling number will be 333
    At V5.1 the E164 calling number will be 10200 (Gateway's Line Identification)

    if you issue PSTN call at EXT 321
    At V3.X the E164 calling number will be 321
    At V5.1 the E164 calling number will be 10200 (Gateway's Line Identification)

    At gateway config your can remap your calling number to Telco by following command at context cs switch:

    context cs switch

    routing-table calling-e164 CID_REMAP_B4_TAB_IN
    route default dest-service OUTBOUND TO_PSTN_CID_TAB

    mapping-table calling-e164 to calling-e164 TO_PSTN_CID_TAB
    map (...) to 123456\1

    # (...) = 3 digits of your e164 calling number in bound to gateway
    # 123456\1 = 123456+e164 calling number
    # If (...) = 333 the output e164 calling number will be 123456333, the calling number 123456333 will pass to Telco

    I'm not sure that your Telco support how many digits for your out going caller ID. Some Telco just in need the last 3 digits and some Telco in need full set caller number digits. The out range or not match e164 calling number, Telco will send the default number to remote party.

    Correct me if I'm wrong.
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  3. mschmidt

    Joined:
    Oct 25, 2007
    Messages:
    8
    Likes Received:
    0
    Thank you very much for your answer, looks promising. I'll try this as soon as I'm sure not to interrupt any important calls, and let you know!
     
  4. pnecas

    Joined:
    Mar 21, 2008
    Messages:
    3
    Likes Received:
    0
    So, can anybody suggest how to configure the PBX v 5.1x to return the correct calling number in From field? If I call from an internal extension 38, in the system log there is:

    09:45:21.249 Call::Terminate [CM503008]: Call(146): Call is terminated
    09:45:19.086 Line::printEndpointInfo [CM505002]: Gateway:[O2 ISDN] Device info: Device Not Identified: User Agent not matched; Capabilities:[reinvite, replaces, able-no-sdp, recvonly] UserAgent: [Patton SN4638 5BIS UI MxSF v3.2.8.45 00A0BA034A4E R4.2 2007-12-03 H323 SIP BRI] Transport: [sip:192.168.100.1:5060]
    09:45:19.086 CallCtrl::eek:nAnsweredCall [CM503002]: Call(146): Alerting sip:98425@192.168.100.3:5060
    09:45:17.844 MediaServerReporting::SetRemoteParty [MS210004] C:146.2:Offer provided. Connection(proxy mode): 192.168.100.1:7138(7139)
    09:45:17.824 CallCtrl::eek:nSelectRouteReq [CM503004]: Call(146): Calling: PSTNline:98425@[Dev:sip:98425@192.168.100.3:5060, Dev:sip:98427@192.168.100.3:5062, Dev:sip:98428@192.168.100.3:5064, Dev:sip:98429@192.168.100.3:5066]
    09:45:17.774 MediaServerReporting::SetRemoteParty [MS210000] C:146.1:Offer received. RTP connection: 127.0.0.1:42014(42015)
    09:45:17.764 CallCtrl::eek:nSelectRouteReq [CM503010]: Making route(s) to [sip:0226293412@192.168.100.1:5060]
    09:45:17.764 CallLeg::setRemoteSdp Remote SDP is set for legC:146.1
    09:45:17.764 Extension::printEndpointInfo [CM505001]: Ext.38: Device info: Device Identified: [Man: 3CX Ltd.;Mod: 3CX VoIP Client;Rev: 1] Capabilities:[reinvite, replaces, able-no-sdp, recvonly] UserAgent: [3CX Phone v0.1] Transport: [sip:192.168.100.1:5060]
    09:45:17.694 CallCtrl::eek:nIncomingCall [CM503001]: Call(146): Incoming call from Ext.38 to [sip:0226293412@192.168.100.1:5060]
    09:45:17.684 CallLeg::eek:nNewCall [CM500002]: Info on incoming INVITE:
    INVITE sip:0226293412@192.168.100.1:5060 SIP/2.0
    Via: SIP/2.0/UDP 127.0.0.1:5070;branch=z9hG4bK-d87543-4c11a40005681c11-1--d87543-;rport=5070;received=192.168.100.1
    Max-Forwards: 70
    Contact: [sip:38@127.0.0.1:5070]
    To: [sip:0226293412@192.168.100.1:5060]
    From: "3CXPhone"[sip:38@192.168.100.1:5060];tag=007d3e5a
    Call-ID: MTJhMmM3Y2RkY2FlOWY4ODA3NDBhMDZlMzVjOGI5NzI.
    CSeq: 2 INVITE
    Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, NOTIFY, REFER
    Proxy-Authorization: Digest username="38",realm="3CXPhoneSystem",nonce="12851423117:3348df4fab14f1d7986b9cf996d18822",uri="sip:0226293412@192.168.100.1:5060",response="e53e624f2668831449fc2a9d7da8098d",algorithm=MD5
    Supported: replaces
    User-Agent: 3CX Phone v0.1
    Content-Length: 0

    but, when I turn on debug on Patton 4638, I can see the following:

    192.168.100.3(ctx-cs)[switch]#19:13:32 SIP_TR> [GW] < Stack: from 192.168.100.1:5060
    INVITE sip:226293412@192.168.100.3:5060 SIP/2.0
    Via: SIP/2.0/UDP 192.168.100.1:5060;branch=z9hG4bK-d87543-e14dd521a3274754-1--d87543-;rport
    Max-Forwards: 70
    Contact: <sip:98425@192.168.100.1:5060>
    To: <sip:226293412@192.168.100.3:5060>
    From: "98425"<sip:98425@192.168.100.1:5060>;tag=0a10ca27
    Call-ID: NGJiOGY4OTFhZTc2NDJjNmJhYzIzOGE1NTVmNjRlYmE.
    CSeq: 1 INVITE
    Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REGISTER, SUBSCRIBE, NOTIFY, REFER, INFO
    Content-Type: application/sdp
    User-Agent: 3CXPhoneSystem 5.1.4287.0
    Content-Length: 297

    I was playing with the settings in "Provider / Provider Outbound Paremeters" with the "From: Display Name" and "From: User Part", but I couldn't find any field which will hold the correct internal extension number "38". "98425" in From field is the identification and the virtual extension of the Patton gateway. Can anybody have any idea?
     
  5. mschmidt

    Joined:
    Oct 25, 2007
    Messages:
    8
    Likes Received:
    0
    Update from me: @5qg4, your hints were right :) Actually I have both problems:

    [*] 3cx is always sending the Gateway Line's virtual extension number as the calling number instead of the real calling extension. No matter what I set or not set to the "Outbound caller ID" of the extension and of the virtual extension. I can even use the full national number as the outbound caller ID for the extension and even the virtual gateway extension (which doesn't make any sense of course), and still the Patton debug trace shows that 3cx is sending 10000 as the calling number. The provider outbound parameters were already set the way 5qg4 suggested.

    I'm in contact with 3cx support here in Germany, and hope to get a solution soon.

    [*] My telco actually needs the full national number as calling ID because we use more DID digits than we were originally assigned. Years ago, we had only one ISDN line and therefore only 1-digit extension numbers. Now we use three digits, which is not a problem with incoming calls, but outgoing you need the full number including area code, otherwise the extension is not recognized. The Patton call generator feature helped me a lot to sort this problem out.
     
  6. pnecas

    Joined:
    Mar 21, 2008
    Messages:
    3
    Likes Received:
    0
    I found out that I had to setup the "Outbound Caller ID" in the Edit Extension -> Other Options. But still the correct caller number is not displayed on the called phone correctly.

    192.168.100.3#00:08:00 SIP_TR> [GW] < Stack: from 192.168.100.1:5060
    INVITE sip:226293412@192.168.100.3:5060 SIP/2.0
    Via: SIP/2.0/UDP 192.168.100.1:5060;branch=z9hG4bK-d87543-a148c94c334d6f7b-1--d87543-;rport
    Max-Forwards: 70
    Contact: <sip:327311596@192.168.100.1:5060>
    To: <sip:226293412@192.168.100.3:5060>
    From: "327311596"<sip:327311596@192.168.100.1:5060>;tag=fb662232
    Call-ID: OGVkN2Q1Y2Q0ZDc1MWRkNWZiMjExMTk3MWFmM2FkOTI.
    CSeq: 1 INVITE
    Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REGISTER, SUBSCRIBE, NOTIFY, REFER, INFO
    Content-Type: application/sdp
    User-Agent: 3CXPhoneSystem 5.1.4287.0
    Content-Length: 297
     
  7. 5qg4

    5qg4 Active Member

    Joined:
    Jan 31, 2007
    Messages:
    643
    Likes Received:
    0
    Please try the following work around setting for temporary overcome the bug.

    At 3CX V5.x Gateway / Provider Outbound Parameters
    SIP Field (From : User Part ) Value ("CallerName" Caller's Name Default: From->Display Name)

    And put your full national number into "Outbound caller ID" field. 3CX will send your full national number as e164 calling number to your Patton gateway. Then your gateway will send this set number to your Telco. But the internal call also send the number as caller as well.

    The ideal case:
    3CX can correctly pass the extension number to gateway as e164 calling number. The "Outbound caller ID" field store the user's full name. Therefore, Telco can get the correct e164 calling number. And SIP users can see the full name of caller.

    Your can found what e164 calling number to your Patton by using following steps.
    1. Telnet to your Patton
    2. enable
    3. debug call-router
    4. debug call-control
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  8. mschmidt

    Joined:
    Oct 25, 2007
    Messages:
    8
    Likes Received:
    0
    That did the trick! 8) Thank you very much!

    Support already asked me to set outbound caller ID to the full number, but that alone had no effect at all. So there is clearly a bug in 3CX that will get fixed hopefully soon, but thank you very much for the way to work around it!
     
Thread Status:
Not open for further replies.