Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Listing light presets throws error #1201

Copy link
Copy link
@Puxtril

Description

@Puxtril
Issue body actions
  • Product: KL135(US)
  • Kasa version 0.7.5

Using command kasa --host 192.168.1.10 light presets list prints Raised error: expected string or bytes-like object, got 'IotLightPreset'

Can be fixed by changing cli/light.py (currently line 134)

for preset in light_preset.preset_states_list:
        echo(preset)

to...

for preset in light_preset.preset_states_list:
        echo(str(preset.__dict__))

which prints out...

{'index': 0, 'brightness': 50, 'hue': 0, 'saturation': 0, 'color_temp': 2700, 'custom': None, 'id': None, 'mode': None}
{'index': 1, 'brightness': 100, 'hue': 0, 'saturation': 100, 'color_temp': 0, 'custom': None, 'id': None, 'mode': None}
{'index': 2, 'brightness': 100, 'hue': 120, 'saturation': 100, 'color_temp': 0, 'custom': None, 'id': None, 'mode': None}
{'index': 3, 'brightness': 100, 'hue': 240, 'saturation': 100, 'color_temp': 0, 'custom': None, 'id': None, 'mode': None}

But I'm sure you'd probably want a more "official" format to print presets.

Full traceback
Traceback (most recent call last):
  File "/home/***/Downloads/kasa/bin/kasa", line 8, in <module>
    sys.exit(cli())
             ^^^^^
  File "/home/***/Downloads/kasa/lib/python3.12/site-packages/asyncclick/core.py", line 1205, in __call__
    return anyio.run(self._main, main, args, kwargs, **opts)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/***/Downloads/kasa/lib/python3.12/site-packages/anyio/_core/_eventloop.py", line 74, in run
    return async_backend.run(func, args, {}, backend_options)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/***/Downloads/kasa/lib/python3.12/site-packages/anyio/_backends/_asyncio.py", line 2284, in run
    return runner.run(wrapper())
           ^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/asyncio/runners.py", line 118, in run
    return self._loop.run_until_complete(task)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/asyncio/base_events.py", line 687, in run_until_complete
    return future.result()
           ^^^^^^^^^^^^^^^
  File "/home/***/Downloads/kasa/lib/python3.12/site-packages/anyio/_backends/_asyncio.py", line 2272, in wrapper
    return await func(*args)
           ^^^^^^^^^^^^^^^^^
  File "/home/***/Downloads/kasa/lib/python3.12/site-packages/asyncclick/core.py", line 1208, in _main
    return await main(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/***/Downloads/kasa/lib/python3.12/site-packages/asyncclick/core.py", line 1120, in main
    rv = await self.invoke(ctx)
         ^^^^^^^^^^^^^^^^^^^^^^
  File "/home/***/Downloads/kasa/lib/python3.12/site-packages/kasa/cli/common.py", line 229, in invoke
    _handle_exception(self._debug, exc)
  File "/home/***/Downloads/kasa/lib/python3.12/site-packages/kasa/cli/common.py", line 227, in invoke
    return await super().invoke(ctx)
           ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/***/Downloads/kasa/lib/python3.12/site-packages/asyncclick/core.py", line 1739, in invoke
    return await _process_result(await sub_ctx.command.invoke(sub_ctx))
                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/***/Downloads/kasa/lib/python3.12/site-packages/asyncclick/core.py", line 1739, in invoke
    return await _process_result(await sub_ctx.command.invoke(sub_ctx))
                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/***/Downloads/kasa/lib/python3.12/site-packages/asyncclick/core.py", line 1739, in invoke
    return await _process_result(await sub_ctx.command.invoke(sub_ctx))
                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/***/Downloads/kasa/lib/python3.12/site-packages/asyncclick/core.py", line 1485, in invoke
    return await ctx.invoke(self.callback, **ctx.params)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/***/Downloads/kasa/lib/python3.12/site-packages/asyncclick/core.py", line 824, in invoke
    rv = await rv
         ^^^^^^^^
  File "/home/***/Downloads/kasa/lib/python3.12/site-packages/kasa/cli/common.py", line 129, in wrapper
    return await ctx.invoke(wrapped_function, dev, *args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/***/Downloads/kasa/lib/python3.12/site-packages/asyncclick/core.py", line 822, in invoke
    rv = __callback(*args, **kwargs)
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/***/Downloads/kasa/lib/python3.12/site-packages/kasa/cli/light.py", line 134, in presets_list
    echo(preset)
  File "/home/***/Downloads/kasa/lib/python3.12/site-packages/kasa/cli/common.py", line 54, in echo
    _echo(*args, **kwargs)
  File "/home/***/Downloads/kasa/lib/python3.12/site-packages/kasa/cli/common.py", line 42, in wrapper
    message = rich_formatting.sub("", message)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Reactions are currently unavailable

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingSomething isn't working

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

      Morty Proxy This is a proxified and sanitized view of the page, visit original site.