I just ran across a very nice, cloud-like application called OpenVBX. Why this is interesting is that it literally took me ~15 minutes. to have a fully functional programmable PBX in the cloud.
OpenPBX runs on your own server. So, of course, to make it even more cloudy I provisioned a server in the cloud. I used RackspaceCloud in this case and provisioned an Ubuntu 10.04 LTS server w/ 256MB of RAM. Then, I needed to add some things to the server. The details are pretty clear in the getting started documentation on the OpenVBX site so I won't repeat all that here. It's a pretty standard PHP5 application.
I already had a Twilio account from some testing I had done before. But, to really be able to use the system I needed to upgrade from the free version to the paid. So, I stuck $20.00 in my account. This was the minimum Twilio would let me add unfortunately. I already at $30.00 from my signup bonus.
Once I had OpenVBX installed and connected to my Twilio account I simply provisioned a new phone number and then set up a call flow using their very intuitive GUI tools.
It just could not have been any easier really unless it was just a hosted service already and I didn't need to provision and install it myself. I'm sure someone already is doing that somewhere.
I've been impressed by Twilio from the start and OpenVBX is just as impressive. I immediately wondered how I would hook up an SIP/IP Phone to the service though. Is there a way to do that? I didn't see anything obvious. For now it just gave me a nice local phone number (800 #'s are available) and that will forward to the phone of my choice.
I might get more fancy and play around with the application/call flow builder. It's pretty cool and allows you to make those "press 1 to pay me $" type menus.
I will probably let this run for a month or two and see what utility I get out of it. I also have a Google Voice number. But, at least with this I'm a bit more in control of my data. Of course, the tradeoff is that I have to take care of it myself.
The application is a standard PHP5 application so I assume if I wanted to make it HA and scale it out it would be trivial. But then, I don't expect to be pushing crazy call volumes and needing to worry about it too much right now.
OpenVBX is open source and Twilio is pay as you go. Try out Twilio and OpenVBX. Very nice work indeed.