3cx cannot send symbol # in number

Discussion in '3CX Phone System - General' started by linker, Sep 2, 2011.

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

    Joined:
    Sep 2, 2011
    Messages:
    3
    Likes Received:
    0
    Hi.
    3CX have strange bug. If you configure to send for example 1111#444444 where 1111# is tech prefix 3cx send

    1111%2344444444.

    As i understand 3CX just not correctly work with UNICODE. because symbol # in unicode #
    and 0x23 in hex
    Does anybody know how to fix ?
    Small example of tcpdump (changed only ip adresses of orig and term party ):

    INVITE sip:30537%2331254310133@1.1.1.1:5061 SIP/2.0
    Via: SIP/2.0/UDP 192.168.252.60:5060;branch=z9hG4bK-d8754z-907ffa181c104955-1---d8754z-;rport
    Max-Forwards: 70
    Contact: <sip:31443787799@2.2.2.2:5060>
    To: <sip:30537%2331254310133@1.1.1.1:5061>
    From: "31443787799"<sip:31443787799@1.1.1.1:5061>;tag=6c48b315
    Call-ID: OTc5Yjk4ODU2MmIxNmYyYWFiODE3OGM1Y2JiMDc4MDE.
    CSeq: 1 INVITE
    Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REGISTER, SUBSCRIBE, NOTIFY, REFER, INFO, MESSAGE
    Content-Type: application/sdp
    Supported: replaces
    User-Agent: 3CXPhoneSystem 10.0.20085.0
    Content-Length: 308

    But normally it must be
    INVITE sip:30537#31254310133@1.1.1.1:5061 SIP/2.0 etc
     
  2. nbailey

    nbailey Member

    Joined:
    Jan 31, 2011
    Messages:
    359
    Likes Received:
    0
    Hello,

    3CX strips anything not numbers, this is not a bug but by design. It doesn't allow ' in names or other characters. Only the SKYPE prefix for dialing skype numbers. This is a security risk if we allow special characters to be dialed. The % is the space left when it stripped the pound sign.

    Thanks,
    Nate
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  3. SY

    SY Well-Known Member
    3CX Support

    Joined:
    Jan 26, 2007
    Messages:
    1,825
    Likes Received:
    2
    It is defined in RFC3261:

    alphanum = ALPHA / DIGIT
    unreserved = alphanum | mark
    mark = "-"|"_"|"."|"!"|"~"|"*"|"'"|"("|")"
    escaped = "%" HEXDIG HEXDIG

    SIP-URI = "sip:" [userinfo] hostport uri-parameters [ headers ]
    userinfo = (user|telephone-subscriber) [ ":" password ] "@"
    user = 1*(unreserved|escaped|user-unreserved)
    user-unreserved = "&"|"="|"+"|"$"|","|";"|"?"|"/"
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  4. linker

    Joined:
    Sep 2, 2011
    Messages:
    3
    Likes Received:
    0
    It is all good
    but look on table 19.1.2 Character Escaping Requirements in RFC 3261

    user -- o o o o o o
    password -- o o o o o o
    host -- m m m m m m
    port (1) o - - o o o
    user-param ip o o o o o o
    method INVITE - - - - - o
    maddr-param -- o - - o o o
    ttl-param 1 o - - o - o
    transp.-param (2) o - - o o o
    lr-param -- o - - - o o
    other-param -- o o o o o o
    headers -- - - - o - o

    For INVITE it must not be escaped.
     
  5. leejor

    leejor Well-Known Member

    Joined:
    Jan 22, 2008
    Messages:
    10,368
    Likes Received:
    229
    Yes, I came across this frustration a couple of years back when trying to send a PSTN feature activation code (78#) to a SPA3102 FXO. It is unfortunate that there has (so far) not been a way around this.
     
  6. linker

    Joined:
    Sep 2, 2011
    Messages:
    3
    Likes Received:
    0
    hm. I am not right
     
  7. SY

    SY Well-Known Member
    3CX Support

    Joined:
    Jan 26, 2007
    Messages:
    1,825
    Likes Received:
    2
    You are right, but context of 19.1.2 is specified in context on 19.1.1
    What is wrong and what is right in your specific case?

    Let's talk about concrete things.

    Thanks
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
Thread Status:
Not open for further replies.