The whole idea behind
hook.io is fault tolerant, distributed hooks. So why is there a convention change between events from a client hook and it's server? The server doesn't prefix the event with it's name, unlike all of the others. This means that you have to listen for two different events, one coming from a server and one coming from a client.
I've written a simple demonstration of this at
https://gist.github.com/2393162. The idea is that you should be able to start up the two hooks and they will start communicating in both directions. However, to do this I have to listen for both:
self.on('b::hello', ...);
self.on('*::b::hello', ...);
The problem here is obviously that this is unmanageable for large enough applications. The only option around this seems to be a designated server hook, but what if it goes down? When the root goes down the next hook inline takes it's place, so should all hooks be considered server candidates?
A hooks name can be found by the third parameter passed into the handler, so why would it also need to be prefixed to the event name?
I feel like I am missing something huge here, so please enlighten me if you can!