VoIP hardware is developing fast - this is where you ask all those “how do I make my SIP Telephone, Adapter or Asterisk box work with my voip provider?” questions.

Advertisement

By Sponsor
User avatar
By WelshPaul
#637
Can you change the following parameter for me on your OBi110:

Line > RingDelay (Under The Line Port Settings) > 4000 (Original Default)

I'm thinking that maybe the OBi110 does not like the UK setting of 400 and as SpoofCallerID did not work when I recommended enabling it earlier in the thread I would set it back to disabled.

I see your using google DNS, as listed here https://developers.google.com/speed/public-dns/ the IP addresses for google DNS are 8.8.8.8 and 8.8.4.4 however I noticed your using 8.8.8.8 and 8.8.8.4

I'm still going through the rest of your XML file. Remember to save and reboot any changes.

Advertisement

By Sponsor
By mash
#638
WelshPaul wrote:Can you change the following parameter for me on your OBi110:
Line > RingDelay (Under The Line Port Settings) > 4000 (Original Default)
I've changed the RingDelay to 4000 and out of 20 test calls, 5 failed to have caller id detected.
I noticed your using 8.8.8.8 and 8.8.8.4
Thanks for pointing it out

The failure to detect caller id is so random! I've changed the adsl filter and this has made no difference. Thank you for taking the time to look through my settings.
User avatar
By WelshPaul
#639
Well after looking at your settings everything is as it should be.

My next step was to ask you to change any micro filters and unplug any extensions. If plugging your phone directly in to the socket results in the caller ID working every time and the same result when plugging the phone directly into the micro filter it points to the OBi being at fault. Have you tried factory resetting the OBi testing it with it's default factory settings in place and then setting it back up from scratch?

It could be a simple case of a faulty OBi110, is it under warranty? If you got it of amazon they pay return postage so you could try replacing it. Trouble is if something on the line is interfering with the OBI you may get the same result with the replacement but at least you will know the OBi itself wasn't faulty.
By mash
#642
WelshPaul wrote:Have you tried factory resetting the OBi testing it with it's default factory settings in place and then setting it back up from scratch?
I'll try that tomorrow.
It could be a simple case of a faulty OBi110, is it under warranty? If you got it of amazon they pay return postage so you could try replacing it. Trouble is if something on the line is interfering with the OBI you may get the same result with the replacement but at least you will know the OBi itself wasn't faulty.
I've got about 2 weeks to return it to Amazon under their returns policy, so unless I can get caller id to be reliable that's what I'll do.

Thanks again,
mash
By mash
#645
Hi WelshPaul,

SUCCESS!!! I did as you suggested and returned the OBi110 back to default factory settings and caller id detected on every call even though CallerIDDetectMethod was the US method i.e. FSK(Bell 202). I then set up the SIP connection to the Asterisk server but the caller id was not being passed until I set X_SpoofCallerID = Yes.

I've sent you my OBi110 settings.

Thank you for all your help,
Cheers,
mash
User avatar
By WelshPaul
#646
Glad to see it's working now. Have you tried setting it back to FSK(V.23) and tested it? Sometimes with the OBi's when a software update is done I have found quirks develop that takes a reset or two to fix. Did you do a software update by any chance recently?

It could be that the Asterisk on your PI has settings or two that is set for the US telecoms system and changing the OBi110 to the UK value causes a problem.

Be interesting to see if the caller ID still fails when set to FSK(V.23).

I have a raspberry PI here running FreePBX, I also have an OBi202 with OBiLINE attached but sadly I am 100% VoIP now so unable to test the PSTN side of things.

I will take a look through the XML you sent me and see if anything stands out later. :thumbsup:
By mash
#647
WelshPaul wrote:Did you do a software update by any chance recently?
I think it auto updated to 2872 recently.
Be interesting to see if the caller ID still fails when set to FSK(V.23).
I'll give it a few days before I start tinkering again!
By mash
#653
I've got caller id working and the OBi110 Peer Number is coming through to Asterisk as CALLERID(num). However, Peer Name is not being passed to Asterisk as CALLERID(name). The OBi110 log is showing some calls with Peer Name as WITHHELD and UNAVAILABLE and I want to handle these two types of calls differently in Asterisk. Does anyone know how to configure the OBi110 so that the Peer Name is passed in the SIP message that is sent to Asterisk.
User avatar
By ObihaiMark
#656
Can you install a syslog app (if you don't have one installed already) and grab a syslog of the incoming call behaviour? You can setup syslog in System Management -> Device Admin and then setup SIP debugging via Voice Services -> SPx Service, find X_SipDebugOption and set this to "Log all messages". From here we should be able to see what the OBi is receiving from the service provider and ensure the correct values are getting mapped across in the Caller ID.
By mash
#665
ObihaiMark wrote:Can you install a syslog app (if you don't have one installed already) and grab a syslog of the incoming call behaviour?
Here is the syslog of a Withheld call ...
Code: Select all
Sep 12 23:12:05 OBi110.lan  [DAA]: POLARITY REVERSAL (-50 V)
Sep 12 23:12:05 OBi110.lan  [0]DAA PolRev
Sep 12 23:12:06 OBi110.lan  ------ caller id (pcm_id: 1) received! ------------
Sep 12 23:12:06 OBi110.lan  [0]DAA CND 09122312,,WITHHELD,,,
Sep 12 23:12:06 OBi110.lan  [0]DAA CND 09122312,,WITHHELD,,,
Sep 12 23:12:08 OBi110.lan  [DAA]: FXO ring on
Sep 12 23:12:08 OBi110.lan  [0]Ring On
Sep 12 23:12:08 OBi110.lan  FXO:NewTermState:ringing
Sep 12 23:12:11 OBi110.lan  RTP:DtmfTxMtd:1(1),0
Sep 12 23:12:11 OBi110.lan  fxo: cp answered
Sep 12 23:12:11 OBi110.lan  [DAA]: FXO OFFHOOK
Sep 12 23:12:11 OBi110.lan  FXO:NewTermState:offhook
Sep 12 23:12:11 OBi110.lan  FXO:Stop Tone
Sep 12 23:12:11 OBi110.lan  RTP:Start->c0a80145:12436(80);0;0;0:0:0;0(17)
Sep 12 23:12:11 OBi110.lan  [DAA] FXO ring off 
Sep 12 23:12:11 OBi110.lan  [DAA]: POLARITY REVERSAL (7 V)
Sep 12 23:12:11 OBi110.lan  [0]DAA PolRev
Sep 12 23:12:14 OBi110.lan  [DAA]: CPC DETECTED ( 160 ms, 6 v ) 
Sep 12 23:12:14 OBi110.lan  [0]DAA CPC
Sep 12 23:12:14 OBi110.lan  FXO tell cc end-call
Sep 12 23:12:14 OBi110.lan  RTP:Del Channel
Sep 12 23:12:14 OBi110.lan  [JB] call overall status --      
peer:             192.168.1.69:12436,
local:            192.168.1.108:16800,
pkt_tx:           138,
pkt_rx:           80,
bytes_tx:         23736,
bytes_rx:         13760,
clk_diff:         0 PPM,
pkt_in_jb:        9,
pkt_ooo:          0,
pkt_lost:         0,
pkt_late:         0,
pkt_loss_rate:    0 %,
pkt_drop_rate:    0 %,
jb_len:           190 ms,
curr_rcvd_jitter: 0 ms,
rcvd_digits:      0,
underruns:        0,
overruns:         0,
seq_num_broken:   0,
pkt_interp:       0,
skew_comp:        0 ms,
frm_in_pkt:       2
Sep 12 23:12:14 OBi110.lan  [DAA]: FXO ONHOOK MONITOR
Sep 12 23:12:14 OBi110.lan  FXO:NewTermState:onhook
Sep 12 23:12:14 OBi110.lan  [DAA]: FXO ONHOOK MONITOR
Sep 12 23:12:14 OBi110.lan  [0]DAA FXO: ON-HOOK, PARA HANDSET: OFF-HOOK
Sep 12 23:12:14 OBi110.lan  FXO:NewTermState:line in use
Sep 12 23:12:15 OBi110.lan  [DAA]: CPC DETECTED ( 461 ms, 49 v ) 
Sep 12 23:12:15 OBi110.lan  [0]DAA CPC
Sep 12 23:12:15 OBi110.lan  [DAA]: FXO ONHOOK MONITOR
Sep 12 23:12:15 OBi110.lan  [0]DAA FXO: ON-HOOK, PARA HANDSET: ON-HOOK
Sep 12 23:12:15 OBi110.lan  FXO:NewTermState:onhook
... but although the caller id shows that it is a Withheld call, this is not passed to Asterisk, here it sees CALLERID(num)='Trunk Name' and CALLERID(name) is null.

I came across this site: http://tech.iprock.com/?p=6416 and it shows how to get the Peer Name from the OBi device's Call Status page when the call arrives by executing an AGI in the OBi110 trunk custom context. I had to change the code slightly to get it to work as there is no caller id present in the calls that this AGI is required for. Here it is if anyone is interested in using it ...
Code: Select all
#!/usr/bin/env perl

use Asterisk::AGI;
use LWP::UserAgent;

my $ip='Your_OBi_device_fixed_IP_address';
my $pw='Your_OBi_device_admin_password';
my $obi='admin@OBi110';

$AGI = new Asterisk::AGI;
$UA  = new LWP::UserAgent;

my %input = $AGI->ReadParse();
my $url = "http://$ip//callstatus.htm";
$UA->timeout(3);
$UA->credentials("$ip:80", $obi, 'admin', $pw);
my $request = HTTP::Request->new('GET');
$request->url($url);
$request = $UA->request($request)->content;
my $pos = index $request, '<td>Peer Name<td>';
if ($pos == -1) {exit(0)};
my $pos2 = index $request, '<td>', $pos+17;
if ($pos2 == -1) {exit(0)};
$request = substr($request, $pos+17, $pos2-$pos-17);
$AGI->exec('Set', "CALLERID(name)=$request");
exit(0);
As stated previously, I want to distinguish between WITHHELD and UNAVAILABLE calls when there is no caller id.

Advertisement

By Sponsor

Just found out that the latest firmware build for …

Supported Products: OBi504vs OBi508vs Firm…

Supported Products: OBi200 OBi202 OBi300 OB…

These are unlocked and unbranded Snom 760 IP Phone…