Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Pusherアプリの作り方

5,872 views

Published on

札幌Ruby会議03
http://regional.rubykaigi.org/sapporo03

Published in: Technology

Pusherアプリの作り方

  1. 1. Let’s develop real-time Web application using Pusher!
  2. 2. JUN OHWADA
  3. 3. JUN OHWADA
  4. 4. Let’s develop real-time Web application using Pusher!
  5. 5. D emonstration
  6. 6. Dynamic Web Polling Comet WebSocket
  7. 7. Dynamic Web Polling Comet WebSocket
  8. 8. WebSocketNo delayNo waste requestNo waste code
  9. 9. WebSocketNo delayNo waste requestNo waste code
  10. 10. rik/em-websocket .com/igr igohttp s://github
  11. 11. Pusherhttp://pusherapp.com/
  12. 12. mboo/pu sher-gem /github.co m/newbahttps:/
  13. 13. Pusher[channel].trigger(label1, data) Ruby Pusher[channel].trigger(label2, data) Pusher[channel].trigger(label3, data) WebSocketvar receiver = new Pusher(key, channel); Browser receiver.bind(label1, function(data) { ... } ); receiver.bind(label2, function(data) { ... } ); receiver.bind(label3, function(data) { ... } ); JavaScript
  14. 14. ig i20 10 Ru by Kahttp://www. ickr.com/photos/hsbt/4931700629/http://www. ickr.com/photos/kei-s/4929133025/http://www. ickr.com/photos/recompile_net/4938690602/http://www. ickr.com/photos/recompile_net/4935820587/
  15. 15. http://www. ickr.com/photos/machu/4942003500/
  16. 16. Sub screenshttp://www. ickr.com/photos/machu/4942003500/
  17. 17. http://www. ickr.com/photos/y_ogagaga/4942625366/
  18. 18. Twitter #rubykaigi IRC #rubykaigiOperation Noti cation
  19. 19. http://twitter.com/Dominion525/status/22339840037http://twitter.com/Dominion525/status/22339449175
  20. 20. Twitter IRC
  21. 21. Operation txt txt txt
  22. 22. Pusher[channel].trigger(label1, data) Ruby Pusher[channel].trigger(label2, data) Pusher[channel].trigger(label3, data) WebSocketvar receiver = new Pusher(key, channel); Browser receiver.bind(label1, function(data) { ... }); receiver.bind(label2, function(data) { ... }); receiver.bind(label3, function(data) { ... }); JavaScript
  23. 23. Pusher[channel].trigger(label1, data) Ruby Pusher[channel].trigger(label2, data) Pusher[channel].trigger(label3, data) WebSocketvar receiver = new Pusher(key, channel); Browser receiver.bind(label1, function(data) { ... }); receiver.bind(label2, function(data) { ... }); receiver.bind(label3, function(data) { ... }); JavaScript
  24. 24. Pusher[channel].trigger(label1, data) Ruby Pusher[channel].trigger(label2, data) Pusher[channel].trigger(label3, data) WebSocketvar receiver = new Pusher(key, channel); Browser receiver.bind(label1, function(data) { ... }); receiver.bind(label2, function(data) { ... }); receiver.bind(label3, function(data) { ... }); JavaScript
  25. 25. Pusher[channel].trigger(label1, data) Ruby Pusher[channel].trigger(label2, data) Pusher[channel].trigger(label3, data) WebSocketvar receiver = new Pusher(key, channel); Browser receiver.bind(label1, function(data) { ... }); receiver.bind(label2, function(data) { ... }); receiver.bind(label3, function(data) { ... }); JavaScript
  26. 26. s/ ma ster/pusher 0s tream/tree/ .co m/ju ne29/rk201 https://github / ubl ic/2010/live /tre e/master/p ka i/rubykaigi .com/ruby-no-ht tps://github
  27. 27. Pusherhttp://pusherapp.com/
  28. 28. ReferencesWebSocket.org -- A WebSocket Community http://www.websockets.org/Pusher http://pusherapp.com/Building Real Time Web (by Makoto Inoue) http://vimeo.com/14549558WebSocket “ Web” - IT http://www.atmarkit.co.jp/fcoding/articles/ websocket/01/websocket01a.html @makoto_inoue
  29. 29. Let’s develop real-time Web application using Pusher!
  30. 30. JUN OHWADA

×