Upgrade to Pro — share decks privately, control downloads, hide ads and more …

iOSでWebRTCを使ってみた

2594ac7ce91fd7d9a3ce71ca7cc2d0c0?s=47 d_date
January 31, 2017

 iOSでWebRTCを使ってみた

2017/01/31(火) AKIBA.swift 第10回

2594ac7ce91fd7d9a3ce71ca7cc2d0c0?s=128

d_date

January 31, 2017
Tweet

Transcript

  1. iOSͰWebRTCΛ ࢖ͬͯΈͨ AKIBA.swift Daiki Matsudate(@d_date)

  2. ͍͖ͳΓDEMO

  3. վΊͯࣗݾ঺հ

  4. Daiki Matsudate (@d_date) • ໊લͷಡΈํ͸ઈࢍ໎૸த (ex. ·ͭͩͯ͞ Μɺͩͯ͞ΜɺDate͞Μ) • ࠷ۙϛυϧωʔϜʹಌΕΔʢઈࢍืूதʣ

  5. None
  6. ࠓ೔ͷ಺༰ • ͋ͷσϞ͸ҰମͳΜͩͬͨͷ͔

  7. ͋ͷσϞ͸Ұମ ͳΜͩͬͨΜͩΖ͏

  8. WebRTCͬͯ஌ͬͯ·͔͢ʁ

  9. WebRTCͬͯ஌ͬͯ·͔͢ʁ • όϦόϦ࢖͍ͬͯΔ • σϞ͸৮ͬͨ͜ͱ͕͋Δ • ໊લ͸ฉ͍ͨ͜ͱ͕͋Δ • ConnpassͰݟͨΑʂ •

    ࠓ೔ॳΊͯฉ͍ͨ ߴ ஌͍ͬͯΔ౓ ʹΘ͔
  10. ͜ΕͰ͋ͳͨ΋ʹΘ͔ଔۀʂ • όϦόϦ࢖͍ͬͯΔ • σϞ͸৮ͬͨ͜ͱ͕͋Δ • ໊લ͸ฉ͍ͨ͜ͱ͕͋Δ • ConnpassͰݟͨΑʂ •

    ࠓ೔ॳΊͯฉ͍ͨ
  11. ͍͍Ͷ͍ͩ͘͞

  12. WebRTC ϒϥ΢β΍ϞόΠϧΞϓϦ্ͰԻ੠௨࿩ɺϏσΦ ௨࿩ͳͲͷReal-Time Communication(RTC)Λ ࣮ݱ͢ΔͨΊͷٕज़ Google, Mozilla, Opera͕ڞಉ։ൃ

  13. ରԠϒϥ΢βͱϓϥοτϑΥʔϜ • Chrome • Firefox • Opera • Android •

    iOS
  14. ରԠϒϥ΢βͱϓϥοτϑΥʔϜ • Chrome • Firefox • Opera • Android •

    iOS → ༏ઌॱҐ௿Ίײ
  15. Official Sample https://github.com/webrtc/samples/

  16. Official Sample https://github.com/webrtc/samples/ શ෦ϒϥ΢β൛ʂʂ

  17. iOS࣮૷ͯ͘͠ΕͨGOD͕͍Δ

  18. None
  19. αʔόʔͲ͏͢Μͷʁʁ

  20. None
  21. ಀ͛Δ͸ஏ͕ͩ໾ʹཱͭ

  22. ͪΐͬͱ͚ͩαʔόʔͷ͓࿩

  23. http://io13webrtc.appspot.com/

  24. http://io13webrtc.appspot.com/

  25. STUN (Session Traversal of UDP through NATs) • NATӽ͑͢΂͖͔൑ఆ͢Δαʔόʔ

  26. http://io13webrtc.appspot.com/

  27. TURN (Traversal Using Relay around NAT) • NATΛӽ͑ͯɺσʔλϦϨʔ͢Δ

  28. http://io13webrtc.appspot.com/

  29. ৄ͘͠͸ͪ͜Β http://io13webrtc.appspot.com/

  30. ͭ·ΓɺSTUN/TURNΛ ߏங͢Ε͹Αͦ͞͏ʂ

  31. …୭͕΍Δͷʁ

  32. WebRTCΛ࣮ݱ͢ΔͨΊʹඞཁͳ΋ͷ • P2P௨৴͢Δϒϥ΢β/σόΠε • WebRTCͷ஌ࣝ • STUN/TURNͷ஌ࣝ • αʔόʔΛߏங͢Δਓ

  33. WebRTCΛ࣮ݱ͢ΔͨΊʹඞཁͳ΋ͷ • P2P௨৴͢Δϒϥ΢β/σόΠε • WebRTCͷ஌ࣝ • STUN/TURNͷ஌ࣝ • αʔόʔΛߏங͢Δਓ ←

    ୭ʁ
  34. https://nttcom.github.io/skyway/

  35. Skyway • WebRTCͷϓϥοτϑΥʔϜ • iOS/AndroidͷϑϨʔϜϫʔΫΛఏڙ • ೔ຊޠυΩϡϝϯτ • ແྉ(ਆ)

  36. • WebRTCͷϓϥοτϑΥʔϜ • iOS/AndroidͷϑϨʔϜϫʔΫΛఏڙ • ೔ຊޠυΩϡϝϯτ • ແྉ(ਆ) https://nttcom.github.io/skyway/

  37. υΩϡϝϯτ΋೔ຊޠʂ • WebRTCͷϓϥοτϑΥʔϜ • iOS/AndroidͷϑϨʔϜϫʔΫΛఏڙ • ೔ຊޠυΩϡϝϯτ • ແྉ(ਆ) https://nttcom.github.io/skyway/

  38. ·ͱΊ • ແྉ௨࿩ɺϏσΦ௨࿩Λ࣮ݱ͢ΔͳΒ WebRTC • ৄ͍͠Πϯϑϥ͓͡͞Μ͕͍ͳͯ͘΋ɺ SkyWay͕ॿ͚ͯ͘ΕΔ