NEED MORE INFO Help Please -- Asteridex on Raspberry Pi 2

dandy_don

Member
Joined
Sep 27, 2010
Messages
173
Reaction score
11
Hello,

I need some help... My old server just died after running for nearly 4 years! Thanks to Ward and all the great folks here -- it was a good server and I've learned a lot in that time.

I am setting up a replacement server with a Raspberry Pi 2 following the instructions at this link http://nerdvittles.com/?p=12233
I have the server up and running with Vitelity. Calls in and out are great, etc. I now am trying to get Asteridex to work. E-mail of voicemail doesn't work but I'll tackle that later...

Asteridex works to make calls to 800 numbers such as the default airline numbers in the database. However, other numbers (not 800 numbers) fail. I've tried following the instructions shown here:
http://bestof.nerdvittles.com/applications/asteridex4/

But I'm clearly missing something or doing something wrong. I also can't seem to locate extensions_additional.conf as described in the instructions. I had this working fine on the recently deceased server but not so much luck with the new server.
The server cli output is in the attachment. I'm trying to call a restaurant that is stored in the database... The number is valid and this is the exact database used on the previous server, which I have uploaded to the new server. I am able to successfully dial this number from any extension but it fails when attempting to have Asteridex make the call. I've modified the target and source phone number to protect the restaurant and myself...

The "odd" thing is that it seems to roll over from Vitelity and attempt to use all the other trunks although they are not enabled/registered, etc.

Any help is greatly appreciated!
Thanks,
Don
 

Attachments

  • server_cli.txt
    11.4 KB · Views: 2

dandy_don

Member
Joined
Sep 27, 2010
Messages
173
Reaction score
11
OK -- I found the extensions_additional.conf but there is no longer any reference to "OUT_1", etc., as discussed in the instructions... And from the looks of the output that it is already configured to try "outbound-allroutes", so the instructions are probably no longer applicable??

I do not have google voice, just Vitelity. From the cli, it appears that the call tries to go out via google voice but then falls over to Vitelity (as it should). A snippet is shown below. After it flows to Vitelity, it fails due to "Got SIP response 480 "Temporarily unavailable" back from 66.241.96.164:5060" then rolls over to the remaining trunks which are not registered, etc. The number that I'm trying to call which is stored in Asteridex is 937XXXXXXX. I'm able to call this number directly and it works fine. However it fails in Asteridex...



-- Executing [9373200868@outbound-allroutes:4] Set("SIP/6001-0000002d", "CALLERID(num)=8005551212") in new stack
-- Executing [9373200868@outbound-allroutes:5] Dial("SIP/6001-0000002d", "Motif/GoogleVoice/[email protected]") in new stack
== Everyone is busy/congested at this time (1:0/0/1)
-- Executing [937XXXXXXX@outbound-allroutes:6] Dial("SIP/6001-0000002d", "SIP/Vitelity/937XXXXXXX") in new stack
== Using SIP RTP CoS mark 5
-- Called SIP/Vitelity/937XXXXXXX
-- Got SIP response 480 "Temporarily unavailable" back from 66.241.96.164:5060
-- SIP/Vitelity-0000002e is circuit-busy
== Everyone is busy/congested at this time (1:0/1/0)
-- Executing [937XXXXXXX@outbound-allroutes:7] Dial("SIP/6001-0000002d", "SIP/lesnet_peer/1937XXXXXXX") in new stack


:banghead: What I don't understand is why the 800XXXXXXX numbers all work fine but any other number fails?!?
Any Ideas?
 

synack

Guru
Joined
Dec 31, 2013
Messages
227
Reaction score
56
Crazy question, but does vitelity require any prefixes like a 1? 800 being "free" might bypass that requirement.
 

rossiv

Guru
Joined
Oct 26, 2008
Messages
2,624
Reaction score
139
synack That was going to be my suggestion. If so, I recommend modifying the trunk to reflect that in FreePBX

Edit Oh. It's Asterisk GUI. Can't help there.
 

dandy_don

Member
Joined
Sep 27, 2010
Messages
173
Reaction score
11
No -- Vitelity appears to just use 10 digit format NXXNXXXXXX. I have my entries setup in Asteridex in this 10-digit form. The numbers stored there fail when using Asteridex but work fine when dialed directly. I've tried loading "1" or not load "1" per the instructions, as well as stripping off the first digit when "1" is preloaded in Asteridex but that fails miserably also.

This Asteridex database is the exact database that worked perfectly on the now-dead, previous Incredible PBX setup
 

AndyInNYC

Active Member
Joined
May 23, 2013
Messages
772
Reaction score
124
May I suggest that you use the cli to capture the 'bad' call and a good call to the 'same' number and look at the differences. Something may pop out. In looking at the cli you posted I see two different trunks (google and another).
By the way, if you did post that in the txt file, I missed it and you can ignore this.

Andrew
 

wardmundy

Nerd Uno
Joined
Oct 12, 2007
Messages
19,200
Reaction score
5,218
Agree with AndyInNYC. Make the same call to the same number by manually dialing it and post the same CLI output that you posted for the AsteriDex call above. Something apparently is different. We just need to figure out what it is.
 

dandy_don

Member
Joined
Sep 27, 2010
Messages
173
Reaction score
11
Directly dialing “China Wok”....

Connected to Asterisk 11.16.0 currently running on incrediblepi2 (pid = 19592)
== Using SIP RTP CoS mark 5
== Extension Changed 6001[default] new state InUse for Notify User 6004
-- Executing [9373200XXX@DLPN_DialPlanMain:1] Macro("SIP/6001-0000005a", "trunkdial-failover-0.3,SIP/Vitelity/9373200XXX,,Vitelity,,937458XXXX") in new stack
-- Executing [[email protected]:1] Gosub("SIP/6001-0000005a", "outgoing-sub,outgoing-sub_1,1()") in new stack
-- Executing [outgoing-sub_1@outgoing-sub:1] NoOp("SIP/6001-0000005a", "*** Calling: 9373200XXX from "6001" <6001> ***") in new stack
-- Executing [outgoing-sub_1@outgoing-sub:2] NoOp("SIP/6001-0000005a", "SIPDOMAIN=10.10.220.182") in new stack
-- Executing [outgoing-sub_1@outgoing-sub:3] Set("SIP/6001-0000005a", "FROM_IP=10.10.220.182") in new stack
-- Executing [outgoing-sub_1@outgoing-sub:4] GotoIf("SIP/6001-0000005a", "0?hangup,1") in new stack
-- Executing [outgoing-sub_1@outgoing-sub:5] Return("SIP/6001-0000005a", "") in new stack
-- Executing [[email protected]:2] Set("SIP/6001-0000005a", "FROM_IP=10.10.220.182") in new stack
-- Executing [[email protected]:3] GotoIf("SIP/6001-0000005a", "0?1-out,1") in new stack
-- Executing [[email protected]:4] GotoIf("SIP/6001-0000005a", "0?1-fmsetcid,1") in new stack
-- Executing [[email protected]:5] GotoIf("SIP/6001-0000005a", "0?1-setgbobname,1") in new stack
-- Executing [[email protected]:6] Set("SIP/6001-0000005a", "CALLERID(num)=937458XXXX") in new stack
-- Executing [[email protected]:7] Set("SIP/6001-0000005a", "CALLERID(all)=937458XXXX") in new stack
-- Executing [[email protected]:8] GotoIf("SIP/6001-0000005a", "1?1-dial,1") in new stack
-- Goto (macro-trunkdial-failover-0.3,1-dial,1)
-- Executing [[email protected]:1] Dial("SIP/6001-0000005a", "SIP/Vitelity/9373200XXX") in new stack
== Using SIP RTP CoS mark 5
-- Called SIP/Vitelity/9373200XXX
-- SIP/Vitelity-0000005b is making progress passing it to SIP/6001-0000005a
> 0x72855520 -- Probation passed - setting RTP source address to 66.241.96.164:18608
> 0x17d0a48 -- Probation passed - setting RTP source address to 10.10.220.101:5036
== Extension Changed 6001[default] new state Idle for Notify User 6004
== Spawn extension (macro-trunkdial-failover-0.3, 1-dial, 1) exited non-zero on 'SIP/6001-0000005a' in macro 'trunkdial-failover-0.3'
== Spawn extension (DLPN_DialPlanMain, 9373200XXX, 1) exited non-zero on 'SIP/6001-0000005a'
-- Executing [h@DLPN_DialPlanMain:1] Hangup("SIP/6001-0000005a", "") in new stack
== Spawn extension (DLPN_DialPlanMain, h, 1) exited non-zero on 'SIP/6001-0000005a'
incrediblepi2*CLI>


8888888888888888888888888888888888888888888888888888888888888888888888888888888
Using Asteridex to call China Wok... Vitelity always fails with "Temporarily unavailable"...

-- Launched AGI Script /var/lib/asterisk/agi-bin/nv-callwho2.php
-- AGI Script Executing Application: (flite) Options: (After the beep. press 1 for China Wok: press 2 for Godfathers Pizza: press 3 for House Of Tie: press 4 for Papa Johns: )
-- <SIP/6001-0000005c> Playing '/tmp/flite_85199318.slin' (language 'en')
-- <SIP/6001-0000005c> Playing 'beep.gsm' (language 'en')
-- AGI Script Executing Application: (flite) Options: (Calling China Wok. One moment please.)
-- <SIP/6001-0000005c> Playing '/tmp/flite_55636966.slin' (language 'en')
-- <SIP/6001-0000005c>AGI Script nv-callwho2.php completed, returning 0
-- Executing [412@DLPN_DialPlanMain:12] NoOp("SIP/6001-0000005c", "Number to call: 9373200XXX") in new stack
-- Executing [412@DLPN_DialPlanMain:13] GotoIf("SIP/6001-0000005c", "0?15") in new stack
-- Executing [412@DLPN_DialPlanMain:14] Goto("SIP/6001-0000005c", "outbound-allroutes,9373200XXX,1") in new stack
-- Goto (outbound-allroutes,9373200XXX,1)
-- Executing [9373200XXX@outbound-allroutes:1] NoOp("SIP/6001-0000005c", "SIPDOMAIN=10.10.220.182") in new stack
-- Executing [9373200XXX@outbound-allroutes:2] Set("SIP/6001-0000005c", "FROM_IP=10.10.220.182") in new stack
-- Executing [9373200XXX@outbound-allroutes:3] GotoIf("SIP/6001-0000005c", "0?hangup,1") in new stack
-- Executing [9373200XXX@outbound-allroutes:4] Set("SIP/6001-0000005c", "CALLERID(num)=8005551212") in new stack
-- Executing [9373200XXX@outbound-allroutes:5] Dial("SIP/6001-0000005c", "Motif/GoogleVoice/[email protected]") in new stack
== Everyone is busy/congested at this time (1:0/0/1)
-- Executing [9373200XXX@outbound-allroutes:6] Dial("SIP/6001-0000005c", "SIP/Vitelity/9373200XXX") in new stack
== Using SIP RTP CoS mark 5
-- Called SIP/Vitelity/9373200XXX
-- Got SIP response 480 "Temporarily unavailable" back from 66.241.96.164:5060
-- SIP/Vitelity-0000005d is circuit-busy
== Everyone is busy/congested at this time (1:0/1/0)
-- Executing [9373200XXX@outbound-allroutes:7] Dial("SIP/6001-0000005c", "SIP/lesnet_peer/19373200XXX") in new stack
== Using SIP RTP CoS mark 5
 

dandy_don

Member
Joined
Sep 27, 2010
Messages
173
Reaction score
11
Thanks Ward, Synack, Andy, etc.
Not sure this is related, but I contacted Vitelity Tech Support about the failing calls. They indicate that two trunks are customarily used -- an inbound and an outbound trunk. That is how the previous Increcible PBXs worked. However, with the new Gotcha-Free GUI version, only one trunk gets created. Could this be the problem?

Thanks,
Don
 

wardmundy

Nerd Uno
Joined
Oct 12, 2007
Messages
19,200
Reaction score
5,218
Just post what we requested please. If you can manually dial the number and it works but AsteriDex can't complete the call, then I wouldn't think the trunk setup was the problem.
 

dandy_don

Member
Joined
Sep 27, 2010
Messages
173
Reaction score
11
Hi Ward,

I put the cli info in reply #8 (above), then in reply #9 explained about the single Vitelity trunk query.
The first part of reply #8 shows the call going through and ringing when directly dialed. Then the same number when attempting to use Asteridex. I've separated these two scenarios with a string of 888888888888888888888888888888888888888888

Is there any other information I should provide?
Thanks for your patience and help!

Don
 

synack

Guru
Joined
Dec 31, 2013
Messages
227
Reaction score
56
I see 2 different contexts, and in the one that's not working I see the callerid being set to 8005551212
Maybe that is the issue?
 

wardmundy

Nerd Uno
Joined
Oct 12, 2007
Messages
19,200
Reaction score
5,218
Sorry I missed the 8's. I'm curious how the direct dial call went out at all. There was no dialing prefix, and Vitelity required one in the base install. Has anything been changed from the default trunk setup??
 

dandy_don

Member
Joined
Sep 27, 2010
Messages
173
Reaction score
11
Hi Ward,

I've been experimenting with the Gotcha-Free for the Pi 2. This is probably the 5th or 6th time I've gone through the motions. But each time the results have been the same -- Asteridex fails on non-800 numbers.

On the "default" configuration of the Gotcha-Free for Pi 2, Asteridex would only work for the stock 800 numbers for the various airlines, etc., that were prepopulated. It never worked for anything that was not an 800 number. For the non-800 numbers, I tried editing them by pre-pending an 8, thinking that this is what Vitelity needed but this only seemed to make matters worse so I went back to the standard NXXNXXXXXX format for all the entries. I tried setting LD="1" as per previous instructions as well as stripping off the leading digit, etc., this this never worked either.

I only have a single provider: Vitelity. I don't use Google because it seems unstable and constantly changing and while its "free", I don't mind paying Vitelity their low rates.

Since I only have Vitelity, I changed the stock context so that Vitelity no longer requires the "8" prefix. On the previous Incredible PBX, I only used Vitelity and didn't use a prefix there either.
 

dandy_don

Member
Joined
Sep 27, 2010
Messages
173
Reaction score
11
I've been experimenting....

Here is a new twist....

Asteridex works fine for SOME numbers in the same area code but not others.

I have my daughter's cell phone entry in Asteridex. It is 937654XXXX and it works fine with Asteridex (a snippet of the CLI is below).
However, Asteridex does NOT work with another phone in the same area code. The failing number is 937320XXXX. This is show in the CLI snippet below the string of Eights below:

Anyone else have similar issues?

Thanks,
Don:confused5:




-- Launched AGI Script /var/lib/asterisk/agi-bin/nv-callwho2.php
-- AGI Script Executing Application: (flite) Options: (Calling Rachel Cell Phone. One moment please.)
-- <SIP/6001-0000009f> Playing '/tmp/flite_86988941.slin' (language 'en')
-- <SIP/6001-0000009f>AGI Script nv-callwho2.php completed, returning 0
-- Executing [412@DLPN_DialPlanMain:12] NoOp("SIP/6001-0000009f", "Number to call: 937654XXXX") in new stack
-- Executing [412@DLPN_DialPlanMain:13] GotoIf("SIP/6001-0000009f", "0?15") in new stack
-- Executing [412@DLPN_DialPlanMain:14] Goto("SIP/6001-0000009f", "outbound-allroutes,937654XXXX,1") in new stack
-- Goto (outbound-allroutes,937654XXXX,1)
-- Executing [937654XXXX@outbound-allroutes:1] NoOp("SIP/6001-0000009f", "SIPDOMAIN=10.10.220.182") in new stack
-- Executing [937654XXXX@outbound-allroutes:2] Set("SIP/6001-0000009f", "FROM_IP=10.10.220.182") in new stack
-- Executing [937654XXXX@outbound-allroutes:3] GotoIf("SIP/6001-0000009f", "0?hangup,1") in new stack
-- Executing [937654XXXX@outbound-allroutes:4] Set("SIP/6001-0000009f", "CALLERID(num)=8005551212") in new stack
-- Executing [937654XXXX@outbound-allroutes:5] Dial("SIP/6001-0000009f", "Motif/GoogleVoice/[email protected]") in new stack
== Everyone is busy/congested at this time (1:0/0/1)
-- Executing [937654XXXX@outbound-allroutes:6] Dial("SIP/6001-0000009f", "SIP/Vitelity/937654XXXX") in new stack
== Using SIP RTP CoS mark 5
-- Called SIP/Vitelity/937654XXXX
-- SIP/Vitelity-000000a0 is making progress passing it to SIP/6001-0000009f
-- SIP/Vitelity-000000a0 is ringing

888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888


=========================================================================

-- Launched AGI Script /var/lib/asterisk/agi-bin/nv-callwho2.php
-- AGI Script Executing Application: (flite) Options: (Calling China Wok. One moment please.)
-- <SIP/6001-000000a1> Playing '/tmp/flite_13820268.slin' (language 'en')
-- <SIP/6001-000000a1>AGI Script nv-callwho2.php completed, returning 0
-- Executing [412@DLPN_DialPlanMain:12] NoOp("SIP/6001-000000a1", "Number to call: 937320XXXX") in new stack
-- Executing [412@DLPN_DialPlanMain:13] GotoIf("SIP/6001-000000a1", "0?15") in new stack
-- Executing [412@DLPN_DialPlanMain:14] Goto("SIP/6001-000000a1", "outbound-allroutes,937320XXXX,1") in new stack
-- Goto (outbound-allroutes,937320XXXX,1)
-- Executing [937320XXXX@outbound-allroutes:1] NoOp("SIP/6001-000000a1", "SIPDOMAIN=10.10.220.182") in new stack
-- Executing [937320XXXX@outbound-allroutes:2] Set("SIP/6001-000000a1", "FROM_IP=10.10.220.182") in new stack
-- Executing [937320XXXX@outbound-allroutes:3] GotoIf("SIP/6001-000000a1", "0?hangup,1") in new stack
-- Executing [937320XXXX@outbound-allroutes:4] Set("SIP/6001-000000a1", "CALLERID(num)=8005551212") in new stack
-- Executing [937320XXXX@outbound-allroutes:5] Dial("SIP/6001-000000a1", "Motif/GoogleVoice/[email protected]") in new stack
== Everyone is busy/congested at this time (1:0/0/1)
-- Executing [937320XXXX@outbound-allroutes:6] Dial("SIP/6001-000000a1", "SIP/Vitelity/937320XXXX") in new stack
== Using SIP RTP CoS mark 5
-- Called SIP/Vitelity/937320XXXX
-- Got SIP response 480 "Temporarily unavailable" back from 66.241.96.164:5060
-- SIP/Vitelity-000000a2 is circuit-busy
== Everyone is busy/congested at this time (1:0/1/0)
-- Executing [937320XXXX@outbound-allroutes:7] Dial("SIP/6001-000000a1", "SIP/lesnet_peer/1937320XXXX") in new stack
== Using SIP RTP CoS mark 5
-- Called SIP/lesnet_peer/1937320XXXX
== Everyone is busy/congested at this time (1:0/0/1)
-- Executing [937320XXXX@outbound-allroutes:8] Dial("SIP/6001-000000a1", "SIP/didlogic/1937320XXXX") in new stack
== Using SIP RTP CoS mark 5
-- Called SIP/didlogic/1937320XXXX
-- SIP/didlogic-000000a4 is circuit-busy
== Everyone is busy/congested at this time (1:0/1/0)
-- Executing [937320XXXX@outbound-allroutes:9] Dial("SIP/6001-000000a1", "SIP/CallCentric/1937320XXXX") in new stack
== Using SIP RTP CoS mark 5
-- Called SIP/CallCentric/1937320XXXX
-- SIP/CallCentric-000000a5 is circuit-busy
== Everyone is busy/congested at this time (1:0/1/0)
-- Executing [937320XXXX@outbound-allroutes:10] Dial("SIP/6001-000000a1", "SIP/FutureNine/1937320XXXX") in new stack
== Using SIP RTP CoS mark 5
-- Called SIP/FutureNine/1937320XXXX
== Everyone is busy/congested at this time (1:0/0/1)
-- Executing [937320XXXX@outbound-allroutes:11] Dial("SIP/6001-000000a1", "SIP/[email protected]") in new stack
== Using SIP RTP CoS mark 5
-- Called SIP/[email protected]
== Everyone is busy/congested at this time (1:0/0/1)
-- Executing [937320XXXX@outbound-allroutes:12] Dial("SIP/6001-000000a1", "SIP/voipms/937320XXXX") in new stack
== Using SIP RTP CoS mark 5
-- Called SIP/voipms/937320XXXX
-- SIP/voipms-000000a8 answered SIP/6001-000000a1
-- Locally bridging SIP/6001-000000a1 and SIP/voipms-000000a8
-- Executing [h@outbound-allroutes:1] NoOp("SIP/6001-000000a1", "SIPDOMAIN=10.10.220.182") in new stack
-- Executing [h@outbound-allroutes:2] Set("SIP/6001-000000a1", "FROM_IP=10.10.220.182") in new stack
-- Executing [h@outbound-allroutes:3] GotoIf("SIP/6001-000000a1", "0?hangup,1") in new stack
== Spawn extension (outbound-allroutes, 937320XXXX, 12) exited non-zero on 'SIP/6001-000000a1'
== Extension Changed 6001[default] new state Idle for Notify User 6004
incrediblepi2*CLI>
 

Kevin Rossen

New Member
Joined
Jan 6, 2015
Messages
8
Reaction score
1
I'm having similar issues trying to get my Pi 2 setup with Flowroute. I'm migrating from the FreePBX world, and I've setup multiple systems using their builds. I know I'm having a configuration problem somewhere, but I don't know where. The SIP trunk in Flowroute successfully registers on both my PBX and the Flowroute dashboard. When the Pi2 is powered on, incoming calls fail with a "call cannot be completed at this time" message (to the caller). When it's off, the calls fail with an invalid number message. I've read as much as I can find on why this is happening, but I can't find an answer.

I don't know exactly which command to run from CLI to get the above output. Here's what I'm seeing in the Asterisk Logs, though:
[Mar 29 23:39:30] NOTICE[4868][C-000000a9] chan_sip.c: Call from '6002' (192.168.1.169:40937) to extension '2143XXXXXX' rejected because extension not found in context 'DLPN_DialPlanMain'
 

dandy_don

Member
Joined
Sep 27, 2010
Messages
173
Reaction score
11
Hi Kevin,

From the command line interface (CLI, Terminal, etc.) type in:

asterisk -vvvr

If you need a more verbose output, issue the "asterisk" command with more "v"s. The more "v"s you enter the more "verbose" the output is. Then do Control-C to exit from it.

My experience with the Raspberry Pi 2 as a PBX is disappointing. I'm running into a lot more issues than I had with the other platforms. For me it doesn't "work out of the box". I can't be the only one with these problems. I've tried this on a second Raspberry Pi 2 with the same results. In total I've gone through the process many times. I stopped counting after the 8th build and I can't seem to get these quirks fixed.

Regarding this particular problem with Asteridex on the model 2 is a real stumper. I suspect that others simply haven't stumbled upon it as it only manifests itself with certain combinations of phone number area codes and prefixes.

There is a lot of other "odd" behaviour but I haven't taken the time to try an document it. I need to take it one issue at a time.

FWIW -- I use Raspberry Pies (model B and B+) in a number of applications at work and at home. One is an IRLP node (a ham radio voice over IP application) thats been running non-stop for ~2 years now. One is a file server and media server (running non-stop for 3+ years). One is a file backup system. Another one is also a file server and rips streaming media from the internet, etc., and they are all very reliable and work well, considering that they are single core. I was expecting great things from the PBX on the model 2. I use the B+ and the model 2 Pi variants in a digital control systems class that I teach and the model 2 is a great platform in that environment. I run 12 vncservers from the model 2 and my students log on via wifi and program away... We have no issues there. Its a little slow sometimes but its a big improvement in performance from the B+.

I REALLY want this to work, and work reliably. So much so that I'm contemplating a bounty...

Let me know if I can help.

Cheers,
Don
 

Members online

Forum statistics

Threads
25,809
Messages
167,748
Members
19,238
Latest member
dbradford
Get 3CX - Absolutely Free!

Link up your team and customers Phone System Live Chat Video Conferencing

Hosted or Self-managed. Up to 10 users free forever. No credit card. Try risk free.

3CX
A 3CX Account with that email already exists. You will be redirected to the Customer Portal to sign in or reset your password if you've forgotten it.
Top