14
WebRTC 기술 API 활용 SK Telecom 최진호

Tdevelopers forum web_rtc 기술 및 api 활용

Embed Size (px)

Citation preview

Page 1: Tdevelopers forum web_rtc 기술 및 api 활용

WebRTC 기술 및 API 활용

SK Telecom 최진호

Page 2: Tdevelopers forum web_rtc 기술 및 api 활용

1

Page 3: Tdevelopers forum web_rtc 기술 및 api 활용

2

WebRTC와 킬러서비스

Viblast

Page 4: Tdevelopers forum web_rtc 기술 및 api 활용

WebRTC 개발의 기본

TURN

STUN

Media

Signaling

HTTPS

Javascript App

Browser 1

Media

Streams

PeerConnec

tion

Javascript App

Browser 2

Media

Streams

PeerConnec

tion

navigator.getUserMedia()

video.src = localStream

RTCPeerConnection() for local,remote

addStream

create offer, answer

set Description for local and remote

onIceCandidate —> addIceCandidate

SIP, XMPP, WebSocket, DataChannel 등의 시그널링

Page 5: Tdevelopers forum web_rtc 기술 및 api 활용

WebRTC 서비스의 기본 flow SVC A App Browser B App Browser

로그인 로그인

방관리 방관리

Call B Media

PC

SDP offer

Alarm Media

PC

SDP Answer

Check Check

Media Media DTLS/ SCTP, SRTP

Realtime network transport

시그널링

Page 6: Tdevelopers forum web_rtc 기술 및 api 활용

Communication Logic

Presentation Logic

WebRTC 서비스의 일반 아키텍처

Client logic for Web or Native

API / Interface

Voice Video Network

Service Logic

Signaling (SIP, WS…)

STUN

TURN

MCU

API 인증

채널 lifecycle 관리 품질관리

모니터링

연계 과금 및 고객 관리

Business Logic

Page 7: Tdevelopers forum web_rtc 기술 및 api 활용

그러나! • 브라우저 지원 제약 - IE, Safari, Android Default Browser

… • Codec, 품질, Multiparty 연결 처리, 익숙치않은 개발 방식

과 개념…

제대로된 서비스를 만드려면 여전히 어려움

그러나?

Page 8: Tdevelopers forum web_rtc 기술 및 api 활용

PlayRTC !

Page 9: Tdevelopers forum web_rtc 기술 및 api 활용

• 클라이언트 라이브러리: 쉽고 빠른 개발 가능

• 시그널서버(WebSocket, SIP*)

• STUN, TURN 서버

• IMS 연계 지원(Web to Call 가능)

• Codec: VP8,OPUS, H.264*

• Browser: Chrome, Firefox, Internet Explorer(2014년 12월)

• Mobile OS: Android, iOS(2014년 11월초)

• 모니터링 및 분석 기능

• 풍부한 개발자 지원 가이드

PlayRTC의 주요 특징

Page 10: Tdevelopers forum web_rtc 기술 및 api 활용

PlayRTC.SDK

PlayRTC.ChannelServer

Presentation Logic

PlayRTC 아키텍처

Client logic for Web or Native

API / Interface

Voice Video Network

Service Logic

Signaling (SIP, WS…)

STUN

TURN

MCU

API 인증

채널 lifecycle 관리 품질관리

모니터링

연계 과금 및 고객 관리

Business Logic

PlayRTC.Broker

Page 11: Tdevelopers forum web_rtc 기술 및 api 활용

Svc

Server Browser/Android/i

OS

PlayRTC의 주요 개발 모델

Client Only

화면 로직, 간단한 통신로직 PlayRTC

Common

Broker

PlayRTC 채널서버 Browser/Android/i

OS

화면 로직, 간단한 통신로직

PlayRTC

Broker

PlayRTC 채널서버

Client and Service Logic

BaaS

Android/iOS

화면 로직, 간단한 통신로직 PlayRTC

채널서버

Client and BaaS

Svc

Server Browser/Android/i

OS

화면 로직, 간단한 통신로직 PlayRTC

채널서버

Client and Full Service Logic

Page 12: Tdevelopers forum web_rtc 기술 및 api 활용

<script src="http://www.playrtc.com/sdk/js/PlayRTC.js"></script> <form id="connectForm"> <input type="text" id="방번호" value=""> <input type="submit" name="submit" value="방 입장"> </form> <video id="localVideo"></video> <video id="remoteVideo"></video> <script type="text/javascript"> conn = new PlayRTC({ localVideoTarget: "localVideo", remoteVideoTarget: "remoteVideo"}); document.getElementById("connectForm").onsubmit = function(e){ conn.call(방번호); return false; }; </script>

PlayRTC.SDK ( javascript only model)

Page 13: Tdevelopers forum web_rtc 기술 및 api 활용

PlayRTC Roadmap

2014년 10월 20일 PlayRTC.com 오픈

2014년 10월 말 PlayRTC.broker 기능 오픈

2014년 11월 초 PlayRTC.android 오픈

2014년 11월 중 PlayRTC.iOS 오픈

facebook.com/playrtc twitter.com/playrtc

Page 14: Tdevelopers forum web_rtc 기술 및 api 활용

13

감사합니다.