My Life with Asterisk — Part 4

With the challenges of Part 3 behind me, I was optimistic of the possibility of resolving the lingering issues with my phone system.

One of the first pieces that I dabbled with was setting up paging and conference calls. When I was testing conference calling, the conference would disconnect almost immediately. From my past experience with Asterisk, I know that Asterisk needs a timinig source. Most larger/enterprise PBX units would not have a trouble as they would be using an analog or digital interface card which provides the timing required. In my case, I am working with nothing but VoIP, so I have no interface card to provide a timinig source. In the past, a dummy driver is provided that can be loaded to allow Asterisk to interface with the Linux kernel’s timinig capabilities.

The only problem is that I can’t locate the module either in the directory where it should have been located or through an automated search of the filesystem. I was truly stuck. Of course, I turn to Google. Surprisingly, Google turned up no answers to where this driver could be locataed without recompiling the drivers. I am not normally hesitant to compile code, as the developers make this easy. My instincts told me there had to be a provision for handling this problem with the distribution as-is.

Fortunately, I had one more source of answers that I had in my back pocket. I fired up my IRC client and connected to the #asterisk chat room on the Freenode IRC network. The regulars there include folks who live and breath Asterisk every day, so I know the folks there have the answers I need. Naturally, after I posed my question to the room, a quick answer was offered. I needed to open /etc/dahdi/modules and comment out all references to hardware drivers, followed by a restart of the dahdi service. When I restarted the dahdi service, it reported that dahdi_dummy was loaded. Apparently, the dahdi driver assumes that if no other drivers are to load, then use the default driver to provide dahdi_dummy to allows conferences to work.

Second, I wanted to keep an eye on what calls I was making and receiving. FreePBX includes the capability on a “Reports” tab on the interface. I have also had previous experience fixing this issue. While the tool works, no data is saved to the database to search. For whatever reason, the asterisk16-addons-mysql package is not installed by default. Installing the package and restarting Asterisk allows the reporting to work as expected.

Finally, an issue occured during the initial configuration of this Asterisk system which would have prevented the saving of a new configuration. After making changes within the FreePBX interface, the administrator needs to apply the changes. When I first attempted to apply the changes I made to the system, I received an error message regarding the “retrieve_conf” script not running. Google was able to turn up the answer. By default, both the iptables firewall and the SELinux addon are activated by default. I used the built-in setup utility to turn off each of those services; the script worked immediately.

After a crazy two days of work, investigation, and both frustration and fun, my Asterisk phone system is finally where I want it. I have inbound and outbound calling on two phone numbers on a single trunk and connected to two internal SIP devices. CallerID is being sent for the correct number and I have a basic conference room setup. There are lots of tweaks and additions that I would like to make, but I think I will leave that to another entry after I have made them.

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>