Enhanced. Fixing. Solving. Enterprise grade. Improving. Completing.
I’ve been seeing this too much lately.
Companies decide to market their product as a way to “fix” WebRTC. The gall.
I understand where this comes from. Marketing is a lot about FUD. How to put fear in your potential customer until the only thing left for him to do is buy.
If you look closely, though, none of them really “fixes” WebRTC. The only thing they are doing is using WebRTC in a way that may fit you as a customer.
An example?
Companies who “fix” WebRTC by adding signalling to it. Or adding authorization. Or having it connect to PSTN.
This isn’t about “fixing”. This is about supporting a specific scenario or feature in a product – not even related to WebRTC itself.
Others “fix” WebRTC by having it work on IE (forcing a plugin on the user or using Flash). Again, less about WebRTC, and more about the use case.
And you know what? WebRTC doesn’t offer notifications either – I am sure you can go ahead and “fix” WebRTC by adding push notifications to your app on top of WebRTC!
WebRTC is a very powerful building block, but that’s about all it is – a building block. You’ll need to add additional building blocks to create a solution with it, so no – you aren’t fixing it – you are just implementing your use case with it.
Please.
Stop fixing WebRTC. It isn’t broken.
Just focus on solving a real world problem for a real customer and be done with it.
The post Everyone and His Dog is Fixing WebRTC appeared first on BlogGeek.me.
Earlier this month Fippo published a post analyzing Slack’s new WebRTC implementation. He did not have direct access or a team account to do a thorough deep dive – not to mention he is supposed to be taking some off this month. That left many with some open questions? Is there more to the TURN network? […]
The post Is Slack’s WebRTC Really Slacking? (Yoshimasa Iwase) appeared first on webrtcHacks.
You may have noticed our shiny new website, featuring our new 2600Hz brand.
This is the new generation of 2600Hz, and we are so excited to share it with you.
First, let’s talk about the new 2600Hz branding. This new modern symbol represents the transmission of signals and data. It symbolizes the connection from point A to point B, which is what we do every single day. Our goal has always been to provide an elegant and powerful format for communications services. 2600Hz strives to be a leader and innovator in the telecom industry, while connecting and empowering businesses through our software.
Now, let’s talk about the next phase of 2600Hz. The new branding represents the growth we have experienced together and is of our plans moving forward. In the beginning, we put the majority of our focus into distributed architecture. We spent years building up our software with heavy emphasis on back-end engineering. While we continue to do so, this next chapter is all about you – our clients – and your customers.
Throughout the next few months you will see a stronger focus on providing tools to help you be successful. These tools range from tight integrations with other services to better developer documentation, allowing people to easily build on the platform. Our goal is to equip you with an arsenal to win more deals quickly and expand your current accounts. We believe that the best way to do this it to foster innovation from not only 2600Hz but from the community as well.
We hope you are as excited as we are! Take a look at our new website and services. There are more exciting announcements coming soon, so stay tuned!
The biggest news this week is the edition of a Raspberry Pi installation script adding by Ken Rice. Grab yourself a Raspberry Pi and go try it out!
Join us Wednesdays at 12:00 CT for some more FreeSWITCH fun! This week we are talking about Raspberry Pi and the Internet of Things! And, head over to freeswitch.com to learn more about FreeSWITCH support.
New features that were added:
Improvements in build system, cross platform support, and packaging:
The following bugs were squashed:
They really truly are.
Whenever someone whines to me that WebRTC isn’t a standard yet so it isn’t ready it makes me laugh. Who the hell cares about such a thing anymore?
The standard is whoever’s got the clout and strength in the market. Ask any marketer – would they want to be able to interact with the carrier’s standardized, federated (and almost non-existent) RCS client to send a message – or would they rather be able to interact with WhatsApp users. The answer, for countries where WhatsApp is popular will be WhatsApp. Marketers don’t care about the standard. The users don’t care about the standard. And most developers don’t care either – as long as the interface is adequately documented.
Enter WebRTC.
No. The IETF hasn’t gone through the motions and finalized the spec yet.
Yes. It might change.
No. I couldn’t care less.
You see, there are already billions of users available to me via WebRTC. There’s source code I can take, compile and run anywhere I want. There’s a vibrant ecosystem of developers and vendors ready to assist. There’s a large and growing number of companies and use cases that make use of WebRTC.
Who am I to say that WebRTC doesn’t exist because someone didn’t put their “standard” stamp on it?
For the last 3 years I’ve been using WebRTC almost daily to communicate with others using various services. I didn’t think for once that this isn’t working because there’s no standard.
Whenever companies band together to create a standard, I begin to question their motive. These days, it usually comes from a point of weakness – a place where there is one (or more) vendors who are strong in a domain and the only way the smaller kids can have a go at it is by specifying a standard to rally all small players to fight the dominant force.
Whenever you see a standard being announced – ask who isn’t there – that’s the one with the power.
In the case of codecs, the MPEG-LA asserts its power and dominance over H.264 and H.265/HEVC for video codecs. Which is why the aomedia was created and announced – to find an alternative codec and win the market back.
The examples are countless.
In the domain of real time communications, everyone were using H.323 or SIP. Then Skype came out, ignoring standards altogether. The industry tried its best to explain that Skype isn’t federated. There’s no standard there. To no avail. So companies (the same ones) tried connecting to Skype, to offer that as part of their service.
The same is happening today with WhatsApp and other social networks. They are so big, that they are the standard.
WebRTC is making the same distinction. It is taking away the hegemony on VoIP from VoIP vendors and putting the weight of this industry on the browser vendors. And now, these vendors are complaining that WebRTC isn’t interoperable. Doesn’t fit their needs. They don’t understand that they are neither in control here nor influencers. They lost control over that part of technology.
This isn’t to say that WebRTC won’t stabilize or get standardized – it is just that it doesn’t matter when it comes to adoption.
Standards? They are for the losers to run after to make sure they get to play the game. The winners don’t really need them.
Planning on introducing WebRTC to your existing service? Schedule your free strategy session with me now.
The post Standards are for Losers appeared first on BlogGeek.me.
An install script for Raspbian and Debian 8 is now available.
This script makes it easy to deploy FreeSWITCH from source on your Raspberry Pi running Raspbian or on a standard machine running Debian Jessie.
Along with installing FreeSWITCH, Verto Communicator and LetsEncrypt are installed and configured. (Note: For LetsEncrypt to be configured you must have a valid public IP and hostname in DNS pointed at the machine.)
To use this script:
wget -O FreeSWITCH-debian-raspbian-installer.sh "https://freeswitch.org/stash/projects/FS/repos/freeswitch/browse/scripts/FreeSWITCH-debian-raspbian-installer.sh?raw"
chmod +x ./FreeSWITCH-debian-raspbian-installer.sh
./FreeSWITCH-debian-raspbian-installer.sh
Once the script completes, you will have FreeSWITCH installed to /usr/local/freeswitch, Verto Communicator in /var/www/html/vc, and if you set up the public IP and DNS name, LetsEncrypt SSL certificates installed.
This week the verto communicator link to previewing the camera and microphone in the settings, the ability to play background video while recording inbound video, and a re-design of the banner code in mod_conference.
Join us Wednesdays at 12:00 CT for some more FreeSWITCH fun! This week we have Doug Waller from Flowroute! And, head over to freeswitch.com to learn more about FreeSWITCH support.
New features that were added:
Improvements in build system, cross platform support, and packaging:
The following bugs were squashed:
Had to take this one out of my system.
Just in time for Enterprise Connect, Dave Michels decided to write a post to attract readers. The title? WebRTC is a distraction. It is hard to pin point what’s wrong with the arguments in this one, but most of them are just lacking in knowledge or understanding of this market and how it operates, which is sad – especially coming from Dave who I value very much.
The 4 main reasons why it is a distraction for Dave?
Let’s try to dismantle each of these so called arguments one by one. Shall we?
#1 – Limited SupportWebRTC today runs on Chrome and Firefox. Microsoft went for ORTC (=WebRTC) and is now “considering” WebRTC as well.
Apple isn’t there, but frankly – I almost never hear complains about Safari not having WebRTC. For some reason, Mac uses have been trained to use Chrome when needed. Furthermore, there’s work been done at Apple about WebRTC, if you care about rumors.
Add to that the fact that no other solution runs on a browser. No other. None. Zilch. They are all getting thrown out from browsers who are stopping support for plugins, Java and probably Flash in the future. And what else have this amount of support anyway?
Now, you can use WebRTC as a desktop app, using a plugin, through Java – or in whatever other manner people use their comms today – so that limited support is wider than any other alternative to date.
#Doesn’t work for you? Don’t use it. But don’t complain that others are using it and are happy about it.
#2 – Mobile is what really mattersTo whom?
And while at it, using WebRTC inside an app makes a lot of sense. You shouldn’t care about the technology – just your customers. If they want apps, give them apps. Wrap WebRTC and be done with it.
There’s no other serious media engine for mobile that can be considered – the price point for it will be too prohibitive as well as the investment made.
Mobile is what really matters, which is why Facebook Messenger uses WebRTC. In both mobile and desktop. And is probably larger in deployment, users, minutes, seconds and engagement than anything else the unified communications market has to show for its huge success in its 10+ years of existence.
You know what? I am tired of waiting for unified communications to happen. It is time we take matters into our own hands (with WebRTC) instead of waiting for these large stale companies to move at a reasonable pace and come up with a workable solution.
#3 – Why bother?Dave says Google no longer cares or invests in WebRTC. I’d say this can’t be further away from the truth.
Google are heavily invested in WebRTC today, based on the number of new features and changes they bring with every new version of Chrome (which happens every 6-8 weeks as opposed to 12-18 months of the slow vendors Dave asks us to put our trust in).
The pace of change for WebRTC is staggering. Nothing comes close to it.
In the span of a year, we’ve seen the echo canceler getting replaced in WebRTC, VP9 introduced, H.264 is underway, ORTC related APIs getting added and that’s just what I can remember off the top of my head (and really took place in the last couple of months only).
Will Google continue at these breakneck speed? Who knows? For now, I’ll take what I am given – especially for free.
#4 – WebRTC is dangerousNot sure where to start here.
With Unified Communications and its current cadre of vendors, the issues raised by Dave (things you don’t understand and control coupled with hard to patch and upgrade) are a lot more dangerous.
Do you know when your PBX was upgraded last for that critical security issue it had? Do you even know if it was upgraded at all? What about the router you have at home? This FUD about security in WebRTC wreaks of misundersanding of the technology.
We are living in a world where we move everything to the cloud and our mobile devices. In such a world, security needs to be taken seriously. Not by introducing stupid proprietary solutions that are hard to manage or maintain, but rather by introducing cloud based solutions that can upgrade and update automatically. Ones where security is taken into account from the ground up and not as a bolt on feature to show the buyer.
WebRTC has all that and more, so if you think WebRTC is dangerous – sure it is. To anyone who is trying to compete against the companies using it. In the long run, resistance is futile.
The truth of itGoogle doesn’t care about the unified communication market when it comes to WebRTC.
They just couldn’t care less if this does headaches to Cisco or Polycom or anyone else in this market. The way vendors are bitching about WebRTC shows how they view VoIP and UC as their own, as if they are entitled to what goes on there and as if someone needs to think about their business models and legacy deployments so they don’t get hurt.
Get over it.
WebRTC is a huge distraction to those who aren’t built to embrace it. They are going to fade away. Just a matter of time. And Dave – you won’t need to wait much longer for it to happen.
[show promotion title=”strategy-session”]
The post WebRTC is a Distraction appeared first on BlogGeek.me.
Original post can be found here: http://www.algissalys.com/how-to/freeswitch-1-7-raspberry-pi-2-voip-sip-server
Installing, Compiling and running FreeSWITCH on the Pi 2The long and awaited for… FreeSWITCH 1.7 running on a Raspberry Pi 2 guide.
We’ll be using the latest (at the time of this writing) Raspbian image 2015-11-21-raspbian-jessie.img on a Raspberry Pi 2. Thanks to the awesome FreeSWITCH team at https://freeswitch.org/ especially Brian West, Ken Rice, and William King for all of their efforts with the FreeSWITCH project and helping me to get this working.
Raspbian running on your Pi
You’ll first need to have the Raspbian image running on your Raspberry Pi.
In order to compile FreeSWITCH and it’s modules, you need to install some dependencies.
Update your Pi packages
sudo apt-get update && sudo apt-get upgradeThe following packages were installed and I was able to successfully compile FreeSWITCH with the default modules in the modules.conf file, that were selected when I cloned the git master branch. My default modules.conf of enabled modules is located at the bottom of this page for reference. Note, If you enable/uncomment other modules in the modules.conf that gets created after running ./bootstrap.sh -j command below, you may require some additional dependencies.
sudo apt-get install autoconf automake devscripts gawk libjpeg-dev libncurses5-dev libtool-bin python-dev libtiff5-dev \These packages are required, but were already installed on my Raspbian (here for reference)
sudo apt-get install g++ git-core make pkg-configThese packages are required, but Installed by other packages. (here for reference)
sudo apt-get install libjpeg62-turbo-dev libtoolClone git FreeSWITCH Repo
You can clone to any directory, but we’ll use the directory /usr/local/src and need to make it r/w to our user ($USER is a system variable, which will = the current user, pi in our case)
sudo chown $USER /usr/local/srcchange to that directory
cd /usr/local/srcClone the git repo (master branch)
git clone https://freeswitch.org/stash/scm/fs/freeswitch.gitCompile FreeSWITCH on the Raspberry Pi 2
Goto the FreeSWITCH source directory
cd /usr/local/src/freeswitch/Confirm master branch
git checkout masterReturned: Already on ‘master’ Your branch is up-to-date with ‘origin/master’.
Build config files
./bootstrap.sh -jNow we’re at the point where you can enable/disable custom modules to compile along with the FreeSWITCH framework. In this build, I left all the modules in modules.conf default (My enabled modules in modules.conf file is located below for reference). You can always compile additional modules at a later point when they are needed. I recommend leaving the modules.conf file alone if this is your first time compiling, you can read more about it below in the section Enabling additional Modules in modules.conf
Run configure
./configure -CMake (use jobs flag -j set to 3) in attempt to speed things up (this took ~30 minutes)
make -j3Success!
Install FreeSWITCH
sudo make installThe FreeSWITCH binary is now located in the /usr/local/freeswitch/bin directory.
Compile sounds for FreeSWITCH
make cd-sounds-install cd-moh-install -j3Goto FreeSWITCH bin directory
cd /usr/local/freeswitch/binStart FreeSWITCH
*It is advisable to skip this step if you are configuring FreeSWITCH to start up automatically at boot, as it creates files that are needed during run-time and it will fail when you use the init script/systemd to run it automatically.
./freeswitchcheck to see if it is running (just to make sure it compiled ok to this point)
ps aux | grep "freeswitch" Auto Run FreeSWITCH at bootWe’ll add FreeSWITCH as a user, change a few permission, copy the startup script and test the auto start of Freeswitch.
Create FreeSWITCH user, add password and set permissions
cd /usr/local/ sudo adduser --quiet --gecos "FreeSWITCH Voice Platform" --ingroup daemon freeswitch sudo chmod -R ug=rwx,o= /usr/local/freeswitch/ sudo chmod -R u=rwx,g=rx /usr/local/freeswitch/bin/* sudo chown -R freeswitch:daemon /usr/local/freeswitch
Create link from source build to expected locations
sudo ln -s /usr/local/freeswitch/bin/freeswitch /usr/bin/freeswitch sudo ln -s /usr/local/freeswitch/bin/fs_cli /usr/bin/fs_cli sudo mkdir /etc/freeswitch sudo ln -s /usr/local/freeswitch/conf/freeswitch.xml /etc/freeswitch/freeswitch.xml sudo chmod ug=rwx,o= /etc/freeswitch sudo chown freeswitch:daemon /etc/freeswitch sudo mkdir /var/lib/freeswitch sudo chmod -R ug=rwx,o= /var/lib/freeswitch sudo chown freeswitch:daemon /var/lib/freeswitch sudo cp /usr/local/src/freeswitch/debian/freeswitch-sysvinit.freeswitch.default /etc/default/freeswitch sudo chmod ug=rw,o= /etc/default/freeswitch sudo chown freeswitch:daemon /etc/default/freeswitchCreate working log directory
sudo mkdir /var/log/freeswitch sudo chmod -R ug=rwx,o= /var/log/freeswitch sudo chown freeswitch:daemon /var/log/freeswitchCopy the start-up script to /etc/init.d/ directory and change permissions
sudo cp /usr/local/src/freeswitch/debian/freeswitch-sysvinit.freeswitch.init /etc/init.d/freeswitch sudo chmod u=rwx,g=rx,o= /etc/init.d/freeswitch sudo chown freeswitch:daemon /etc/init.d/freeswitch sudo update-rc.d freeswitch defaultsFreeSWITCH will now auto start when the Raspberry Pi boots up
Reboot to confirm everything is working
sudo rebootCheck the status of FreeSWITCH
sudo /etc/init.d/freeswitch statusManually start FreeSWITCH (for reference)
sudo /etc/init.d/freeswitch startYou may also want to confirm FreeSWITCH is listening on port 5060 (for troubleshooting)
netstat -lnRegister to Extension 1000
FreeSWITCH has a few default extensions. As a simple test to see if FreeSWITCH is working, we’ll register a sip client to extension 1000, with the default password is 1234.
Change to user FreeSWITCH for editing of files or logging into fs_cli, since we have changed permissions of the directories in the above steps.
su freeswitchLog into FreeSWITCH command line to assist in troubleshooting (type /exit to exit the FreeSWITCH command line)
fs_cliUsing your favorite SIP client on the same network as the FreeSWITCH server, register with extension 1000
While you are logged into the fs_cli, turn on sip trace debug
Then from your SIP client, attempt to register, viewing the SIP trace can greatly assist in troubleshooting.
Once you are registered, try to call some test extensions
9198 was called from a sip client
References:
Raspberry Pi Model:
Raspberry Pi 2 Model B
Raspberry Pi Image:
2015-11-21-raspbian-jessie.img
cat /etc/*-release:
Raspbian GNU/Linux 8 (jessie)
Kernel (uname -ro):
4.1.19-v7+ GNU/Linux
FreeSWITCH Version:
FreeSWITCH Version 1.7.0+git~20160308T015910Z~b7227465b6~32bit (git b722746 2016-03-08 01:59:10Z 32bit)
Clean Git Folder (bring back to last commit state, deletes all untracked files, directories)
git clean -d -x -fGet commit hash (only here for reference, on the specific commit that I used for compiling)
git log -1 --format="%H"Returned: b7227465b6943588bf7d1a1e61e0fcc829d6f43e
https://freeswitch.org/confluence/display/FREESWITCH/Debian+7
Who do you go to with your WebRTC needs?
That moment you realized you selected the wrong vendorThere are now over 20 vendors out there offering WebRTC APIs in the cloud.
20.
How the hell do you decide which one to pick for your service?
This question was rather “simple” to answer, but it is getting harder.
Two months ago, Facebook decided to shutdown Parse. This is something that should not be taken lightly.
In 2013, Facebook acquired Parse. Parse was a MBaaS(mobile backend as a service platform). If you want to build a mobile app, you’ll be needing some backend in high probability – a place to store account information, maybe sync data between users, etc. MBaaS does exactly that, and in this domain, Parse was one of the bigger platforms. They had around 60,000 applications on their platform at the time of acquisition – not something to take lightly.
Facebook didn’t acquire Parse for its great technology but rather for its developer ecosystem – for its popularity. In the two years since, Facebook invested more in the platform – just so it can close it.
In the context of communication API platforms with WebRTC capabilities, what we’ve seen so far are two kinds of acquisitions:
Will Cisco decide in a year or two to shutter down Tropo if it doesn’t bring the traction it wants or if it serves its purpose of getting enterprises to adopt Cisco Spark?
Would Telefonica stop investing in TokBox? Highly unlikely after 3 years, but who knows? I wouldn’t have bet on Facebook shedding Parse.
The thing about Parse is that Facebook didn’t even spun it off again – or sold it. It just closed the service. More akin to how Snapchat treated its own acquisition of AddLive.
Kin Lane explains nicely the false expectations people had from Facebook and Parse:
There is no basis for believing a platform or API will ALWAYS be there, no matter what you are promised. Companies go out of business, get acquired, and in this fast paced tech climate, companies are always looking to deliver the latest product, and features. Everything in the space points to disruption, change, and evolution, where the hell did we get the idea these services shouldn’t go away?
What can we deduce?–
As I start working on another update for my Choosing a WebRTC API Platform report, I will take the time to research the reasons for vendors selecting the less popular API platforms – what makes them take that plunge. If you are such a vendor – contact me.
Until this new update gets released (April-May timeframe), there’s a $700 USD discount on the report (which includes a 1-year update period).
The post Developer Ecosystem Acquisitions Makes Build vs Buy Decisions Harder appeared first on BlogGeek.me.
This week we had some fun new updates to mod_avmd and began the process of moving libvpx into tree. This is a big change and should be carefully noted. There were too many issues associated with maintaining and updating it so the developers decided to instead link to a static version in tree.
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:
The following bugs were squashed:
Blake Priddy joins the ClueCon Weekly team to talk experiences deploying FreeSWITCH in rural public schools and some of the technical and political challenges he faced.
The scripts for integrating FreeSWITCH with Sevana AQuA software are now available at github: https://github.com/voxserv/fsqa
More details on what they are doing are available in this older post: https://txlab.wordpress.com/2015/06/02/quality-assurance-for-voip-calls-2/
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.
Wow, this most certainly is a great a theme.
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.
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.