News:

On Tuesday September 6th the forum will be down for maintenance from 9:30 PM to 11:59 PM PDT

Main Menu

freephoneline (fongo) caller id name (CNAM) showing as "PHONE 1" or "PHONE 2"

Started by shawn_, July 27, 2012, 10:46:10 PM

Previous topic - Next topic

shawn_

I've configured my Obi202 with freephonline.ca (by fongo) and its sending my caller id name (CNAM) as "PHONE 1" or "PHONE 2" depending on which physical phone port I'm connected to. I've set Voice CallerIDName correctly which works correctly for my voip.ms account. I've also enabled and disabled the X_SpoofCallerID setting which made no difference. I know freephoneline supports caller id name because the computer app has a "caller info" setting that does pass value to the CNAM. It seems as if freephoneline is taking a different field instead of the CNAM. Does anybody know which field it is using or if I can change it somehow? I've looked everywhere in the config for a value of "PHONE 1" but cannot find it.

shawn_

Ok So after much packet sniffing, trial and error and shear dumb luck I've solved my own problem ...
TL;DR
I fixed the problem by setting up my Freephoneline account as a "voip.ms" account in the basic device configuration (instead of a "Generic Service Provider") and then overrode the ITSP Profile > ProxyServer to be "voip.freephoneline.ca"

Here are the details ...
So as I noted in my first post I realized that my voip.ms account was correctly passing the Caller ID Name and my freephoneline account was not. So I pulled out my old windows laptop I had laying around and plugged in my Obi into the ethernet port and then set up internet connection sharing on the wifi connection. I then fired up wireshark on the laptop and began sniffing traffic as I made calls on both accounts. Here are the INVITE request headers for the 2 accounts

Freephoneline
INVITE sip:6045551234@voip.freephoneline.ca:5060 SIP/2.0
Call-ID: 147e4c9b@192.168.137.14
Content-Length: 310
CSeq: 8001 INVITE
From: "PHONE 2" <sip:002@voip.freephoneline.ca>;tag=SP21fdc3c587ede25ea
Max-Forwards: 70
To: <sip:6045551234@voip.freephoneline.ca>
Via: SIP/2.0/UDP 192.168.137.14:5061;branch=z9hG4bK-fffd714;rport
User-Agent: OBIHAI/OBi202-3.0.0.3184
Contact: "My Name" <sip:17785551234@50.68.1.1:61348>
Expires: 60
Supported: replaces
Allow: ACK,BYE,CANCEL,INFO,INVITE,NOTIFY,OPTIONS,PRACK,REFER,UPDATE
Remote-Party-ID: "PHONE 2" <sip:002@voip.freephoneline.ca>;party=calling;privacy=off
Content-Type: application/sdp

Voip.ms
INVITE sip:16045551234@seattle.voip.ms:5060 SIP/2.0
Call-ID: af981af2@192.168.137.14
Content-Length: 310
CSeq: 8001 INVITE
From: "My Name" <sip:1234@seattle.voip.ms>;tag=SP3cefedb7cfddfc5e4
Max-Forwards: 70
To: <sip:16045551234@seattle.voip.ms>
Via: SIP/2.0/UDP 192.168.137.14:5062;branch=z9hG4bK-2db6787e;rport
User-Agent: OBIHAI/OBi202-3.0.0.3184
Contact: "My Name" <sip:1234@50.68.1.1:61347>
Expires: 60
Supported: replaces
Allow: ACK,BYE,CANCEL,INFO,INVITE,NOTIFY,OPTIONS,PRACK,REFER,UPDATE
Remote-Party-ID: "My Name" <sip:1234@seattle.voip.ms>;party=calling;privacy=off
Content-Type: application/sdp

So I quickly realized that the From header contained the caller ID name that was passed to my Canadian home phone. I started researching the SIP protocol and determined that in Canada our phone system does not use a CNAM lookup to find the caller ID name in a 3rd party database. Instead the name that is passed in the SIP Invite message is used, which actually makes more sense but anyways ...
Details here http://wiki.voip.ms/article/Caller_ID
I started playing with a bunch of values on my Freephoneline ITSP profile and Voice Service settings to no avail. I compared them with my voip.ms settings and found they were identical! In a blind fit or rage I figured I must have missed something, so I setup my sp4 account (which was previously unused) as another Freephoneline account, but by random dumb luck I decided to choose the account type as "voip.ms" because I knew that I could change the ProxyServer address after the initial setup of the account. So after the initial setup I changed the ProxyServer to voip.freephoneline.ca and voila it worked! I don't know exactly why it worked, but I suspect that there is an undocumented inaccessible setting that can only be setup by picking a preconfigured service provider (like voip.ms). I'm guessing that when you select Generic Service Provider most people use this setting with an American voip provider that uses CNAM so this problem doesn't affect them.

Stewart

IMO there are no hidden settings.  In all cases, the Contact header will have the configured name and user ID, but that's not what a provider will use for outbound name.

I believe that the From and Remote-Party-ID headers (provider will use one of those for the name) are set as follows:

If X_SpoofCallerID is off, then the value of CallerIDName will be used for the name; the value of AuthUserName for the number.

If X_SpoofCallerID is on but a spoofed number is not supplied, then Phone 1 (or Phone 2) will be used for the name and 001 (or 002) for the number.

If X_SpoofCallerID is on and a spoofed number is supplied, then Phone 1 (or Phone 2) will be used for the name; the supplied number will be sent as the number.


shawn_

Quote from: Stewart on August 08, 2012, 01:13:38 AM
If X_SpoofCallerID is off, then the value of CallerIDName will be used for the name; the value of AuthUserName for the number.
This is not the case when the service is setup as a "Generic Service Provider" ... the CallerIDName is not used at all. Its as if X_SpoofCallerID was on.

Stewart

Quote from: shawn_ on August 10, 2012, 10:53:36 PM
Quote from: Stewart on August 08, 2012, 01:13:38 AM
If X_SpoofCallerID is off, then the value of CallerIDName will be used for the name; the value of AuthUserName for the number.
This is not the case when the service is setup as a "Generic Service Provider" ... the CallerIDName is not used at all. Its as if X_SpoofCallerID was on.
I don't know what may be happening in your unit.  I have never configured an OBi via the OBiTalk portal -- I view that as a needless additional layer of complexity and mystery, as well as a potential source of reliability issues.  So, I can definitely state that nothing in my unit has ever been set up as a Generic Service Provider, nor as VoIP.ms.

I suppose that you could compare two configuration backup files: one taken with the Generic setup (after confirming that the name is sent as Phone 1) and one with VoIP.ms and modified ProxyServer setting (after confirming that CallerIDName is passed correctly).

There are three possible outcomes:

1. No differences.  That would confirm your theory of a hidden setting.

2. A difference, but one over which there is no control in the Web interface.  That would confirm your theory of a hidden setting, but at least we would have a way to control it, independent of OBiTalk.

3. A difference in a normal accessible parameter.  We would learn that setting Generic affects some parameter that went previously unnoticed.

QBZappy

I've used a tool called Beyond Compare in the past to find differences as you suggested. There are other similar tools that will do the same job. Even using M$ Excell will give you an idea since the file isn't very big.
Owner of the 1st OBi110/100 units in service in Canada & South America. 1st OBi202 on my street. 1st OBi1032 in Montreal.