def play_Note(self, note, channel=1, velocity=100):
        """Play a Note object on a channel with a velocity[0-127].

        You can either specify the velocity and channel here as arguments or
        you can set the Note.velocity and Note.channel attributes, which
        will take presedence over the function arguments.
        """
        if hasattr(note, 'velocity'):
            velocity = note.velocity
        if hasattr(note, 'channel'):
            channel = note.channel
        self.play_event(int(note) + 12, int(channel), int(velocity))
        self.notify_listeners(self.MSG_PLAY_INT, {'channel': int(channel),
            'note': int(note) + 12, 'velocity': int(velocity)})
        self.notify_listeners(self.MSG_PLAY_NOTE, {'channel': int(channel),
            'note': note, 'velocity': int(velocity)})
        return True