Event: February 19th, 2010
[audio:http://media.blubrry.com/winelover/recordings.talkshoe.com/TC-22622/TS-317299.mp3|titles=Jason Goecke and Dan York on Tropo from Voxeo]
We welcome Jason Goecke and Dan York back to talk about some of their newest services. When “JSON” talks, ideas become reality! Check out the new Tropo API.
Tropo is a cloud communications platform that makes it easy for you to quickly add voice, instant messaging (IM), and SMS to your applications, using the programming languages and tools you already know using a web services API and JSON.
On this call we talked about the newest features in Tropo and how to get started with telephony apps in the cloud without adding new infrastructure. In fact, at least one person created a developer account and wrote a short application!
[6:05pm] Ze^3k: Speaking: Jason Goecke (Voxeo) about Tropo
[6:05pm] Ze^3k: Tropo.com
[6:29pm] Ze^3k: Hosted app docs
[6:30pm] danyork: there’s also the API
[6:38pm] Ze^3k: Speaking: Ward Mundy, NerdVittles.com
[6:39pm] jasongoecke: JimCifarelli yes: on tropo-webapi-ruby
[6:39pm] jasongoecke: Code here (Ruby)
[6:55pm] jasongoecke: Other grammars Tropo supports beyond Simple Grammar are GRXML and JSGF
[6:59pm] danyork: MadManMarkAu: here’s a screenshot
[7:24pm] jasongoecke: Speech Synthesis
[7:25pm] jasongoecke: madmimi.com
[7:26pm] jasongoecke: getvocal.com
[7:40pm] Ze^3k: Next VUC session
[7:58pm] Ze^3k: Speaking Michael Graves: Michael’s Blog
[7:59pm] jasongoecke: Thanks again everyone, you may follow us on Twitter too:
@jsgoecke & @tropo and the Tropo blog
Full transcription of the discussion on the next page
Jason Goecke, Voxeo:
What we are doing with Tropo is we launched it back in March at the last ECOM in San Francisco bay area and what it really is, is a platform that Voxeo has created using the same infrastructure and capabilities. But really extending it out to the new class of developers out there that don’t want to deal with heavy standards and really just want a simple API to start developing applications. We have seen a trend out there where things are moving from things like SOAP XML to REST, JSON, these types of simplifications and Tropo is really a response to that for the real time communication and voice world. So what we have been doing is creating a platform where you may easily come in, develop an application in a scripting language of your choice such as Java script, Groovie, PHP, Python, Ruby so giving that choice to users once again to give them a comfort in whatever language that they have been developing in, and be able to use a simple but powerful API to actually drive telephony applications. Those applications include things like outbound notifications, inbound self service, the ability to set up conference calls, all of these capabilities. So what is interesting is I was actually at a Ruby meet up the other night here in the San Francisco Bay area and when talking to the Web 2.0 crowd and people who were used to doing web development, when we showed them how you can write a five line script in Ruby or PHP, and your phone rings or it answers and says something, they are completely blown away and they start to plodding and think it’s the best thing they had seen in months. So it gets developers quite excited when they see that simplicity and can mix it with their own applications right off the bat. That’s really the goal of Tropo. And I think we spoke probably last fall or late summer timeframe and what we had at that time was really a platform that was voice capability where we had speech recognition, text to speech, you could dial in over a VOIP, you could used Skype SIP or get a phone number and dial in to your applications as well as dial out to the world as well. Now what we have done and what we focused on since that point is the trend what we are seeing that users and customers and folks out there don’t want to be trapped in just using voice to talk to an organization. We are seeing a big trend towards wanting to be able to use multimodal applications whereby you can send in instant message, you can talk over Twitter to an organization, or you may use SMS and one of the acquisitions that Voxeo made in 2009 which was quite key is a platform called IMF8 which really is a single API that unifies all of those into writing one application that you may then deal with all these different disparate channels and mediums for dealing with your users and with that we have actually added that into the Tropo platform and now using that same simple API you may go ahead and develop those applications using the same back in the same script even, and now you are actually talking to people on any medium that they choose.
I should have said right away we did put this in the RC, we are talking about TROPO.com and you should go take a look at that while we are talking here to Jason and eventually Dan if he wants to chime in. How do people get started with this? What’s the best way, I am sure there is some way, there is probably some apps you can get started with and so on. What would be the best procedure, do you need to register, you need to go to the site and join, it looks like a join now thing here, what about that?
Yeah. What we do and this goes back to Voxeo 10 years all the way through today is we believe that to develop on the platform should be entirely free and the same experience you would have once you went production. So that means you may sign up for an account as a developer, it is free, you may go ahead and write as many applications as you want, you may get phone numbers associated to your account as well, and just start developing and that includes all the capabilities of the voice which is text to speech and speech recognition, all of the SMS capabilities, instant messaging etc, and it is really a simple, it takes 30 seconds to sign up, no credit card required or anything like that, and you are off and running.
You can I could develop an app right now, click on join now, and we are done, five lines later, right.
Absolutely. And of course we have a lot of documentation out there, we are always working to improve that documentation, we get feedback from our developers and users about how we can make things even more clear there, and we have probably 30 sample apps out there today in a whole host of different languages that people can plug into their account and immediately have something up and running. That includes things from checking the weather with Yahoo to getting Bay area rapid transit information to dealing with NFL highlights or things like this. So there is a whole myriad of applications out there that you may instantly get started with as well.
Is it common in IRC about integration with Skype? Is that mentioned in some place?
Yeah, so what we have is when you sign up for an account you actually get three different ways by default that you can dial into an application, and that includes a SIP URI so you can actually dial in from any SIP cell phone, it includes INAM, so we have INAM support in there as well, and you get an INAM phone number, and then lastly you actually have a Skype +999 number that you can dial to get into the platform as well. And all of that in for easy development as well.
And we should be clear that could be INAM too depending upon how you say it? INAM
I am sorry. I am used to INAM, and so yes the INAM support, and then you also have the ability once you set up that application to also go ahead and add a phone number or DID from various different points in the US. We don’t have international support for the developer account yet, we are working on that, but in terms of getting phone numbers into that as well, you are up and running very quickly. And you can have really as many phone numbers as you want on the developer account as well.
How would we able to compare Tropo with Twilio who have also been our guest by the way and are very gracious people?
Yes, I was actually on that call as well. So it’s actually Tropo for troposphere, we actually had this debate once and for all the other day internally is it Tropo or Trapo. It is Tropo. So, what we have done as well, I want to go into some of the new features and come back to that question, also. We have actually as part of the new capabilities we have added since the last time we talked is the ability to have a remote API as well which we call the Tropo web API. So we had historically is what we call Tropo scripting and that’s where you write a script, you post it to your account, and you are off and running, similar to a Google app engine where you can actually just run your script in the cloud which happens to be our cloud and you are off and running. One of the downsides of that is we don’t have every single library and every single language you may want running in our cloud, so the alternative is we have come up with a REST JSON API and that’s where JSON comes in and go ahead and be able to run your applications remotely and have access that seems simple API in our cloud. So that’s part of what we wanted to do, it does give a lot of developer choice in terms of different programming models, different ways to access us etc. So that has been one of the big things we got and that has been out there now for several months as well. Now how we compare to Twilio, they have the ability to do a XML API over HTTP and they have had that now for well over a year and what it comes down to is Voxeo has been doing XML APIs with VXML, CCXML, Cove XML now for about 10 years. And what we have seen is that the developer community is looking for greater simplicity, we didn’t think the world needed yet another XML API, we feel that’s well covered at this point, and hence why we focused on the Tropo scripting APP engine style, we focused on the JSON capability because myself as a programmer I know it is a lot easier to deal with JSON parsing than it is with XML, and that is the trend we are seeing out there with APIs around Yahoo and Google and these guys. And further we are using the same backend infrastructure that powers Voxeo which is arguably the largest if not one of the largest cloud platforms for telephony and real time communications which means Tropo gets access to that industrial strength capability which includes things like full speech recognition, and includes the full multimodal capability and really on a cloud that is optimized for running telephony applications. So I think most of the people on this call would know that handling voice optimization in the cloud is quite a bit different than handling web optimization with the likes of Amazon and the other cloud providers and what Tropo doing is that the table being powered by Voxeo, is really that voice optimized cloud backend, we have multi carriers that we deal with, so we don’t have outages, we have multiple data centers, our SMS capability isn’t through one vendor, it’s actually through a myriad of vendors, so we really bring that professional Voxeo background behind us that gives us all those capabilities that some of the other players out there don’t have.
I am trying to encourage people to get in on audio and ask you questions. I think Jim’s question got asked already, but he has a crying baby and can’t, anyone who does not have a crying baby or barking dog, let us know, I guess the IRC if you have questions? This might be the time to talk about, this is always a little hard to do but if there is anyone or any applications you can mention, would I mention the name for example of what people are doing?
Yes, I can actually give you a couple of examples. One is a company called Awayfind. Awayfind is a organization that’s focused on creating let’s say, alerts out of your email and your different channels that may be coming to you, and then escalating those based on certain business rules that you set up. So the whole idea is I got information overload, I may be away from my desk, I have got my phone with me, I want to actually set some business rules in terms of what gets to me on which channel where based on status or on different pieces of information, and I want to go ahead and push that out to the user, and they are actually using Tropo to do that, to do the outbound notifications. So, if I have an email that comes in that’s important from someone and I am sitting in a meeting, I want to get an SMS, so I want get a phone call, and I want that message to be played back to me. So that’s an example of the outbound alert notifications. Another one that we have recently been able to talk about because they get all their IP filed away, yes Orange Labs out of San Francisco is actually developing an application that they are calling Status, which is really an all encompassing social network mobile application where you can do things like set your status, it then gets communicated as text to speech in your voice mail for example, so I just got an airplane, I want people to know I am going to be landing in Denver in two hours, I can quickly tap in a status update into my Android or I-phone application, and I could translate it into my backend voicemail system for example, and that’s being used by Tropo. They are also doing things around the ability to add instant messaging interactions with you and your status and publish that information, so they are actually using a lot of the Tropo features around both the inbound dialogues, the outbound capability to create a really seamless environment in terms of, if I am running in a social network I don’t want to be limited just to my Twitter client for example, I really want to be able to take in all of my channels and all the different things I may be doing and have that feedback in to what my status is.
Jason, I think I have been spelling your name wrong for the past twenty minutes now. So forgive me everybody. I don’t know how to pronounce it, so that’s what happens. You mentioned SMS, and as you know I am here in Europe and SMS has always been huge here, and frankly I am kind of cheap on portable [unclear] I used SMS a lot myself, but the folks in the States, I often hear people who are little confused by, and it is 99% mobile, I don’t know if there is fixed line SMS in US, is there such a thing?
We have Google voice
Right. But besides that, I mean does anyone like this [unclear] give you SMS possible?
Not really, but what we have done which is interesting and kind of surprises people in the US market is, for SMS today, you had to have short codes. What we are doing on our SMS platform is, we are giving you a regular 10 digit phone number just like Google Voice would for example, and every phone number now on Tropo is SMS enabled right. So you send and receive SMS from that same phone number that you dial into and out of your application from. So you are seeing a trend towards, and I think it is somewhat driven by Google Voice for a lot of people here, but people are beginning to realize SMS is not mobile only but can actually be used now in conjunction with phone numbers across the board.
And what are some of the [unclear] real quick that one of the things we used SMS other than sending messages to people, one we were using Asterisk as our PBX, I used SMS in both directions to get notifications of someone who calls and didn’t leave a message for example, or the incoming I would send command, but totally insecure by the way, by sending command ‘call me back’ in Spain in a phone booth and stuff like that, via SMS, that worked beautifully, but what kinds of interesting things, we are talking about just sending some SMS, hey party, which is good, or is there other particular applications, here for example we work in the wine business and wine producers most of them have SMS alerts when the temperature of the mix of grapes from [unclear] gets to a certain point, that sends an SMS, there is industrial process as this one, what are uses there besides partying in the US? Anything interesting?
I think you hit on one of the network scene which is around what Thomas Howe likes to call the communication enabled business processes where in the particular business process it makes sense to get an alert via SMS so if you have people in the field on their mobile phones, they take particular action in whatever that business process may be. We are also seeing applications where people want to use it for a secondary piece of authentication whereby you can make sure that actually dialing from a device that you would expect them to do so, they call in, you collect some information, you SMS them a code and then they enter that code in, so another step of verification on that as well. I was about to finish up and say, we are seeing areas like Awayfind where you are using it for escalation of other channels coming to your SMS for immediate attention when you may not be sending at your desk for your email and things like this.
Well, its [unclear] in New York, I would like add in or two, we are seeing a lot of interest from folks around the whole multimodal, multi channel interaction with a context and with a self-service kind of application. So it could be you want to check the status of your package, typical package tracking type of thing, and you are standing in line, so you can’t make a phone call, but you can use SMS. So we are seeing people looking at it in a two way environment where you are interacting with a service to go and check on the status or something or to communicate with a text support center or anything like that. So we are partly enabling not, it is really with Tropo you can do, it is a toolkit.
So what do you want to SMS enable, how do you make that happen?
Interesting, because that’s an excellent use for it and I guess they do the same mistakes, you can get your minutes via SMS.
That is a very good point because a lot of superfluous use of cells that you really didn’t want to know when you are standing in line, it is much better [music] that was inevitable. That is Strike 3 [unclear], nice to know you have breaking news. Breaking news has a caller who has a question. I was just saying that SMS, that is actually good use of SMS, Carl are you with us.
Yeah, I am. So my question has to do with more than the mechanics of how you are implementing SMS, in other words, I know that using some technologies you can send binary formatted SMS messages, for example to do something like over the air provisioning of handset or tweaking certain settings on a handset, and so I am wondering are there any capabilities for sending binary formatted messages in your framework there, and then second question is also related to more than mechanics of it, in one of our pain points right now is that we have terrestrial numbers that we want to able to relay SMS messages out to a mobile phone that can conveniently process a text message and it is difficult to find a service provider who will do it out, who will let you port your number and then also, programmatically deal with your text messages. So I am wondering you said that you and Google Voice apparently as far as I know are the only ones that have put an indication that have support for text messaging, so my question is whether I can take a number to you and do that or are you getting your numbers from a pool where you have a partnership with someone who has an SMS and is something like that, so yeah that’s my question.
So on the first one in terms of the binary format within our interface structure and within Tropo specifically, we do have the ability we are using scripting languages etc to send out binary information. I would have to go back and check to see if we can actually do it at the SMS gateway implementation that we have and I am pretty sure we can, but that hasn’t been something we have gone out and proactively tested as of yet, so that’s something I have to differ on that side to be 100% sure. In terms of portability, we have the ability to port numbers into our network and then the way we are doing our SMS is we could actually SMS enable new phone numbers based on the partnerships that we have. But it would mean porting your number into our network which has locations round that as well.
I see, okay thanks.
I was just typing in Talkshoe and for everybody listening if you are not on air or sea, it would be a really good way to join us and that would be at VUC.ME/IRC which would bring into a web, if you don’t have IRC client, it will bring into the web interface and then you can tell us if you have question or if you are not able to call but you are listening, you can ask that question, one of us will ask it for you, and while we are talking about questions, anybody else have any questions? Type it in Talkshoe real quick, sorry, but in the IRC channel or if you called in unmute yourself and ask the question. Anybody?
What is the pricing on the SMS functionality?
Yes, what we are priced at is 2 cents per message and that’s two US cents per message, whether it is inbound or outbound. That’s what we are charging for the SMS side of things. Now, remember on a developer account to get started and again testing in plain with the service, there is no charge. We provide those free of charge.
Two cents seems almost absurd, inexpensive to me by the way.
That’s like a pretty much of a mass raid. Any quick question on SMS also, Quid of international SMS, that usually nobody does that? Can you or will you some day?
Yes we do have the ability to do the international SMS as well, as part of that. So really it’s using the same SMS network to be able to go ahead and do that, so yes.
That’s interesting. I am not sure that Google does that, a caller is asking if it is the same rate, I don’t know would it be?
I see that, I have to go back and check on what the rates would be on that side. I am not a 100% sure. So I don’t want to misspeak.
Yes it is not immediately obvious. I have been in countries where it is, and we are told it is the same rate, but can you believe what Orange says anyway.
I like Orange, Orange has developed a great application on Tropo. So I can only say good things about them.
Somebody can, but as a customer, I can’t say good things about them, but let’s not go there right now. In the absence of any other questions, here is Carl saying another company charges 30 cents per international SMS, now I don’t know that wouldn’t be Google Voice, I don’t think.
Well, that’s the thing, Google Voice I am able to send SMS on Google Voice to like, I have a lot of family over in Spain and I am able to communicate with them without a problem. So I don’t even think I actually have to pay for that, if I recall.
And just want to mention also that, I saw some place that Sipgate was doing SMS as well, just to be fair, but I don’t recall actually seeing that. I just heard it.
There are a lot of companies that provide SMS, Termination SMS Services and those types of things. So there are a number of folks out there when you get into the infrastructure side of things.
And this is recent though because nobody has heard of SMS outside the Europe for a long time. But I think it is a good thing for reasons that we have already said. SMS is cool. Yeah.
And don’t forget, what we are also talking about is instant messaging as well. So in that same way you may easily send out SMS back and forth. We have the ability to do the exact same thing with the same application out to Yahoo Network, Microsoft Network, Google Talk, AIM etc and have that same type of interaction.
Now, are those priced at the two cents also?
No, right now those are not charged for. We are looking at various pricing plans in the future where we would work rate something like 15000 messages at X, it would be nowhere near 2 cents, it might be 0.0002 cents right, something along those lines, because the infrastructure to deliver instant messaging is quite a bit different and I want to here now emphasize there is no charge on the developer account for that.
Right. I understand.
I just want to say really glad you if you dialed on G722, it sounds really good.
On the instant messaging side too, it is [unclear] or XMPP etc, so there is all the different pieces in addition to what JSON [unclear]and also Skype IM as well, for we can support in parts of that, so we have the ability to do that and one of the interesting and compelling things about Tropo for me is that you can do this all from a single application. So to one app going across all those different channels. So you can write it, you can tweak it different ways if you want to for the different channels, but you don’t have, it is just one app that is able to go and work with however people want to interact with it, whether they call it, whether SMS or IM, so any inbound or outbound, neat stuff.
Yeah, and maybe I should walk through an anatomy of an application quickly to give you an idea of what that single application might look like that can handle all of those channels. So what you have is the ability to write the script as I mentioned in five different scripting languages or if you are using our remote API and virtually anything that can do HTTP web serving. So what you have the ability to in Tropo is a set of verbs, methods or actions that when you write a script and post it to us, they look something like you have a line that says answer, it simply says answer, and then the next one might be, say, and then you pass it a string ‘welcome to my application’, and it does a text to speech back to the user whether it be a voice call or an instant message and sends that information back to them, then you have the ability to ask and you simply say ask past a string, and then you pass it a simple grammar which says okay, this is a universe of possible responses might ask for some, maybe I am going to ask you what your favorite language is, and I can actually pass a string that says okay I am expecting for Ruby they might say, Ruby and JRuby, for Python they might say Python and Py or Jython, and that gets returned in your application when you ask them what they said and then you can go back and say, okay your favorite language is Python, that is the next line and then hang up. Right, so you have written a very simple 4 or 5 line script with the ability to set the speech recognition capability and then that works over SMS, instant messaging or voice in equally the same way. And you do have the ability also to do things like detect what the first message they sent was, because when you answer the phone you don’t generally look for the hello, or the information the user may first say, but in an instant message they have already said something to you. So we have an application for example Yahoo weather where we ask for your zip code and then we go to the Yahoo web API and playback your local weather, in that one a user who may have used your service a few times, may just send you the zip code in the first message you want to be able to capture that and immediately respond to them without asking them that information. So you have the ability to write one application for everything, you could also have the power to deal with the nuances of the different channels that you are dealing with, and to that end you can detect was it a text call, is it a voice call and what network did it come from, did it come from Yahoo, Microsoft, Gtalk, or an SMS etc. So you can write one common application as well as deal with all those different nuances and subtleties of the different channels that a user may use.
I am guessing that you don’t quite have that ready yet.
No, that works today. No, we don’t have [unclear] sorry I didn’t see that, no [unclear] yet but we have had people that have actually written Closure and Scala and things like that for the platform but supporting five languages is already quite that.
And to be clear on that too, to talk about the nuance there, like Jason said earlier, there are five languages that we support in our host infrastructure. You can upload them, you can upload just script into our hosting cloud and have it run there. Very much like the Google app engine model where you upload your Python code and add Java or whatever app into Google’s site and it goes and executes there. So it is a hosted model where you are up and there and it is running, and then what we announced just a little bit ago was the web API where it is running on your site, and interacting with us over that REST based the JSON REST based API so you could write in whatever language you want, so I am not sure who asked this in the chat, but he mentioned, could you write it in CURL, and sure, I mean it is just a HTTP, it is a REST call over HTTP so you could write it in whatever you want to write, and Gregory, he says you can write on whatever you want, I mean you could write it in Coldfusion, [unclear], Fortran or whatever you want to do. That’s the difference. On the web API it is running on your server and interacting with our platform over the web API but it is written in whatever language you want, if you host in our platform, we have got five languages you can choose from, so that is the nuance there.
And the key there is what we are doing is we are providing developer a choice, a developer to get started may just want to write that five line script, post it and host it on our platform, so you need only to have to host it anywhere, and they have an application. Or someone wants to do lots of backend integration to whatever application they have got, you can go ahead and do it that way with the Tropo web API and another thing not to forget is that Voxeo sponsors the Adhearsion project which is one of the primary frameworks that works with Asterisk and one of the tasks that I have here shortly is to actually write an Adhearsion component that will integrate by default to the Tropo cloud, so for example in Asterisk if you want to add in voice recognition you can do that by calling in a Tropo resource to actually do that and then release it and carry on within your Adhearsion in an asterisk application. So we are not forgetting all of those implementations out there, that use Adhearsion to do these types of things as well.
I know that Carl is dying to ask to another question, before you die, go forward?
Carl: If I write an application up in your cloud how are you trunking that system out to the network, are you doing SIP trunking over the public IP network or are you using PM trunks to the ILAC or how do are you trunking that out. The reason I ask is because, everybody here knows me as the latency [unclear] and there is a lot of application that I built and sort of scrapped or had to re-engineer using faster TDM trunks so as not to basically create sort of a latency penalty, using that application and it is one thing to say yeah I can still talk to the person, but in our case we had calls that were going out to a sales center and basically what it was is when you are on that call you had just didn’t like the call as much, it just didn’t work as well, and [unclear] was trying to save the nuanced subtle aspects of talking with our business by not having it to be one of those calls that you don’t like for some reason because it is too slow, so anyway that is my question.
And it is a very good question, I am glad you asked it, because people that come from a web background don’t understand the subtleties between a web interaction and a real time application like SIP and RTP. The Amazon cloud is great, it works great for the web but it is web optimized. And people regularly see spikes of 1000 milli second latency in and out of the Amazon network which is fine if you are doing a webinar action, not so good if you are trying to carry on a professional conversation with the customer. So that’s one of the areas that I really like to emphasize with Tropo is we are using that same infrastructure that drives one of the largest telephony clouds around which is Voxeo where all of our trunking is directly with the carriers. We don’t do trunking over the internet, so we do have SIP trunks for those are direct SIP trunks with the carriers. We do have TDM and convert the TDM to SIP as close to the edge in every case we can because our internal work is 100% SIP, but that is within our network. So when we are trunking out to the broader world, we are very cognizant of latency and what you need to do to provide professional quality for real applications in real business and that’s why you won’t see us sending or calls over the broader internet in the carriers, they are all interconnected, so for example our data center in Orlando sits right on the rail road tracks and we are running fiber directly from three plus major carriers in there, so not only are we directly connecting, we are actually interconnecting with multiple carriers, because you know a carrier does go down once in a while, they do have trunking issues etc, so you have to immediately be able to route between those and that’s what we really drive home around the fact that we are a professional real-time voice platform, not just something running in someone else’s cloud.
Yeah, someone else’s garage.
To extend on that a little bit too. Voxeo has been around 10 years and has done a lot in the space on XML side, on voice XML and CC XML and we have literally tens of thousands of customers who are using us for all of this. And we have a very large scale and that is brought about by having multiple carriers and, we are one of the, it is funny I am SIP guy and when I came here two years ago, it was interesting to learn that Voxeo is one of the larger consumers of SIP trunks in North America. Like Jason said they are directly with the carriers, but it is a huge amount of capacity and so we can do things like we had a customer recently who did about 1.3 million calls over a space of about 90 minutes, and it was and for large amount of what they were trying do for, it is outbound notification type of stuff, and that is the kind of capacity that we have built into the network. So we are also very latency concerned, because we have to be when we are providing this amount of capacity at this amount of scale, we have to be concerned about latency.
For customers that already have an existing SIP infrastructure, I guess what I am searching for, are there any cost savings to them by channeling the stuff out, be a SIP versus using regular phone numbers?
What they could do with SIP, because we are SIP cloud you can interact with us in ways that you couldn’t do in the traditional TDM environment, as for instance we have some folks who are using applications on our site for say, customer satisfaction, when in those call center, one of those would you like to be part of this interview when this is done, and what they are doing is from their call center they are interacting with us via SIP and in doing so they can send rich call headers across in SIP to our platform that can denote various different things like where the state of the application was, information about the caller etc that you just can’t get from simple called ID and so we can process it on our side, have the call interaction and send it back to that other site again through rich SIP so that they can pull back further into their system. One of the advantages is that you have that ability to go and provide a richer context to the communication. Now somebody won’t limit your talking SIP to our cloud over the internet if you want to, but that’s a choice.
We have some question that was, are they still going to be at the 3 cents a minute right, where it is pure SIP to SIP, for example you know large banks that have SIP connections between all of their offices, to take advantage of Tropo are they still up to 3 cents a minute rate, even if it is pure SIP traffic.
Well, the 3 cents a minute rate is for that user that comes in once to get started, starts building your application, goes out there and begins growing etc, if Bank of America and [unclear] wanted to start using it of course, you have a whole different discussion on that level. Just like anything else, it becomes the scenario as to what is needed for that particular situation, because one of the things on Tropo is it doesn’t have the same SLAs that we have on the broader Voxeo network, it uses the same infrastructure, so it pretty much has the same operating capability, but for that 3 cents a minute, you are not going the same level of SLA and if you are a larger bank, even in if you are interconnecting with SIP you are going to want an SLA with penalties which comes at a premium.
Are you folks interested at all in giving any or capable of giving any statistics for minutes per month or anything like that?
What has been to date is Tropo has been a beta platform, we want it to really get a lot of testing, a lot of users on it, lot of developers which we have successfully done, and we will be launching production shortly where those minutes will actually become something that we start talking about regularly because the developers are using it in a whole myriad lot of ways, we are seeing peaks at certain times and troughs in others, and part of that is developers are looking to take it production before long and that’s exactly what we are focused on at the moment.
Did you mention any numbers, I did put the URL but are there phone numbers what they are most that are public…
Yes there is actually one right there on the front web site, you will see if you scroll down on Tropo.com, to the bottom you will actually see an example application you can dial SMS or IM into as well, that number is a US number, I actually put those details in the IRC as well, that you can dial into and actually hear an example application and then of course to write your own, you can get a phone number for free as a developer as well.
I don’t know probably if I asked this question or not, I am not sure it was the same question, if I got, can I port the number in?
Yes it is possible to port numbers in, right, but it takes a little more time and process to do that.
You don’t do that for like a 20 minute experiment, I mean [unclear] done your testing.
Exactly. When you are ready to launch.
And also to the questioners, if you want to play with it, we in the docs.tropo.com it is there in the just basic part that’s labeled there is app engine, there is a scripting part of things, there are some tutorials, VB tutorials, Java tutorial, PHP, Python, ruby and there are some samples that go through, that have all the codes, there are working samples that people can go and just create an application up on Tropo in a hosted environment and upload the code, and you just copy and paste the code in and set it up and use it right there. So it is that easy.
And to that point, I would like to extend an invitation to everyone on this call, is next week we are actually launching a private invite only beta of some new features that we are about to launch which are quite interesting and if you go ahead and sign up for an account and then email me your account name, I would be happy for any one that is on this call to go ahead and participate in that beta.
An excellent opportunity, Jim [unclear] I don’t know if you are dialed in, you have a question and I was going to read some of these numbers into the [unclear]
Yeah, can you hear me okay?
Jim: Hi Jason, it is Jim here. Great stuff. I am interested in signing up for a developer account and putting together maybe some projects for potential customers. If I sign up for a developer account and say I have put together some sample software, can I keep that account around for a few months, or what if I don’t dial in or use it for three months, do they become inactive, or I hate to tie up a phone number, that sort of thing, maybe you can comment on it.
Now we leave accounts open as long as you want to, you will have to express we access to close it and even then we probably leave it there and just change the password. So there is no limit in terms of you coming in and signing up, getting a phone number and having that account, you can keep it open, in fact while Dan and I where speaking on some forums down at IT Expo a few weeks ago in Miami, Thomas Howe pointed out how he actually has account number 68 I think, on Voxeo and has had that since the very early days. So there is no expiry. We are not worried about you taking up space or a phone number because really we want to encourage developers to come, give it a try and then come back when they need to, and not put any friction in place that would keep you from making progress on the Tropo platform.
Great, thanks Jason.
Let me just state one thing here too for everybody who is listening to this. Some people are not regulars and they may have just jumped in on this, been interested in Tropo and Voxeo, we have been in this call for almost three years now, and we feel like a community, many of us have met in person, and I just want to underline the fact that people who are guests like [unclear] on this thing had been on twice, and these are real human beings that you can contact. Jason [unclear] as opposed to bots….what I am saying is this is important. Let me put it this way, it is important to me and other areas of business when you meet somebody online and in fact these are guys who are interested in hearing from you. There is no joke and we have had a lot of interesting interfaces with a lot of interesting experiences with all kinds of guests on the show. So if Voxeo, if what they are doing on Tropo was interesting to you, you want to get in touch. It is a kind of a privilege contact and I want to underline that because this is not some kind of an ad for these people. These are guests as people we know in our community and they are part of that, Jason is an innovator, Dan is a very well known figure in the world of VOIP and I just have to say all that to cover the fact that I am [unclear]
And we have also been on this show, I mean I have been on here as a participant any number of times too.
We feel we know you.
You don’t know actually, you are interacting with Tropo app right now, that’s really me, I am not really here, it is artificial intelligence.
I just got an SMS advertising some kind of plan I can sign into with Tropo. Whose else is interested in asking some questions, because he is [unclear] human being, stump the bat.
Actually I was going to mention that we could have probably worked something out to connect to something like bridging with ZipDX but it is such a lot of work to do for something that wouldn’t be obvious immediately.
Maybe after the main call, we have a little after party, we can do something there?
How do you know about the after party, guess you were not told about that?
Oh sorry. This is the best touring test that I have heard.
We could have attached a bot to automated agent to this all, that could have listened for certain keywords or something like that.
Can I ask about speech recognition, if I missed any comments about that, then I apologize. If you said something about that sort of shut me up, but I am curious to hear you say a little bit more about what kind of speech recognition you are doing, limited vocabulary, or not and obviously it is speaker independent I am sure, maybe you can just talk a little bit about how people are using that and what their experience is?
Absolutely. And a key thing to point is I believe we are the only platform out there that includes speech recognition and at 3 cents a minute. And that is huge piece of developing voice applications. So it is something we are actually very good at. So we have our own speech recognition engine that we use which does utterance based, grammar based, speaker independent speech recognition, we do have what we call simple grammar and once again we are after simplicity first, and then if you want sophistication, we don’t block you either. So for setting your grammar switch or the ability to set your possible answers into what those values will mean, such as if I am going to call up and I want to check the rates on a particular airline, I might say United Airlines or UAL or American Airlines or AA and be able to return what those things mean and we have a very simple capability to do that that is Tropo. Now having said that we also have the ability to do full GeoXml which is the grammar XL format and you can feed that into Tropo. We also have the capability to do the JSGF which is the Java capability as well, so if you want very sophisticated speech recognition beyond simple grammar you have that capability as well. And I would like flip that on the text to speech side, it is a really very good text to speech engine where you can just pass it string and have it say something, and you can also pass to it SSML and with SSML it is another XML format that allows you to go ahead and set inflections, set speed, set what effectively becomes emotion in the voice and some very sophisticated things. The whole idea of Tropo is make it simple as possible to get people engaged. And as they want to expand our applications you have a road map on every aspect of it to go forward as your application grows and you need more capabilities. We don’t hide any of that sophistication if you want to get into it. And one of the things that we are testing is some enhancements to our speech recognition for Tropo and that is part of the private beta that I am talking about as well.
So in your experience, if I just wanted to start simple, and I am a big fan of what you said, and I wanted to offer a few words may be numeric entry as part of idea or kind of application, is the performance pretty good on that.
Yes, I mean, I have actually been quite amazed where I am just trying to type in a quick example into IRC here of what a simple grammar might look like as well, you have the ability to say something like, okay in the first part I want what I recognize and I am asking what your favorite language is for programming, so I might have Ruby and then in parenthesis I put I want Ruby or JRuby or PHP or Python and Pie and those get recognized and return back to your application. What was interesting at the Ruby meet up I was at in San Francisco the other night, I had put up an example to say hey Rubyrail that’s your favorite language if you put Python here, you are crazy kind of thing, get them clapping stuff like that, and one of them said hey, I see you have JRuby up there, it certainly won’t recognize that, so I was a little bit worried because I hadn’t actually tested it at that time, so I called back in over Skype said Jruby and sure enough it came back recognized Ruby and everyone was quite impressed with that. So both in terms of performance and the ability to do recognition, it is a very strong pop form and we have a lot of customers that are using it for production applications in broader Voxeo as well.
I have been trying to trap or band something here, Dan here is a well known security expert and we should probably talk more about security. Now what can we say that’s not going to be too revealing here, everybody is worried about that. So here we are with out application in cloud and what kind of things can we talk about to make sure that security is done right besides the fact that you are involved? In other words if you are my [unclear] and you can tell me if it is going to work, but that’s obviously has been thought of so, we had hacking VOIP here, so what can you say about security, because I am sure there is concern and it is probably not something you would put on this site as a page, so we are going to talk about it here.
I mean it is a concern and it is something that we do talk about and you know me Randy as far as that I am certainly out talking about security in webinars and various different blogs and other sites with the VOIP security lines in other places and, security is certainly part of what we interact with and it is part of what we have gone through our testing through our own systems to look at how we make our systems as secure as they possibly can. There is a larger issue really which comes in to when you are looking at doing pushing your applications out into the cloud, there is a natural concern about how do I trust the cloud to be there, and you are going back to sort of what Jason was talking about earlier, this is part of what Voxeo [unclear], because we have been doing this for ten years. We built the infrastructure, we have multiple redundant data centers, we have redundant internet connections going into those data centers, we have redundant carriers and multiple capacity so that we can be able to go and do that. On the production side of the house, on our traditional XML site, we have a 100% guaranteed SLA which is basically that we will give you money back if we are not able to give you the uptime that is 100% and we do that because we put in these layers of redundancy and availability so you can be sure that they were there and that is something we have done, and so that’s a large part of that security. It is how do you trust that it is going to be there, that’s going to work with there, there are other elements too when you get into dealing with certain voice applications, there are lot of issues around compliance and ensuring that you are not capturing private information when you get into dealing with HIPPA and other [unclear], so we have capacity within our environment that you can not record certain pieces or rather parts like that. So it is another step that we have taken inside there. I think the security is like with anything, it is multiple different layers and some of it, the availability, some of it is the, what you can do in the application, how we segment the applications so that your applications can’t walk over other people’s or use other people’s capacity, it is all of those different types of things. So I don’t if that is a precise answer but it is a big wide topic you probably talk the whole time on. So I don’t want to take a lot of time.
You do have a credential, there is no question about that. So it is not a problem, I wonder if you have anything to say about it? When people sign in, the only thing I can think of that you can do that some companies do with regard to that is as far as passwords goes to port to force good usernames and good passwords that are not easily guessable. I had a customer over here who I was helping move his whole thing from Exchange over to Google Apps and I needed his password. His password is a phone number, it was like hello, people don’t learn that, granted it was a phone number from like 1956, but still the point is, for example on SIP.com they force credentials, they are the ones giving the credentials, and that way it is impossible to have and you can’t change them, you can tell us to generate new ones, so that would be one example of things. I am sure you have done things that whatever you can do on your end to make things secure.
Right, we try to make it as frictionless as possible for developers to get going and do all that. I am a back end and we are certainly monitoring stuff and certainly watching because a developer could create a application that goes off and does nasty stuff, so we have monitoring that we do to make sure that things are not going too crazy and stuff like that, so we take that very seriously. So it is something that we are doing a lot of on the backside.
And Jason is dealing with this, but the question was asked in IRC about whether there was a SIP or [unclear] contact only the Tropo sample apps and I guess he is handling that but apparently it is the case.
There is a SIP address. Now go ahead and quiz that in the IRC in a little bit.
I was going to read all these numbers but the fact is if you are listening to this recording just go to VUC.me and I will probably show all these information and that’s what the site is supposedly for, which is the matter of me getting off my lazy and doing the actual work, so I will try to make sure that all information is in there. And let me just do a box check here, Dan how much is 57 plus 1.
Well, we have been for about 58 minutes.
Can I speak one last question
Well there is no cut off, I want to make sure that people will understand that we should probably get the questions happening. Go ahead
Jason, what would happen if one of my scripts take up too long to, if I was retrieving from Yahoo weather and that it was taking 30 seconds. Is there a way to tell the system sort of something that really gets hung up, just fall back on some other recorded message?
What you can do that within your application actually, there are ways to do that programmatically and have a time out within your script that would go ahead and make sure that if that was taking too long such as an HTTP time out or any number of things, we can leave that to you in your application. We do have some monitors that are running in the background because for example we have had users not intentionally to go out and accidentally write an infinite loop and there is a way for them to go back because they are on a general programming language but we do have ways to monitor those processes, trigger alerts into our own network operation center and then either contact the developer to say, hey what’s up, is this on purpose, if that’s not, we will go ahead and have the ability to kill those individual scripts if it is clearly something that’s just not doing anything.
In your aspect we should mention too is that one of the things we tried to do to help make a platform something that developers can work on very quickly [unclear] we do provide support for free as well, you can just send an email to email@example.com and our team will be back to you and will help with that. We have a live chat that people can interact with as well.
And that is 7/24 and we try to answer any free developer account within two hours.
Actually, it may even be a click to call, that would be really amazing.
There is that too.
But we don’t want to sell you something I think, so…
Okay [unclear] web based widget for interacting with the call?
That’s one of the things we are working on right now. We actually made another acquisition over there in the UK recently by the name of Clack Point which brings to us a flash cell phone which we are working to integrate as both available to developers as another widget as well as that application you see on the front page, just dial in with your flash cell phone. So that’s absolutely part of what is in the works.
In production accounts, what do you, do you sort of like paying $50 amount and it sort of ticks away then refreshes on my credit card?
That’s exactly we have gone for, once we are into production it is literally as simple as you will enter your credit card details, you will get a radio button on each of your applications that it should be in development or production, you flip it over to production and it starts decrementing your prepaid balance and then you may have a one time payment, so once the decrement is down, that’s it, you are done, maybe you have done a campaign or something like this, or you had the ability to set re-charge rates at say 10% of the balance, I want to recharge and keep it going. Yes.
So it is a prepaid similar to a Skype model.
So per applications, in one account I can add three applications where one is a campaign, where one is the money once an allotment is used up, I won’t refresh the card but other applications will refresh the card?
It is actually by account right now.
Oh by account? Ok.
But you can have multiple applications in a single account decrementing that same value but the setting is at an account level but the recharges are not.
So I can sign up multiple accounts.
Yeah, exactly. You can have an account [unclear] to campaign, put the app in there and put the money in there.
Yes. I was saying if there are any other questions, we have been going an hour, we can go for three hours if you want, and if you guys have that much time, but as long as there are still questions, I am sure they will….somebody was about to say they have to go? Any questions?
I am going to have to head out shortly Randy but Jason can stay long but I have..
You will have a party with Jason, I know.
I only came for the after party so.
Which codec [unclear] protocol that you guys are [unclear]?
Yeah, right now we do g 711 and g 729, correct me if I am wrong, on those codecs today.
But g 729 does involve another license, I am not sure if how we work that out with [unclear]. We are working on other codecs as well, stay tuned and you can imagine which ones
Exactly. But we know
That’s a secret.
[unclear] I have been shown Jason voice chat, I don’t know if you have come across it or heard about it as yet. On [unclear] that voice chat, the show is Google Wave, but I am attracted by the notion of your [unclear] line and applying it to that because that would be a great test case and from it we could record all the conversations which are helping developers and with the transcription this could become part of a searchable information by which all other developers could access from records of voice conversations, how about that?
That’s very interesting, that’s one thing I was working with Randy on this call as we would love to get this type of conference even recorded and transcribed and put out there, because we love anything that gets indexed by Google out there both for our developers and for marketing and developer outreach and being able to do that in terms of support would be very interesting as well. Although some time those support calls, we are always nice guys but sometimes the developers can be a little terse.
Well these are case studies and what better case study than a [unclear] developer forum for a voice support capability.
Ah, it is very good idea.
[unclear] put this together.
Absolutely. I appreciate the input.
What kind of storage capacity are you offering for applications?
Well, the storage capacity, you are writing a script that is going to be consuming our API and that is text based. What we don’t do today is give you database storage space or recording storage space. So the for the database side you are going to be talking REST, HTTP most likely to a backend database similar sitting in your network if you need something database driven for our scripting application capability. If you are using the web API which is the REST JSON interface we have of course you are running in your network in that case. For recordings and we also do transcriptions, when you ask to record you actually pass us either an FTP URI or an HTTP URI that we can post to or put to and once the recording is complete, we merely post that out to wherever you want to. We have written example applications out there that show how to push that onto S3 or other places. So we don’t actually provide MySQL database on the platform, we expect that you be consuming data either through web services or your own backend database in that case. So one thing to keep in mind, some of the differences with Google app engine is we don’t consider Tropo being an all inclusive general hosting platform, it is a scripting platform to drive our API as opposed to a general web hosting platform. Does that make sense?
Absolutely. Thank you.