code: async def power(dev: Device, cmd, target, value):
      
      async def try_turn(cmd):
          state = True if cmd == "on" else False
          try:
              return await dev.set_power(state)
          except SongpalException as ex:
              if ex.code == 3:
                  err("The device is already %s." % cmd)
              else:
                  raise ex
  
      if cmd == "on" or cmd == "off":
          click.echo(await try_turn(cmd))
      elif cmd == "settings":
          settings = await dev.get_power_settings()
          print_settings(settings)
      elif cmd == "set" and target and value:
          click.echo(await dev.set_power_settings(target, value))
      else:
          power = await dev.get_power()
          click.echo(click.style(str(power), bold=power))
docs: Turn on and off, control power settings.
  
      Accepts commands 'on', 'off', and 'settings'.