Plivo - an opensource alternative to Twilio
plivo.org
plivo.org
Twilio sounds great, and some of the mashups are very interesting, but it all doesn't work here. VOIP providers here seem to have ok prices, but horrible UI/UX to manage everything.
They are not able to provide long codes (10 digit phone numbers) for messaging in the States, but they can use long codes for messaging internationally.
In the states you're limited to Short Codes, but they do offer MMS support, which one-ups Twilio. I believe they also have a higher send rate, but I don't remember the specifics. Ericsson also has mobile payment support (charged to the carrier), where Twilio does not.
My research was specifically for messaging, but there is voice functionality as well.
Overall, Twilio is a lot more developer friendly. I think I waited something like two weeks for a callback from Ericsson, which would never happen with Twilio. But if you really need international phone numbers and advanced features, take a look into Ericsson.
I use Twilio now, but I don't use Ericsson yet. Chances are my product will end up using a combination of both, but the nature of every product is different so do what's best for you. Twilio can text/call internationally, but not with local numbers, which I believe makes the cost quite high on yourself and your users. Apparently there are also other solutions I haven't looked into yet (see other comments).
In the open source world, you could install Asterisk yourself and use something like Adhearsion to develop your apps. Adhearsion is an open source framework for building Asterisk applications in Ruby. http://adhearsion.com/
Whistle from the 2600hz project could be of interest, too. http://www.2600hz.org/whistle/
To build telephony applications in Java, you can use SIP servlets, a Java standard (look up JSR 289 and JSR 309). Because the Java standard is extremely low-level, we open sourced the framework we use for building Java speech applications. See Moho at http://labs.voxeo.com/moho/ or https://github.com/voxeo/moho
You can also take a look at at VoiceXML, a W3C standard for building telephony apps. VoiceXML is how the big boys build telephony applications. There are a number of commercial and open source VoiceXML products, and tons of hosting companies. A search for "VoiceXML Hosting" will turn up several thousand options. Many of which will work internationally.
And of course Tropo, as already mentioned, has an open source core as well as a ton of other fun open source stuff. See http://tropo.com/ and https://github.com/tropo/
>VoiceXML is how the big boys build telephony applications. There are a number of commercial and open source VoiceXML products, and tons of hosting companies. A search for "VoiceXML Hosting" will turn up several thousand options. Many of which will work internationally.
VoiceXML is great for IVR type applications (along with CCXML) but it is not suited to a lot of the types of applications developers use for Twilio/Tropo.
>And of course Tropo, as already mentioned, has an open source core as well as a ton of other fun open source stuff
This statement is true if you guys open source PRISM, your SIP server, but until that happens (has it happened?), it's a little disingenuous to say that Tropo's "core" is open source when it relies on a proprietary SIP server to do all the heavy lifting.
Vxml and CCXML are more complex, sure. And for that reason they may not be suited for the same developers targeted by cloud Apis.
Prism, the app server platform Tropo.com runs on, is not open source. But because Tropo core is written to the JSR call control and media server standards, Tropo will run in any server that implements those. Mobicents and Sailfin are two open source options.
I'd like to see a good primer on the topic but, frankly, I don't even know what to Google for.
If you don't want to muck with FreeSWITCH's XML configs, blue.box (http://wiki.2600hz.org/display/bluebox/Home) is a good GUI tool that will configure your switch for you. See the quick start guide (http://wiki.2600hz.org/display/bluebox/Quick+start+configura...) but know the docs are undergoing expansion and clarification. If you have questions, we're available on Freenode in #2600hz and have a pretty active community that likes to get folks up and running.
I work for 2600hz so I'm biased though :)
We believe strongly in open source wanted every piece of the puzzle to be open source.
http://www.plivo.org/get-started/).
- You need to install Plivo on the server as well. There's a separate installer for that.
So now you have your Twilio-like instance ready.
- To buy a number you can head to ipkall.com (free) or icall.com or flowroute.com (paid). There are several such
services actually.
- Once you have the number, you can just point it to your server that is running FreeSWITCH and Plivo.
- You can buy minutes for usage from a third party such as IVOX VoIP (ivoxvoip.com). Again, there are several such
providers out there.
- Now, go ahead and deploy your Plivo app (just as you would deploy a Twilio app).
I hope this makes it clear.
Often times, the terminology is confusing and difficult to know where to start and ease in.
It looks like Twilio's lowest layer isn't completely open source. OpenVBX still requires a Twilio account.
OpenVBX would run on any platform that emulates Twilio's API. That includes Twilio (of course), Plivo, an Teleku (disclosure: now owned by us). There may be others out there as well.
Speaking of which, we are looking for a developer with telephony experience (i.e. Twilio, Tropo, Plivo, etc). In addition to working on our product, you would also have the opportunity to contribute to the Plivo project, assuming we switch to that. The position is either senior software eng or lead software eng depending on experience, etc. The position is full-time, local-only in El Segundo, CA (just south of LAX in Los Angeles). Email Bill at bpaetzke@leads360.com, if interested.
Website was pretty confusing
If you want to be on the eye-bleeding edge of scalable VoIP, check out Whistle (http://www.2600hz.org/about-whistle/). Host your APIs (REST and AMQP), choose your carriers, and build your whapps on a completely open-source project. We will gladly host and/or manage your servers as well.
Whereas Twilio/Tropo/Plivio give you ways to manage just call handling, Whistle aims to expose phone provisioning, call handling, server and cluster management, and more. We are open sourcing the PBX tools, a trunking platform (see it live at http://store.2600hz.com), among others that are in development.
That said, we're really excited with plivio's release and hope to either work with them to integrate their app as a whapp on our platform, or fork the project and do it ourselves (if we ever have time)!
We did this precisely because we wanted to prevent lock in. We want your business, but if we suck, you should be able to go elsewhere.
If you've ever tried to get any SIP based product to run virtualized you will know that is no easy feat, and not recommended for production: http://wiki.freeswitch.org/wiki/Amazon_EC2
If getting HN'ed already kills a service like this, it's not very reliable. Not something I'd want to depend on for this kind of service.