Posts categorized "Voxeo"

The Publishing of RFC 8496 Concludes the 10-year Saga of P-Charge-Info

Rfc 8496 p charge info

October 31, 2018, was a special day for me. Not because it was Halloween, but because after 10 years a small little document I co-authored about the "P-Charge-Info" header for SIP-based Voice-over-IP (VoIP) was published as informational RFC 8496. You can see it at either:

Ultimately, all this document does is register the Session Initiation Protocol (SIP) Header Field of "P-Charge-Info" within the "SIP Parameters" registry maintained by IANA at:

But the story of getting that registration to happen is a long one!

In the beginning...

The short version is this. Back in around 2007 or so, I was working for Voxeo and we were using the "P-Charge-Info" header in our large SIP-based application server to pass along billing information. Essentially, when someone made a call on our system, we wanted to pass a billing identifier that was often different from the source phone number (i.e. "CallerID"). This quote from RFC 8496 was pretty much Voxeo's use case:

As another example, a hosted telephony provider or hosted voice application provider may have a large SIP network with customers distributed over a very large geographic area using local market PSTN numbers but with only a very few actual PSTN interconnection points.

The customers may all have local phone numbers yet outgoing calls are actually routed across a SIP network and out specific PSTN gateways or across specific SIP connections to other SIP service providers. The hosted provider may want to pass a billing identifier to its SIP service providers either for the purpose of simplicity in billing or to obtain better rates from the SIP service providers.

While we at Voxeo were already using P-Charge-Info extensively, we wanted to use the P-Charge-Info header with more SIP service providers, and needed some form of documentation for how to use the header. We also were concerned about the profileration of more P-headers and wanted to register "P-Charge-Info" with IANA so that more people might find and use that header rather than inventing their own. (We were happy with P-Charge-Info and didn't want to have to support more SIP headers related to charging identifiers.)

So I began the process of submitting an Internet Draft way back in February 2008 documenting P-Charge-Info and requesting its addition to the IANA registry.

Almost immediately Tolga Asveren, then at Sonus Networks, contacted me to let me know they were using P-Charge-Info in the SIP equipment they were selling. He had some great suggestions, supplied some additional text, and was interested in working on the document with me. So I published a -01 draft 3 days after the first draft, and Tolga and I began our 10-year journey through the process of getting this document published.

Square pegs in round holes - slamming ISDN info into a SIP header

Along the way, others approached us from traditional PSTN telecom companies indicating that they were interested in using P-Charge-Info as a way of passing the "ISUP Charge Number" that was part of ISDN signaling. Though it was not something that either Tolga or I worked directly with, we were okay adding this in, and so two new parameters got added:

  • Numbering Plan Indicator (NPI)
  • Nature of Address (NOA)

... along with a substantial amount of new text.

A 2011 version of the document can show what this was all about.

Lost in limbo

Meanwhile, the document had gotten caught up in the need to wait while RFC 3427 was replaced by RFC 5727, which defined the whole SIP Header Field registration process.

And then I wound up leaving Voxeo to join the Internet Society (my current employer). And so my attention was no longer focused on VoIP and so this draft was truly a "back burner" kind of thing that I just worked on in random moments.

And unfortunately, it turned out that slamming legacy PSTN signalling into a SIP header caused a whole number of challenges, both with getting agreement - and also with some of the internal IETF processes. It turned out that to do this registration, we were going to have to do some other registrations - and more.

I also published a version that changed some of the parameters values in a way that was not backwards-compatible, which caused some friction.

By 2015, both Tolga and I were ready to ... just... let... it... die...

Returning from the dead - and returning to the SIP roots

And then in early 2017, Henning Schulzrinne and Richard Shockey contacted me to let us know that the US FCC was interested in the status of P-Charge-Info. The FCC had some billing issues between carriers where the carriers were in some cases already using P-Charge-Info, but the carriers really wanted an actual RFC versus an expired draft. There was also some potential interest in having the header around as one of many different tools in the FCC's efforts to combat robo-calling / spam phone calls.

So Tolga and I worked with Henning and the IETF area directors to come up with a plan to resuscitate the document. In doing so, we stripped out all the legacy PSTN signaling. Specifically we removed the NPI and NOA parameters, and all the mentions of the ISUP Charge Number.

We returned it to the simplicity of the original document way back in 2008.

The original goal had been to simply document existing usage of the P-Charge-Info header, as it was being used by various SIP providers and vendors. We returned it to that root.

Success!

After a number of further drafts, an expert review by Adam Roach, and more feedback from Area Director Ben Campbell, the draft finally entered the RFC Editor queue by way of the Independent Series Editor (ISE). Many thanks are due to Ben to sponsoring the draft. He, Jean Mahoney, and Adam were all critical in helping get it across the finish line. Thanks, too, to Henning and Richard who provided the spark for us to revive the document.

It would not have happened, either, if Tolga had not taken the lead over the past year in making edits, answering all the questions from people, proposing solutions and continually asking how to move the draft forward. I may have been the one editing the XML and submitting the new draft versions, but he was the one driving the text revisions.

It's great to see the document finally published as Informational RFC 8496. Looking back on the journey, there were:

  • 16 revisions of draft-york-sipping-p-charge-info (2008-2012)
  • 6 revisions of draft-york-dispatch-p-charge-info (2012-2015)
  • 9 revisions of draft-york-p-charge-info (2017-2018)

Now, granted, some of those were a simple "update to keep the document from being 'expired'", but still it was all a great amount of work.

I learned a HUGE amount along the way. When the journey began in 2008, I didn't really understand much about IETF processes. Now I do - and now understand how we could have done this quite differently along the way.

Thanks to everyone who provided feedback and support over the years.

P-Charge-Info is finally registered in that IANA registry! :-)


Wow! Cisco To Acquire Tropo's Communications Application Platform

Tropo siteWOW! In companion blog posts today Cisco and Tropo announced Cisco's intent to acquire the Tropo team and platform:

As someone who was at Voxeo in 2009 and helped launch Tropo (and wrote many of the early blog posts about it[1], as well as some of the python samples), I'm thrilled for the team there now that this is happening.[2]

Congratulations to all involved!

Over the years since leaving Voxeo, I've written about Tropo from time to time and continued to watch its progress. I've continued to be very impressed by what they've done over the years. They've truly made it easy for people to create powerful applications using simple programming languages.

It looks like the Tropo website is struggling right now so here is a snippet of their announcement post:


Six years ago we launched Tropo with the idea to make it easy to power phone calls through a simple API. Since then, we’ve empowered thousands of developers to add voice and messaging to their applications.

From our very first sign-up in 2009, to powering thousands of mobile and voice applications, our mission has been the same: to make real-time communications more accessible and productive through great APIs.

Today we’re thrilled to share that Tropo is joining Cisco’s Collaboration Technology Group. Together we’ll enable completely new ways of communicating by opening up Cisco’s collaboration products to every developer on the planet (and maybe some off the planet…hey, they need collaborative tools on the International Space Station!)  :)


Knowing a good number of folks at Cisco, too, I think this is a great win for them in that they'll be able to make some of their products and services more accessible to developers.

I remember well back in 2009 when Jonathan Taylor (then CEO of Voxeo) brought in the Adhearsion team and "Voxeo Labs" was set up. Tropo was the first of the Voxeo Labs products, along with a number of others that were released over the following years. I watched as Voxeo Labs was then spun off from Voxeo in 2012 as a separate company and then Voxeo was acquired by Aspect in 2013... and Voxeo Labs was renamed to Tropo.

I watched, too, as the Tropo team continued their heavy involvement with WebRTC and brought that technology even deeper into their various services.

Congratulations to Jonathan Taylor, Jason Goecke, Johnny Diggz and all the rest of the Tropo team on this acquisition!

I look forward to seeing what Tropo and Cisco will do together to make it even easier to create voice, chat, messaging and other kinds of applications!


UPDATE #1: Jonathan Taylor has published a post on Facebook that outlines some of the history that led to this announcement. He includes this information related to Cisco:

We were even more surprised when Cisco approached us about acquiring Tropo. Selling Tropo was the last thing on our minds. But the potential was clearly huge for both companies, and over the course of the discussion, the deal terms clearly quite attractive. So here we are today!

UPDATE #2: A number of news stories are appearing on Techmeme.

UPDATE #3: Writing over on NoJitter, Zeus Kerravala dives into more detail about the acquisition based on his pre-briefing with Cisco's Rowan Trollope. Zeus' article: Cisco to CPaaS Providers: Game On!


[1] Although in the time since I left in 2011, my account was understandably removed from the Tropo site and the author on all those posts I wrote between 2009-2011 was changed to someone else. :-)

[2] In full disclosure, I should note that I am a very minor shareholder in Tropo after exercising a few options upon leaving Voxeo in 2011. I had no knowledge of this acquisition and have not participated actively with Tropo since leaving in 2011.


Ameche Lets Telcos Add Apps Into Regular Phone Calls To Add Value And Services

AmecheImagine you are driving fast along a major highway in traffic and you receive a call from a critical customer. She wants to know immediately when you can meet tomorrow with her team to go over the final proposal and sign the deal. There's no way for you to pull over and look at your calendar on your phone or computer... and it's really not safe in the high-speed traffic for you to be flipping through your calendar while you talk. What do you do?

Do you tell her you'll give her a call back when you get to a safe place? Or do you do the unsafe action of looking at your calendar on your phone?

What if there was a different way?

What if you could say something like "Let me check my calendar for tomorrow at 3pm" and then suddenly have a voice whisper back to you - on your call, but only heard by you - "your calendar is free at 3pm. You have meetings at 2 and 5."

You could then reply to your customer after just this brief pause letting her know that you could meet with her.

Sound like science fiction?

Perhaps... but that is the type of functionality that the team over at Voxeo Labs is looking to bring to calls with the launch of their new cloud service offering called Ameche. They are using the tagline "Apps in your Calls™" and produced this brief video to talk about what can be done:

I admit that I find their overview page and their introductory blog post a little bit over-the-top in terms of marketing-speak, but it starts to get interesting to me when you look at the page about apps in your calls. I'm not sure that I personally would get too excited about the "Social Calls Status Updates" example but it is extremely cool and valuable that they have this capability to connect with social networks. I find the other use cases such as Salesforce.com integration and context-based routing, and including the case I described at the beginning, far more compelling. It's also very important to note, as they do farther down that page, that Ameche is a platform and so can be used to build many different types of applications:

Ameche possibilities

That platform itself, described on the Ameche technology page, sounds quite intriguing. As I understand it, they are essentially deploying a virtual machine running Node.js into a carriers network and then deploying applications inside that VM. They provide this network diagram showing how the pieces can fit together:

Ameche technology

The outstanding part here is that they are using common web programming languages and fitting directly into existing carrier networks. This platform will let telcos create new services that can work with existing phone connections and existing phone numbers. No need for the customer to do anything except order the new service. No apps to download, no numbers to configure.

Obviously the primary market for this service is really the telecommunications service providers / carriers who are looking to offer additional services to their customers. At a time when those telcos are so threatened by the rise of various VoIP services and are looking for ways to build customer loyalty and keep the customers from leaving, Voxeo Labs' Ameche may just be the type of platform those carriers need right now.

Congrats to the team at Voxeo Labs on this launch - and I look forward to seeing what telcos will build with this new platform!


Full disclosure: I worked at Voxeo for 4 years and as a result am a small shareholder in the company. However, I would not write about the company or its products unless I thought they were worth writing about.


If you found this post interesting or useful, please consider either:



Video: An Excellent Tour Of Voxeo's Awesome New Office!

Voxeo logoMy friends and former colleagues at Voxeo have produced a truly outstanding video giving a tour of the incredible space they have created in Orlando, Florida:

Kudos to the Voxeo marketing team for creating this video! And congrats to Jonathan Taylor and the rest of the team for realizing his vision of creating a truly unique working space and corporate culture in Orlando.

I'd note that Voxeo is quite often hiring and truly is a great company to work for. If you're looking for a job in the communications space with an excellent team of people, you should definitely check them out!

(Full disclosure: I worked for Voxeo from 2007-2011 and remain a shareholder.)


If you found this post interesting or useful, please consider either:



WebRTC + Phono SDK = Browser Phone Calls WITHOUT A Plugin

Calling people using your browser - but without a Flash or Java plugin? That's been the mission of the WebRTC initiative for some time now with efforts underway in both the IETF and the W3C to standardize the work so that it can be broadly implemented.

I was very pleased to see the team at Voxeo Labs announce that the Phono SDK can now support WebRTC with the developer build of the Google Chrome browser. They outlined their work in a blog post and produced a video demonstrating the technology and also received a very nice writeup on TheNextWeb:

This is very cool as it has the potential once WebRTC is baked into more browsers to provide us with a very solid browser-based platform for building and deploying real-time communication apps. Kudos to the Voxeo Labs team for what they've done so far!

P.S. Some interesting comments about this topic over on Hacker News...


If you found this post interesting or useful, please consider either:



Voxeo Imports Snow... Into Florida??? (Video)

Kudos to my former colleagues at Voxeo for a great Holiday Letter and a truly fun video showing the making of the holiday photo. A large part of why I enjoyed working at Voxeo so much was just the wackiness that leads to doing crazy things like having a snowball fight in Florida! Keep on doing crazy things, my friends... it's awesome to see what you are doing!

P.S. And I imagine that this little bit of snow may have been more snow than a few of those Floridians had ever seen! :-)


If you found this post interesting or useful, please consider either:



Video: Voxeo's New 60,000 Sq. Ft. Co-Working Office Space Featured in Fox News Interview

Want to see what Voxeo's cool new office space looks like? The 60,000 square feet that also includes "co-working" space for startups?

Kudos to my former colleagues at Voxeo and to CEO Jonathan Taylor in particular for this great video interview on Orlando's Fox 35... check it out:

It's both a very cool space for Voxeons and also a great idea to create a startup incubator right there in the heart of downtown Orlando.


If you found this post interesting or useful, please consider either:



Voxeo Customer Summit 2011, "Unlocked and Loaded", Launches Tonight!

Tonight I'll be thinking of all my friends and former colleagues at Voxeo as they launch the Voxeo Customer Summit 2011 at the JW Marriott Grande Lakes hotel in Orlando. With the great theme of "Unlocked and Loaded", they have an incredibly packed agenda that will make it truly an outstanding event. Lots of great technical talks mixed in with business talks... some voice biometrics... product announcements... plus a great party and other activities!

Plus the ever geeky and wacky Chris Pirillo as show emcee and Joseph Jaffe providing the keynote talk... it should be a great time for all!

While I'm no longer a Voxeon, I'll be thinking of the crew there and wishing them all the best. It's a big event and will really help the people who attend to learn so much more about building communication applications using Voxeo's platforms and services. Cool stuff!


If you found this post interesting or useful, please consider either:



Video: Using an iPad to Create Tropo Applications

Stuck somewhere without a computer but with an iPad? My former colleague Chris Matthieu just posted this amusing video today of how he used only his iPad to create and deploy an application using the Tropo cloud communication service. I don't know what amused me more - that he wrote the app using his iPad... or that he filmed himself using his iPhone! Quite a deft bit of handling to make it all work:

You can, of course, register for a free Tropo.com account and start creating your own voice/SMS/IM/Twitter apps using languages like PHP, Python, JavaScript, Groovy and Ruby...


Ch-changes - Taking A New Job At The Internet Society To Join The Fight For The Open Internet

In the end, my impending job change is perhaps best explained by two quotes: this prescient quote from the 1992 film Sneakers:

“There’s a war out there, old friend. A world war. And it’s not about who’s got the most bullets. It’s about who controls the information. What we see and hear, how we work, what we think… it’s all about the information!”

and this quote from poet Mary Oliver:

“Tell me, what is it you plan to do with your one wild and precious life?”

For a longer explanation, read on... but perhaps not on a mobile phone... this one's a bit on the lengthy side...

Bleeding "Voxeo Blue"

voxeologohoriz.pngJust shy of four years ago, I wrote here about joining this incredibly remarkable company, Voxeo, that probably none of you had ever heard of.

I hope I changed that a wee bit. :-)

Around a thousand blog posts later, a hundred videos, too many speaking engagements and webinars to count, many articles, a ton of analyst briefings and media interviews ... and countless tweets, Facebook posts and other updates later... it has been truly an amazing journey.

Along the way I have come to truly love the company - and I don't use that term lightly - and the incredible people who are gathered together focused on making Voxeo THE platform for developing and deploying communications applications. As I mentioned in a recent post, Voxeo is a rocketship, firing into the skies and leaving its competitors behind.

Over these four years, I have been living, breathing, eating, sleeping all things Voxeo... I have been proud to be a "Voxeon"... slice open my skin and it bleeds "Voxeo blue"...

The Larger Battle

And yet... I have never been able to escape the siren call of the larger battle going on all around us. It did not surprise me to find that the Voxeo blog in which I published the most posts is "Speaking of Standards". Listeners to my weekly reports into the FIR podcast have perhaps grown weary of my rants about "single points of failure" and the need for services that are "distributed and decentralized" that allow you to retain control over your information and content. Readers of my blogs have seen my many posts on the theme of "the open Internet".

We have before us a choice of futures.

One choice leads to a future where innovative companies like Voxeo can emerge, thrive, disrupt and succeed.

Another choice leads to a future where what little "innovation" there is exists only at the will of the gatekeepers to the network after appropriate requirements and/or payments are met. Other choices lead to outcomes somewhere in between those polarities.

How will we choose?

Walled Gardens, Redux

The Walled Garden (1)
I began my time online some 30 years ago in the 1980's era of the big "information services". CompuServe, AOL, Prodigy, Delphi, The Source, GENIE... and many other names that have long since faded into history.

People accustomed to the ubiquity of the Web today might find it hard to believe that once upon a time you could only get certain news, technical, financial, movie or sports info on the service to which you subscribed... that you could only communicate with people who had accounts on the same system as you.

It was the era of the proverbial "walled gardens"... where each service tried to keep the walls high enough and the content pretty enough that you would never leave.

The forces of "openness" were around, too. Academic networks like BITNET and JANET on the one end and home-grown networks of BBS's like FidoNet on the other, with other networks and things like UUCP and Usenet floating around as well.

And then came this "Internet", the one network to interconnect them all.

And out of that interconnection and interoperability came the world we live in today... out of that chaotic world of engineers and open standards came this network that is now no longer simply a research network but instead has become critical communication infrastructure... and a critical component of commerce.

And with that rise to prominence come all those who would seek to change the nature of the network... for perceived safety... for convenience... for profit... for control... for "security"...

So now we see services like Facebook, Google+, Twitter and more that seek to provide a nice pretty space in which you can exchange messages, photos and more... without ever leaving the confines of the service... they are a walled garden with just many ways to access the garden and to look over the walls.

Everyone wants to own your eyeballs... to host your content... to provide your identity...

And we see companies like Apple, Google and Microsoft seeking to control a large degree of how we connect to and use the mobile Internet...

And we see a change from "permissionless innovation" where anyone can set up a new service... to a model where you have ask permission or agree to certain "terms of service" in order to connect your new service to other services or to have your app available on some platforms...

And we see countries that want to throw up a wall around their citizens... sometimes to keep information from coming in... and sometimes to keep information from going out... and sometimes to be able to shut down all access...

And we see players who did control our communications systems always looking for opportunities where they could maybe, just maybe, stuff the proverbial genie back in the bottle and regain that control they lost...

It's a crazy time...

As one who has lived through our online evolution, and who in fact has been able to do what I do and to live where I live because of the "open Internet", I don't want to see us return into a fractured world of walled gardens.

We can make a different choice.

And So, A Choice

IsoclogoIn the midst of all this craziness exists a global nonprofit organization that many of you may not have heard of. It has a very simple mission:

to promote the open development, evolution, and use of the Internet for the benefit of all people throughout the world.

The Internet Society, or "ISOC" for short, exists to promote the idea that "the Internet is for everyone", where "everyone" includes people all around the world... and yes, it includes the corporations, service providers, governments and other organizations, too. To support that mission, ISOC undertakes a wide variety of education and policy initiatives around the world, all with the aim of fostering the growth of the open Internet. Local "chapters" of ISOC have sprouted up around the globe pursuing these initiatives at a local/regional level. Perhaps more relevant to many readers, ISOC is the organizational home of the Internet Engineering Task Force (IETF), the group that creates the RFCs and the open standards that describe how the Internet operates today. A significant amount of ISOC's focus is on facilitating the creation and promotion of these open standards. (For those curious to learn more, ISOC's 2010 Annual Report is available online.)

I was actually a dues-paying member of ISOC back in the early '90s, when each month I would read through their print magazine (very ironically, but this was pre-Web) "On The Internet" to learn more about how the Internet was evolving throughout the world. I rejoined again a year or two ago to help in some small way support this very important work. (You can join, too.)

And on this coming Monday, September 19th, I will join the Internet Society as a staff member.

The Missing Link

Missing Link
The particular project I will join within ISOC is a brand new initiative targeted at helping bridge the gap between the standards created within the IETF and the network operators and enterprises who are actually deploying networks and technologies based on those standards. To help translate those standards into operational guidance... to help people understand how to deploy those standards and why they should, what benefit they will see, etc

The initiative is currently called the "Deployment and Operationalization Hub", or "DO Hub", and while that may or may not be its final name, the idea is to find/curate content that is already out there created by others, create content where there are gaps, make it easy to distribute information about these resources... and promote the heck out of it so that people get connected to the resources that they need. The initial focus will be, somewhat predictably, on IPv6, but also DNSSEC and possibly another technology. It is a new project and the focus is being very deliberately kept tight to see how effective this can be,

My title will be Senior Content Strategist and my role will very much be about the creation, curation and distribution of information. Writing articles, reviewing resources, blogging, creating videos, screencasts, etc, Once we have the initial repository built out, there will be a phase next year where we will be out on the conference circuit talking about these technologies and helping people understand how they can get started... and continually adding even more content.

For a guy who loves teaching, writing and "demystifying emerging technology", it's kind of tailor-made. In fact, when ISOC approached me a few months ago with the job description, my wife and I both looked at each other and said "wow, that's me!"

In the end, the goal is to help make it as easy as possible to deploy and use open standards... so that we might wind up collectively making the choices that can lead to an open Internet where innovation can thrive.

I'll still be living in Keene, NH. (Many ISOC employees are remote.) I'll still be blogging in my various blogs. I'll still be speaking at conferences from time to time. I'll be back at IETF meetings again (which I'm VERY much looking forward to). None of that really changes with this move.

Every New Beginning Comes From...

..some other beginning's end. ("Closing Time", by Semisonic)

Leaving Voxeo was decidedly NOT an easy choice. I agonized over the decision for an insanely long time. I work with awesome people who I know I will miss, have been thoroughly enjoying what we are doing and have been looking forward to where the company is going... it has some amazing plans that will even further disrupt the industry!

Some will tell me that I am crazy... that Voxeo is the closest they've seen to a "sure thing"... that leaving is a dumb move.

They may be right.

And yet... recent events in my personal life have highlighted the fragility of our lives and the limited time we have - and the need to pursue one's passion.

And so it is that I end one beginning and start a new one... with the hope that in some small way the new work I do will help companies like Voxeo thrive - and indeed to help continue and expand the conditions that create companies like Voxeo.

We have a choice of futures before us...


Image credits: Gerry Balding, Thomas Gehrke on Flickr.