custom-event-server
Extends the DOM CustomEvent model through to the server
Last updated 6 years ago by wballard .
ISC · Repository · Bugs · Original npm · Tarball · package.json
$ cnpm install custom-event-server 
SYNC missed versions from official npm registry.

#Overview I love the CustomEvent model in the DOM. A nice simple (name, detail) pairing. So, this is my take on using that same model on the server. In my mind it fits with end-to-end JavaScript to think about end-to-end events.

#Getting Started

##Install

npm install --save custom-event-server

###Simple Server

server = require('custom-event-server')()
server.on 'beep', (name, detail, client) ->
  client.fire 'boop', {}
server.on 'woot', (name, detail, client) ->
  console.log 'ahhh!'
server.listen 8080

###Simple Client This uses the core-custom-event-client which is a Polymer element.

<core-custom-event-client id="localhost" servers='ws://localhost:8080' onboop='this.server.fire("woot")'>
</core-custom-event-client>

And of course you can addEventListener, use a jQuery on, or bind a Polymer style on-boop='{{}}'

#Theory So the idea is that events coming from the server look and feel like events coming from other DOM elements. And, that instead of RPC/REST/Messages, you fire events on the server.

##Messages This is really just a web socket, but it adopts a (name, detail) protocol. About the only thing to keep in mind is to make sure your detail can be JSON serialized.

##Built Ins

hello

Fired from the server back to your client on a connection or reconnection.

ping

Fired from the client core-custom-event-client element on a timer. Pretty much any load balancer or proxy you put in front will time out and tear down your web socket without this.

pong

Fired from the server back to the client in response to a ping.

Current Tags

  • 0.0.0                                ...           latest (6 years ago)

1 Versions

  • 0.0.0                                ...           6 years ago
Maintainers (1)
Downloads
Today 0
This Week 0
This Month 0
Last Day 0
Last Week 0
Last Month 4
Dependencies (4)
Dev Dependencies (0)
None

Copyright 2014 - 2016 © taobao.org |