Skip to main content

Access API for echorobotics robot lawn mowers

Project description

pyechorobotics

Echorobotics Logo

Allows control and reads status of robot lawn mowers by echorobotics.

Example:

import sys

import echoroboticsapi
import aiohttp
import asyncio
import logging


async def main():
    async with aiohttp.ClientSession(cookies=echoroboticsapi.create_cookies(user_id="your-user-id", user_token="user-user-token")) as session:
        api = echoroboticsapi.Api(session, robot_ids=["your-robot-id"])
        print(await api.last_statuses())
        print(await api.set_mode("chargeAndWork"))


if __name__ == "__main__":
    logging.basicConfig(stream=sys.stdout, level=logging.DEBUG)
    loop = asyncio.new_event_loop()
    loop.run_until_complete(main())

Unfortunately, the API doesn't tell is which mode the robot is in. We can make an educated guess though, depending on what we set ourselves, history events and the status. This is what SmartMode does:

import sys

import echoroboticsapi
import aiohttp
import asyncio
import logging


async def main():
    async with aiohttp.ClientSession(cookies=echoroboticsapi.create_cookies(user_id="your-user-id", user_token="user-user-token")) as session:
        api = echoroboticsapi.Api(session, robot_ids=["your-robot-id"])
        smartmode = echoroboticsapi.SmartMode("your-robot-id")
        api.register_smart_mode(smartmode)
        
        print(await api.history_list())
        print(await api.last_statuses())
        print(await smartmode.get_robot_mode())


if __name__ == "__main__":
    logging.basicConfig(stream=sys.stdout, level=logging.DEBUG)
    loop = asyncio.new_event_loop()
    loop.run_until_complete(main())

See also src/main.py

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyechorobotics-0.0.15.tar.gz (21.2 kB view details)

Uploaded Source

Built Distribution

pyechorobotics-0.0.15-py3-none-any.whl (20.9 kB view details)

Uploaded Python 3

File details

Details for the file pyechorobotics-0.0.15.tar.gz.

File metadata

  • Download URL: pyechorobotics-0.0.15.tar.gz
  • Upload date:
  • Size: 21.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.17

File hashes

Hashes for pyechorobotics-0.0.15.tar.gz
Algorithm Hash digest
SHA256 816133a6849da405563e0ddcd46fbdeef5907d0ed3d49530edb12f0d0d35bedc
MD5 1ca17463b51bbccea83a8f1d3dd944cf
BLAKE2b-256 9baf019d2c9b9b4514652e505441ee6eb48f62b3cd5bd233d91be9dffb363bb6

See more details on using hashes here.

File details

Details for the file pyechorobotics-0.0.15-py3-none-any.whl.

File metadata

File hashes

Hashes for pyechorobotics-0.0.15-py3-none-any.whl
Algorithm Hash digest
SHA256 d096b5c6a5be4be47b6bfad5bc21625a6dc3b1e6d9b44044bc25fcaad6141ba4
MD5 78663aed6c08c68ffe6e01ef89bcbe6e
BLAKE2b-256 d867abbae270f893bfa01a05ac2ca8e31ecf9a834609a77193ab2252440cf96d

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page