Cookie Preference Centre

Your Privacy
Strictly Necessary Cookies
Performance Cookies
Functional Cookies
Targeting Cookies

Your Privacy

When you visit any web site, it may store or retrieve information on your browser, mostly in the form of cookies. This information might be about you, your preferences, your device or used to make the site work as you expect it to. The information does not usually identify you directly, but it can give you a more personalized web experience. You can choose not to allow some types of cookies. Click on the different category headings to find out more and change our default settings. However, you should know that blocking some types of cookies may impact your experience on the site and the services we are able to offer.

Strictly Necessary Cookies

These cookies are necessary for the website to function and cannot be switched off in our systems. They are usually only set in response to actions made by you which amount to a request for services, such as setting your privacy preferences, logging in or filling in forms. You can set your browser to block or alert you about these cookies, but some parts of the site may not work then.

Cookies used

Performance Cookies

These cookies allow us to count visits and traffic sources, so we can measure and improve the performance of our site. They help us know which pages are the most and least popular and see how visitors move around the site. All information these cookies collect is aggregated and therefore anonymous. If you do not allow these cookies, we will not know when you have visited our site.

Cookies used

Google Analytics

Functional Cookies

These cookies allow the provision of enhance functionality and personalization, such as videos and live chats. They may be set by us or by third party providers whose services we have added to our pages. If you do not allow these cookies, then some or all of these functionalities may not function properly.

Cookies used




Targeting Cookies

These cookies are set through our site by our advertising partners. They may be used by those companies to build a profile of your interests and show you relevant ads on other sites. They work by uniquely identifying your browser and device. If you do not allow these cookies, you will not experience our targeted advertising across different websites.

Cookies used


This site uses cookies and other tracking technologies to assist with navigation and your ability to provide feedback, analyse your use of our products and services, assist with our promotional and marketing efforts, and provide content from third parties

Become a Basic Member for free. Click Here

Dialogic - Blog Page 7

Page: 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8

Scaling Applications with Load Balancing – Using the Right Tool for the Job

Have you ever helped a friend with a home improvement or auto repair project and watched as your friend struggled with a screwdriver trying to pry something free?  You think to yourself “gee, a crowbar or pry bar would be the right tool for the job, but since the screw driver is all he has, I guess it will have to do.”  Having the right tool for the job makes all the difference in achieving success without ending up with bloody knuckles.

The lesson holds true with scaling communications applications. This was the key takeaway message in a recent Communications Developer Zone podcast discussing load balancers and the new PowerVille LB software from Dialogic with Jim Machi, Senior Vice President for Marketing and Chris Boulton, Director of Systems Architecture for Dialogic.

As Jim noted, “The PowerVille LB Load Balancer is part of our PowerArchitecture,” an important part of Dialogic’s new application development and delivery capability that makes applications scalable.  “We wanted to be the best at providing load balancing for SIP-based applications…and we have that now.”

Stepping back and discussing the role of a load balancer in deploying applications, Chris explained that “a load balancer is a software-based network entity that facilitates complex applications that are sitting behind a single HTTP entry point.” Users see one web page or application IP address, but the load balancer distributes the requests to multiple application servers to handle large volumes of demand and to provide a seamless experience. Congestion Management back-end server availability are also important to scaling applications.

Load balancing is part of virtually every web site, so what’s different about a load balancer for real-time communications?  (This where having the right tool for the job makes a difference) As Chris explains, the key is that “Real-time communications applications use SIP, WebRTC, and other protocols providing RESTful services.”  These protocols are very different from regular HTTP web services that need to maintain the state of sessions across lengthy communications sessions.  Real-time communications applications also benefit from session affinity, bringing multiple clients together on a single server, a requirement for conferencing and collaboration applications.  Encryption off-loading by load balancers also helps streamline the processing on communications application servers.

Like jamming a screwdriver into a task that it was never designed to perform, web-centric Application Delivery Controllers (ADCs) are often used to perform load balancing for real-time communications.  Not the right tool for the job. 

So before you reach for that screwdriver, ask yourself “is this the right tool for the job?”

To get a deeper understanding, listen to the podcast first-hand as Jim and Chris further explain how PowerVille LB is the right tool for load balancing real-time communications.

(By the way, no screw drivers were harmed in the writing of this blog)


Publish Date: May 2, 2016 5:00 AM

How to Make a WebRTC App: Step-by-Step Guide

Back in September 2014, I published what turned out to be a popular blog about “How to Develop a WebRTC Video Conferencing Server Using PowerMedia XMS, Free in An Hour”. As you can imagine, a lot has changed since this blog relative to WebRTC and our PowerMedia XMS media server, so a ‘refresh’ to the content was long overdue.

The most notable change was by Google’s new Chrome security policy on WebRTC where, starting December 2015, the getUserMedia() API would require using HTTPS. So I needed to change the web server to use a secure connection for hosting my WebRTC conferencing application. We’ve also made some large strides in getting PowerMedia XMS optimized for a cloud environment, so I wanted to include the option of using Amazon Web Services for those interested in moving to AWS. Lastly, I decided to upgrade the code to use HD 720P resolution instead of the default VGA – the quality difference from VGA to 720P is tremendous and will really make a significant difference when being used for video conferencing.


Before getting into building the conferencing application, it’s worth noting the architecture being used for the video conference is a Multipoint Control Unit (MCU). In a MCU architecture, each WebRTC endpoint will encode and transmit their media stream to a centralized point (the PowerMedia XMS in this case) where the media will be decoded and mixed with the other conference participants before being returned to the WebRTC endpoint. This differs from a WebRTC point-to-point (P2P) mesh conference in that each participant will only be sending and receiving one media stream whereas in a P2P mesh each participant will send and receive media from each endpoint in the conference. As you can imagine, mesh conferencing (sometimes called "mess conferencing") has some serious limitations when scaling.



Making the WebRTC App

Programming Experience: Novice

Time to implement: ~1 hour

What you need:

* Bare metal server OR VMware w/ adequate processor/memory/storage OR Amazon Web Services access (see server requirements in PART 1 below)

* (1) IP address to be assigned for PowerMedia XMS

* Putty

* Your favorite editor (vi, emacs, notepad++)

* PC client(s) w/ microphone, camera and Chrome installed

PART 1: Download and Install PowerMedia XMS (~5 to 30 mins)

**Two options**

Option 1 (Install using on-premise hardware)

1.) Download the latest PowerMedia XMS ISO here

Note – I used PowerMedia XMS 3.0 SU2 for these instructions

2.) Follow the "PowerMedia XMS Installation and Configuration Guide" for proper system requirements and installation. You’ll need Linux.

Option 2 (Install using Amazon Web Services AWS)

1.) Log on to your Amazon Web Services EC2 console, select Images à AMIs on the left hand side. Change the search to be “Public images” and search for ‘dialogic_xms’. The most current PowerMedia XMS images will be available for usage.

Reference the Dialogic PowerMedia XMS and Amazon Web Services guide for more detailed configuration details

Note - the PowerMedia XMS developer install comes with a (4) port fully enabled license. Contact the Dialogic sales team to discuss licensing options beyond the base four ports.

PART 2: Obtaining the WebRTC HTML/CSS/JS code (~5 mins)

**Two options**

Option 1 (manual download from

1.) Browse to:

2.) Select “Download Zip” to pull down the archive

3.) Copy the to the /tmp directory of the PowerMedia XMS

Option 2 (git download direct to PowerMedia XMS server):

1.) Using Putty, SSH into the PowerMedia XMS Server

2.) Login using root and default password powermedia

3.) (Optional if already installed) Install the git software: yum install git

4.) Change to the tmp directory: cd /tmp

5.) Retrieve the archive from the github repository: wget -O


PART 3: Unzip the archive and move to appropriate directory (~2 mins)

1.) Unzip the archive: unzip /tmp/

2.) Change into the new directory: cd dialogic-html-javascript-master

3.) Copy the entire contents of the ‘confServer’ directory into where the Apache web server will be hosting: cp -r /tmp/dialogic-html-javascript-master/confServer /var/www/rtcweb/html

4.) Copy the entire contents: cp /var/www/rtcweb/html/js/conf720p.js /var/www/rtcweb/html/confServer/js

PART 4: Review the HTML front-end for the user interface (~5 mins)

1.) Open the conference.html for review – there are three main sections to the user interaction:

  • loginPanel: input for the "username" variable and calls the "conferenceLoginClickHandler" function upon onclick
  • videoPanel: defines the "remoteVideo" element used to display the inbound WebRTC video feed from PowerMedia XMS. Also defines the "localVideo" element which is used to obtain the local users video feed but will be hidden from HTML display
  • conferencePanel: input for the "confID" variable and calls the "conferenceClickJoinHandler" function upon onclick
XMS Node NetAnn Conferencing Demo

PART 5: Configure the JS to interface with PowerMedia XMS and the HTML front-end (~10mins)

1.) First, we'll need to define the functions being called in PART 4 - let’s start with "conferenceLoginClickHandler()" where the user enters their username and selects login. In this function, we'll create a new instance of the Dialogic Javascript library and assign to myConf.  Once the instance is created, we'll need to retrieve the 'username' element from our HTML form, which will then be passed to the PowerMedia XMS server IP address along with the username.

Note - be sure to change the "my_xms" variable to the proper IP address you set in PART 1.

Note - the "handlers" variable being passed with myConf.setHandlers is defined in step 5 below.  

var my_xms = "XXX.XXX.XXX.XXX"; var myConf = null; function conferenceLoginClickHandler() { console.log("*** conferenceLoginClickHandler - ENTER ***"); // Create a new instance of Dialogic JavaScript library here myConf = new Dialogic(); myConf.setHandlers(handlers); //Retrieve username info from HTML and pass for registration var username = document.getElementById("username"); var my_xms_ws = "wss://" + my_xms + ":1080"; myConf.register(username.value, my_xms_ws, ''); }


2.) Next, we need to define "conferenceClickJoinHandler()" where the user enters the conference id and selects join. In this function, we'll first need to convert the "confID" variable into appropriate NetAnn syntax: 

conf=YYYY@XXX.XXX.XXX.XXX // Where YYYY is the conference ID and XXX.XXX.XXX.XXX is the IP address of the PowerMedia XMS server. // Once converted, we'll use to pass the variable to PowerMedia XMS. function conferenceClickJoinHandler () { console.log("*** conferenceClickJoinHandler - ENTER ***"); var confID = document.getElementById("confID"); confID = "conf=" + confID.value + "@" + my_xms; console.log("confID:" + confID); var ret =, 'video'); if (ret == 'ok') { document.getElementById("conferencePanel").hidden = true; document.getElementById("videoPanel").hidden = false; } else { console.log("Error attempting conferenceClickJoinHandler"); } }

3.) The last function we need to define is "initialize()" which gets called as a result of a successful registration (see step 5 below). As part of this function, we will retrieve the local and remote video elements and pass them as part of our mediaContraints. 

function initialize () { console.log("*** initialize - ENTER ***"); var localVideo = document.getElementById("localVideo"); var remoteVideo = document.getElementById("remoteVideo"); var spec = { 'localVideo' : localVideo, 'remoteVideo' : remoteVideo, 'remoteAudio' : null, }; var ret = myConf.initialize(spec); var mediaConstraints = { 'audio': true, 'video': true }; myConf.acquireLocalMedia(mediaConstraints); if (ret != 'ok') { console.log("Error initializing user media"); } }

4.) Next, we'll need to create the associated functions from the handlers. In this case we only need to add logic to the registerSuccessHandler which will issue the "initialize()" function and change the HTML form inputs from the "loginPanel" to the "conferencePanel" 

var registerSuccessHandler = function () { console.log("*** registerSuccessHandler ***"); document.getElementById("loginPanel").hidden = true; document.getElementById("conferencePanel").hidden = false; initialize(); }; var registerFailHandler = function () { console.log("*** registerFailHandler ***"); }; var ringingHandler = function () { console.log("*** ringingHandler ***"); }; var incomingCallHandler = function (name) { console.log("Incoming call from: "+name); }; var callHangupHandler = function () { console.log("*** callHangupHandler ***"); }; var disconnectHandler = function () { console.log("*** disconnectHandler ***"); }; var userMediaSuccessHandler = function () { console.log("*** userMediaSuccessHandler ***"); }; var userMediaFailHandler = function (){ console.log("*** userMediaFailHandler ***"); } var remoteStreamAddedHandler = function () { console.log("remoteStreamAddedHandler"); }; var messageHandler = function () { console.log("*** messageHandler ***"); }; var infoHandler = function () { console.log("*** infoHandler ***"); };

5.) Lastly, as mentioned in step 6, we'll need to define the handlers variable that is used to store the various events to be returned as part of joining the conference. Below is a stock list of handlers that can be implemented - note the handlers being registered are associated with function handles. 

var handlers = { 'onRegisterOk': registerSuccessHandler, 'onRegisterFail': registerFailHandler, 'onRinging': ringingHandler, 'onConnected': null, 'onInCall': incomingCallHandler, 'onHangup': callHangupHandler, 'onDisconnect': disconnectHandler, 'onUserMediaOk': userMediaSuccessHandler, 'onUserMediaFail': userMediaFailHandler, 'onRemoteStreamOk': remoteStreamAddedHandler, 'onMessage': messageHandler, 'onInfo': infoHandler, 'onDeregister': null };


6.) Save the changes and close the conference.js file

PART 6: Testing your new WebRTC Conferencing Server (~3 mins)

1.) Open a Chrome browser session and navigate to: https:///rtcweb/confServer/conference.html

2.) Enter your name select

3.) Select "Allow" for the browser to access the microphone and camera

4.) Enter the conference ID

5.) BOOM – we’re done! Share the URL of your new video server and Enjoy!

To watch a high overview guide on how to make a WebRTC app, watch this video.


Publish Date: April 28, 2016 5:00 AM

Top 10 Best Practices for Communications Application Developers - Tales from the Trenches

You’ve been tasked with turning a great idea for a new communications application into a working product.  Seeming at first to be an insurmountable mountain of effort, there is panic as you realize the magnitude of the project and struggle getting your mind around the thousands of decisions and preparations that need to be made between now and completion.   Some expert advice and best practices sure would come in handy as the groundwork for the new application starts.  

This was the subject of a webinar I hosted this last week titled “Communications Application Development – Top 10 Best Practices.”  The webinar included Peter Kuciak and Elhum Vahdat, two of the seasoned members of the application development team here at Dialogic who have dozens of years of experience each in managing development of advanced applications. 

In preparing for the event, I asked each to contribute their own best practices, creating a shortlist that we could share with listeners facing the long steep climb of creating their own new communications applications.  That long climb includes challenges along the way too – being prepared for those challenges gives a developer a significant head-start, like a short-cut up the mountain.

Here’s a brief overview of their “Top 10”:

Proven expertise – if you plan to be successful, you need to have a seasoned team that “knows the ropes” and can bring their past experience to the task at hand.

Leverage – using known software building blocks and existing intellectual property can shorten the effort significantly.

Commitment to Innovation – seek out vendors and team members that are committed to new innovations and technologies.  No sense building tomorrow’s hot new application on yesterday’s technology.

Agility – work with vendors that have the ability and willingness to adjust as the project evolves, allowing for adaptations to changes in the market and the competitive landscape.

Cloud & Mobile Focus – designing your application with a mobile-first perspective and leveraging the power of the cloud will give you an advantage.  Use it.

Build or Buy – with the first-to-market advantage pressure, it’s important to explore the possibility of buying some portion of the application or underlying libraries

Forward-Looking Migration Path – give consideration to “what’s next” to reduce future upgrade costs and service disruptions when 2.0 of your application hits the market.  Is it an easy upgrade for your customers or a rip-and-replace?

Future Customization – consider the possibility that not every customer may want the same exact solution.  Consider special versions for different markets and ways to simplify the customization.

Multi-Service Platform – plan for deployments across platforms, sharing resources and skills needed for those platforms.

Open Platform/Architecture – and finally, consider utilization of open architectures and platforms that allow integration of other best-in-class technologies.  Closed architectures are dead ends in the eyes of many buyers.

As Elhum and Peter explained during the live event, careful planning and consideration to the partnerships can give significant advantages to both the first and subsequent versions of your application. Remember that any big project (even climbing Mount Everest) starts with plenty of preparation followed by putting one foot in front of the other.

You can download a copy of the slides and view a recording of the event (which does include much more detail) on the event landing page.



Publish Date: April 27, 2016 5:00 AM

LTE Market Status, the Tie-In to VoLTE, and the Importance of 3G Interoperability

On March 7, the GSA put out a press release confirming that 2015 ended with over 1 billion LTE subscriptions.  This is a hockey stick unlike other mobile hockey sticks.  And if you want to see the GSA LTE subscription hockey stick, you can get it if you register at the site.  Basically, 1 in 7 mobile connections worldwide are now LTE, and the rate of LTE subscriptions is accelerating.  It’s expected that by the end of 2020, half of all mobile connections will be LTE.

So what does this mean? It means people love LTE because of various factors, such as data speed.  And it means even if you don’t believe in VoLTE,  it is coming because the service providers will make sure their investment in LTE pays off.  So down the line, you will be talking over a VoLTE network.  Additionally, it means there will be voice-enabled applications such as Rich Communication Service apps on VoLTE.

But it’s important to note that with all of this unprecedented growth, by the end of 2020, half of all mobile connections will NOT be LTE.  In fact, in 2015, 3G still grew.  LTE interoperability with 3G will remain important for many years.  This means voice/video media codec and signaling transcoders and gateways will remain important infrastructure elements during these years. And with 3G still around, SS7/Sigtran will still be around.  I’ll write a future blog about that soon.



Publish Date: April 26, 2016 5:00 AM

Click-to-Call and WebRTC – The Perfect Marriage of Convenience and Technology

In one of my previous blogs, I used a video ACD example where I referred to Click-to-Call and WebRTC.  In this blog, I want to dig a little deeper and discuss the benefits of a WebRTC-based Click-to-Call application.

What makes the addition of WebRTC to Click-to-Call so blissful? 

 Before the union of these two, Click-to-Call was just that… a call.  Not to mention in most cases, it required you to enter your phone number so you would receive a call back. Therefore, a lot of people say it should have really been called “Request-a-Call.”

Enter WebRTC (play Mendelssohn’s Wedding March).  Of course, there are many benefits to WebRTC, but the most compelling reason to use WebRTC is that it single-handedly solves the incompatibilities for real-time communications by leveraging the web browser as the “application,” facilitating browser-to-browser communication.  Since the browsers themselves include all the capabilities needed to support real-time multimedia communications, no software downloads or registrations are needed, thereby standardizing communications between browsers.

Now, I believe WebRTC-based Click-to-Call should really be called “Click-to-Multi-Media” because you can start a voice call, video call, social media interaction, or SMS chat, and who knows what else in the future as WebRTC-supported devices continue to grow.

But wait, there is another very important benefit this union brings: “Contextual Awareness.”  This means information such as the caller’s browsing history, the page the caller was on when they clicked-to-call, the status of their shopping cart, and other features that enable the agent and the caller to immediately be on the same page (both literally and figuratively) can be pushed through WebRTC to the live agent. Of course, context-based routing to the appropriate agent is also included… all leading to a highly personalized experience.

Imagine callers contacting you with a simple click of a button when they are most interested in your product or service. It will increase your conversion rate of visitors to potential sales opportunities, enable you to sell higher-value products and services, and improve your customer satisfaction level --- all courtesy of the union of WebRTC and Click-to-Call.

Now stop imagining as it is here.


Publish Date: April 22, 2016 5:00 AM

APIs in the Cloud – Unleashing Creativity

Open APIs and Cloud services certainly make developing applications easier, but it seems there’s a side-effect that is only now being recognized.  Now that anyone can build an application, a whole new wave of creativity is ready to explode into the marketplace.  From the obvious to the esoteric, applications of all kinds are now within reach.

Returning from London this week gave me an opportunity to reflect on how the shift to APIs in the cloud is affecting the way applications are developed and deployed.  Since looking back at the presentations I saw at Enterprise Connect, listening to customers, and this week’s visit to TADHack London, it’s finally coming in to focus.

The APIs and resources in the cloud are not just “making it easy,” they are unleashing a whole new wave of creativity that was previously out of reach for the average developer.   As Alan Quayle like to call it: “It democratizes applications.”

First, a little look back. Way back.

When the 3GPP first came up with the IMS architecture in 1999, the vision was that the new modular architecture would allow service providers to create and rapidly deploy new services in the core of their networks.   Not any applications, just the applications they wanted.  Those applications may not be the applications consumers want, but the applications that had a good ROI and could generate revenue for the service provider.   In hind-site, this rigid structure seems very un-democratic, with the carrier’s politburo deciding what applications you get and when you get them.

Meanwhile, the Computer Telephony Integration (CTI) technology of the late 1990’s was filling a gap, allowing developers (including myself) to create some pretty innovative applications.  But to do so, you needed to know how to program in C or C++, understand device drivers, Unix, TDM, PBXs and a host of other technologies that often took up a whole server room.   It created a whole wave of PC-PBXs, contact centers, fax servers, unified messaging and more that make businesses more productive today.  But the skill set and investment needed to create applications was still beyond what many individual developers could tackle.

Today, thanks to the broad selection of Communications APIs and cloud-based services, developers have an almost limitless set of resources at their disposal.  Not from a lab or research center, from their laptops…in a Starbucks.

Unleashing creativity?  Yes, it’s really happening and here a few examples that really struck me during this last weekend’s TADHack in London: 

Sabastian Schumann single-handedly reinvented the call screening application by combining the screening process with your contact database look-up (a whitelist), a crowd-sourced database of telemarketers (blacklist), and Slack to eliminate those pesky telemarketing calls.  The integration of a crowd-sourced blacklist was the real innovation – why hasn’t anyone thought of that before?

Another two gentlemen, Roderick Hodgson and Alex Francois (who met the first time at the event), came up with an application that would help busy people keep track of the notes from conference calls, using IBM’s Watson to do keyword spotting, and sending a summary of the call to your SMS number.  By merging the resources of telephony with the speech recognition and keyword spotting of Watson, they created something that (to my knowledge) never existed before.

I could go on and on, but take a few minutes and watch the pitches from the event, remembering that these people started working on these projects at 10 AM the day before.

No business reviews, plan or record reviews, no product gate reviews, or approvals by the politburo.  Pure innovation unleashed.


Publish Date: April 20, 2016 5:00 AM

Fax Is...

  • Dying
  • Enduring
  • Dead
  • Growing
  • Some old technology from before 2001
  • Older than a phone call
  • Outdated
  • Old School
  • Some strange word that is from the stone age
  • Something I still pay attention to

All of these things are correct about fax depending on your point of view or use case.  And yes, it is still a meaningful part of the Dialogic business which is why I pay attention to it.  We have had some new significant wins in 2015 as TDM switched over to FoIP.

To understand fax is to understand business from 20 years ago.  It was kind of like email in that you got spammed via fax, you sent messages on fax if you wanted to make sure they got read, you sent PO’s via fax, etc. It was a part of the fabric of the business.  As email proliferated and fax functions became part of the MFP (multi-function peripheral), fax kind of faded from consciousness.  And new forms of “binding” business documents took root from e-signatures to PDF’s with signatures.   So that’s why we get all these doom and gloom outlooks on fax.

But fax is enduring.  Some people still do business with fax for important things such as PO’s and legal documents because it’s one of the most secure ways to send a document.  Its secure nature also makes it HIPAA compliant. 

The recession in 2009 also changed many businesses’ outlook on fax.  Traditional fax use was declining because of email. Businesses knew they needed fax but didn’t want to deal with the cost of maintenance on the fax machines or MFPs.  As such, fax was one of the first successful enterprise communication types to move to the cloud.  Costs were reduced, and service was still there.  

So what’s going on with fax these days?

1. Fax is becoming a part of a bigger picture of communication systems and document management systems.

2. Fax over IP (FoIP). As with voice, FoIP continues to be a growth area because, as discussed above, there is a need for fax and many businesses still use fax. But with the PSTN networks being closed down, this means a movement to FoIP.

3. It’s a new age communication tool. The head of Sony pictures says he now uses fax to communicate sensitive information.

4. Mobile fax. This may not make sense, but when you think about the proliferation of smartphones, it makes sense that you’d want to get/send faxes from your smartphone.  When sending a fax, you might likely use a cloud-based service. You can even sign faxes using your mobile phone.

Fax certainly has and continues to have a lengthy shelf life ...and is ever enduring, similar to the so-called myth that Twinkies also have lengthy shelf life.  Except with fax this is no myth!


Publish Date: April 19, 2016 5:00 AM

CommsDay Summit in Sydney was a huge success - but was there something missing?

The CommsDay Summit 2016 in Sydney was many things. It was a family reunion of sorts for the Australian telecommunications market complete with appearances by the outspoken uncle and unappreciated sibling (I won’t name who). It was a “no holds barred” wrestling match where incumbent wireline and mobile operators stood shoulder-to-shoulder with new entrants along with analysts and regulators to go over the state of the Australian telecommunications market. It was a group therapy session in which Telstra got up in front of the crowd to explain two recent outages for which they tried to make good by their customers by letting them feast on unlimited data for not one, but for two whole days in the past two months. During the most recent free data day, subscribers downloaded a record 2,686 Terabytes of data.  That’s equivalent to over 1.1 million HD downloads of the latest Star Wars movie!

There was “high drama and intrigue” on the galactic scale as politicians and carriers alike discussed and questioned the tactics around the national broadband strategy. There were also heroes: the conference participants raised more than $10,000 (AUS) for the Telco Together Foundation, an organization that helps disadvantaged communities in Australia and headed up by the CommsDay event master of ceremonies, Renee Bowker.

There was also coverage of emerging technologies and trends impacting the telecommunications market. For example, Luke Clifton from Macquarie Telecom talked about Software Defined Networking (SDN); Jeremy Deutsch from Equinix discussed hybrid clouds; and Guavus VP Chris Menier talked about Big Data. I had the opportunity to talk about Network Functions Virtualization (NFV) and how it was a game changer to the telecommunications industry. When I started the presentation, I asked for a show of hands on how many people were familiar with NFV, and not surprisingly only a few folks indicated they’ve heard of it!

Thomas Schroer speaking about moving multimedia applications to the cloud at CommsDay 2016

Outside of telecom and the immediate vendor and analyst community, NFV is probably not well known, although it is shaping up to have a huge impact on how communications and data services are delivered as well as how Telcos are organized. You can download the presentation from SlideShare as well as other CommsDay Summit presentations.

Yes, CommsDay was all-encompassing and provided a cross section of perspectives, but I think it was missing one component – the voice of the enterprise!

Enterprise IT shops for years have known about virtualization, clouds and data center automation, and those concepts are making their way into the telecommunications infrastructure. What’s not readily apparent is the benefit to enterprise organizations that NFV and Software Defined Networks will have. I did a blog recently on Network Slicing that talks about enterprise-centric use cases enabled by NFV and virtualization that’s worth checking out if you haven’t already. As virtualization, decomposition of network functionality, customization of network slices, and reduced costs in implementing networks plays out, enterprises will have more control in how they communicate not only with their employees, but also their customers.

So as the telecommunications industry evolves to a software-centric model that is more flexible and agile, enterprises heavily reliant on Big Data from IoT will have a bigger role in defining their communications infrastructure. I think for the CommsDay Summit to be totally comprehensive in the future and put them on the bleeding edge, the voice of the enterprise will be important to round out what’s really going on with the state of the telecommunications market. Let me know what you think by tweeting us at @Dialogic.


Publish Date: April 18, 2016 5:00 AM

From Zero to Hello World - The TADHack London Story

Imagine 5p.m. on a Friday, your boss asks you to write an application that can record WebRTC conversations and analyze the speech to identify specific keywords. Oh, and you don't really have experience using real-time communications and your boss wants to see a demo by Monday… Besides wondering what ‘big-brother’ could do with such an app, where do you even start???

Two ultra-talented developers, Roderick Hodgson and Alex Francois, created the incredible application mentioned above this past weekend at TADHack mini London.

Perhaps the most astonishing thing about TADHack mini London was the variety of skill level each hacker came to the event with. There were participants that had hardly any developer experience. Take for example Stephen Sales from Analysis Mason – he created his very first hack in a matter of hours, which was an automated pre-interview information-gathering application. Stephen came to the event with no intent to participate but with a little bit of guidance (and a little bit of needling), he rolled up his sleeves and delivered a fantastic first hack. Additionally, a new record was set at TADHack-mini London by having the event’s youngest hacker at 15 years old. I don't exactly recall where or what I was doing at 15, but it certainly wasn't pitching a room full of strangers my app that I had just built.

For me this is what it’s all about – breaking down the seemingly impossible and making it possible. That moment when the call gets answered and you hear the voice of the person sitting next you - the wide-eyes and smiles of accomplishment only to be spoiled by the increasingly louder feedback echo that happens because you forgot to mute. Brilliant! - as they say in the UK. I admittedly have more selfish reasons for attending these hackathons. I seek to challenge our API story and how easily developers can go from zero to hello world. This year, we teamed up with Telestax, the maker of RestComm to help deliver an easy yet powerful API that any developer ANYONE can use. The conclusion was clear: the hackers were able to achieve more, way more.

Below is a brief summary of the hacks built using RestComm and PowerMedia XMS. I encourage you to check out the all hack pitches on the TADHack Youtube channel and get involved. It’s fun, educational, and as we’ve seen, ANYONE can do it, not just hardcore developers.


*** Grand Prize Winner *** Sebastian Schumann  - “Contact Sentry” – an inbound call filter that would automatically allow contacts from address book through but would grey-list those not. Integrated with Slack that would prompt the called party to approve the grey-listed caller or block and blacklist them.

Roderick Hodgson and Alex Francois - “Distillate” – gave users the ability to record a WebRTC based conversation that would then be streamed to Watson for Text-to-Speech and Alchemy keyword analysis. The keyword summary would be sent to the users after the call via SMS.

Stephen Sale – “My First Hack” - an automated pre-interview information-gathering application that would then be summarized and sent to the interviewee via SMS before then connecting the interviewer to the interviewee

SPAN Services - “Mayday” – replica of the popular Amazon Mayday that would allow businesses/e-commerce websites to have a click-to-call type button that would connect customers to agents. Featured video calls, file sharing and co-browsing.

Dalton – “Jerry” – an inbound calling service that gives users the ability to reach their favorite applications without using data for example directions, news updates or even funny sound clips.


Publish Date: April 15, 2016 5:00 AM

RCS Re-Invigoration Reality

But will the hype this time be justified?  RCS has been slowly building momentum mostly because VoLTE has been slowly building momentum.  VoLTE is IP-based voice/video on an LTE / IMS network, and RCS adds IP-based messaging services that are also an evolution to legacy SMS and MMS messaging.  So it makes sense that RCS started to be deployed once VoLTE started to be deployed.  Is there really RCS business?  If you believe in analyst reports, Markets and Markets has a report on RCS services stating that it will be a $5.7 billion dollar business by 2019. I wouldn’t bet a business plan on an analyst report though.

So let’s get back to MWC 2016.  If you walked about the MWC show floor, you would have seen a decent amount of RCS signage (No Joyn signage. The last few service providers who announced RCS support decide to brand it something else).  And those companies couldn’t have known that Google was going to announce support of RCS.  I talked to a few of them and they said they have business on RCS, and that’s simply why they had RCS signage.

And really that’s what it is all about – business.  Will RCS ever truly replace the glory days of SMS?  No.  Will RCS end the OTT guys reign?  No. But will RCS actually be deployed, giving value to hundreds and hundreds of millions of subscribers, and enable more than a few companies to carve out a RCS niche?  Seems likely.

This is a 3-part blog series on RCS - Read part 1 and part 2: 

Part 1 - RCS Reinvigoration???

Get some background info on what RCS is, how RCS did in the market in the past, and why RCS could potentially be a threat to iMessage and Over-The-Top apps like WhatsApp and Line. 

Part 2 - Is the RCS Re-Invigoration just more HYPE???

Read why Joyn, GSMA's branding of RCS, didn't work out back in 2012, what's different about RCS this time around, and speculation about whether RCS will stick.


Publish Date: April 12, 2016 5:00 AM

Hello, video. Where are you?  I am here with WebRTC.

Video in real-time communications has been coming for a long time. Unfortunately, its hype came way before it should have.  Service Providers knew it had potential, but were never sure how to “sell” it (price, market, etc.).  Also, let’s not forget the discussions around the bandwidth requirements of video.  So what has changed now that video is moving to the forefront once again?  One big reason… WebRTC.

WebRTC single-handedly solves the incompatibilities for real-time communications by leveraging the web browser as the “application,” facilitating browser-to-browser communication.  Since the browsers themselves include all the capabilities needed to support real-time multi-media communications, no software downloads or registrations are needed, thereby standardizing communications between browsers, enabling audio and video communications, as well as data bridges to support text chat or file-sharing.

I know this blog is about video and WebRTC, but WebRTC has so many use cases that I feel the need to divert for one moment in that direction.  In Tsahi Levent-Levi’s blog on February 11, 2016, he lists “a few” use cases off the top of his head that he has come across in the past year or so, where WebRTC was used or seriously planned to be used.  Take a look, as there is little doubt in most people’s mind that WebRTC is here to stay as a key to any realtime communications.

The benefits which video (and voice) derives from WebRTC are many.  Here are three…

1. Security – WebRTC has an “always-on” voice and video encryption. The Secure RTP protocol (SRTP) is used for encryption and authentication, preventing recording and eavesdropping.

2. Quality – WebRTC uses the VP8 codec for video. This selection ensures interoperability and avoids the need for codec downloads that may contain malicious code.

3. InteroperabilityThe biggest value of WebRTC is its promise of interoperability with existing voice and video systems. If the existing devices use standard protocols, they will probably work with WebRTC-based devices.

Let’s look at Video ACD and see how WebRTC helps make it a reality.  You are on your smartphone shopping on a website and have a question on a Blu-ray player you want to purchase.  You click the click-to-call button and WebRTC facilitates the browser-to-browser communication.  At this point, a live video session with an agent begins, or if an agent is not available, a generic video-on-hold is played.

You can take this one step further by enabling the live video session and video-on-hold to be “contextually aware.”  By this, I mean pushing data through WebRTC so your call can be routed to a Blu-ray specialist who knows the exact model of the player you are interested in.  Of course, the same applies to the video-on-hold, where it would play a video about the Blu-ray player you want to purchase, highlighting all of its functions and features.

Talk about enhancing the user experience!  With WebRTC, video is here and now.


Publish Date: April 8, 2016 5:00 AM

Is the RCS Re-Invigoration just more HYPE???

Last week, I explored the RCS re-invigoration due to the Google announcement of RCS support. And given that the GSMA historically has supported RCS heavily, and anything involving Google would get huge interest and press, it comes as no surprise that we saw quite of bit of hype about RCS coming out of the GSMA during MWC. 

However, also remember we saw much hype in 2012 when Joyn, the GSMA branding of RCS, was announced.  Remember, this was the time when the likes of WhatsApp and Facebook and other instant messaging smartphone apps were starting to very seriously erode texting revenues.  So the GSMA and service provider response was to announce something (that already existed!) evoking joining and interacting with a community that went across service provider boundaries.  It didn’t say what it did; it just said “join.”  But the real world isn’t a movie and the “build it and they will come” aspect of Joyn didn’t work out.  Those other non-Joyn services already did messaging very well, so the Joyn / RCS value was scant.  The hype quickly died down.

Since that time, WebRTC technology has also entered the fray since the days the RCS/Joyn specs were completed.  There are many service providers looking at WebRTC as well, which would enable many of the same kinds of values as RCS provides.  It is still too early to tell how WebRTC will impact RCS, but it seems destined to.

This is a 3-part blog series on RCS - Read part 1 and part 3: 

Part 1 - RCS Reinvigoration???

Get some background info on what RCS is, how RCS was in the marketplace in the past, and why this time RCS could potentially be a threat to iMessage and OTT. 

Part 3 - RCS Re-Invigoration Reality

Jim Machi has speculated about a RCS reinvigoration in part 1 and 2. Here's the reality of where RCS is now, and a realistic view of where it's going.


Publish Date: April 5, 2016 5:00 AM

Give Me Just a Slice of That Network Pie

NFV and 5G are bringing some interesting capabilities to the mobile network near you. With the NFV framework, operators are pivoting towards deploying virtualized infrastructure that traditionally was deployed on purpose built hardware platforms.

A number of Proof of Concepts by ETSI NFV ISG participants have involved orchestration and virtualization of Evolved Packet Core (EPC) components that provide the data and control plane functionality needed to deliver a mobile service. Many vendors are already providing cloud-centric solutions that move the processing of mobile traffic and signaling to virtualized environments running on COTS data center servers without the need for specialized hardware platforms. Even though special care should be taken when virtualizing applications that process data plane-centric real time media traffic, with virtualization, you no longer have to deploy media processing, MME, SBC, SGW or PGW or other EPC and IMS/VoLTE functions on purpose built hardware platforms.

You’re also no longer limited to where you can physically locate the functionality. The old model of deploying purpose built platforms leads to over provisioning, stranded capacity and large upfront CAPEX investments solely to support single tasks within an end-to-end service. With virtualization and a data center cloud infrastructure, functionality can be placed at various points around the globe where it makes sense to best support subscribers and meet performance SLAs.

By using a virtualization model and an NFV approach you can distribute and manage that functionality using cloud concepts that have been around for a while in the data center space. This approach enables you to start to automate the lifecycle management of network functions and the services they support to optimally respond to changes in subscriber demand.

Mobile networks were originally optimized for voice services. As the demand for mobile internet access exploded, new generations of mobile technology were introduced in both the Radio Access and mobile core to support even newer devices that generated more and more data traffic. IoT and M2M applications like connected cars, wearable devices and remote sensors are set to expand the number of connected devices significantly. However, many of these end points have a different set of mobility needs - some can be statically deployed; others are more control plane intensive relative to their data plane requirements. The extensive functionality of a “one size fits all” network to support the lowest common denominator of devices is not in tune with the current trends in device technology and IoT use cases. By taking virtualization down its natural progression path, it’s now possible to create a mobile core network that is used specifically for one group subscribers or class of service or even for a particular type of connected device.

 Virtualization of network functionality on COTS data center servers combined with cloud-centric management and orchestration practices provides the framework to allow operators to spin up a collection of functions in the mobile core geared for a specific group or class of users in a dedicated and isolated ”Network Slice”you can read more about this concept in a white paper published by the Next Generation Mobile Networks (NGMN) Alliance. If mobility is not needed, for example in the case of static remote sensors, then that functionality could be eliminated from the slice. If a large amount of cached data is required or faster response time is necessary such as in the case of vehicle-to-vehicle communications for connected car applications, then data and control plane signaling functionality can be moved closer to the mobile edge for lower latency.

Network slicing approaches to delivering connected services also extends to enterprise verticals in a way that - without virtualization and NFV - was previously not practical. Take for example a large enterprise consisting of field and office employees that wants to provide secure access to its internal data over a collection of smart phones and tablets. A virtualized EPC slice can be created specifically for that enterprise that conforms to the information security and internal logging requirements. In addition, specialized voice applications can be layered on top of that network slice tailored to the needs of that particular vertical opening up opportunities for innovative application development. It’s almost like choosing what toppings you want on your personalized slice of pizza!

What other applications can you think of when it comes to deploying customized network slices for enterprises or connected devices and IoT? Let us know by tweeting us at @Dialogic.


Publish Date: April 1, 2016 5:00 AM

RCS Reinvigoration???

RCS (Rich Communication Services) got a large boost at Mobile World Congress with the announcement from Google that they will support RCS.  RCS is essentially SMS/MMS that can work over IP networks and can enable presence and location, and sharing of media.  Kind of sounds familiar, except this is an app that is from your service provider, which adds much value to them.  It’s available on some newer Androids, but not iPhones. If you have a newer Android, this feature could have value to you. It’s linked to your phone number instead of your identity via some app. This means both parties don’t have to have the same app to talk to each other. It’s like iMessage on the iPhone, but on Android and with more features.

This may not matter if you’re talking to your friends and you both have an app that you like and stay on all the time, but in business settings where that is unlikely and hard to coordinate, RCS will be very useful. It’s all about the different use cases.

This battle for the phone number versus your identity on an app is really about, and will shape, the entire future of telecommunications.  But that’s a whole other subject worthy of many words and future blogs.

It’s important to remember that RCS is not some new invention that has come about to battle the big bad OTT guys, but has been around for some time.  That’s because with the new IP networks, the industry recognized there needed to be ways to message on them.  There has only been limited success to date, however.  If you go to the Wikipedia link I hyperlinked to at the beginning of this blog, you’ll see that there is only a modicum of service providers supporting RCS today.  Remember though, part of that reason is because the phones need to support RCS and there have been few to date. That will change when the new Androids hit the market.  Another part of the reason, obviously, is because there are messaging apps that run on the data networks, the so-called OTT apps. So the general thinking is no one really needs another one.

With this as a background, enter the Google announcement.  Obviously, Google has an interest here because they have an interest in Androids and they also know that the future of telecommunications involves the battle for the phone number versus app identity. So they are out to stop Apple and WhatsApp and that crowd.  And what better way to do that than force an alliance with the phone numbers, and offer the Android RCS client (called Jibe) for free?

 This is a 3-part blog series on RCS - Read parts 2 and 3: 

Part 2 - Is the RCS Re-Invigoration just more HYPE???

Read why Joyn, GSMA's branding of RCS, didn't work out back in 2012, what's different about RCS this time around, and speculation about whether RCS will stick.

Part 3 - RCS Re-Invigoration Reality

Jim Machi has speculated about a RCS reinvigoration in part 1 and 2. Here's the reality of where RCS is now, and a realistic view of where it's going.


Publish Date: March 29, 2016 5:00 AM

Innovation is “Hot” Again with Communications APIs

One of my first jobs as a software developer in telecommunications was writing an automated hotel wake-up application based on TDM voice boards using an ancient API.  Who knew that nearly 30 years later, applications and APIs would still be a huge catalyst of innovation?   If the last few months can be used as a gauge, building communications applications with APIs is seeing a resurgence, fueled by new APIs, cloud-based services, and easy-to-use developer tools.

A few examples that really stood out from my travels this last few months:

During the AT&T Developer Summit Hack, upwards of 22 teams put together some great ideas, building on the open WebRTC platform that AT&T offers the market.  My favorite hack combined both WebRTC and IoT to create a medical monitoring application that allowed a patient to remain in their home, but their medical condition was constantly monitored by medical staff who (if there was an anomaly)  could immediately initiate a video call to the patient.  Another fascinating idea allowed students to take their smartphone devices to school, but using Geo-fence technology, limited the people they could interact during school hours with to a whitelist created by their parents.

Earlier this month, Enterprise Connect dedicated an entire track to Communications APIs, showing off some early applications during an “APIs In Action” session.  A couple great real-world examples were presented by Nicholas Kwiatkowski from Michigan State University starting with an application to replace expensive monitoring services for their 600+ elevators on the various campuses.   A group of students created an application that would handle any elevator emergency call box activations, sending a text message to an available maintenance staff member and routing the call to a campus security desk.  By eliminating the separate analog PSTN lines and specialized answering service accounts for every elevator, the college saved the cost of the call answering service, improved response times and simplified maintenance record keeping. Interestingly, this application was initially developed by students during a Hack-a-thon, later hardening the application and deploying it campus-wide.  Another application created at Michigan State University integrated the campus parking meter system, sending reminders of pending expiration of paid-parking and offering an opportunity to extend the meter with a text response.

But that’s only a few examples from this last couple months.  There is plenty of opportunities to see APIs in action in the upcoming months:

The weekend of April 9th and 10th, TADHack-mini in London will play host to a number of developer teams vying for their share of a $5,000 prize pot.  Dialogic and Telestax are joining forces at the event, offering developers a very powerful and developer-friendly environment to implement their ideas.  Got an idea and want to complete?  Registration is FREE and can be done at: Watch for tweets from the event as we watch the developers pitch and craft their hacks.

Later this summer, the folks at TMC have organize an event titled “All About The API”, held July 18th – 21st in Las Vegas. Much broader than just communications applications, this event explores the broader marketplace for software building blocks and their APIs that can be used to create integrated services.  Dialogic will be participating in a number of speaking sessions and sharing our cloud-enabled APIs with potential developers.  More on the event at:

If this summer wasn’t packed enough, the Kimmel Center at New York University is home to the Real Time Web Solutions Event, an event focused on bringing web communications to applications, creating new business opportunities and strategic advantages.  More on the event at:

And always available, you can follow the conversations and news for developers available on the Communications Developer Zone at:

Some final thoughts:

While the move to the cloud, new software development tools and methodologies have dramatically changed the way applications are created today (leaving my developer skills in the dust), a good idea will always find success. I’m waiting to see a bright-eyed student craft an intelligent wake-up application at one of the upcoming Hack events.  Some things have not changed..


Publish Date: March 28, 2016 5:00 AM

Page: 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8

ABOUT US IN 60 seconds!

Latest Americas Newsletter
both ids empty
session userid =
session UserTempID =
session adminlevel =
session blnTempHelpChatShow =
session cookie set = True
session page-view-total =
session page-view-total =
applicaiton blnAwardsClosed =
session blnCompletedAwardInterestPopup =
session blnCheckNewsletterInterestPopup =
session blnCompletedNewsletterInterestPopup =