In and out of WEBRTC - All in one blog
WEBRTC
WebRTC
is a great technology, but it may not fit everywhere and you should
understand what you are doing if you decided to use it. WebRTC is very
appealing as a vehicle to extend the reach of IMS services. WebRTC is
available in five popular browsers in production state:
- Google Chrome;
- Opera;
- Mozilla Firefox;
- Chrome Android;
- Firefox Android.
WORKING WITH WEBRTC :-
1. GetuserMedia API
It access the camera and microphone of devices
--------------------------------------------
2. Peer connection API
It exchanges various protocols for transmitting data/video from one peer to another peer
--------------------------------------------
3 .Data channel Api
It is used for real time chat and screen sharing
--------------------------------------------
Simple things work, however, for example, when
we have a deal with changing of the session state using SDP (analogue of
re-INVITE in SIP) or with other non-trivial actions, some surprises
appear which upset a lot. Although, it does not stop WebRTC from
acquiring newer and newer minds, and leading the vector of development
of VoIP and interactive services in the web. It is not surprising due to
the following reasons:
- WebRTC is not backed by industry giants;
- WebRTC has positively successful and elaborated architecture, free of errors and lacks, figured out in browsers’ plugins which existed before it.
- We would like to focus particularly on the technology content of WebRTC.
- It has SRTP, DTLS, ICE, STUN, AEC, AGC, Adaptive Jitter Buffer, Opus and VP8
- It seems like a softphone is built into a browser.
Positively, the set used in WebRTC technologies is more similar to VoIP SDK.
SRTP
and DTLS ensure security of traffic between WebRTC peers. ICE and STUN
help to pass through a NAT, sharing connection candidates from both
participants in the form of simple pairs host:port. AEC, AGC, and Jitter
Buffer work to make audio and video more high quality – without lags
and delays. Codecs Opus and VP8 are well suitable for global Internet
where a bandwidth for an end-user might easily fall to very low values
against promises of Internet providers regarding channels in 100
Megabits per second.
Something
that overshadows the picture is the absence of WebRTC support in other
browsers such as IE, Safari, etc. Other missing details include
incompatibility with traditional VoIP equipment. For example, for
vendors of SIP/VoIP products, of which there are many, it would be
beneficial to support standard SIP/RTP protocols and codecs for
compatibility with millions of devices.
Here
we need to mention that WebRTC was initially designed as a peer-to-peer
between browsers and aimed to secure SRTP traffic. Most likely, for this
reason VoIP vendors, which exchanges standard RTP streams will have to
built in a WebRTC compatible carrier and codecs into it’s own software
or hardware.
Although,
here it is not so bad. There are gateways to ensure such type of
compatibility. For example WebRTC SIP Gateway Flashphoner Web Call
Server 3 is one which can establish a connection between WebRTC client
and a standard SIP/RTP device – either softswitch or GSM gateway working
over a SIP protocol. Therefore, the issue is quite solvable by the
introduction of an intermediary software gateway.
Pros of WebRTC:
1. Fully functioning VoIP in browser.
2.
Secure and logical architecture: WebRTC comprises better architecture
as compared to the Flash plugin in terms of logic. Furthermore, it
provides better security and stability to browsers against outside
attacks. The Secure RTP protocol (SRTP) encrypts and authenticates both
the voice as well as video.
3.
Platform and device independence: Users can communicate with each other
on a WebRTC enabled browser, without being dependent on any operating
system or computing device. This has been made possible by implementing
standard IETF protocols, and W3C APIs. Developers can write specific
HTML5 code to run WebRTC on multiple computing devices.
4.
Adaptive to media types: Irrespective of the network conditions, the
WebRTC APIs are well equipped to negotiate numerous media types for
format and size. This ultimately leads to effective bandwidth usage and
hence, high quality voice & video communication.
Cons of WebRTC:
1.Not enough supported browsers;
2.
Absence of RFC. The specifications are available in the form of drafts
and are currently changing, although we need to recognize that in
comparison with the same drafts and its implementation 1 year ago, now
it is working more or less stable;
3. Absence of compatibility with traditional VoIP (by design).
4.If
we remember that the other browser technologies described here Java and
Flash are just plugins (though they are pre-installed in most popular
browsers), then we can conclude that WebRTC is the only pure-browser
technology which does not have analogues here.
5. The only missing detail is SIP support.
Useful links for Webrtc development and understanding on :-
1. http://www.html5rocks.com/en/tutorials/webrtc/basics/
2. https://webrtc.org/
3. https://developer.mozilla.org/en-US/docs/Web/API/WebRTC_API
4. https://bitbucket.org/webrtc/codelab
5. https://tokbox.com/about-webrtc
6. https://bloggeek.me/ -The best blogger series so far known for webrtc
7. https://webrtc.github.io/samples/
Slides of webrtc:-
1. http://www.html5rocks.com/en/tutorials/webrtc/basics/
2. https://webrtc.org/
3. https://developer.mozilla.org/en-US/docs/Web/API/WebRTC_API
4. https://bitbucket.org/webrtc/codelab
5. https://tokbox.com/about-webrtc
6. https://bloggeek.me/ -The best blogger series so far known for webrtc
7. https://webrtc.github.io/samples/
Comments
Post a Comment