def _match_setters(self, query):
        """Try to find a match
        """
        q = query.decode('utf-8')
        for name, parser, response, error_response in self._setters:
            try:
                parsed = parser(q)
                logger.debug('Found response in setter of %s' % name)
            except ValueError:
                continue

            try:
                if isinstance(parsed, dict) and 'ch_id' in parsed:
                    self._selected = parsed['ch_id']
                    self._properties[name].set_value(parsed['0'])
                else:
                    self._properties[name].set_value(parsed)
                return response
            except ValueError:
                if isinstance(error_response, bytes):
                    return error_response
                return self._device.error_response('command_error')

        return None
Try to find a match