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.16.tar.gz (21.3 kB view details)

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

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

File metadata

  • Download URL: pyechorobotics-0.0.16.tar.gz
  • Upload date:
  • Size: 21.3 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.16.tar.gz
Algorithm Hash digest
SHA256 92ef4db86b07d825c04bec78345a898cb4021c7e9b0abfcd9abd07a13bf8ac25
MD5 9989dabf7298c830648a0032bc94d09d
BLAKE2b-256 44a0d6c2a466d9e4a4744eb62434dd71a4c6c407d9848742e8331c41f17fb7d1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyechorobotics-0.0.16-py3-none-any.whl
Algorithm Hash digest
SHA256 20aa2e7dccbe3185c4b9239f4d929dfc0a276d4ba9bc405819c4e99e0db34a49
MD5 bde41e389afa9c33a73d1a7de4f811e0
BLAKE2b-256 c315fca8c9e379612942dc11ef22fc73b3fef0e749b14a9695f576a5220c1e26

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