Hacker News new | past | comments | ask | show | jobs | submit login
Twilio Client Lets Developers Integrate VoIP Calling Into Any Application (techcrunch.com)
104 points by rahim on July 26, 2011 | hide | past | favorite | 30 comments



I got to try this out at a little mini-conf Twilio organized some months ago. It is, if anything, even more fun than "Hey you can reimplement Skype in 3 lines of code", because one of the parties to the call can be a computer. You can use the client as a "programmable audio pipe" direct to the user's browser.

We all got to do little weekend project demos. I made a website for learning the Japanese numbers where the computer would audibly quiz you, drill to kill, etc.

You can also make more intuitive interfaces for those underrepresented demographics in the world by having the computer programmatically narrate what they need to be doing on your website. (If you haven't tried this before, I recommend it: it works even better than the standard popup-based product tour.) Say you're eBay. Somebody is trying to list a antique China doll and can't seem to find the submit button. Why don't you ask if she would like you to walk her through it? If people aren't going to read on the Internet don't force them to read.

Or those lovely little "Heya I see you are browsing our website why don't you chat with me" applets. How's about making that vocal? "It's OK ma'am, just talk at your computer. You're looking for the buy button? Try the purple one on the top left of your screen. Yes, we do offer free shipping. You have a good day now."

You can also do the usual Twilio magic for business process automation. "Oh look, we can provision an entire call center with everything they need to do inbound or outbound work for the cost of headphones. No gazillion-dollar VoIP contract or phone lines required."


I also got to hack on this API before public release at a probably the same hack-a-conf as patio11. Twilio has put a lot of thought and work into this and even the alpha preview was very solid.

Let's just say, my next weekend project will be a voice chat that wraps a flash game. Imagine being able to choose to jump into a Twilio style conference room with other people playing the same level of a tower defense game!


Imagine being able to choose to jump into a Twilio style conference room with other people playing the same level of a tower defense game!

I can imagine it:

- Shitcock!

- Shitcock!!

- Shitcock...?

- Can you hear me?

- Shit what is this I -

- No we can't hear you speak up NO I AM STILL GAMING DAMNIT

- Are you talking about Hitchcock?!

- My little guys are stuck! What the hell do i do??

- Like I said two minutes ago: you need to click "Run" sighs

- ... so basically she cheated on me because I didn't give her all my gold and stuff when I closed my account

- HAHAHAHAH

- Shitcock!


I don't make comments like this that often, but that is hysterical (and, off-topic :). I don't have any insight into the modern gaming generation, so this is an especially interesting comment because I often feel like I'm missing something, but my underlying suspicion was that their was nothing but a vapid notion, at most.


There is no "gaming generation", and while you are not missing out on philosophical discourse by avoiding the Halos and Call of Duty's out there, I think you might be surprised by the intelligence and depth available in other places.


Yeah! That's why I stopped playing xbox live and why I threw in the word "choose"


> Somebody is trying to list a antique China doll and can't seem to find the submit button. Why don't you ask if she would like you to walk her through it? If people aren't going to read on the Internet don't force them to read.

I think this is a great idea. It can even be a javascript plug-in for restaurant websites where you can just call if you don't want to deal with online order placing systems. It might make even more sense for someone like Yelp to integrate this as a feature? Who pays for the calls is a question that needs to be solved though.

Pulling numbers out of the air -

0.25c / min * (2 mins / call (on an average)) * 25 orders / day * 30 days / month = 375 $ a month ? Holy crap.


That's $.0025/min * (2 mins / call (on an average)) * 25 orders / day * 30 days / month = $3.75


Seems to me Twilio is quickly going to become the 37Signals of the Telephony world, and should they continue to play their cards right, they're likely to be a dominant force in a very short space of time. I wish them well and hope that someday soon we can do away with our complex voip infrastructure and move over to theirs.


Surely for Twilio to become the 37Signals of the telephony world, they'd need to stop releasing new features and just let the product stagnate, while occasionally publishing bitter screeds on their blog about how worthless other companies are?


LOL ... well played.


Seems a neat idea, bt it isn't exactly seamless to the user -- I get the Flash security dialog asking for permission to access my speaker & microphone, and the default was to deny.

Many users probably won't have a clue what to click there.

The lag time on actually calling through to my phone was rather long (over 10s) but maybe that is just because their servers are busy.


Lag time dialing your phone number or audio lag?

EDIT: In regards to the Flash issue, the security dialog is a necessary evil. It's an unfortunate UX, but the opt-in model for accessing your devices is important.


Dialling ... though I never got the audio to work, but I blame that on the USB headset I have as the only (working) microphone.

Flash probably defaulted to the soundcard mic.


It currently uses the default system mic. We'll be adding complete microphone support (changing, etc) in a future release.


It would be a good idea to encourage the user to pre-authorise the necessary security stuff before the call is made, I think.


..just as long as the users are in the US/Canada, or happy calling the US/Canada..

Hopefully they'll expand into Europe sooner rather than later, as it looks like being a really useful service.


We support calling calling over 170 countries: http://www.twilio.com/pricing/international-calling-rates

In addition, you can make client-to-client calls that never touch the traditional phone network and will work anywhere in the world.


Sure, but then you start hitting lag issues, right? Plus we cannot route the data through the US due to data laws.

Hopefully you'll come to Europe in a year or two, because your product really does look fantastic :)


I am a fan of flowroute.com, but they apear to cater to a more wholesale crowd. Maybe get your close family and friends to create a cooperative?


I wonder how https://www.tropo.com/ is doing. They seem to be a bit of an underdog in the telephony api world.


I was doing some dev testing with Tropo. It works pretty well, but I think I'm going to use Twilio. Twilio just seems to be more on top of things.


I thought I'd take the liberty post a comment from a user in the techcrunch comments. I'm curious to hear reaction from those more familiar with telephony than I am.

<comment>

PhonoSDK (http://phono.com) is a far superior implementation of this same concept that has the advantage of being released almost a year ago - close to 10,000 developers are now using it.

The number of advantages that PhonoSDK has over this is pretty impressive:

- Phono supports enterprise-grade open standards for VoIP and IM (SIP and XMPP). Phono supports HD audio (much better caller experience).

- Phono supports in-browser IM functionality as well as in-browser phone functionality, using the same library.

- Phono is open source.

- There is no charge for Phono -> Phono calls or IMs.

Noticeably absent from this offering is the use of any of the generally accepted standards for telephony or communication. You can call this "VoIP" but but it is that in only the loosest sense of word.

The lack of open standards and the inability to interoperate with systems that suport them make this little more than a toy for developers to play with between real projects.

Enterprise customers won't touch this with a 10-foot pole.

</comment>


Hmm, so Phono is free and open source. It sounds like I'll have to do a lot more than sign up for Twilio, give them my CC#, and drop four lines of JS into my app.


Twilio is frequently aggressive with describing how much work integration is. Literally, yeah, you can ring a phone in one line of code but you really don't want to. It starts getting powerful when you can push full features - tested, with UI/UX, production-ready - in about a day, and you could write a telephony business in about a month, from scratch. Those aren't exaggerations in the slightest.

See my upcoming free guide on productizing Twilio apps for why using the sample code in a live environmwnt is almost always a vewwwwwwy bad idea.


Well now I'm curious. Just this weekend I had a great time texting myself with the official Python and Ruby libs from Twilio in only a few lines [1].

Sure there were rough edges like "which and how many phone numbers do I have access to" and "am I going to run out of credits and cost myself a jillion dollars accidentally" but on the whole it was a great starting experience.

Edit: I'm guessing you mean I need to build my own TwiML wrappers and scripts so that my customers can have a meaningful interaction with the computer rather than simply getting called by a useless one-line proof of concept that can't talk or listen to them?

[1] https://gist.github.com/1102938


Wait for the whole story later, but in general: what happens in terms of user experience if you input a wrong number? What happens if you input someone else's number? What happens if 4chan discovers your site and uses it to input a particular someone else's number 8,000 times? etc, etc


At least for the texting side of things, it's downright trivial. My fuzzer texts me every time it finds a crash, and it takes all of 3 lines of code to do this. Works like a dream.


Looks like PhonoSDK requires the use of PhoneGap for iOS clients. There are no details, but I hope that Twilio doesn't.


Our mobile SDKs are native and do not require another framework.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: