forked from bloatless/php-websocket
-
Notifications
You must be signed in to change notification settings - Fork 0
/
client.coffee
39 lines (32 loc) · 1.01 KB
/
client.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
36
37
38
39
$(document).ready ->
log = (msg) -> $('#log').append("#{msg}<br />")
serverUrl = 'ws://localhost:8000/demo'
if $.browser.mozilla
socket = new MozWebSocket(serverUrl)
else
socket = new WebSocket(serverUrl)
socket.binaryType = 'blob'
socket.onopen = (msg) ->
$('#status').removeClass().addClass('online').html('connected')
socket.onmessage = (msg) ->
response = JSON.parse(msg.data)
log("Action: #{response.action}")
log("Data: #{response.data}")
socket.onclose = (msg) ->
$('#status').removeClass().addClass('offline').html('disconnected')
$('#status').click ->
socket.close()
$('#send').click ->
payload = new Object()
payload.action = $('#action').val()
payload.data = $('#data').val()
socket.send(JSON.stringify(payload))
$('#sendfile').click ->
data = document.binaryFrame.file.files[0]
if data
payload = new Object()
payload.action = 'setFilename'
payload.data = $('#file').val()
socket.send JSON.stringify payload
socket.send(data)
return false