-
Notifications
You must be signed in to change notification settings - Fork 7
/
Copy pathserver.coffee
35 lines (28 loc) · 935 Bytes
/
server.coffee
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
express = require 'express'
app = do express.createServer
io = require('socket.io').listen app
controllers = require './app/controllers'
midi = require './app/lib/midi'
app.use express.static 'public'
app.configure 'production', ->
app.use do express.staticCache
app.use express.logger()
app.use express.bodyParser()
app.use express.query()
app.use require('connect-assets')()
app.set 'view engine', 'jade'
app.set 'views', 'app/views'
# routes
app.get '/', controllers.index
app.get '/tests', controllers.tests
app.get '/patch', controllers.getPatch
app.post '/patch', controllers.postPatch
# see namespacing
# http://socket.io/#how-to-use
io.sockets.on 'connection', (socket) ->
midi.input.on 'message', (message) ->
socket.volatile.emit 'midi', message
console.log 'midi heard:', message
socket.emit 'status', message: "connected", status: "SUCCESS"
port = process.env.PORT or 7777
app.listen port