From the ground up

I have been tasked to set up a VoIP PBX system for my small business. We are basically starting this from the ground up. We have a number of PSTN lines and regular phones. I am a big proponent of open source (Ubuntu!) and I want to use Asterisk@Home because I prefer a GUI to CLI when it comes to something I don’t know well.

What we want to do is use softphones on a number of systems that link to a customer number database. We would also like to link some regular phones up to the system. Obviously, we need access to PSTN numbers, both incoming and outgoing. We have two PSTN providers (AT&T and another I can’t remember the name of) and no VoIP provider.

At first, my company wanted to go the Windows route sigh by using a hardphone, a 1FXS/1FXO device, and a non-supported PBX. I have spent a week trying to get around multiple bugs. So I am going to start over with something I at least know has great support.

My question to you all is: what software and hardware will I need? All help is much appreciated. Thanks in advance