Debugging SIP in Asterisk/Trixbox

Here’s the scenario:

Significant Other calls Mother. Gets a “ring no-answer”…which means of course, that it just rings and rings and rings. The assumption, then, is that Mother is not at home. Or she might be downstairs doing in the laundry room, or something, but she definitely is someplace else.

However, what is happening in reality, is that Mother is on the phone with Sister. So we should be getting a busy signal, but we’re not.

My theory was that since my PSTN connection provider, Voicepulse, couldn’t complete the call, that it just kept things ringing. However, they said that they actually send back a SIP message 486 [Busy here] to Asterisk…and Asterisk should then be dealing with that by changing the ring tone to a busy signal.

So, there is a SIP debug mode within Asterisk, and I’ll set this up by going into the Asterisk Command Line interface. I’ll log into this remotely using Putty using SSH (the secure shell). I’ll also set this up to log everything that appears in the terminal to a file.

So, I place a call to a known busy PSTN line.

But, nowhere in the transcript is there any evidence of a SIP message 486 Busy. So, I placed an outbound call via my ZAP hardware line to the PSTN number for that number. This is the same as calling your own phone number from a conventional phone. In this case, I get an immediate busy signal, as expected. But, looking at the transcript of that call, there is no evidence of a SIP message 486 there either. So now I’m wondering about the phone. In the transcript it shows the following entry:

<-- SIP read from 192.168.0.161:5060:
BYE sip:98639587@192.168.0.180 SIP/2.0
Via: SIP/2.0/UDP 192.168.0.161
From: "Larry Keyes" ;tag=8d48abf7-9a54-5966-3784-6ae80bce9d87
To: ;tag=as5fa85f66
Contact:
Proxy-Authorization: DIGEST username="200", realm="asterisk", algorithm=MD5, uri="sip:98639587@192.168.0.180", nonce="1c3041c5", response="759f615b48878ff3d617936450ae3c8e"
Call-ID: fc430bce-606a-00c1-18aa-c326d5af2e1b@192.168.0.161
CSeq: 45540 BYE
User-Agent: Grandstream SIP UA 1.0.4.17
Max-Forwards: 70
Allow: INVITE, ACK, CANCEL, BYE, NOTIFY, REFER, OPTIONS, INFO, SUBSCRIBE
Content-Length: 0

I’m wondering about the Allow:. Does this mean that the phone doesn’t accept any SIP message except those that are offered by the phone?

Now, my own opinion is that we can indeed live with this, just like we can live without E911 calling and all that. Still, it is just one more damn thing that is different between my VoIP implementation and the “real” PSTN. But, there is a safety issue there…if we can’t reliably determine when the phone is off the via a VoIP call, then we may want to place a PSTN call to verify. Which seems to sort of defeat the purpose.

We could solve this by just getting her an answering machine.

Here is another viewpoint about the anomolies of VoIP. Men are from VoIP and Women from PSTN.

My wife has been using Vonage for the past 3 years with me and she complains at every little Vonage hiccup, every little “fast busy” when dialing, every little Internet outage that brings down the phone line. She used to complain about the sound quality on the VoIP connection all the time, but she has gotten better. Or perhaps she’s resigned to the fact that I’m never going back to PSTN.

Me? I’m like “Hey, sounds great to me. I never have any problems when I’m making a call using Vonage. Sure, when the power goes off or the Internet connection dies, we lose our phone, but hey, we’re saving a ton of money each month. And it’s a cool technology to boot. Plus I write about this stuff all day long, so I should practice what I preach.”

I don’t think she bought it.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s