Guest User

Untitled

a guest
May 30th, 2018
144
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.47 KB | None | 0 0
  1. path: require 'path'
  2. Package: require('node-asset').Package
  3. router: new (require 'biggie-router')()
  4. io: require 'socket.io'
  5. TwitterNode: require('twitter-node').TwitterNode
  6.  
  7. js_package: new Package 'assets/js/all.js', [
  8. 'socketio/socket.io.js'
  9. 'assets/js/raphael.js'
  10. 'assets/js/map.js'
  11. 'assets/coffee'
  12. ], {
  13. type: 'coffee'
  14. wrap: yes
  15. watch: yes
  16. compile: no
  17. compress: no
  18. }
  19.  
  20. css_package: new Package 'assets/css/all.css', [
  21. 'assets/css/common.css'
  22. 'assets/css/screen.css'
  23. ], {
  24. type: 'css'
  25. watch: yes
  26. compile: yes
  27. compress: no
  28. }
  29.  
  30. js_package.serve()
  31. css_package.serve()
  32.  
  33. index_buffer: require('fs').readFileSync 'index.html'
  34.  
  35. router.get(/^\/(|index.html)$/).module('gzip').bind (request, response) ->
  36. response.sendBody index_buffer
  37.  
  38. router.get(/\.(js|css|html)/).module 'gzip'
  39.  
  40. router.get(/^\/assets\/.*$/).module('static', __dirname).bind (request, response) ->
  41. response.sendBody 404, 'Not Found.'
  42.  
  43. router.listen 8080
  44.  
  45. socket: io.listen router
  46.  
  47. twitter: new TwitterNode {
  48. user: 'user'
  49. password: 'password'
  50. action: 'sample'
  51. }
  52.  
  53. previous_tweets: []
  54.  
  55. twitter.addListener 'tweet', (tweet) ->
  56. if tweet.geo?.coordinates
  57. while previous_tweets.length > 50
  58. previous_tweets.shift()
  59. previous_tweets.push tweet
  60. socket.broadcast {
  61. text: tweet.text
  62. geo: tweet.geo.coordinates
  63. }
  64.  
  65. twitter.stream()
  66.  
  67. socket.addListener 'clientConnect', (client) ->
  68. for tweet in previous_tweets
  69. client.send tweet
Add Comment
Please, Sign In to add comment