I thought I'd share my Asterisk experience, which hasn't exactly been as pleasant as I would like but now seems usable in most ways and more then I expected in other ways. I wanted a home PBX system, that would let me treat different callers different ways depending on CID. I initially bought the Digium developer's kit to try things out. That's a single port TDM400 and a X101P. I've added another X101P. One X101P terminates in a Vontage Cisco ATA-186. The other terminates with Qwest. The TDM400 is connected to both a TDD and a cordless phone. I also have a softphone connected along with 2 DID numbers through Voicepulse. I have a second Asterisk system outside my firewall to use for FWD. What went bad (most are minor): - SIP NATing. I just gave up on this. That's why I set up the second * box outside my firewall, with an IAX2 connection from my inside * box to it. - Voicemail - there are lots of "little" things missing. The main stuff is there, but lots of things I'd expect in a fully functional VM aren't there. I'm also disappointed that there is no way to turn on/off the MWI on a phone except through receiving a VM message (I'm working on a patch to add some basic MWI functionality for things like external VM systems) - TDM400 "lockups" - Sometimes, the TDM400 card seems to go into "crazy static" mode. It's the newest revision (this apparently is a known bug in some of the older versions). This hasn't happened since I moved cards around (see next item) and have updated the Asterisk software. The only solution was to unload and reload the wcfxs module. If it comes back, I suspect Digium will stand behind their product (I haven't contacted them formally, so if anything this is half my fault), and it may have been related to the IRQ problems. - IRQ/PCI problems. I have a lot of stuff in this machine that takes IRQs, including SCSI, sound card, net cards, etc. I have 6 filled slots right now. Initially, when I added the second X101P, the machine would not boot. It would either hang when the wcfxo module was loaded or crash with some weird SCSI IRQ errors. After Googling a big I found that some people can correct this by moving the cards around, so I did this. I also disabled serial and parallel ports in my BIOS. It took several tries at moving the cars around before I found a combination that works but things do seem to work right now even with the TDM400 card sharing an interrupt with the USB-UHCI device. - ECHO!!! I ended up updating the * code from CVS and turning on Mark2 with aggressive suppression. This fixed it, although things still sound a bit strange with full duplex talking (the echo suppression doesn't seem to like that and the voice volume changes along with some echo being present). I didn't have much of an echo problem with the X100 going into the ATA-186, but the X100 going to Qwest was miserable. Of course I also have DSL on the line, and the wiring in my house was done by the previous owner (who fancied himself as an electrician), so I'm not claiming my wiring is bad. Of course I never had any echo on my normal phones, nor did my DSL have any problems, so I do think there is something up with the X100 cards. Right now, echo seems okay. - Volume levels - I had to bump up the rxgain on the Qwest circuit a bit. But now all seems well. - Hangup and MWI clearing FSK tones - when "hangup" is executed after an extension dials out, * sends the FSK tones to clear the MWI (if appropriate). Unfortunately, while * may be "hungup", I am not. WHAT WENT RIGHT: - IAX2 - this is slick. Works great between my inside-the-firewall * server and my outside-the-firewall * server, as well as between the inside box and Voicepulse. It would be nice if there was a *tad* better logging by default on incoming IAX calls (I had some problems initially with not having an entry for the Voicepulse DID lines, so * couldn't find the extension Voicepulse was looking for; rather then logging, it just hangs up; The IAX debug logs don't indicate *WHICH* extension is being looked for, either). - IVR functionality - that works great, too. No gripes at all - this is better then what you get with most PBX's - Unexpected functionality - I didn't know my cordless phone had a MWI. But it does. I was very surprised when a light I had never noticed on the phone before lit up after I received a voicemail message. That's a neat feature, and even neater that I didn't need to configure ANYTHING to get that to work. - Preliminary TDD support - this also pleased me, although there are some bugs in this support. It's nice to be able to set up a TDD interactive response system (right now, I can call my home machine, enter an IP address, and see my network management view of that machine through my TDD - which is also nice because lots of places have TDDs connected to pay phones...) [of course it would be nice if...* had a "TDD" extension that worked like the FAX extension if it heard TDD tones - especially the "space" tone] But, I'm *thrilled* that an open source application includes this functionality. - PrivacyManager - This is *SLICK*. I haven't had one unsolicited call since I installed *. One person who called me without caller ID and entered their phone number asked, "What does the phone company call that service?" They thought it was something the carrier did (they don't in Wyoming). - Source Code - Being able to fix some bugs has been very handy! In the future, I will probably rewrite the VM system. There are a bunch of things that I would like to see it do, and I think C is the wrong language to write something like that in. It'll probably be an AGI application (hence why I am going to add the MWI stuff). I may be installing another * node on a large PBX to support some telecommuting I do. It'd be nice for me to be able use my employer's long distance while doing his work. I'd also like to set it up as a demonstration IVR system for reporting current system status to our users. -- Joel