I'm currently running Asterisk for a few phones, and I've had some  
annoyances with it.  Their SIP implementation is crap.  Total crap.   
It hardly adheres to the RFC, and my application layer gateway throws  
away the SIP packets generated by it because they don't follow the  
RFC.  Which means, I cannot use the ALG to take care of NAT and  
dynamic firewall policy assignment for RTP traffic.  Dialplan  
searching is SLOW when you have a huge dialplan.  Phones sometimes  
get deregistered and authentication fails on the first attempt to  
make an outgoing call, but succeeds on the next attempt.

I'm running the latest 1.4 code.  Also, a couple of days ago, a  
remote code execution exploit was found with their crappy SIP  
implementation.  To top it all off, Digium's PRI hardware is total  
junk.  I know people that have had 4 DOA cards in a row.

So, I'm thinking about going with CallWeaver, which used to be called  
OpenPBX.  They are based on Asterisk 1.2, but have utilized 3 party  
libs for codecs, SIP implementation, etc.  They also have T38 fax  
support built in, no crazy patching/hacks to make it work.  It really  
looks like a solid replacement for Asterisk.

Does anyone have experience with both?  I'm going to use Sangoma  
cards instead of the Digium ones.  I need DUNDI support, which  
appears to still be in CallWeaver.  However, the one thing I'm  
worried about is that it looks like it is missing the SLA (shared/ 
bridged line appearance) functionality that was added in the 1.4  
train of Asterisk.

Also, if there are any other free/open source projects out there that  
you think are worth mentioning, definitely let me know.  Right now,  
I'm leaning towards CallWeaver.

Thanks.

~jay