Skip to content

SecKatie/wyzeapy

Repository files navigation

Wyzeapy

A Python library for the (unofficial) Wyze Labs web APIs.

Used By

This project is used by the ha-wyzeapi project. Let me know if you are utilizing it so that I can feature your project here!

Usage/Examples

Getting logged in:

import asyncio
from wyzeapy import Wyzeapy


async def async_main():
    client = await Wyzeapy.create()
    await client.login("EMAIL", "PASSWORD")


if __name__ == "__main__":
    loop = asyncio.get_event_loop()
    loop.run_until_complete(async_main())

Thanks to:

  • @shauntarves: for contributing the App ID and Signing Secret
  • @yoinx: for considerable contributions to the project

License

GNU GPLv3

Author

Developed by Katie Mulliken (SecKatie)

Appendix

Testing

This project uses Python's built-in unittest framework with coverage for code coverage reporting.

Prerequisites

First, install the development dependencies:

uv sync --group dev

Running Tests

Run all tests:

.venv/bin/python -m unittest discover tests

Run tests with verbose output:

.venv/bin/python -m unittest discover tests -v

Run a specific test file:

.venv/bin/python -m unittest tests.test_camera_service

Run a specific test method:

.venv/bin/python -m unittest tests.test_camera_service.TestCameraService.test_get_cameras

Code Coverage

Run tests with coverage:

.venv/bin/coverage run -m unittest discover tests

View coverage report in terminal:

.venv/bin/coverage report -m

Generate HTML coverage report:

.venv/bin/coverage html

Then open htmlcov/index.html in your web browser to view the detailed coverage report.

One-liner to run tests and view coverage:

.venv/bin/coverage run -m unittest discover tests && .venv/bin/coverage report -m

Documentation

Docs are generated using pdoc. To generate docs for this project, run:

# Install development dependencies
uv sync --group dev

# Generate docs
uv run pdoc --output-dir=docs src/wyzeapy

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 19