WebRTCã¯æãç°¡åãªãã®ã§ã¯ãããŸããã APIããã¹ãŠã®äž»èŠãªãã©ãŠã¶ããµããŒãããããã«ãªã£ãã®ã¯ããæè¿ã§ããã泚æãšããã¥ã¢ã³ã¹ãããããŸãã ããã«å ããŠãSIPã®çªåºãã圢ã®VoIPãã¬ãã©ããŒã®æãéºç£ãoRTCã䜿çšããããªããºããšSIPã®éã®éäºã倱æããæã®çµã¿åããã§èœã¡ããã©ãŠã¶-ãããŠãããªãã¯å€æ¹ã«ã¯ã³ã¯ãŒãã³ã°ã§çããªããã®ãæã«å
¥ããŸãã Tsakhiã¯ãbloggeek.meã®åžžé£ã®èè
ã§ããããã€ãŠã®ãã¬ã³ã éçºè
ã§ããããŸããã倧äžå€«ã§ãã ãŸããVoximplantã§ã¯ããã©ãŠã¶ã䜿çšããé³å£°é話ãšãããªé話ã®é·å¹Žã®çµéšã«åºã¥ããŠãHabrã®ç¿»èš³ãé©å¿ãããŠããŸãã
WebRTCã§ã§ããªãã®ã¯ãªãã§ããïŒ
éçºè
ããã³ã³ã³ãµã«ã¿ã³ããšããŠãç§ã¯WebRTCã§æåããªãã£ãæèœããããã°ã©ããŒãããããèŠãŸããã 圌ãã¯æ°åè
ã«å
žåçãªééããç¯ããŸããããããã¯ç§ã®ã¢ããŒãã®æŽªæ°Žæã«ç§ãç¯ãããã¿ã€ãã®ãšã©ãŒã§ã¯ãããŸããã WebRTCã䜿çšããæèœã®ããéçºè
ã¯ãä»ã®ãã¯ãããžãŒã䜿çšãããããã¯ããã«é »ç¹ã«å€±æããŸãã ããŒã¯ã»ããŠã§ã€ã³ã®æåãªåŒçšïŒ
æ°ããã¢ã€ãã¢ã®ãããªãã®ã¯ãããŸããã ããã¯äžå¯èœã§ãã ããããã®å€ãã¢ã€ãã¢ãåãããããã粟ç¥çãªäžè¯é¡ã«å
¥ããŸãã ç§ãã¡ã¯ãããå転ãããã¢ã€ãã¢ãæ°ããé¢çœãçµã¿åãããçã¿åºããŸãã å転ãç¶ããæ°ããçµã¿åãããç¡éã«äœæããŸãã ãããããããã¯ãã¹ãŠç§ãã¡ãäœäžçŽã«ãããã£ãŠäœ¿çšããŠããè²ã¬ã©ã¹ãšåããã®ã§ãã
ãã®å£°æã¯ãWebRTCã§ã®å€ãã®åäŸæ代ã®ééãã®æ ¹æºã«é¢ãããã®ã§ãã ãã®ãã¯ãããžãŒã¯ãããŒã¯ã»ããŠã§ã€ã³ã®äžè¯é¡ã®ãã¿ãŒã³ãšåãããã«ãæ°ããããã®ã§ãã ããããã®å€ãã¢ã€ãã¢ãšæ°é®®ã§é¢çœãçµã¿åãããæ··ããåã£ãŠããŸãã ç§ãã¡ã¯ãããç¥ã£ãŠãããç§ãã¡ã¯ãã®ãããªãã®ãæ±ãããšãã§ãããšä¿¡ããŠããŸãã
ããžãã¹ãã³ïŒ Skypeã¯14æ³ã§ãã æè¿ã®Skypeã®ãããªãã®ãäœæããããšã¯ããã»ã©é£ãããªãã¯ãã§ãã
VoIPéçºè
ïŒ SIPãç¥ã£ãŠããŸãã WebRTCã¯ãã·ã°ããªã³ã°ã®ãªãSIPã«äŒŒãŠããŸãã ããã§ãSIPãããã«ãã蟌ãã ãã§å®äºã§ãã
Webéçºè
ã§ããïŒ WebRTCã¯HTML5ã®äžéšã§ãã JavaScriptã³ãŒãã®æ°è¡ã§ããªãªãŒã¹ã®æºåãã»ãŒæŽããŸããã
ãããªãµãŒãã¹ã®éçºè
ã§ããïŒ WebRTCãããªã¹ããªãŒã ãååŸããŠCDNã«é
眮ããããšã¯ã§ããŸããïŒ
çµæïŒ
- åªããéçºè
ã¯ãå©ããªãã§ãã¹ãŠãè¡ãã®ã«ååãªç¥èããããšä¿¡ããŠããŸãã ãã¹ãŠãéåžžã«èå³æ·±ããšã©ãŒã§çµãããŸãã
- ãããã®åéã®å°é家ãä¿¡ããŠããŸãã ãã¹ãŠå€±æã«çµãããŸãã
ç§ã¯æè¿ã2018幎ã«WebRTCã¢ããªã±ãŒã·ã§ã³ã«PeerJSã©ã€ãã©ãªã䜿çšããããšã決å®ããããŒã ã«å€¢äžã«ãªããŸããã PeerJSã¯ããã°ããã®éã2015幎ã«æåŸã«æŽæ°ããã402è¡ã®JavaScriptã³ãŒãã§ãïŒïŒïŒã ãã®ãããªå€ãã³ãŒãã¯ãåã«WebRTCãæäœããããã«äœ¿çšããããšã¯ã§ããŸããïŒ 1幎以äžåã®ã³ãŒãã¯ããã§ã«ç¡å¹ã«ãªã£ãŠãããããŸãã¯ã·ã¥ã¬ãŒãããŠããŸãã WebRTCã¯æªã ã«æ°ãããå€åãæ©ãããŸãã
ãšããã§ãç§ãã¡ã«ã¯ããŸãéžæè¢ããããŸããã Flashã¯æ»ã«ãããŠããŸããWebRTCã«ä»£ããæ·±å»ãªä»£æ¿æ段ã¯ãããŸããã ãããžã§ã¯ãã§WebRTCã䜿çšããå Žåãé¿ããã¹ã5ã€ã®ããããééãã以äžã«ç€ºããŸãã
ééããã®1ïŒèª€ã£ãŠãã¥ãŒãã³ã°ãããSTUN / TURN
éçºè
ãNATããã€ãã¹ããããã«ãµãŒããŒãæ§æã§ããªãé »åºŠã¯ä¿¡ããããŸããã æšæ¥ã誰ããç§ã®ãµã€ãã®ãã£ãããŠã£ãžã§ãããéããŠãSTUN / TURNãµãŒããŒã䜿çšããã«HostGatorã䜿çšããŠã¢ããªã±ãŒã·ã§ã³ãšã¢ã©ãŒã ãå±éããæ¹æ³ãå°ããŸããã
ç°¡åãªçãïŒæ¹æ³ã¯ãããŸããã ããã€ãã®é£è§£ãªå Žåãé€ããSTUNãµãŒããŒãå¿
èŠã«ãªããŸãã ãŸããã»ãã·ã§ã³ãçžäºã«æ¥ç¶ããå Žåãã»ãšãã©ã®å®çšçãªã¢ããªã±ãŒã·ã§ã³ã«ã¯TURNãµãŒããŒããããŸãã å
æã ãã次ã®NATãã©ããŒãµã«ã«ã€ããŠè©±ããŸããã
- STUNãµãŒããŒãšTURNãµãŒããŒã®äž¡æ¹ã䜿çšããå¿
èŠããããŸãã
- ç¡æã®STUNãµãŒããŒïŒããšãã°ãããç¥ãããŠãã "stun.l.google.com:19302"ïŒã"ç¡æ" TURNãµãŒããŒã«äŸåããããšã¯é¿ããŠãã ããã
- å¿
èŠãªçç±ãå®å
šã«ããããªãéããTURNãä»ããŠãã¹ãŠã®ã»ãã·ã§ã³ãéä¿¡ããªãã§ãã ããã
- TURNã䜿çšããŠããæ¥ç¶ã«å¯Ÿããè¿œå ã®ä¿è·ã¯æäŸãããŸããã
- WebRTCã«è€æ°ã®STUNãš3ã€ã®TURNãµãŒããŒïŒUDPãTCPãããã³TLSïŒãéä¿¡ããå¿
èŠã¯ãããŸããã
- TURNãæ§æããã«ã¯ãTURNèšå®ã§äžæãã¹ã¯ãŒããŸãã¯äžæãã¹ã¯ãŒãã䜿çšããŸãã
- STUNãµãŒããŒã¯ãé³å£°ãšãããªã®å質ã«ã¯åœ±é¿ããŸããã
- cotunãŸãã¯restundã¯ãSTUN / TURNãµãŒããŒã«é©ããŠããŸãã
ããã ãã§ã¯ãããŸããããæåããååã§ãã
ééããã®2ïŒã·ã°ããªã³ã°ã®ééã£ããã¬ãŒã ã¯ãŒã¯ãéžæãã
PeerJSïŒ å
žåçãªã芳å
客ã®trapãã®ããã«èŠããŸãã
ãã®ãããžã§ã¯ãã«ã¯1,693åã®æãš499åã®ãã©ãŒã¯ããããWebRTCã«é¢é£ããæã人æ°ã®ããgithubãªããžããªã®1ã€ã§ãã äœãããããã®ã§ããããïŒ
ããããããããžã§ã¯ãã¯ã€ã³ã¿ãŒããããããå°ãå€ããªã£ãŠããŸããïŒ
3幎以äžåã«æåŸã«ã³ããããããWebRTCã«é¢é£ãããããžã§ã¯ãã¯ã2018幎ã«ã¯äœ¿çšã§ããŸããã åãããšãMuaz Khanã®ã³ãŒãäŸã«ãåœãŠã¯ãŸããŸã-ããããåçšã¬ãã«ã§ãããå®å®ããŠããŠã¹ã±ãŒã©ãã«ã§ããããšãæåŸ
ãã¹ãã§ã¯ãããŸããã ãã 䟿å©ãªã³ãŒãäŸã
ä»ã®ãªãŒãã³ãœãŒã¹ãããžã§ã¯ãã䜿çšããäºå®ã§ããïŒ ä»¥äžã確èªããŠãã ããïŒ
- ãã®ãããžã§ã¯ãã¯ãããæ°ãæã§æŽæ°ãããŸããã
- 圌ã¯éåžžã«äººæ°ããããŸãã
- ãããžã§ã¯ãã³ãŒããç解ããå¿
èŠã«å¿ããŠãããžã§ã¯ãã³ãŒããå€æŽã§ããŸãã
- ïŒææïŒãã«ããå¿
èŠãªå Žåã¯ãé±å€«ã«é£çµ¡ã§ããŸãã
ã·ã°ããªã³ã°ãšããŒã¿è»¢éçšã®ãµãŒããŒã®éžæã«ã€ããŠçå£ã«èããŠãã ããã
ééã3ïŒå¿
èŠãªãšãã«ã¡ãã£ã¢ãµãŒããŒã䜿çšããªã
WebRTCã䜿çšããŠããéçºè
ãäœãèããŠãããç¥ã£ãŠããŸãã ãã®ãã¯ãããžãŒã¯ãã¢ããŒãã¢ã§ããããããµãŒããŒã¯å¿
èŠãããŸããã äžéšã®äººã¯ãã·ã°ããªã³ã°ãšWebãµãŒããŒããªããŠãã§ãããšä¿¡ããŠããŸãã åå è
ã®ãã©ãŠã¶ããã¢ããŒãã¢ã³ãŒã«ãè¡ãããã«ãäºããèŠã€ããæ¹æ³ã説æã§ããããšãé¡ã£ãŠããŸãã
å€ãã®å Žåããã¢ããŒãã¢ã®æŠå¿µã¯ãã¡ãã£ã¢ã転éããããã®ãµãŒããŒãªãã§ãå€æ°ã®åå è
ãšã®ã»ãã·ã§ã³ãäœæã§ããããšãæå³ããŸãã ãã®ãããªãã¢ãŒããã¯ãã£ãã®äŸã2ã€ãããŸãã
ç空äžã®çç¶ã¡ãã·ã¥ã ãã£ãããã ããããä»å¹ŽãŸãã¯æ¥å¹Žã«ããã®ãããªãã®ãæ©èœãããããšãå¯èœã«ãªããšã¯æããªãã§ãã ããã 次ã«é²ã¿ãŸãïŒ
転éã䜿çšãããªã¢ã«ã¿ã€ã ãããŒããã£ã¹ãã ãããè¡ãããšã¯ã§ããŸãããçµæã¯ãé
延ãªãã®æ°çŸäžäººã®åå è
ã®äºæ³ãããã¹ã±ãŒã©ããªãã£ããã¯ã»ã©é ãã§ãããã
å®éã«ã¯ãã¡ãã£ã¢ããŒã¿ïŒé³å£°ãšãããªïŒãéä¿¡ããã¡ãã£ã¢ãµãŒããŒãå¿
èŠã§ãã ãããããã£ãã®ã§ã
ãªãŒãã³ãœãŒã¹ãŸãã¯åçšãœãªã¥ãŒã·ã§ã³ãæ€çŽ¢ã§ããŸãã
ééã4ïŒæŠç¥ã®ãªãæŠè¡
åªããã¢ãŠããœãŒã·ã³ã°æ¥è
ãèŠã€ãã補åèŠä»¶ãæºãããæå¹ãªãœãªã¥ãŒã·ã§ã³ãæ¯æããŸããã èåŸã«åé¡ã¯ãããŸããïŒ
ãã
WebRTCãã¯ãããžãŒèªäœã¯ãŸã éåžžã«è¥ãã§ãã å
¬åŒã®ä»æ§ã¯å€æŽãããŠããŸãã ãã©ãŠã¶ã§ã®å®è£
ã¯å€åããŠããŸãã ããã¯ãã¹ãŠäžå®ã®åãã§ãã WebRTCã䜿çšããå Žåã¯ã次ã®2ã€ã®ãªãã·ã§ã³ã®ããããã§åæ¢ããããšããå§ãããŸãã
- æ¢è£œã®ãã©ãããã©ãŒã ïŒ ããã«ããã€ããããŸãã ãVoximplantããããŸãïŒã䜿çšããéçºã³ã¹ãã®äžéšãšæ¯æã®æ¯æãã®ãµããŒãã亀æããŸãã
- ç¬èªã®ãœãªã¥ãŒã·ã§ã³ãéçºããŸãïŒãŸãã¯éçºãå€éšå§èšããŸãïŒã ãã®å Žåã3幎以äžãããžã§ã¯ãã®ãµããŒãã«æè³ããå¿
èŠããããŸãã
WebRTCã³ãŒãã¯ãä»ã®ã©ã®HTML5ã³ãŒããããéãè
æããŸãã ãã€ãããã¯æ¢ãŸããŸãããæããã«ä»ã§ã¯ãããŸããã ãã®ãããæ°å¹Žåã«ååãšäžç·ã«
testRTCãäœæããŸãã
ãWebRTCã䜿çšããŠãç¹ã«ãã¹ããšç£èŠã®èŠ³ç¹ãããœãªã¥ãŒã·ã§ã³ã®éçºãæ¯æŽããããã§ãã
ééã5ïŒWebRTCã®ä»çµã¿ã®èª€è§£
圌ãã¯ä»®å®ããã¹ãŠã®ãšã©ãŒã®åå ã§ãããšèšããŸãã Googleã¯ããã«åæããŠããããã§ãã ã®ããã§ãã
WebRTCã¯ãVoIPãšWebã®äº€å·®ç¹ã®ã©ããã«ããæãäºçŽ°ãªæè¡ã§ã¯ãããŸããã ããã¯æ°ãããããã«é¢ããå€ãã®æ
å ±ããããŸããã ãããŠãååšãããã®ã¯éåžžã«é »ç¹ã«å€æŽãããŸãïŒçµè«ïŒãã®æ
å ±ã®ã»ãšãã©ã¯ãã§ã«å€ããªã£ãŠããŸãïŒã
WebRTCã䜿çšããå Žåã¯ããã¯ãããžãŒãšãã®ç¯å²ãå¿
ãç解ããŠãã ããã å±éãããµãŒããŒã WebRTCãã·ã°ããªã³ã°ãšå¯Ÿè©±ããæ¹æ³ïŒã·ã°ããªã³ã°ãšã¯ããããã¯ãŒã¯äžã«èª°ãããŠãã©ã®ã¡ãã£ã¢ããŒã¿ã転éãã¹ãããç解ããããã«ããã©ãŠã¶ãŸãã¯ä»ã®WebRTCããã€ã¹éã§ããŒã¿ã亀æããããšã§ãïŒã ãããã¯ãŒã¯ã¡ãã£ã¢ãä»ããããŒã¿ã®åŠçããã³éä¿¡æ¹æ³ïŒé³å£°ããããªãããã³ããŠãŒã¶ãŒãã WebRTCã䜿çšããããã®æ¢æã®ãœãªã¥ãŒã·ã§ã³ã¯äœã§ããã
åŠã¶ã¹ãå€ãã®ç°ãªããã®ã WebãVoIPããŸãã¯ãããªæè¡ã®ç¥èã«é Œããªãã§ãã ããã WebRTCã¯ããªããé©ãããã§ãããã