setLightState method

Future<Map<String, dynamic>> setLightState(
  1. String serialNumber,
  2. String action
)

Implementation

Future<Map<String, dynamic>> setLightState(
    String serialNumber, String action) async {
  try {
    switch (action) {
      case 'turnOn':
      case 'turnOff':
        return await _setDeviceState(serialNumber, action,
            constants['stateAttributes']!['lightState'] as String?);
      default:
        throw MyQError(
            'Invalid Action parameter "$action" specified for light; valid actions are turnOn and turnOff',
            constants['codes']!['INVALID_ARGUMENT'] as String?);
    }
  } on MyQError catch (e) {
    if (e.code == constants['codes']!['DEVICE_STATE_NOT_FOUND']) {
      throw MyQError(
          'device with serial number "$serialNumber" is not a door',
          'Invalid Device');
    }
    throw e;
  }
}