lib/keyboard.js
function Keyboard(device){
  var self = this;
  InputEvent.apply(this, arguments);
  this.on('data', function(ev){
    // filting key event
    if(InputEvent.EVENT_TYPES.EV_KEY == ev.type){
      switch(ev.value){
        case KEY_STATUS.KEY_UP:
          self.emit('keyup', ev);
          break;
        case KEY_STATUS.KEY_DOWN:
          self.emit('keydown', ev);
          break;
        case KEY_STATUS.KEY_PRESS:
          self.emit('keypress', ev);
          break;
      }
    }
  });
}
function Keyboard(device){
  var self = this;
  InputEvent.apply(this, arguments);
  this.on('data', function(ev){
    // filting key event
    if(InputEvent.EVENT_TYPES.EV_KEY == ev.type){
      switch(ev.value){
        case KEY_STATUS.KEY_UP:
          self.emit('keyup', ev);
          break;
        case KEY_STATUS.KEY_DOWN:
          self.emit('keydown', ev);
          break;
        case KEY_STATUS.KEY_PRESS:
          self.emit('keypress', ev);
          break;
      }
    }
  });
}
[Keyboard description]
@param {[type]} device [description]