Plivo is an open source framework for adding telecommunications features such as voice calling or SMS to applications. It enables developers to let their applications interact with phone systems using the programming languages they already know. Plivo works by abstracting the underlying telephony system and exposing it as either a REST based API or as a set of XML elements that can control a call. It provides out of the box compatibility with FreeSWITCH, Skype, SIP, H.323, Google Talk and Google Voice.

Plivo is an alternative to cloud based telecommuncations APIs like Tropo and Twilio, allowing developers to keep their telephony applications on premise.

One of the downsides to using a service like Tropo or Twilio is that you must those companies' choice of carriers and infrastructure. For many projects, that's going to be fine. But some customers are going to want more control.

Update: Tropo has let us know that its software is also open source and available for download for on-premise installations. You can find it in GitHub.

"We think there is great value in Plivo for developers and enterprises who want greater control over their telephony application," Nimish Adani, one of the project's developers, told us by e-mail "The use case for them is similar to why larger blogs would want to opt for a dedicated WordPress instance than a Posterous/Tumblr instance OR why some merchants would be better off using their own Magento installation than using Shopify."

The framework was built with Python, gevent and Flask. Plivo is completely unrelated to Twilio, but it does use a similar API.

Plivo is open source under the Mozilla Public License. The team is currently looking for sponsorship.