News from Industry

The FreeSWITCH 1.6.8 release is here!

FreeSWITCH - Thu, 05/05/2016 - 22:15

The FreeSWITCH 1.6.8 release is here!

With the release of FreeSWITCH 1.6.8 we see some major improvements in the .deb based packaging. Included in this release is a fix for the freeswitch-all package. Prior to this fix, if certain FreeSWITCH Extensions were not included in the -all package, and a user attempted to install that extension via its stand-alone freeswitch-mod-extension-name package, it was possible to leave the system in a broken state. This fix does make a substantial change to the freeswitch-all package and the number of dependencies included via this package. Due to this change, a bare “apt-get upgrade” will not upgrade the package automatically and you will need to either call ‘apt-get dist-upgrade’ or call ‘apt-get upgrade freeswitch-all’ explicitly. This also brings the freeswitch-all package in line with the freeswitch-meta-all package.

Additionally with these packaging changes, Packages are now available for Ubuntu 14.04. Please see https://freeswitch.org/confluence/display/FREESWITCH/Ubuntu+14.04+Trusty for Ubuntu installation instructions.

This is also a routine maintenance release. Change Log and source tarball information below.

Release files are located here:

New features that were added:

  • FS-8983 [mod_avmd] Enable on outbound channel to make debugging easier
  • FS-8875 [mod_avmd] Enable faster beep detection
  • FS-9019 [mod_avmd] Extend syntax description to include “[start|stop]” at the end of AVMD_SYNTAX ” “
  • FS-9023 [mod_avmd] Add console auto completion
  • FS-9020 [mod_avmd] Implement checking of proper configuration of avmd session being started on internal/external channels. Check for read/write codec, CF_MEDIA_SET
  • FS-9027 [mod_avmd] Remove assertion from INIT_CIRC_BUFFER and check buffer’s pointer to raw memory dynamically
  • FS-9028 [mod_avmd] Check SMA buffer for successful memory allocation
  • FS-9031 [mod_avmd] Check session initialization for errors
  • FS-9039 [mod_avmd] Use FS enumeration
  • FS-9050 [mod_avmd] Fixed APP interface so avmd now exposes single avmd_start_function() for handling APP calls and splits the function into independent calls
  • FS-9124 [mod_avmd] Extend XML config
  • FS-9024 [mod_avmd] Add events on session start/stop
  • FS-9011 [mod_avmd] Add xml configuration file so that avmd parameters can be set by users in this file easily
  • FS-8688 [mod_vpx] Implement vp9 processing to avoid chrome hang
  • FS-8990 [mod_verto] Adding verto_login header to verto::client_disconnect event
  • FS-9077 [mod_verto] Adding verto_hangup_disposition variable to indicate who hangup
  • FS-8991 [verto_communicator] Adding translations for French. Thanks Tristan Mahé
  • FS-8989 [verto_communicator] Adding Portuguese i18n translations
  • FS-8998 [verto_communicator] Adding German, Spanish, Catalan, Chinese, Polish, Russian, Swedish and Indonesian translations.
  • FS-8972 [verto_communicator] Add i18n using angular-translate and static file loader
  • FS-9038 [verto_communicator] Add translations to support Danish
  • FS-9006 [verto_communicator] Add-combobox for languages
  • FS-9100 [mod_conference] Set recording failure error if there are zero webcams enabled in a conference and set conference flags or conference member flags with individual variables per flag
  • FS-9106 [mod_conference][libvpx] Minor modifications to make vpx in dedicated encoder mode use less cpu, upped the default FPS to 30, and added a new version of previous sleep patch
  • FS-8992 [core] Indicate end of candidates in SDP to aid in the resolution of an interop issue with Mozilla
  • FS-9134 [core] Tweaked fscore_pb to use new pastebin API
  • FS-9052 [mod_hiredis] Add connection pooling, improve dropped connection resiliency, and allow 0.10.0 of hiredis for CentOS 6
  • FS-9054 [mod_hiredis] Add ignore-connect-fail profile parameter so that calls do not get killed if limit fails due to lost connection
  • FS-9059 [mod_hiredis] Add session logging
  • FS-9078 [libsofia] Added hepv2 and hepv3 support, added #pragma for MSVC compiler, and fixed the Windows build of HEPv2/HEPv3 code
  • FS-9083 [mod_sofia] Pass On SIP headers from leg A to B
  • FS-7125 [mod_sofia] Added an event “wrong_calls_state”. This is for fail2ban logging.
  • FS-9080 [mod_spy] Making mod_spy work with Verto channels
  • FS-9072 [mod_syslog] Allow logging of messages containing tab character
  • FS-9043 [mod_kazoo] Add kz_export of multiple variables instead of calling export application
  • FS-9025 [mod_callcenter] Bypass_media_after_bridge working for member channel
  • FS-9079 [mod_callcenter] Add ring-progressively strategy which is a way to ring every agent similarly to a top-down strategy but without cancelling the previous calls.

Improvements in build system, cross platform support, and packaging:

  • FS-9036 [mod_avmd] Fix warnings on Windows builds
  • FS-8988 [mod_avmd] Rename files to include avmd in their name.
  • FS-8875 [mod_avmd] Fixed the windows build from this change
  • FS-8971 [mod_amqp] There are two different status variables with two different meanings. This splits them back apart.
  • FS-8933 [scripts] WIP Fix some breakage on Raspbian as we don’t want the FS repos there yet because we don’t have armhf packages at this time
  • FS-8623 [build] Fixed Solaris studio build errors building libvpx
  • FS-8780 [build] Fixed the include for Windows builds that point to in tree library
  • FS-8883 [build] Fixed compiling due to unused result failure on gnu compiler with –disable-debug
  • FS-9000 [build] Fixed compiling on bsd and with libyuv disabled
  • FS-9109 [build] A fix for misleading indentation errors on gcc 6.0
  • FS-9070 [build] Update config.sub and config.guess to prevent configure failing on arm64
  • FS-9091 [build][libyuv] Update libyuv to hash 69245902 from https://chromium.googlesource.com/libyuv/libyuv/ and set it to build all platform files so we don’t have missing symbols on some platforms
  • FS-8623 [build][configure] Fixed Solaris studio error trying to compile char[] with c++ compiler and fixed an issue with a necessary flag having issues with the libvpx configure
    FS-8779 [Windows] Fixed the include for Windows builds that point to in tree library
  • FS-9075 [Debian] Fix-up for systemd and sysvinit, re-worked the freeswitch-all package, removed some meta-all dependencies that are causing issues, tweaked the freeswitch-meta-all dependencies to more fully install FreeSWITCH, and tweaked the dependencies for freeswitch-init
  • FS-9081 [Debian] Use turbo if available for newer jpeg over falling back to old jpeg62-dev
  • FS-5936 [Debian] ESL.pm packaged for Debian
  • FS-9093 [mod_cv] Remove unnecessary includes

The following bugs were squashed:

  • FS-8982 [core] Fixed an issue with play_fsv and play_yuv writing blank_img in parallel
  • FS-8918 [core] Fixed an issue with a 10 Second timeout after Notify during Proxy refer
  • FS-9002 [core] Fixed an issue with rtp timeout code parsing on video but its designed for audio
  • FS-8757 [core] Fixed a buffer overflow in switch_channel_expand_variables_check and switch_event_expand_headers_check
  • FS-8949 [core] Fixed an issue with the send end packet for DTMF RTP event not being recognized
  • FS-9042 [core] Fixed assert when recording native file
  • FS-9062 [core] Fixed a jittery voice issue caused by OPUS mid-call change from 20ms to 40 ms
  • FS-9131 [core] Improve validation of ice candidates to handle malformed as well
  • FS-9099 [core][sofia-sip] Fixed an issue caused by the web-socket raw frame read timeout being too short and fixed the windows build of web-socket transport
  • FS-9078 [sofia-sip] Fixed the linux build of HEPv2/HEPv3 code
  • FS-8913 [mod_sofia] Fixed a transfer issue when using bypass_media + SRTP + Inbound late negotiation
  • FS-8562 [mod_sofia] Add update support for Mitel user agents
  • FS-9049 [mod_sofia] Fixed a DTMF issue
  • FS-9060 [mod_sofia] Correct issues with hold and broken soa negotiations after performing a bypass media re-invite
  • FS-9086 [mod_conference] Fixed the video files playing in the conference not counting in totals for calculating layout
  • FS-8749 [mod_conference] Fixed an issue when loading a video (mp4) for a conference using the “conference play” command “conference pause_play”
  • FS-9076 [mod_conference] Added an error prompt to notify that a conference can’t be recorded in pass-thru mode
  • FS-8993 [mod_av][mod_conference] Fixed a sync issue on conference playback for a video that is faster frame rate than the conference
  • FS-9056 [mod_av] Fixed an issue causing mobile H.264 video to be blank
  • FS-8995 [verto_communicator] Added missing toastr in settings controller
  • FS-8990 [verto communicator] Added verto_client_address to verto and presence events
  • FS-8996 [verto_communicator] Fixed a typo in CAMERA_SETTINGS id and added some Italian translation
  • FS-8997 [verto_communicator] Fixed fallbackLanguage
  • FS-9012 [verto_communicator] Fixing sidebar in narrow resolutions clipping the video
  • FS-9015 [verto_communicator] Minor fixes in Polish translation
  • FS-8999 [mod_erlang_event] Fixed broken outbound connection
  • FS-9004 [mod_http_cache] Set http get timeout on thread that is actively downloading with the value from the download-timeout configuration and added download-timeout parameter to prevent http_get from waiting unbound time for downloading to finish. Prevented prefetch threads from blocking if another thread is already downloading the same URL.
  • FS-7317 [mod_event_socket] Fixed a hang caused by a series of blocks
  • FS-8294 [freetdm] Pass in modinstdir to freetdm configure
  • FS-9016 [mod_avmd] Fixed a segfault on NULL read codec
  • FS-9057 [mod_rtmp] Fixed an issue with screen share feed not taking the floor if the webcam is muted and unmuted
  • FS-9058 [mod_hiredis] Allow auto decrement of non-interval limits on channel hangup and fix rate counters so the keys expire after interval completes. Do not auto decrement rate counters. Do not log null responses.
  • FS-9074 [mod_skinny] Fixed incorrect location of free causing memory leak of xml when certain errors occur
  • FS-9082 [mod_java] Fixed an issue with loading prerequisites if modules are not placed in prefix/mod directory
  • FS-9115 [mod_av] Initial work toward support for audio only mp4 recording
  • FS-8795 [mod_png] Fixed an issue with audio only call

Update: Anatomy of a WebRTC SDP (Antón Román)

webrtchacks - Thu, 05/05/2016 - 14:33

Session Description Protocol (SDP) is a fundamental, but very unintuitive concept behind how WebRTC works today. Its no wonder that the Anatomy of a WebRTC SDP post and the interactive SDP guide by Quobis CTO, Antón Román has been so popular here on webrtcHacks. With all things WebRTC, things have changed and we were due for an […]

The post Update: Anatomy of a WebRTC SDP (Antón Román) appeared first on webrtcHacks.

What if WebRTC SDP Munging was Prohibited?

bloggeek - Thu, 05/05/2016 - 12:00

How will we be able to live in a world without… SDP?

The one thing I love best about the WebRTC Standards website is that it looks at a place I neglect most of the time – the IETF and W3C. While I had my share of dealings with standardizaton organizations when I was young and pretty, it isn’t something I like doing much these days.

Last month, it seems a decision was made/in the process of being made – to prohibit SDP munging. As these things go, if this happens at all it will take VERY long to happen. That said, such a change will have huge impact on a lot of services that make use of this practice.

What’s WebRTC SDP munging?

SDP munging is a process of a WebRTC application taking its future in its own hands and deciding to change the SDP. With WebRTC, once the application sets the user media and connects it with a peer connection (=setting up to start a session), it receives the SDP blob that needs to be sent to the other participant in the session. This blob holds all of its capabilities and intents for the session.

If you want to learn more about the contents of the SDP, then this article on webrtcHacks will get you started.

Here’s a quick flow of what happens:

Where SDP munging takes place in WebRTC

Now that the application holds the SDP blob, the question that must be asked is what can the application should/can do with this SDP blob?

  1. The application should pass it to the other participant. Probably by placing it in an HTTP request or a Websocket message
  2. The application can change it (=mung it) before well… setting and sending it

The problem is in that second part.

What’s the problem with WebRTC SDP munging?

SDP embodies everything that is wrong about SIP. Or at least some of what’s wrong about SIP

There are several aspects to it:

  1. Being a textual kind of a protocol that is open as hell, it is open to interpretation of humans, making it hard to use. Interoperability is a headache with it, and now we’re leaving it at the hands of web developers. It becomes doubly hard, as there are extensions to SDP – some standardized, some in process and some just proprietary ones. And you need to sift between them all to decide what to do on the SDP level
  2. When you modify the SDP, it is assumed that the browser needs to interpret your modifications. Since it already created an SDP, it had its own understanding of what you want, but now he needs to interpret it yet again but instead of doing that through an API, it needs to do it via an ugly text blob. And browsers are created by humans, so they might not interpret it the same way you did when you munged it – or different browsers might interpret it differently
  3. New browser versions might not be able to interpret what you munged simply because that isn’t part of their main focus. The smaller you are, the more susceptible you will be to practicing SDP munging – what you do there might not be as popular as you though (or not defined as popular by browser vendors) – and it will break in some future version
  4. SDP isn’t that fun to modify with JavaScript. So it frustrates developers which ends up leading to more bugs and inconsistencies
What happens if and when it gets prohibited?

When SDP munging gets banned, existing applications that rely on it will break.

They might break completely, but mostly, they’ll break in ways that are less predictable – codecs won’t be configured in the exact way the developer intended, bitrates won’t be controlled properly, etc.

The whole idea behind SDP munging is to get more control over what the browser decides to do by default, so disabling it means losing that control you had.

When is this change expected?

Not soon, if at all.

That said, I wouldn’t recommend ignoring it.

What I’ve understood is that there’s little chatter about this on the standards mailing lists, so this just might die out.

The reason I think it is important is because at the end of the day, munging the SDP leaves you prone to whims of browser vendors as well as leaves you open to this future option of banning SDP munging.

What should you do about it?

First of all – don’t worry. This one will take time. That said, better plan ahead of time and not be surprised in the future. Here’s what I’d do:

  1. Refrain from practicing SDP munging as much as possible
  2. Since we’re already starting to see some of the ORTC APIs tricking into WebRTC, you should make an active investment now and in the near future to use these APIs whenever you feel the urge to make changes in the SDP (that’s assuming what you need is supported in the API level and not only via the SDP)
  3. If you aren’t sure, then check the code you have to see if you are practicing SDP munging, and if you are, make some kind of a plan on how to wean yourself from it

 

Planning on introducing WebRTC to your existing service? Schedule your free strategy session with me now.

The post What if WebRTC SDP Munging was Prohibited? appeared first on BlogGeek.me.

FreeSWITCH Week in Review (Master Branch) April 23rd – April 30th

FreeSWITCH - Wed, 05/04/2016 - 01:17

This week there were improvements to mod_conference and libvpx and the addition of a xml configuration file to avmd to allow for easily configurable parameters.

Join us Wednesdays at 12:00 CT for some more FreeSWITCH fun! And, head over to freeswitch.com to learn more about FreeSWITCH support.

New features that were added:

  • FS-9106 [mod_conference][libvpx] Minor modifications to make vpx in dedicated encoder mode use less cpu, turned up default FPS to 30, and added a new version of previous sleep patch
  • FS-9011 [avmd] Add xml configuration file so that avmd parameters can be set by users in this file easily

Improvements in build system, cross platform support, and packaging:

  • FS-9109 [build] A fix for misleading indentation errors on gcc 6.0
  • FS-9100 [mod_conference] Set recording failure error if there are zero webcams enabled in a conference
  • FS-9078 [sofia-sip] Fixed the Windows build of HEPv2/HEPv3 code
  • FS-9075 [Debian] Fix-up for systemd and sysvinit
  • FS-9075 [Debian] Tweaked the freeswitch-meta-all dependencies to more fully install FreeSWITCH
  • FS-9075 [Debian] Removing some meta-all dependencies that are causing issues
  • FS-9075 [Debian] Tweaks to the dependencies for freeswitch-init

The following bugs were squashed:

  • FS-9076 [mod_conference] Added an error prompt to notify that a conference can’t be recorded in pass-thru mode
  • FS-9086 [mod_conference] Fixed the video files playing in the conference not counting in totals for calculating layout
  • FS-9062 [core] Fixed a jittery voice issue caused by OPUS mid-call change from 20ms to 40 ms
  • FS-9099 [sofia-sip][core] Fixed the windows build of web-socket transport and fixed an issue caused by the web-socket raw frame read timeout being too short
  • FS-9078 [sofia-sip] Fixed the linux build of HEPv2/HEPv3 code

The WebRTC Slack-Rush

bloggeek - Mon, 05/02/2016 - 12:00

If the only thing you have is IP calling, then why are you investing in a Slack integration this late in the game?

Looking for gold in Slack by adding WebRTC calls to it?

Slack is a rising star. It has a small and growing set of users, some of which are happy to pay for the service. When it works, it is great. When it doesn’t, well… it then just feels like any other UC or enterprise communication service. I find myself using Slack more and more. Not necessarily because I need to, but rather because I am drawn to it by the teams I collaborate with. I like the experience.

In the last few months it seems that everyone is rushing to Slack, trying to build their own WebRTC integration with it. The latest casualty? LyteSpark.

Browsing Slack’s App Directory, I found the following WebRTC based services under the Communications category:

  • Google Hangouts
  • Skype
  • appear.in
  • GoToMeeting free
  • Room
  • UberConference
  • Limnu
  • Blue Jeans
  • Screenleap
  • Yodel
  • Videolink2.me
  • Quickchat
  • KOMASO

There are others, not in the marketplace, and probably a few others in other categories or ones that I just missed.

The problem with many of them is that Slack is actively adding VoIP now – using WebRTC of course.

As I always stated, WebRTC downgrades real time communications from a service to a feature. And now, Slack is adding this feature themselves.

The problem now becomes that these WebRTC services are competing with the built-in feature of Slack – something that will be infinitely easier and simpler to use – especially on mobile, where it is just there. What would be the incentive then to use a Hangouts bot when I can just start the same functionality from Slack without any integration? This is doubly so for free accounts, which are limited to 10 integrations.

The only WebRTC services that can make sense in such a case, are those that have some distinct added value that isn’t available (or easily available through roadmap of Slack). It boils down to two capabilities:

  1. Seamless integration with PSTN calling. This is what OttSpott does. I think this is defensible simply because I don’t see Slack going after that market. They will be more inclined to focus on IP based solutions. Just a gut feeling – nothing more
  2. Solving a higher level problem than pure voice or video calling. Maybe a widget integration with the customer’s website for click-to-call capabilities, though it can be some other capabilities that focus on a smaller niche or vertical

This Slack-rush of WebRTC services seems a bit unchecked. Basking under the light of WebRTC doesn’t work anymore, so time to move to some other hype-rich territory, and what better place than Slack? Problem is, without a real business problem to solve (conducting a video call over the web isn’t a business problem), Slack won’t be the solution.

 

Planning on introducing WebRTC to your existing service? Schedule your free strategy session with me now.

The post The WebRTC Slack-Rush appeared first on BlogGeek.me.

WebRTC and Server GPUs? A whitepaper

bloggeek - Fri, 04/29/2016 - 13:00

GPUs is most probably where we’re headed.

A couple of months ago, I was approached by SURF. An Israeli vendor specializing in server media processing. As many of its peers, SURF has been migrating from hardware based DSP systems to software systems in their architecture. As they’ve entered the WebRTC space, they wanted to have a whitepaper on the topic, and I accepted the challenge.

The end result? WebRTC Server Side Media Processing: Simplified

Download the whitepaper

Two things that I wanted to share here:

#1 – WebRTC Server Side Media Processing is real

What made writing this whitepaper so interesting for me was the fact that there really is a transition happening – not to using WebRTC – that already happened as far as I can tell. It is something different. A transition from simple WebRTC services that require a bit of signaling to services that process the media in the backend. This processing can be anything from recording to gatewaying, streaming, interoperating or modifying media in transit. And it seems like many commercial use cases that start simple end up requiring some kind of server side media processing.

In the span of the last two months, I’ve seen quite a few services that ended up building some WebRTC server side media processing for their use case. Maybe it is just related to the research I did around this are for the whitepaper, but I think it is more than that.

#2 – The Future Lies in GPUs

As I was working on the whitepaper, this one got published by Jeff Atwood – it is about AI winning a game of Go. Or more accurately, how GPUs are a part of it:

GPUs are still doubling in performance every few years

The whole piece is really interesting and a great read. It also fits well with my own understanding and knowledge of video compression (=not that much).

Two decades ago, video compression was a game of ASIC – the ugliest piece of technology possible. Hard to design and develop. You wanted to implement a new video codec? Great. Carve a few years for the task and a couple of millions to get there. They are hard to design and hard to program for.

Later it was all DSP. Still hard and ugly, but somewhat cheaper and with some flexibility as to what can get done with them. DSPs is what powers most of our phones when it comes to recording and playing back videos. It works pretty well and made it seem as if the device in our pocket is really powerful – until you try using its CPU like a real PC.

GPUs were always there, but mostly for gaming. They do well with polygons and things related to 2D and 3G graphics, but were never really utilized for video compression. Or at least that’s what I thought. I heard of CUDA in passing. Heard it was hard to program for. That was something like 5 years ago I believe.

Then I read about GPUs being used to break hashes, which was an indication of their use elsewhere. The Jeff Atwood piece indicated that there are other workloads that can benefit from GPUs. Especially ones that can be parallelized, and to some extent, video compression is such a task. It is also where SURF is focusing with its own server media processing, which places them in the future of that field.

GPUs are no longer used only for gaming or in our PCs and laptops – they are also being deployed in the cloud. They assist companies running Audocad in the cloud (heard such a story in the recent WebRTC Global Summit event), so why not use them for video compression when possible?

If you are interested in WebRTC and how media processing is finding its way to the server, and how that fits in with words like cloud and GPU, then take a look at this new whitepaper. I hope you’ll enjoy reading it as much as I’ve enjoyed writing it.

Download and read this new WebRTC whitepaper.

The post WebRTC and Server GPUs? A whitepaper appeared first on BlogGeek.me.

New Kamailio Module: NSQ

miconda - Thu, 04/28/2016 - 13:32
A new module named NSQ has been imported in Kamailio’s GIT repository, authored by Emmanuel Schmidbauer from Weave Communications. Emmanuel has become also a registered developed in order to maintain the module.In short, the module provides a NSQ connector for Kamailio configuration file, allowing to interact with NSQ servers from kamailio.cfg. NSQ is a real time distributed messaging platform, you can read about NSQ at nsq.io.More about the NSQ module is available at:The module will be part of the future major release Kamailio v5.0.0! While waiting for that release you can play with NSQ using the git master branch.Thank you for flying Kamailio!

Where are we with WebRTC?

bloggeek - Thu, 04/28/2016 - 12:00

Progressing nicely – of course.

Checking the pulse of WebRTC

It’s been 5 years since WebRTC came to our lives. Different people count it from different times. I heard in the last month or two the years 2009, 2010 and 2011 stated as the year of birth of WebRTC. While no one should really care, for me, WebRTC started with Google’s announcement of WebRTC in May 2011. It was the first time Google publicly stated its plans for its GIPS acquisition, and it came out as an open source package that was planned to get integrated into browsers and be called WebRTC. I was a CTO at a business unit licensing VoIP products to developers. The moment I saw it, I knew everything was going to change. It was one of the main reasons I left that job, and got to where I am today, so it certainly changed everything for me.

As we head towards Mat of 2016, it is time to look a bit at the 5 years that passed – or more accurately the 5th year of WebRTC.

One one hand, it seems that nothing changed. A year ago, Chrome and Firefox supported WebRTC. That’s on Windows, Mac OS X, Linux and Android. Today, we’re pretty much in the same position.

On the other hand, adoption of WebRTC is huge and its impact on markets is profound; oh – and both Microsoft and Apple seem to be warming up to the idea of WebRTC – each in his own way.

If you are interested in a good visual, then my WebRTC infographic from December 2015 is what you’re looking for. If it is numbers and trends today, then read on.

951 Vendors and Project – and growing

I’ve been tracking the vendors and projects of WebRTC since 2013, actively looking for them and handpicking relevant projects that are more than 10 lines of code and any vendor I saw. It turned into one of the services I have on offer – access to this actively growing (and changing) dataset of WebRTC vendors.

Earlier this month, the WebRTC dataset had the following interesting numbers:

  • 951 vendors and projects that I track
    • There are a few that shutdown throughout the years, but not many
    • There are a few that I know of and don’t make it into the list, because they want to remain private at this point
    • There are data points I’ve stored and haven’t processed yet – many of them additional vendors (got around 80 in my backlog at the moment)
  • 2015’s average was 26 vendors added every month
  • 2016 shows a slight increase to that average. 3-4 months aren’t enough to make this definitve yet
  • For now, there are 41 acquisitions related to WebRTC in one way or another
    • Some of them are less relevant, such as Mitel acquiring Polycom
    • Others are all about WebRTC, such as Talko’s acquisition by Microsoft

What is interesting is that these vendors and projects are always evolving. They aren’t only limited to startups or large enterprises. They aren’t specific to a certain vertical. They cut through whole industries. Just this week a new use cases popped – movers who can give a price quote without being on site. Will it fly? Who knows.

We’ve been witnessing a surge in communication services. We are not limited today by concepts of Telephony or Unified Communications. These became use cases within a larger market.

What is different now is that the new projects and vendors don’t come with VoIP pedigree. They are no longer VoIP people who decided to do something with WebRTC. Most of them are experts in communications – not digital communications, but communications within their own market niche. Check out the interview from last week with Lori Van Deloo of BancSpace – she knows her way in banking.

API Platforms are Maturing

Communication API platforms using WebRTC are maturing. Many of them have the basics covered and are moving further – either vertically or horizontally. Vertically by deepening their support of a specific capability or horizontally by adding more communication means. You can read my WebRTC API report on it. I am in the process of updaing it.

What is interesting is how this space is being threatened from two different domains:

  1. Unified Communication platforms turned Enterprise Messaging turned developer ecosystems. Cisco Spark and Unify’s Circuit are such examples. They are an enterprise UC solution that can be used (and is actively being marketed as) a long tail development platform for general communication needs
  2. Specialized component vendors who are offering widgetized approach of their service, enabling its integration elsewhere. Gruveo, appear.in and Veeting do it a lot; Drum ShareAnywhere and a lot of others are also examples of it

This is affecting the decision making process of those who need to roll out their own services, making the technology more accessible, but at the same time more complex and confusing when the time comes to pick a vendor to lean on.

Verticals are Fragmenting Further

What does a communication solution in healthcare looks like?

If you ask a Unified Communications vendor, it will be able having a room system everywhere and enabling doctors/nurses/patients communicate.

I had conversations with these types of health related vendors:

  • Contact centers for doctor visitations of a healthcare insurer
  • IOT measurement device a user takes home, connects to the phone and from there to a doctor
  • Online group treatment
  • Serving rural areas from an established hospital in developing countries
  • Assisting/learning/teaching/participating in remote surgery
  • Medical tourism
  • Counseling for enterprise employees
  • Care for seniors
  • Secure messaging for doctors
  • Medical clowns
  • Fitness related

Each of these is a world unto its own, and to think we’ve looked at them all through the prism of Unified Communications or even the “healthcare vertical”.

WebRTC brought with it the ability to hone in on specific market needs.

WebRTC is already ubiquitous. As with any technology, its has its rough edges and challenges.

I’ve dealt with developing VoIP products for the better part of the last two decades – I can tell you hands down that never before did we have the alternatives to do what we can today. If you have VoIP on your mind, then WebRTC should be the first thing to try out as a component in your solution.

The post Where are we with WebRTC? appeared first on BlogGeek.me.

ClueCon Weekly – April 27, 2016 – Lorenzo Mangani

FreeSWITCH - Wed, 04/27/2016 - 20:08

Lorenzo will be talking about the SIPCAPTURE stack HOMER. “A robust, carrier-grade and modular VoIP and RTC Capture Framework for Analysis and Monitoring with native support for all major OSS Voice platforms and vendor-agnostic Capture agents. HOMER counts thousands of deployments worldwide including notorious industry vendors, voice network operators and fortune 500 enterprises, providing advanced search, end-to-end analysis and packet drill-down capabilities for ITSPs, VoIP Providers and Trunk Suppliers using and relying on VoIP services and RTC technologies – All 100% Open-Source.”

Responsive Look for Kamailio Website

miconda - Wed, 04/27/2016 - 13:30
The kamailio.org website has been updated to use a responsive theme. The old skin was built during 2010-2011, the corresponding wordpress theme was not updated for few years, lacking the responsive layout.The new look keeps the same clean and clear approach. One of the major changes was the need to widget-ize the sidebar on the right, which used to be the main navigation menu for most of the resources provided by Kamailio project. Several of them were left on the new right sidebar and the rest along with new resources were indexed by the menus at the bottom of the pages.The main page for kamailio.org is planned to be reorganized with a fresh design in the near future as well, building on top of the framework provided by the new wordpress template.Suggestions on how to organize the website and its menus for better accessibility or more suggestive navigation are very welcome! Email us to .Thank you for flying Kamailio!

FreeSWITCH Week in Review (Master Branch) April 16th – April 23rd

FreeSWITCH - Mon, 04/25/2016 - 17:30

This week we added support for hepv2 and hepv3 in sofia! Also, mod_spy now works with verto channels.

Join us Wednesdays at 12:00 CT for some more FreeSWITCH fun! And, head over to freeswitch.com to learn more about FreeSWITCH support.

New features that were added:

  • FS-9078 [libsofia] Added hepv2 and hepv3 support and added #pragma for MSVC compiler
  • FS-9083 [mod-sofia] Pass On SIP headers from leg A to B
  • FS-9080 [mod_spy] Making mod_spy work with Verto channels
  • FS-9024 [avmd] Add events on session start/stop

Improvements in build system, cross platform support, and packaging:

  • FS-9091 [build][libyuv] Update libyuv to hash 69245902 from https://chromium.googlesource.com/libyuv/libyuv/ and build all platform files so we don’t have missing symbols on some platforms
  • FS-9093 [mod_cv] Remove unneeded includes
  • FS-9081 [Debian] Use turbo if available for newer jpeg over falling back to old jpeg62-dev

The following bugs were squashed:

  • FS-8757 [core] Fixed a buffer overflow in switch_channel_expand_variables_check and switch_event_expand_headers_check
  • FS-9057 [mod_rtmp] Fixed an issue with screen share feed not taking the floor if the webcam is muted and un-muted
  • FS-9082 [mod_java] Fixed an issue with loading prerequisites if modules are not placed in prefix/mod directory
  • FS-9060 [mod_sofia] Correct issues with hold and broken soa negotiations after performing a bypass media re-invite

Skype will go the Hangouts Route with WebRTC (or vice versa?)

bloggeek - Mon, 04/25/2016 - 12:00

Well… Almost.

For those who haven’t been following the path Skype is taking, here’s a quick recap of the last year or so:

  • Lync got “merged” with Skype, rebranding it as Skype for Business – so now all of Microsoft’s voice and video calling services are Skype
  • Skype for Web was announced at about the same time
  • A Skype SDK was launched
  • And now, Skype for Web is running on Microsoft Edge without any plugin installation
  • Oh, and they announced bots too
Skype on Edge sans plugins was to be expected

That last bit near the end? Of Skype not needing plugins when executed on Edge? That was rather expected.

Microsoft is hard at work on adding RTC to Edge – be it ORTC or WebRTC – or both.

The main UC and consumer messaging service of Microsoft are based on Skype, so it is only reasonable to assume that Skype would be utilizing Edge capabilities in this are AND that Edge would be accommodating for Skype’s needs.

This accommodation comes by way of the first video codec that Edge supports – H.264UC – Skype’s own proprietary video codec. Edge doesn’t interoperate with any other browser when it comes to video calling due to this decision. In a way, The Edge team sacrificed interoperability for Skype support.

Browser vendors tend to care for themselves first. And then for the rest of the industry:

Google Hangouts route to plugin-less world

Hangouts today is in the same predicament as Skype in a lot of ways.

  1. Its support for the browser of the mothership is native (Chrome-Hangouts; Microsoft-Skype)
  2. Both require plugins on browsers other than their own – and will stay that way for the forseable future
  3. Both are no consumer/enterprise services, trying to cater both
  4. Both aren’t as big or as active as their newer competitors (Facebook, WhatsApp and WeChat to be specific)

Where do they diverge?

No Plugin+SDK=Interesting

Skype has added the SDK bit before Hangouts.

Skype now offers its large user base and infrastructure to 3rd party developers to build their own services. The documentation is quite extensive (too much to go through to get things done if you ask me – especially compared to the WebRTC API platforms) and the intent is clear.

Skype doesn’t have a glorious record with developers. Maybe this time around it will be different.

And it added bots.

They did that ahead of the rumored bot support by Google.

Where’s Hangouts?

Meanwhile, Hangouts is just the same as it were two or three years ago.

The backend probably changed. It now sometimes do P2P calling. And it has a new UI. And the old one. And you can never know which one will pop up for you. Or where to write (or read) that text message.

Something needs to change and improve with Hangouts.

Skype seems to be moving forward at a nice pace. Cisco Spark has its own forward motion.

But Hangouts has stalled – especially considering we’re talking about Google – a company that can move at breakneck speeds when needed.

I wonder what’s ahead of us from both these services.

The post Skype will go the Hangouts Route with WebRTC (or vice versa?) appeared first on BlogGeek.me.

ClueCon Weekly – April 20, 2016 – Robin Raymond

FreeSWITCH - Fri, 04/22/2016 - 20:31


Since July, 2013, the W3C Object Real-Time Communications (ORTC) Community Group has been actively working on a next generation WebRTC API, called ORTC. Robin will discuss the latest updates of the ORTC API, the remaining challenge areas, and the implementation status of ORTC-lib. And he will show the detailed event capabilities for ORTC-lib.

Links:
http://ortc.org/
http://hookflash.com/

Sharpening the Edge – extended Q&A with Microsoft for RTC devs

webrtchacks - Thu, 04/21/2016 - 17:22

Two weeks ago Microsoft’s Bernard Aboba (and former webrtcHack’s interviewee) gave an update on Edge’s ORTC and WebRTC at the Microsoft Build conference. He covered some big topics including VP8 and WebRTC 1.0 support. You can see the update video here or read the follow-up post for details. Then last week Microsoft announced plug-in free Skype […]

The post Sharpening the Edge – extended Q&A with Microsoft for RTC devs appeared first on webrtcHacks.

BancSpace and WebRTC: An Interview With Lori Van Deloo

bloggeek - Thu, 04/21/2016 - 12:00
isVisible=false; function show_hide_searchbox(w){ if(isVisible){ document.getElementById('filterBoxSelection').style.display = 'none'; w.innerText='Filter ▼'; }else{ document.getElementById('filterBoxSelection').style.display = 'block'; w.innerText='Filter ▲'; } isVisible=!isVisible; } function checkIfSelected(chk){ if(chk.checked==1) chk.parentNode.className = "selected"; else chk.parentNode.className = "notselected"; getSelectedValues(); } function getSelectedValues(){ var a=document.getElementsByClassName('selected'); var vtVal=[] , ctVal=[] , ftVal=[]; var ct=0,vt=0,ft=0; for (x = 0; x < a.length; ++x) { try{ if(a[x].getElementsByTagName('input')[0].className=='companyType'){ ctVal[ct]= a[x].getElementsByTagName('input')[0].value; ct++; } if(a[x].getElementsByTagName('input')[0].className=='vendorType'){ vtVal[vt]= a[x].getElementsByTagName('input')[0].value; vt++; } if(a[x].getElementsByTagName('input')[0].className=='focusType'){ ftVal[ft]= a[x].getElementsByTagName('input')[0].value; ft++; } }catch(err){ } } search_VType(vtVal); search_CType(ctVal); search_FType(ftVal); } function search_VType(val){ var a=document.getElementsByClassName('interview-block'); for(x=0;x=0 && val[i]!=null){ a[x].style.display='block'; } } if(val.length==0){ a[x].style.display='block'; } } } function search_CType(val){ var a=document.getElementsByClassName('interview-block'); for(x=0;x=0 && val[i]!=null && a[x].style.display=='block'){ break; } if(i==val.length-1){ a[x].style.display='none'; } } } } function search_FType(val){ var a=document.getElementsByClassName('interview-block'); for(x=0;x=0 && val[i]!=null && a[x].style.display=='block'){ break; } if(i==val.length-1){ a[x].style.display='none'; } } } }Check out all webRTC interviews >>

BancSpace: Lori Van Deloo

April 2016

Banking

Banking and WebRTC done right.

[If you are new around here, then you should know I’ve been writing about WebRTC lately. You can skim through the WebRTC post series or just read what WebRTC is all about.]

I had my fair share of demos where a banking or a contact center application felt boring and Spartan. Too many times, the focus is on how to get video to show and when that happens – the developers are so happy they forget about the bigger picture – the service.

When I met Lori Van Deloo, Founder & CEO of BancSpace, I thought I was in for the same kind of an experience. But boy, was I wrong. She started off in the best way possible. She just explained that she worked for many years at VISA and then decided to found BancSpace. This is always a good sign – a founder who comes from the vertical he or she wants to serve instead of a VoIP engineer who decides to fix and disrupt industries.

The rest of the demo was an eye opener on how things could be done in a way that looks so simple but is devilishly complex. I of course wanted an interview, and Lori was kind enough to oblige.

 

What is BancSpace all about?

BancSpace is a WebRTC digital banking communications and collaboration platform that facilitates live access and engagement with qualified specialists, anytime, anywhere.

Prior to founding BancSpace, I spent a number of years working in software, including mobile and most recently, payments.  These and other technologies have become increasingly important in the delivery of financial services for both consumers and businesses.  However, when it comes to critical decisions or complex tasks, many prefer to consult with an expert to get financial advice or to get assistance such as when opening an account or applying for a loan.  The idea behind BancSpace is to allow Financial Services providers to deliver innovative customer experiences that combine both – the best of digital technology and live service expertise.

BancSpace provides a full suite of real-time capabilities to enable advisors/specialists to connect and collaborate with their customers just as if they were meeting face-to-face.  It’s basically video banking + deep, two-way collaboration.  Since the service is cloud-based, both advisors and customers can access the platform from any device (and thanks to WebRTC, no downloads or plugins on either side!)

Having spent more than a decade working closely with large Financial Institutions, we also knew that any service we developed must address industry needs for greater management and controls.  As such, multiple layers of authentication, security and permissions have been built into the BancSpace service platform.  These additional features help support compliance with industry standards to confirm a customer’s identity and help protect the access to and exchange of information during a BancSpace session.

  

Why WebRTC, and why in banking?

Unlike other communications technologies, WebRTC was purpose-built from inception to specifically address security considerations through the framework of the WebRTC technology architecture.  For example, encryption is a mandatory feature of all data and media streams sent over WebRTC.  Features like this are especially important when you are working in highly sensitive, highly regulated environments such as banking and other financial services.

We also chose WebRTC for its ability to deliver on the important benefits of quality and convenience.  The real-time nature results in a high quality voice-video-data exchange, and the convenience of no downloads / no plugins makes for a superior customer experience.

 

Backend. What technologies and architecture are you using there?

We have developed an intricate service platform that integrates a number of different technologies and a proprietary advisor-customer interaction model.  Our developers are strong advocates for node.js.  It is great for use with WebRTC, as well as more broadly to support our full suite of real-time collaboration capabilities.  The underlying service architecture also includes support for managing the controls and permissions that govern the access and use of the service.

 

In your service, you have an interesting co-browsing and collaboration mechanism. Can you elaborate a bit about it?

Yes.  Our two-way collaboration workspace is a core aspect of the BancSpace service.  The workspace allows advisors or specialists to engage and assist their customers to immediately complete important tasks or transactions, all in a secure 1:1 session.

A number of services provide one-way screen sharing tools or applications, but as we looked at the requirements for our customers’ use cases, we needed a solution that went well beyond that.  It called for something that enabled a more intimate, two-way interaction because our goal was to replicate the same high quality, engaging experience that typically has been associated with in-person or in-branch service and then extend it to every customer interaction, on any device.

We also needed something that was more secure in terms of managing session content.  The basic “open desktop” format offered by other services just doesn’t work for many Financial Services transactions.  Think about how many times someone running an online meeting inadvertently shared the wrong file?  Or had a personal email or IM pop up in the middle of a meeting?  BancSpace’s approach allows providers to completely prevent these issues and only allow approved content to be shared in a given session.

 

Where do you see WebRTC going in 2-5 years?

For WebRTC-based vertical applications it is still early days.  Especially for those in highly regulated industries, WebRTC needs to be viewed within the broader technology adoption landscape – many Financial Services providers are still getting comfortable with cloud and SaaS.  Focused pilots and test programs will be important for applications in Financial Services to ensure bank-grade quality before expanding to full, generally available (GA) services.  A real opportunity to accelerate efforts here is for leading Financial Services providers to partner with Fintech-focused start-ups developing WebRTC-based applications and establish a beachhead for the industry.

Getting to an agreed standard with ubiquitous access for all end-customers is also critically important for driving enterprise adoption.  Financial Institutions, and really any large enterprise, need to be able to provide solutions that serve their broader customer base (not just the majority), and do so in a way that maintains a consistent experience for customers across any channel.  It’s also more efficient from a back-office operational perspective.

 

If you had one piece of advice for those thinking of adopting WebRTC, what would it be?

If you are thinking about creating a mobile/web application or service that includes WebRTC, it’s important to understand the problems that your clients are trying to solve.  WebRTC is an enabling technology and we believe a foundational one, but consideration should be given for how to best incorporate it into the design of your service to ensure it delivers the desired functionality and provides a great experience.  Once this is determined, then there is much to be leveraged from the vast resources, libraries and community supporting WebRTC globally.

For BancSpace, we are 100% focused on the end customer experience (CX).  Any WebRTC functionality we include must address a specific need and support the scenarios for which our clients are looking to employ our service. We then spend time on the UX design so that using our service (and WebRTC) is an effortless experience for both advisors and customers.

 

Given the opportunity, what would you change in WebRTC?

Our experience with WebRTC has been very positive thus far, especially when you compare to the early days of video banking.  For years the industry has been experimenting with various instantiations of video banking applications.  WebRTC unlocks the potential to truly bring together technology + live expertise and provide a modern, cost-effective option for Financial Institutions to expand their footprint without the legacy CAPEX and OPEX of a fixed, physical branch network.

So what would I change?  Well, I guess continuing to drive toward a foundational set of standards so that WebRTC can become a ubiquitous enabling technology.

 

What’s next for BancSpace?

Driving the next wave of Digital Banking!  The ability to combine communications and collaboration technologies with live expertise is allowing us to re-imagine the delivery of Financial Services in ways that can have immediate impact on growth.

We are actively engaged with Financial Institutions and other Financial Services providers, and believe there is a real opportunity to reinvent the advisor-customer experience.  WebRTC is central to this proposition and we expect it will play an increasingly important role in the BancSpace technology strategy as we expand our use of it and create new capabilities to support a growing client base.

The interviews are intended to give different viewpoints than my own – you can read more WebRTC interviews.

The post BancSpace and WebRTC: An Interview With Lori Van Deloo appeared first on BlogGeek.me.

ClueCon Weekly – April 20, 2016 – Robin Raymond

FreeSWITCH - Wed, 04/20/2016 - 21:25


Since July, 2013, the W3C Object Real-Time Communications (ORTC) Community Group has been actively working on a next generation WebRTC API, called ORTC. Robin will discuss the latest updates of the ORTC API, the remaining challenge areas, and the implementation status of ORTC-lib. I will show the detailed event capabilities for ORTC-lib.Links:
http://ortc.org/
http://hookflash.com/

Kamailio World 2016: Four Weeks Before

miconda - Wed, 04/20/2016 - 13:08
Time is passing and Kamailio World Conference 2016 is approaching at fast pace – only four weeks left till the start of the event!The schedule is pretty much nailed down, with some adjustments still expected to happen. The event starts like the past edition with a half a day of technical workshops, followed by two full conference days.A larger group of speakers is participating to this edition. There was a big number of speaking proposals and we wanted to highlight more of the people that had a relevant contribution to the evolution of the project. To accommodate properly, two more discussion panels were added, keeping also the classic VUC panel.The topics cover many of the interesting aspects of real time communications, from security and scalability to WebRTC and VoLTE, touching Kamailio and other open source projects like Asterisk or FreeSwitch.More details can be found on the website of the event:Don’t forget that this year Kamailio celebrates 15 years of development, the party is at Kamailio World!We expect to fill the capacity of the conference room, if you haven’t registered yet and plan to attend, do it as soon as possible to secure your seat!Many thanks to our sponsors that made possible this event: FhG Fokus, Asipto, Sipwise, Matrix.org, Sipgate, Simwood, NG Voice, Digium, VoiceTel, Evariste Systems, Core Network Dynamics, Pascom, Didx.net.Thank you for flying Kamailio and looking forward to meeting many of you at Kamailio World 2016!

FreeSWITCH Week in Review (Master Branch) April 9th – April 16th

FreeSWITCH - Mon, 04/18/2016 - 20:45

This week mod_hiredis had some wonderful improvements and the addition of session logging added to it.

Join us Wednesdays at 12:00 CT for some more FreeSWITCH fun! And, head over to freeswitch.com to learn more about FreeSWITCH support.

New features that were added:

  • FS-9052 [mod_hiredis] Add connection pooling, improve dropped connection resiliency, and allow 0.10.0 of hiredis for CentOS 6
  • FS-9054 [mod_hiredis] Add ignore-connect-fail profile parameter so that calls do not get killed if limit fails due to lost connection
  • FS-9059 [mod_hiredis] Add session logging
  • FS-9050 [avmd] Fixed APP interface so avmd now exposes single avmd_start_function() for handling APP calls and splits the function into independent calls
  • FS-9039 [avmd] Use FS enumeration
  • FS-9072 [mod_syslog] Allow logging of messages containing tab character
  • FS-9077 [mod_verto] Adding verto_hangup_disposition variable to indicate who hangup

Improvements in build system, cross platform support, and packaging:

  • FS-9075 [Debian] Re-worked the freeswitch-all package

The following bugs were squashed:

  • FS-7317 [mod_event_socket] Fixed a hang caused by a series of blocks
  • FS-9049 [mod_sofia] Fixed a DTMF issue
  • FS-9058 [mod_hiredis] Allow auto decrement of non-interval limits on channel hangup and fixed rate counters so the keys expire after interval completes. Do not auto decrement rate counters. Do not log null responses.
  • FS-9056 [mod_av] Fixed an issue causing mobile H.264 video to be blank
  • FS-9074 [mod_skinny] Fixed incorrect location of free causing memory leak of xml when certain errors occur
  • FS-8949 [core] Fixed an issue with the send end packet for DTMF RTP event not being recognized

Pages

Subscribe to OpenTelecom.IT aggregator

Using the greatness of Parallax

Phosfluorescently utilize future-proof scenarios whereas timely leadership skills. Seamlessly administrate maintainable quality vectors whereas proactive mindshare.

Dramatically plagiarize visionary internal or "organic" sources via process-centric. Compellingly exploit worldwide communities for high standards in growth strategies.

Get free trial

Wow, this most certainly is a great a theme.

John Smith
Company name

Yet more available pages

Responsive grid

Donec sed odio dui. Nulla vitae elit libero, a pharetra augue. Nullam id dolor id nibh ultricies vehicula ut id elit. Integer posuere erat a ante venenatis dapibus posuere velit aliquet.

More »

Typography

Donec sed odio dui. Nulla vitae elit libero, a pharetra augue. Nullam id dolor id nibh ultricies vehicula ut id elit. Integer posuere erat a ante venenatis dapibus posuere velit aliquet.

More »

Startup Growth Lite is a free theme, contributed to the Drupal Community by More than Themes.