$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
OpenIL vol.1
Search
Take
February 21, 2014
Technology
0
3.7k
OpenIL vol.1
http://www.infiniteloop.co.jp/blog/2014/02/publicstudy01/
Take
February 21, 2014
Tweet
Share
More Decks by Take
See All by Take
トルテが実践したマッチしたユーザーを除く3つの方法/torte-es
ww24
1
13k
トルテリリースまでの Go Tips 16/torte-go-tips-16
ww24
1
11k
AMEBA OWND DE HTTP/2
ww24
0
510
Service Workers Push API Hands-on
ww24
1
180
Other Decks in Technology
See All in Technology
WordPress は終わったのか ~今のWordPress の制作手法ってなにがあんねん?~ / Is WordPress Over? How We Build with WordPress Today
tbshiki
1
360
Kubernetes Multi-tenancy: Principles and Practices for Large Scale Internal Platforms
hhiroshell
0
110
今年のデータ・ML系アップデートと気になるアプデのご紹介
nayuts
1
160
世界最速級 memcached 互換サーバー作った
yasukata
0
330
[CMU-DB-2025FALL] Apache Fluss - A Streaming Storage for Real-Time Lakehouse
jark
0
110
RAG/Agent開発のアップデートまとめ
taka0709
0
140
re:Invent 2025 ~何をする者であり、どこへいくのか~
tetutetu214
0
140
学習データって増やせばいいんですか?
ftakahashi
1
260
モダンデータスタック (MDS) の話とデータ分析が起こすビジネス変革
sutotakeshi
0
430
法人支出管理領域におけるソフトウェアアーキテクチャに基づいたテスト戦略の実践
ogugu9
1
210
「Managed Instances」と「durable functions」で広がるAWS Lambdaのユースケース
lamaglama39
0
280
SSO方式とJumpアカウント方式の比較と設計方針
yuobayashi
7
510
Featured
See All Featured
Speed Design
sergeychernyshev
33
1.4k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.5k
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.3k
Reflections from 52 weeks, 52 projects
jeffersonlam
355
21k
The Art of Programming - Codeland 2020
erikaheidi
56
14k
Unsuck your backbone
ammeep
671
58k
How to Think Like a Performance Engineer
csswizardry
28
2.4k
Faster Mobile Websites
deanohume
310
31k
Facilitating Awesome Meetings
lara
57
6.7k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.3k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Transcript
SMARTPHONE CONTROLLER OpenIL vol.1 த ݑ
ࣗݾհ • var age = 19 ࡀ (ੜ 2/24) •
ւಓۀେֶɹֶ෦ 2 ੜ • ΠϯϑΟχοτϧʔϓɹΞϧόΠτ • झຯཱྀߦɺࣸਅɺϓϩάϥϛϯά • Web Developer
͋ͱ 3 Ͱ age++ ͢ΔΠϕϯτ͕ɻ
p.tl/53x8 24 ࣌ؒडத
WORKS • IT ษڧձΧϨϯμʔ for Android & iOS • Image
Shortener - [img.ww24.jp] • Realtime Chat - [rtc.ww24.jp] • Connect Smartphone - [connect-sp.ww24.jp]
IT ษڧձΧϨϯμʔ εϚʔτϑΥϯΞϓϦ
IMAGE SHORTENER ॖ URL Λར༻ͨ͠ΦϯϥΠϯετϨʔδ
REALTIME CHAT Google Drive Realtime API Λར༻ͨ͠ Chat
CONNECT SMARTPHONE ύιίϯͱεϚϗͷϦΞϧλΠϜ࿈ܞ
CONNECT SMARTPHONE
CONNECT SMARTPHONE • Express.IO ΛͬͨɺεϚʔτϑΥϯͱύι ίϯͷϦΞϧλΠϜͳ࿈ܞΞϓϦέʔγϣϯ
AGENDA • ϦΞϧλΠϜͳ࿈ܞͱ • Express ͱ Socket.IO • Έ •
σϞ • αϯϓϧίʔυ • ɺ՝
CONNECT SMARTPHONE • ϦΞϧλΠϜͳ࿈ܞͷྫ • Chrome World Wide Maze •
https://chrome.com/maze/ • jsdo.it WebSocket Controller • http://jsdo.it/controller
CHROME WORLD WIDE MAZE Google ͷ໎࿏ήʔϜ
WEBSOCKET CONTROLLER jsdo.it
CONNECT SMARTPHONE εϚʔτϑΥϯΛύιίϯܨ͛ͯɺίϯτϩʔϥʹɻ
CONNECT SMARTPHONE • Έ • WebSocket Server (Socket.IO) • Web
Application Server (Express.js) • Socket.IO + Express.js = Express.IO
ۚͷ EXPRESS ޠௐͰղઆ
EXPRESS ͱ SOCKET.IO ͋ΔϓϩάϥϚ͕ίʔυΛॻ͍͍ͯͨͱ͜Ζɺ git commit ͢Δલʹख͕ͬͯΤσΟλ͝ͱ མͱͯ͠͠·͍·ͨ͠ɻ! ͢Δͱɺಥવঁਆ͕ݱΕʮ͋ͳ͕ͨམͱͨ͠ͷۚͷ express
Ͱ͔͢ʁͦΕͱۜͷ Socket.IO Ͱ͔͢ʁʯͱਘͶ͖ͯ·ͨ͠ɻ
EXPRESS ͱ SOCKET.IO ਖ਼ऀͷϓϩάϥϚɺʮࢲ͕མͱͨ͠ͷੜͷ WebSocket Ͱ௨৴͢ΔεύήοςΟίʔυ Ͱ͢ʯͱ͑·͢ɻ
EXPRESS ͱ SOCKET.IO ਖ਼ऀͷϓϩάϥϚʹײ৺ͨ͠ঁਆɺ! express ͱ Socket.IO Λֻ͚߹Θͤͨɺ express.io ΛϓϩάϥϚʹत͚ΔͷͰͨ͠ɻ
ຊͱແؔͰ͢ɻ
None
EXPRESS.IO express ͷΑ͏ͳײతͳϧʔςΟϯά express ͱڞ༗Ͱ͖Δηογϣϯ
CONNECT SMARTPHONE /connect/{connection_id}ɹʹϦμΠϨΫτ ɹଓɹॲɹཧ ΞϓϦέʔγϣϯɾήʔϜϖʔδʹϦμΠϨΫτ
CONNECT SMARTPHONE Connect Smartphone Smartphone (ࢠ) PC () Game Page
1 2 2 3 3 /connect/KCL98U
CONNECT SMARTPHONE Connect Smartphone Smartphone (ࢠ) PC () Game Page
Socket.IO
CONNECT SMARTPHONE • Connect Smartphone Ͱͷଓॲཧ • ཚ͔Β connection_id ੜ
• ͱࢠΛ connection_id Ͱর߹ • ʹଓ(ࢠ)ͷҰཡΛදࣔ
None
None
None
None
DEMO connect-sp.ww24.jp
αϯϓϧίʔυ
ଓ
ૹ৴ (ࢠ)
ड৴ ()
CONNECT SMARTPHONE • • ಉ͡ϒϥβͰ 2 ը໘։͘ͱɺશ͘ಉ͡ηογϣϯ ใΛ͍࣋ͬͯΔͷͰɺͲͪΒ͕͔ผͰ͖ͳ͍ !
! ઌʹଓ͖ͯͨ͠ํ͕Ͱྑ͍ΑͶʂ ͨ·ʹόάΔ
྆ํࢠͱఆ͞ΕΔ͜ͱ͕͋Δɻ
CONNECT SMARTPHONE • ͳͥͦ͏ͳΔ͔… • HTTP ϦΫΤετεςʔτϨεɻঢ়ଶΛ࣋ͨͳ ͍ɻঢ়ଶΛ࣋ͨͤΔͨΊʹηογϣϯΛ༻͍Δɻ • WebSocket
௨৴εςʔτϑϧɻίωΫγϣϯຖ ʹݸʑʹঢ়ଶΛอ࣋Ͱ͖Δɻϒϥβ͕ಉ͡Ͱ͋ͬ ͯɺ͔ࢠ͔ఆՄೳɻ
CONNECT SMARTPHONE • ϦμΠϨΫτͤ͞Δ࣮ʹͨ͠ཧ༝ • ελϯυΞϩϯͳ࣮Λࢦͨ͠ • αʔόͷ࣮ෆཁͰϦΞϧλΠϜ࿈ܞΛ࣮ݱ • URL
ϧʔςΟϯάࢠͷೝূͳͲɺ໘ ͳॲཧΛҰׅͯ͠ߦͬͨ
ࠓޙͷ՝ • ࣗಈతʹೝূ͍ͨ͠ • ύιίϯ㱻εϚϗʹݶΒͣɺ ήʔϜͰϓϨΠϠʔϚονϯάͰ͖ͦ͏
ϦΞϧλΠϜ௨৴ָ͍͠ʂ
express.io Ͱ շదͳϦΞϧλΠϜ௨৴ϥΠϑΛ