Monday, January 26, 2009

Whole Foods: Mixed Experience

I vaguely recall having been to Whole Foods once many years ago. Today I went back only to stock up on organic quinua for a decent $3/lbs in bulk, better than Trader Joe's $4 for a box with less than one lbs, if it's even in stock.

But I also noticed various items that were significantly (up to 50%) more than the exact same items at TJ.
  • Driscoll organic raspberries, WF $5.99, TJ $3.99
  • Laughing Cow Babybel cheese, WF $4.99, TJ $3.29
WTF? I'm not planning to go back until I run out of quinua...

Friday, January 16, 2009

Excellent Linksys/Sipura SPA-3102 Experience

As a result of my migration from a noisy, overheating mid-tower server to a near-silent Mac mini Core Duo with a DAT Optic 4-bay FireWire enclosure, I could no longer use the Digium X100P clone FXO internal PCI card. Therefore, I needed an external device with an FXO port to which to connect the incoming phone line from the building lobby (please see this earlier article for more context).

I was also hoping to replace or at least complement the Digium S101i IAXy analog telephone adapter (ATA), which is not reliable enough for everyday residential use because it frequently goes into an inconsistent state and gives a busy signal instead of a dial tone.

Fortunately, the Linksys/Sipura SPA-3102 is exactly what I needed. It is a SIP-based ATA with both an FXS port, which provides a dial tone to my existing apartment phones, and an FXO port, which receives calls from the building lobby. Surprisingly, at about $75, it is cheaper than the IAXy. As long as you don't need support for the IAX protocol, you're probably much better off with this rock-solid device. It also has a web interface and supports numerous features that I am actually using, such as distinctive ring.

I connected mine to my existing Asterisk server following some of these instructions and the device's manual. I configured the following dial plan for the PSTN line to transfer incoming calls immediately to the given extension:

S0<:sipura-fxo-incoming>

In Asterisk, I can then receive calls on this extension like so,

[sipura-fxo]
exten => sipura-fxo-incoming,1,Goto(intercom,s,1)

using the context I specified in the ATA's SIP registration shown here. (The authentication settings in the ATA configuration has to be consistent with Asterisk's SIP configuration.)

[sipura-fxo]
context=sipura-fxo
type=friend
host=dynamic
username=sipura-fxo
secret=******
disallow=all
allow=ulaw
canreinvite=no
qualify=yes
insecure=port,invite
nat=no

[sipura-fxs]
context=sipura-fxs
type=friend
host=dynamic
username=sipura-fxs
secret=******
disallow=all
allow=ulaw
canreinvite=no
qualify=yes
insecure=port,invite
nat=no