monitos.io
v1.0.1
Published
Monitos meets Socket.IO
Maintainers
Readme

Monitos.IO
An extension of Monitos where all events are emitted to Socket.IO.
Example:
Monito.openSocket(9183); // Socket.IO server on port 9183
let chimp = new Monito({
initialState: 'register',
states: {
register: (next) => {
next(null, 'getProfile'); // Go straight to the state "getProfile"
},
getProfile: (next) => {
next(null, {
browse: 4 // If your dice rolls 4 or more, go to "browse"
}, 'shop'); // Otherwise, by default, go to "shop"
},
browse: (next) => {
next(null, {
browse: monito => 6 // You can also use functions
}, 'shop');
},
shop: (next) => {
next(null, 'logout'); // Go straight to the state "logout"
},
logout: (next) => {
next(); // This will be the last state
}
}
});
chimp.start();See the full code of the example.
Usage
Monito.openSocket(9183);
let chimp = new Monito(states, initialState);
chimp.on('end', () => {
Monito.closeSocket()
});Static methods
Monito.openSocket(arguments)- Initializes Socket.IO. For a full list of options, check the Socket.IO documentation.Monito.closeSocket()- Closes Socket.IO socket.Monito.getSocket()- Returns the Socket.IO socket.
Arguments
There are no new constructor arguments. For a full list of arguments, check the Monitos documentation.
Events
There are no new events. For a full list of events, check the Monitos documentation.
API
There are no new API methods. For a full list, check the Monitos documentation.
Testing
Run all the tests (linting and unit tests) with the following npm task:
> npm testYou can run the linting and the unit tests individually:
> gulp test
> gulp lint