Group with External Line hangs up at 20 seconds, regardless of a line being answered

Two WAN subnet’s. That’s a key point you left out.

I have used the word asymmetric several times in our exchanges. An Asterisk limitation is that it only supports one external IP from a NAT perspective.

You may be receiving the packet from one gateway and NAT’ing out the other. It works for 20 seconds until the sanity logic kicks in.

The traffic comes in on, and goes out on, only one IP. The one specified in my NAT setup and verified by the tcpdumps.

I can’t seem to find the text string ‘session-timers’ anywhere in any of the SIP packets. Shouldn’t it be somewhere in a handshake packet?

I stopped asterisk, started a tcpdump (tcpdump -s 0 -w /tmp/again.cap -i eth2 net 204.11.192.0/24), started asterisk and repeated the call to the group. The trace had to have all the packets between my FreePBX and Callcentric. The session-timers just isn’t there.

Actually, I can’t find srvlookup either, and I know it’s used. Maybe these attributes are encoded into the REGISTER, NOTIFY or INVITE. I’ll have to research that.

http://www.ietf.org/rfc/rfc4028.txt

Thanks for the pointer to the RFC. However, I’m more concerned with how our Trunk “Peer Details” are communicated to Callcentric for their use in the RFC-defined headers etc.

I opened up a ticket with Callcentric and they are being very responsive. We’ve tried several things (besides the obligatory “Send my your config files” and “Show me the logs/traces”) such as canreinvite=no, directmedia=no; all to no avail so far.

At the current time, the status is “I am escalating this ticket since we are at a loss as to why you are experiencing this issue. Once one of our managers has gone over the issue again they will update you during normal business hours.”

Thanks again for all your encouragement and pointers.

News at Eleven!

They were very responsive and we tried many things. Among them:

Turn off NAT
directmedia=no and nonat
canreinvite=no and nonat
session-timers=refuse 
canreinvite=no

But to no avail. It appears the newer asterisk is ignoring some of these settings and continues to send UPDATE packets when it shouldn’t. Callcentric says they will contine to look for a way to make this feature work, but it may take some time. To quote them, “We do not believe that the current version of freePBX properly handles the changes made to Asterisk 1.8.”

However, since I was far outside the FreePBX sandbox (hacking conf files, etc), and putting in configuration statements asterisk appears to ignore, I’ll start a new thread in an asterisk forum. I don’t believe I’ll take their suggestion to revert to asterisk 1.6.

Comments appreciated.

Dan

So, Callcentric gives up, but says the UPDATEs shouldn’t be there.

I then posted on the asterisk support forum (directmedia=no not working with Callcentric) and mentioned that Callcentric didn’t like the UPDATEs. They suggested I not request them! So, I removed sendrpid=yes from my sip.conf and the problem symptom goes away.

However, I NEED sendrpid to work, otherwise, I can’t control which DID number appears on outsider’s phones.

So, I got back on the Callcentric support thread with a "Let’s retask this thread to Why does sendrpid force a timeout from Callcentric?

News as it develops.

I like Outback, but Longhorn is fine too. Where do we meet?

I thought you where in Australia. I honor my bets.

What is your Paypal if you are not in the great lakes of US or will be at Astricon.

Thanks, but that is completely unnecessary. I do appreciate your honoring your bet, but I didn’t have anything on the line (egg on the face just isn’t in the same category as steak on the table).

I didn’t have a dog in this fight and do appreciate your prodding. It would have been fun to lift a pint over some dead cow, however.

Due to your prodding, I learned enough to understand what the traces were telling me. And that is: asterisk is failing to honor rpid_update=no if sendrpid=yes AND Callcentric is terminating the call after receiving a bunch of unwanted UPDATE packets.

Now, if one of them will come up with a real answer, I’ll be able to use Follow-Me.

I am glad you benefited from the info. Some find prodding harassment and just want an answer when a simple one often does not exist.

Come to Astricon and get immersed. You can meet a large part of the FreePBX team. Philippe, Tony, Brian and myself will be attending.

I removed the sendrpid=yes that was causing the problem. I get the same functionality using the following in extensions_custom.conf

; Apply appropriate CID based on extension; 31x use the house line, others use the business line
[from-internal-custom]
exten => _1NXXNXXXXXX/_31X,1,SipAddHeader(P-ASSERTED-IDENTITY: "16789470887" <sip:[email protected]>)
exten => _1NXXNXXXXXX,1,SipAddHeader(P-ASSERTED-IDENTITY: "16785134504" <sip:[email protected]>)

; end of [from-internal-custom]

The FAQ at Callcentric mentioned 2 ways to accomplish setting the outbound CID, and I chose the easier (sendrpid). The slightly harder (not managed by FreePBX) PAI works, however, without the hang-up problem, so I now have FollowMe!