Ekiga, Asterisk and VPNs

Asterisk, Miscellaneous, Workplace Comments Off

Things are always harder then they’re supposed to be. Plugging in a SIP client to Asterisk should be easy, right? Well, it is, if everything is just perfect. I took a few notes and a few screenshots to help others if they find this fairly typical setup is more difficult then it should be.

Here are the relevant parts (IP addresses and mailbox number changed to protect the innocent) of my sip.conf:

[general]
port => 5060
bindaddr => aaa.bbb.ccc.ddd
disallow => all
allow => ulaw
allow => alaw
context => sip-users
canreinvite => no
nat => no

[gabe]
username => gabe
secret => ****
mailbox => 1337
callerid => Gabe Gunderson <1337>
type => friend
host => dynamic

To to avoid NAT issues (on my side, not the server side), this communication is going over an OpenVPN connection. Make sure your tunnel is up before you start Ekiga and go to the preferences page. Set “Listen On” to tun0 and not eth0 (which is the default). The settings don’t seem to “take” until you restart Ekiga.

Ekiga Network

I like to keep things simple in the codec department. The VSP we’re using offers only G.711 (U-LAW or PCMU and A-LAW or PCMA). We’re using U-LAW since it’s the standard here in the U.S. and it costs the CPU very little to go from U-LAW < => U-LAW. It’s a little fatter in the tubes, but that’s not a big deal on this particular install.

Ekiga Codecs

Here’s a typical Account. I’ve chosen to use names for sip users instead of numbers. It makes the configs a little easier to read and you can always map numbers to names in the dial-plan.

Ekiga User

If you have problems, there are a few things you can do to help figure out what’s going on.
Try the following:

  • Run Ekiga from the command line with the debug switch:
    ‘ekiga -d 2′
  • Or get specific debugging from Asterisk, like so:
    server*CLI> sip debug peer gabe
    SIP Debugging Enabled for IP: aaa.bbb.ccc.ddd:5060

Adding the Tasty Tango Touch

Linux 1 Comment »

I really liked the “unified look” of the bluecurve icon set - 40 years ago, when it was introduced. I now prefer the crisp and clean look of Tango. Why doesn’t Fedora Core ship with it as an option? It doesn’t need to be the default, just an option. Oh well, one more thing to download.

Tango Screenshot

Xen Networking

Linux, Open Source, Xen 3 Comments »

Here’s my first take on a Xen network that I’m putting together for work.

Xen Network - Take 1

This all takes place in one physical box with 2 physical network interfaces. I’m still not sure this is path we’ll take, but it’s a start. Also, it might have been less complex if I did routing and NATing in Dom0, but for security reasons, I’ve opted to keep Dom0 very minimal. I’ve even considered leaving it off of the network (console only). Any thoughts/suggestions?

Update: As pointed by a confused (but observant) reader… There is no such thing as fif3.0. It should have been labeled vif3.0. Good eye. Guess I was a little sleepy when working on it :)

FC6 - First impressions

Linux, Open Source, Xen Comments Off

I’ve installed what I’m pretty sure will be the final version of FC6 (I checked the SHA1SUMs from a listing at an official mirror). Here are my first impressions:

Mono seems to be totally jacked:

[gabe@office ~]$ tomboy
Segmentation fault

[gabe@office ~]$ mono -V
Segmentation fault

[gabe@office ~]$ mcs
Segmentation fault

[gabe@office ~]$ sqlsharp
Segmentation fault

[gabe@office ~]$ gmcs
Segmentation fault

[gabe@office ~]$ echo “Segmentation fault”
Segmentation fault

O.K. that last one isn’t that disturbing, but the others look pretty messed. I’m guessing they didn’t build it with a “–with-xen_opt=yes” flag. I’m running this box on Xen, but if you don’t, I’m guessing Mono would work just fine. That brings me to my next point…

When installing, it has an option for Xen related tools. I selected them to be installed. I assumed it would install a few userland tools for monitoring and creating Xen instances. I further assumed it would install an additional Xen kernel and add that option to GRUB. To my surprise, it only installed a Xen kernel. This would be the first time that any distro, that I’ve run, has done this out of the box. I’ve stated before that I thought this would eventually be the norm. Please note that this is not the default behavior.

One major plus is that the bubbles are gone. If you used FC5 and have good taste or a sense of style, you know what I’m talking about. The DNA strands are much, much better, but still, they are not great.

The new font (DejaVu) looks pretty good. Hinting is still a little off on some uppercase letters.

I was hoping Firefox 2 RC 3 would have been dropped in. I know, at some point you have to say “no” to new packages.

Evolution seems a little bit snappier. I don’t follow it’s development, so I have no idea what to attribute that to.

There are still 101 services that startup when you boot. Shutting half of them down is still the first thing I do after I install.

Clearlooks has nice controls but the icons and the window borders look average. I see icons from old GNOME, RH9, old Blue Curve, Tango, etc…

That’s the short list. Overall, I like it better then FC5 so far. I still think Ubuntu has done a better job pulling it all together, however I’m using FC because of it’s solid Xen support.

I’ll add to this list if anything interesting shows up in the next few days.

Asterisk and number hacks

Asterisk Comments Off

If this needs explained, you won’t think it’s cool anyway ;)

vi /etc/asterisk/extensions.conf
;; Call hacks.
[hacks]
exten => 411,1,Dial(${TRUNK}/18003733411)

It makes it so that when you dial 411 (directory service) your call actually goes to a free 411 service. Myself, I have a hard time remembering long toll-free numbers. This makes it easy and free!

Django VS the AMD Sempron

Django, Errors, Open Source, PostgreSQL, Web Comments Off

Today’s screenshot is brought to you by the Django Admin interface:

CPU at 100%

For those of you who don’t recognize this, it’s the GNOME System Monitor applet. The dark blue basically represents CPU usage for Django (more accurately - caused by Django). The model validates [1] and the tables/Models are shown in the front page of the Admins interface. Most of the Models are represented well and work as one would expect. However, there is one table/Model that doesn’t work as expected. It works OK when you go to add an additional record [2], but when going to view items before changing them [3], it causes the CPU to spike and three minutes later I have my results. Before I edited the table/Model to remove one of the ForeignKeys, I would get a PostgreSQL error because Django passed it a SELECT statement with *over* 1664 entries [4]! Well, it seems that by editing the table I was able to keep the entries under the 1664 limit and PostgreSQL would process the SELECT, but it takes forever to finish it.

I guess that technically, the CPU is being eaten up by PostgreSQL, but that’s not really the point. The point is that Django really doesn’t have any business sending it a SELECT statement with some 2000+ entries in it (especially for such a simple, simple request.) OK, so maybe it has a bug, limitation or whatever, I’m cool with that - it happens. The frustrating part is that I can’t confirm that this is a known problem or find the answer. The answer I’m looking for should be simple, but I have not been able to find it. IRC and #django was a bust and the mailing list yields nothing yet.

I was pretty enthusiastic about Django, but maybe it’s to soon. It’s a cool project and I wish them luck. I’m just wondering if all the time spent so far porting one of my apps to the Django framework was time wasted or not.

1) -
./manage.py runserver
Validating models…
0 errors found.

2) http://localhost:8000/admin/App/Model/add/

3) http://localhost:8000/admin/App/Model/

4) -
Request URL: http://localhost:8000/admin/core/stagedorder/
Exception Type: ProgrammingError
Exception Value: ERROR: target lists can have at most 1664 entries SELECT

Python and Django - Big points in the first quarter.

Django, Open Source, Web 3 Comments »

I don’t have a ton to say right now (really, I don’t have a lot of *time* to say it), but first impressions of Python and Django are very positive. The admin interface is a great little tool to get things going FAST. I’m really, really impressed. The CREATE TABLES are clean, the SQL is clean and the DB API is clean (different, but I can learn to like it); I’m really enjoying it. How often can you say that?

Python Logo
Django Logo

Extra points for:

  • PostgreSQL as preferred database.
  • Template system that strikes a good balance.
  • Powerful and clean URL handling.
  • Modular design.

Needs work:

  • Namespace support for PostgreSQL (app_table vs. app.table).
  • Keeping data model and DB schema synced (this might be in a better state then I know; I need to read up on it).

Jerry Springer meets the Free Phone Call

Asterisk, Miscellaneous, Ridiculous Comments Off

This blog details a new service that allows you to make FREE phone calls… there are strings attached.

The deal is that you get a free 6 minute phone call, but you give up your privacy. The calls get published on the Internet for the world to hear. It’s better then tapping the pay phone at the state liquor store at 2:00 A.M. And so, we now get to sit and listen as people “air their dirty laundry” to the world for the price of a 25 cent phone call. Jerry Springer has nothing on these guys.

From the source blog:

He (James Bowman of for60secs.com) explained that they envision a few different kinds of user for the phone service, such as people who are very price-conscious or shameless self-promoters who view it like reality TV - you give up privacy in exchange for fame.

And now you will never have to wonder “So she is 100% alive?” Warning: many of the calls contain strong language.

How did this information cross my path? It’s powered by the very cool Open Source Asterisk PBX.

WP Theme & Icons by N.Design Studio
Entries RSS Comments RSS Login