Image via Wikipedia
Over the years, I have learned that when you're working with Free Software, you must be willing to read, read, read and read even further. There really is no substitute for this type of learning. I always refer to it as a floor exercise, strengthen your skills by repetition, fatigue and humiliation. This has been the way, learn by doing and not watching. However, there are times when you simply have to ask someone for help. Yeah, even the more experienced headz ask for help. The sad truth is that I often get into tasks which not many people in my close network of friends really understand, so you cannot ask them for help.
So you find substitutes, sometimes GOOG, othertimes IRC. In this particular case, #asterisk was a logical choice for me. I spent a great deal of time watching the type of questions placed on the channel. Many ranged from nOOb to medium level of difficulty. I would say that I'm in that nOOb to medium level of understanding. My struggle was primarily with dialplan(extensions.conf), though I also needed to make a some modifications to my sip.conf
file. There must be thousands of sites which describe the various incantations of dialplans and strategies. It should also be noted that many of these sites are laden with errors. You simply cannot cut and paste, you need to understand well defined contexts within both sip.conf and extensions.con. Perhaps most importantly you should really make an intelligible flow chart to help organize your thoughts which will also mitigate many errors.
Well as I stated earlier, I spent a substantial amount of time chatting on the IRC and getting constructive and not so constructive feedback from #asterisk channel. There was one admin who really seemed rather agitated. In his defense, I suppose that he is a grizzled veteran who simply loathes questions from people who really have not bothered to read any docs. Secondly, it is very difficult to diagnose technical problems from nOObs who cannot articulate the issue very well. While pastebin is a very helpful tool, sometimes a very active channel makes it quite challenging to get your message to the appropriate person.
What annoyed me was the tone from this guy. He assumed that I didn't understand networking 101. He insisted that I didn't know the difference between two clients and an asterisk server behind a Nat'd router vs setup which did not require a nat'd router configuration. There are not many SOHO based setups that do not make use of NAT (Network Address Translation). I'm not interested in paying for a static, publicly routed IP address. Despite my explanation and fairly descriptive summaries I couldn't convince him that I wasn't an idiot. I began to believe that he was in fact the idiot. To make matters worse, I often believe that people take many liberties that would not normally be afforded to them because they have ultimate comfort and safety of the keyboard, nondescript alias and possibly spoofed FQDN/IP address. I wonder if they would be so snarky and rude if we were in the same room having an adult conversation? Methinks if you're going to be a channel admin of a very popular software project you ought to realize that people using the software make your existence on the channel necessary. Whether you are getting paid or not (I would imagine the latter is more true), be a good sport and answer the questions as they are posed. Do not assume that you are omnipotent and everyone else are unworthy subjects who are begging for your mercy ;-)
If you do not like serving in this volunteer capacity, quit and give the responsibility to someone else.
Nonetheless, I was able to get my dialplan functional(it at least rings the extensions now), just need to configure the IVR and customize the voicemail features. Actually, I am rather proud of myself considering that I just started playing with Asterisk one year ago.
I still have a fair amount of work left, but the journey has been satisfying and I am sure that I'll never use Trixbox again.