Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
オンライン英会話とSkyWay
Search
taminif
January 15, 2018
Programming
560
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
オンライン英会話とSkyWay
SkyWay UG Kansai #1
https://skyway.connpass.com/event/74875/
taminif
January 15, 2018
More Decks by taminif
See All by taminif
React Native New Architecture 移行実践報告
taminif
1
290
「とりあえずAI」が招く悲劇〜私がAIで生産性を下げるまでの話〜 / The tragedy caused by "AI for now" - The story of how I used AI to reduce my productivity
taminif
1
350
PuppeteerとPlaywrightの15日間の演劇 / relation of Puppeteer and Playwright
taminif
3
2.3k
Redashの開発はじめました / How to get started Redash development
taminif
0
820
私の生活を変えたHeadless Chrome / Headless Chrome who changed my life
taminif
3
560
WebSocketをiOSに持ち込んで辛い思いをした経験がありますか!? / have you painful experience in web socket?
taminif
3
6.3k
LINEで馬券を購入する / Purchase a betting ticket at LINE
taminif
1
1.7k
SkyWayで一年間運用してきたけどWebRTCってつらいんじゃないの
taminif
2
1k
オンライン英会話アプリとSkyWay
taminif
0
510
Other Decks in Programming
See All in Programming
iOS 27でニュースアプリはどう変わる!? 〜日経電子版の新機能対応と、開発事例から〜
lynnswap
7
13k
Kotlinの15年とServer-Side Kotlin
n_takehata
1
160
Herb in Rails 8.2: Your ERB views, now HTML-aware @ Rails World 2026, Austin, Texas
marcoroth
0
220
見えないものを探る要求要件定義に必要な基本的思考 / invisible-requirement-thinking
minodriven
15
8.6k
全ての永続トークンを、生まれる前に消し去りたい!
sylph01
2
1k
Optunaを作ったときにやりたかったこと、その後 (2026/10/16, Optuna Meetup #3)
iwiwi
2
950
残高管理から台帳サービスへの進化
artoy
1
210
npm との違いを手がかりにGo の依存管理を理解したい
optim
0
920
IBM Bob Dojo #1 仕様駆動開発入門
oniak3ibm
PRO
0
410
Railsのためのパスキー実践入門 〜マルチテナントSaaSでの意思決定〜
utakaha
3
790
[Rails World 2026] Durable orchestration on Rails: from continuation to workflow
palkan
1
800
Lambda durable functionsでHuman in the Loopを楽に…楽に……
har1101
0
140
Featured
See All Featured
Visualization
eitanlees
153
17k
First, design no harm
axbom
PRO
2
1.3k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.9k
How to train your dragon (web standard)
notwaldorf
96
6.9k
Darren the Foodie - Storyboard
khoart
PRO
4
4k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.4k
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
760
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
540
KATA
mclloyd
PRO
35
16k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
22k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
560
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
410
Transcript
ΦϯϥΠϯӳձͱ SkyWay SkyWay UG Kansai #1 2018/01/12 େౡ ޫو@sbntaminif
ࣗݾհ • ΣϒϦΦגࣜձࣾWEBΤϯδχΞ + ϓϩμΫτ Ϛωʔδϟʔ • খ͍͞Ͱ͕͢ຊεϙϯαʔ͍͍͓ͤͯͨͩͯ͞Γ ·͢ʂ •
ීஈژͰಇ͍͍ͯ·͢
http://ejje.weblio.jp/content/ios
ΦϯϥΠϯࣙॻΛఏڙ͢Δ WebαʔϏε
ࣙॻҎ֎ʹ ӳձαʔϏεΛ͍ͬͯ ·͢
None
Skypeӳձͱݴ͑ ฉ͍ͨ͜ͱ͋Δํ ଟ͍ͷͰͳ͍Ͱ͠ΐ͏͔
20173݄1ΑΓɺWebRTCΛ ༻ͨ͠Ϩοεϯʹ Ҡߦ͠·ͨ͠ɻ
WebRTCͱʢςϯϓϨʣ • W3C͕ఏএ͢ΔP2PϦΞϧλΠϜίϛϡχέʔ γϣϯΛ࣮ݱ͢Δٕज़ • ϓϥάΠϯͳ͠ͰϒϥβؒͷΓͱΓ͕Մೳ • ຊதͷਓ͕͍Βͬ͠ΌΔͷͰ આ໌͓ͤ͠Α͏ͱࢥ͍·͢ɻ
SkyWay: WebRTCΛ؆୯ʹ ࣮ݱ͢ΔαʔϏε https://webrtc.ecl.ntt.com
ͯ͞ɾɾɾ
ࠓԿͷΛ͢Δ͔
ԿͷΛ͠Α͏ • ٕज़ͷʁ • ฐࣾΤϯδχΞἧ͍ • ͭΒΈͷʁ • தͷਓͷલʹ ωΨςΟϒΩϟϯϖʔϯͰ͖·ͤΜʂʂ
ԿͷΛ͠Α͏ • ٕज़ͷʁ • ฐࣾΤϯδχΞἧ͍ • ͭΒΈͷʁ • தͷਓͷલʹ ωΨςΟϒΩϟϯϖʔϯͰ͖·ͤΜʂʂ
-> ܦҢͷͲ͏ͩΖ͏͔ʁ
SkyWayΛಋೖͨ͠ܦҢͷΛ ͢Εɺ࠙ձͰ͘͢͠ ͳΔͷͰͳ͍ͩΖ͏͔ʂ
Weblioӳձ ͍ͭɺͲ͜ͰɺͩΕ͕ɺ SkyWayΛɺͳͥಋೖͨ͠ͷ͔
Weblioӳձͷ 5W1H
ᶃWHEN ͍ͭ
ϦϦʔε20173݄Ͱ͕͢ ͜͜Ͱ͏গ͠ৄ͘͠
WHEN • 201612݄ʹWebRTCҠߦΛܾఆ • ։ൃظؒ4ϲ݄ • ։ൃϝϯόʔ5ਓ • ΞϓϦಉ࣌ฒߦ
ᶄWHERE Ͳ͜
͜ͷ෦
ॳ͜͜8FC35$Ͱ ࣮͢ΔͭΓͰ͕ͨ͠ ϩάΛͨ͢Ίஅ೦
ᶅWHO ͩΕ
্͕ಋೖΛܾఆ͠·ͨ͠ ແྉͩͬͨͷͰোน͕ ͔ͬͨͷྑ͔ͬͨ
ᶆWHAT ͳʹ
SkyWay https://webrtc.ecl.ntt.com
͔ͤͬ͘ͳͷͰ ଞͷαʔϏε બ͠ͳ͔͔ͬͨ
WHAT • 201612݄Ͱ֎෦αʔϏεΛ͏߹ͷબࢶೋͭ • SkyWay • ָఱʢαʔϏε໊Εͯ͠·͍·ͨ͠ɻɻʣ • ແྉͰ͑ΔͷSkyWayͷΈͩͬͨ •
ࣗࣾͰαʔόʔͨͯΔͷίετͷ໘Ͱͳͩͬͨ͠
ᶇWHY ͳͥ
ͦͦͳͥ WebRTCʹҠߦ͔ͨ͠
SkypeͰͬͯͨࠒ
WHY • SkypeͰຊʹϨοεϯ͍ͯ͠Δͷ͔ • τϥϒϧൃੜ࣌ʹԿ͕ى͖͍ͯΔͷ͔ • 1ਓ1ΞΧϯτ͔͠࡞Εͳ͔ͬͨ • ֶߍʹఏڙ͢Δ্ͰϚΠφε
ݶք͕དྷ͍ͯͨ
ࠓͰSkypeͷͱ͜Ζ͕΄ͱ ΜͲͰ͕͢ɺۀքશମͰҠߦ ͷಈ͖͕͋Γ·͢ʂ
ᶈHOW ͲͷΑ͏ʹ
ϏσΦνϟοτ෦ peer2 .on("open", (p2id) => { peer2id = p2id; //
ૹΓଆ peer1 = new Peer(config); peer1 .on("open", (p1id) => { makeNewCall(); }); }); ͜ͷ1FFS TLZXBZKTΛ JNQPSUͨ͠ͷ ࣍ϖʔδ
ϏσΦνϟοτ෦ function makeNewCall() { const constraints = getConstraints(); getUserMedia(constraints) .then((myStream)
=> { console.log("created"); // طଘΦϒδΣΫτΛഁغ if (call !== null) { call.close(); call = null; } if (streamUrl !== null) { URL.revokeObjectURL(streamUrl); streamUrl = null; } console.log("sending stream..."); call = peer1.call(peer2id, myStream, { audioBandwidth: AUDIO_BANDWIDTH, // max audio bandwidth (kbps) videoBandwidth: Number($("#videoBandwidth").val()), // max video bandwidth (kbps) }); }) .catch(errorHandler); } 4USFBNΛऔಘ͠ 1SPNJTFΛฦ͢ औಘͨ͠4USFBNΛDBMM͠ ૬खʹૹ৴
ιʔείʔυGithubΛࢀߟ ʹ͍ͯͩ͘͠͞ʂ https://github.com/weblio/webrtc-kun
͋ͱ࠙ձͰ ͳΜͰฉ͍͍ͯͩ͘͞ʂ
We are Hiring!
͋Γ͕ͱ͏͍͟͝·ͨ͠