Skip to content

geertmeersman/aiorobonect

Repository files navigation

aiorobonect

Asynchronous library to communicate with the Robonect API

maintainer buyme_coffee discord

MIT License

GitHub issues Average time to resolve an issue Percentage of issues still open PRs Welcome

Python

github release github release date github last-commit github contributors github commit activity

API Example

"""Test for aiorobonect."""
from aiorobonect import RobonectClient

import asyncio
import httpx
import logging

logging.basicConfig(level=logging.INFO)
_LOGGER = logging.getLogger("aiorobonect")
_LOGGER.setLevel(logging.DEBUG)

async def main():
    host = "10.0.0.99"       ## The Robonect mower IP
    username = "USERNAME"    ## Your Robonect username
    password = "xxxxxxxx"    ## Your Robonect password
    tracking = [             ## Commands to query
                "battery",
                "clock",
                "door",
                "error",
                "ext",
                "gps",
                "health",
                "hour",
                "motor",
                "portal",
                "push",
                "remote",
                "report",
                "status",
                "timer",
                "version",
                "weather",
                "wlan",
                "wire"
            ]
    client = RobonectClient(host, username, password)
    try:
        status = await client.async_cmd("status")
        print(f"Status: {status}")
        tracking = await client.async_cmds(tracking)
        print(f"Tracking: {tracking}")
    except Exception as exception:
        if isinstance(exception, httpx.HTTPStatusError):
            print(exception)
    await client.client_close()

asyncio.run(main())