Parse Exception thrown on CID name with SPA3102

Status
Not open for further replies.

jlag

Joined
Feb 14, 2011
Messages
34
Reaction score
0
Using an SPA3102 as FXO Gateway to POTS, FXS is disabled on the device as well as the router.

When I call in to 3cx with a CID that cannot resolve name all works fine (my cell phone for example) and CID number is received as well.
When I call in to 3cx with a CID that resolves name with my name "LASTNAME,FIRSTNAME" (Verizon PTSN) I receive the folowing in the log and the call is not delivered (I have changed my last name in the log to MYLASTNAME):

Code:
14:03:47.025  Exception thrown in TransactionStatehandleBadRequest. This shouldn't happen. ParseException .\ParseBuffer.cxx:949, Parse failed unexpected eof in context: From
  MYLASTNAME
         ^
   @ .\ParseBuffer.cxx:949
14:03:45.023  Exception thrown in TransactionStatehandleBadRequest. This shouldn't happen. ParseException .\ParseBuffer.cxx:949, Parse failed unexpected eof in context: From
  MYLASTNAME
         ^
   @ .\ParseBuffer.cxx:949
14:03:44.021  Exception thrown in TransactionStatehandleBadRequest. This shouldn't happen. ParseException .\ParseBuffer.cxx:949, Parse failed unexpected eof in context: From
  MYLASTNAME
         ^
   @ .\ParseBuffer.cxx:949
14:03:43.971  Exception thrown in TransactionStatehandleBadRequest. This shouldn't happen. ParseException .\ParseBuffer.cxx:949, Parse failed unexpected eof in context: From
  MYLASTNAME
         ^
   @ .\ParseBuffer.cxx:949
14:03:43.530  Exception thrown in TransactionStatehandleBadRequest. This shouldn't happen. ParseException .\ParseBuffer.cxx:949, Parse failed unexpected eof in context: From
  MYLASTNAME
         ^
   @ .\ParseBuffer.cxx:949
14:03:35.970  Exception thrown in TransactionStatehandleBadRequest. This shouldn't happen. ParseException .\ParseBuffer.cxx:949, Parse failed unexpected eof in context: From
  MYLASTNAME
         ^
   @ .\ParseBuffer.cxx:949
14:03:31.974  Exception thrown in TransactionStatehandleBadRequest. This shouldn't happen. ParseException .\ParseBuffer.cxx:949, Parse failed unexpected eof in context: From
  MYLASTNAME
         ^
   @ .\ParseBuffer.cxx:949
14:03:29.971  Exception thrown in TransactionStatehandleBadRequest. This shouldn't happen. ParseException .\ParseBuffer.cxx:949, Parse failed unexpected eof in context: From
  MYLASTNAME
         ^
   @ .\ParseBuffer.cxx:949
14:03:28.970  Exception thrown in TransactionStatehandleBadRequest. This shouldn't happen. ParseException .\ParseBuffer.cxx:949, Parse failed unexpected eof in context: From
  MYLASTNAME
         ^
   @ .\ParseBuffer.cxx:949
14:03:28.479  Exception thrown in TransactionStatehandleBadRequest. This shouldn't happen. ParseException .\ParseBuffer.cxx:949, Parse failed unexpected eof in context: From
  MYLASTNAME
         ^
   @ .\ParseBuffer.cxx:949
14:00:16.933  Exception thrown in TransactionStatehandleBadRequest. This shouldn't happen. ParseException .\ParseBuffer.cxx:949, Parse failed unexpected eof in context: From
  MYLASTNAME
         ^
   @ .\ParseBuffer.cxx:949
14:00:12.938  Exception thrown in TransactionStatehandleBadRequest. This shouldn't happen. ParseException .\ParseBuffer.cxx:949, Parse failed unexpected eof in context: From
  MYLASTNAME
         ^
   @ .\ParseBuffer.cxx:949
14:00:08.942  Exception thrown in TransactionStatehandleBadRequest. This shouldn't happen. ParseException .\ParseBuffer.cxx:949, Parse failed unexpected eof in context: From
  MYLASTNAME
         ^
   @ .\ParseBuffer.cxx:949
14:00:04.936  Exception thrown in TransactionStatehandleBadRequest. This shouldn't happen. ParseException .\ParseBuffer.cxx:949, Parse failed unexpected eof in context: From
  MYLASTNAME
         ^
   @ .\ParseBuffer.cxx:949
14:00:00.940  Exception thrown in TransactionStatehandleBadRequest. This shouldn't happen. ParseException .\ParseBuffer.cxx:949, Parse failed unexpected eof in context: From
  MYLASTNAME
         ^
   @ .\ParseBuffer.cxx:949
13:59:56.935  Exception thrown in TransactionStatehandleBadRequest. This shouldn't happen. ParseException .\ParseBuffer.cxx:949, Parse failed unexpected eof in context: From
  MYLASTNAME
         ^
   @ .\ParseBuffer.cxx:949
13:59:52.939  Exception thrown in TransactionStatehandleBadRequest. This shouldn't happen. ParseException .\ParseBuffer.cxx:949, Parse failed unexpected eof in context: From
  MYLASTNAME
         ^
   @ .\ParseBuffer.cxx:949
13:59:52.648  Exception thrown in TransactionStatehandleBadRequest. This shouldn't happen. ParseException .\ParseBuffer.cxx:949, Parse failed unexpected eof in context: From
  MYLASTNAME
         ^
   @ .\ParseBuffer.cxx:949
13:59:48.943  Exception thrown in TransactionStatehandleBadRequest. This shouldn't happen. ParseException .\ParseBuffer.cxx:949, Parse failed unexpected eof in context: From
  MYLASTNAME
         ^
   @ .\ParseBuffer.cxx:949
13:59:48.653  Exception thrown in TransactionStatehandleBadRequest. This shouldn't happen. ParseException .\ParseBuffer.cxx:949, Parse failed unexpected eof in context: From
  MYLASTNAME
         ^
   @ .\ParseBuffer.cxx:949
13:59:46.940  Exception thrown in TransactionStatehandleBadRequest. This shouldn't happen. ParseException .\ParseBuffer.cxx:949, Parse failed unexpected eof in context: From
  MYLASTNAME
         ^
   @ .\ParseBuffer.cxx:949
13:59:45.939  Exception thrown in TransactionStatehandleBadRequest. This shouldn't happen. ParseException .\ParseBuffer.cxx:949, Parse failed unexpected eof in context: From
  MYLASTNAME
         ^
   @ .\ParseBuffer.cxx:949
13:59:45.889  Exception thrown in TransactionStatehandleBadRequest. This shouldn't happen. ParseException .\ParseBuffer.cxx:949, Parse failed unexpected eof in context: From
  MYLASTNAME
         ^
   @ .\ParseBuffer.cxx:949
13:59:45.438  Exception thrown in TransactionStatehandleBadRequest. This shouldn't happen. ParseException .\ParseBuffer.cxx:949, Parse failed unexpected eof in context: From
  MYLASTNAME
         ^
   @ .\ParseBuffer.cxx:949
13:59:44.647  Exception thrown in TransactionStatehandleBadRequest. This shouldn't happen. ParseException .\ParseBuffer.cxx:949, Parse failed unexpected eof in context: From
  MYLASTNAME
         ^
   @ .\ParseBuffer.cxx:949
13:59:40.651  Exception thrown in TransactionStatehandleBadRequest. This shouldn't happen. ParseException .\ParseBuffer.cxx:949, Parse failed unexpected eof in context: From
  MYLASTNAME
         ^
   @ .\ParseBuffer.cxx:949
  MYLASTNAME
   @ .\ParseBuffer.cxx:949
  MYLASTNAME
   @ .\ParseBuffer.cxx:949
  MYLASTNAME
   @ .\ParseBuffer.cxx:949
  MYLASTNAME
   @ .\ParseBuffer.cxx:949
  MYLASTNAME
   @ .\ParseBuffer.cxx:949
  MYLASTNAME
   @ .\ParseBuffer.cxx:949
  MYLASTNAME
   @ .\ParseBuffer.cxx:949
  MYLASTNAME
   @ .\ParseBuffer.cxx:949
  MYLASTNAME
   @ .\ParseBuffer.cxx:949
  MYLASTNAME
   @ .\ParseBuffer.cxx:949
  MYLASTNAME
   @ .\ParseBuffer.cxx:949
  MYLASTNAME
   @ .\ParseBuffer.cxx:949
  MYLASTNAME
   @ .\ParseBuffer.cxx:949
  MYLASTNAME
   @ .\ParseBuffer.cxx:949
  MYLASTNAME
   @ .\ParseBuffer.cxx:949
  MYLASTNAME
   @ .\ParseBuffer.cxx:949
  MYLASTNAME
   @ .\ParseBuffer.cxx:949
  MYLASTNAME
   @ .\ParseBuffer.cxx:949
  MYLASTNAME
   @ .\ParseBuffer.cxx:949
  MYLASTNAME
   @ .\ParseBuffer.cxx:949
  MYLASTNAME
   @ .\ParseBuffer.cxx:949
  MYLASTNAME
   @ .\ParseBuffer.cxx:949
  MYLASTNAME
   @ .\ParseBuffer.cxx:949
  MYLASTNAME
   @ .\ParseBuffer.cxx:949
  MYLASTNAME
   @ .\ParseBuffer.cxx:949
  MYLASTNAME
   @ .\ParseBuffer.cxx:949

I am trying to think of where I have this string MYLASTNAME (in the PBX setup, as well as the FXO setup) as a standalone string and can't seem to find it. The PSTN device is setup to ring directly to an extension that has a different last and first name then the CID name string as well.

The Display Name in the 3102 setup is numeric only, and not a part of the incoming CID number.
 
The comma between names has caused problems before....http://www.3cx.com/forums/problem-with-spa3102-passing-invalid-caller-id-names-8379-15.html#p54313
 
Yes, it appears this is not fixable.

I can't believe the firmware will not be fixed for this device.

SPA3102 is not going to work out for me.
 
Perhaps not that many providers insert a comma, for it to be an issue, that Cisco/Linksys wants to spend money fixing (I've personally never seen it myself). But,it might be worth pestering them on one of their forums. They might actually have an update in the works, one just came out for the 2102.
 
Yes, I'll post something up there. It does look as though others have tried though.

Verizon uses the comma, perhaps the only provider... but certainly a big one :)
 
It may come down to ...who is adhering to "standards", Linksys or Verizon. One, both?
 
Yes, spec does state to put it in quotes for SIP, should Verizon put it in quotes over PSTN, interesting question. There are other Gateways out there that will quote the CID data in the INVITE, I just have to find them, as 60%+ of my calls are from "LastName,FirstName" CID.

I think a protocol that uses plain text for field delimiters (such as the comma) is just asking for issues such as this, no matter what you do.

Think about using a .CSV file, a very popular data exchange file format, MS Excel even "recognizes" it:

Doesn't work in the EU as the decimal seperator is the comma.
Doesn't work in the US as the thousands seperator is the comma.
 
I've got this problem, too.
Has anyone solved it? Losing all my Verizon incoming calls - unacceptable.

Will Patton Smartnode have this problem?

thanks
 
Verizon customers, that are experiencing this issue, should be putting pressure on them, to change how they send the name (without the comma/double quotes). Other North American, PSTN providers, seem to be able to do so, why not them?

Send this link to them http://www.ietf.org/rfc/rfc3261.txt

and have them go to page 166.

Same issue with this guy (from 2009), and no reply to his post.
 
Problem solved: returned SPA3101 and bought Patton 4112.
 
Does anyone know if this problem was solved? Or is there a workaround?

-Saman
 
I have not heard one way or the other. It would require a firmware change on the 3102 (don't think that the latest has made a difference), or a change in how Verizon sends caller ID. Perhaps someone using Verizons services can confirm.

The work around would be to not use a 3102, or disable caller ID.
 
3CX bug: Parse Exception thrown on CID name with SPA3102

Hope 3CX can check for the offending string and fix it or catch the exception without dropping the call. 3CX should fix this. It is not good practice to throw an exception and drop a call for such a trivial invalid input. The exception text "Exception thrown in TransactionStatehandleBadRequest. This shouldn't happen" makes it clear that something unexpected happened in this instance. So 3CX should take care of it.

-Saman
 
I would not hold your breath. As far as I'm aware, the 3102 is no longer "officially" supported. You'd probably have more luck getting Cisco to fix the issue in a firmware update.
 
Status
Not open for further replies.

Members Online Now

Forum statistics

Threads
111,834
Messages
589,287
Members
164,664
Latest member
dominik.pepel