A Python SDK for the Cocoro API
Project description
Sharp Cocoro Air SDK in python
Basically a quick and dirty conversion of https://github.com/dvcrn/cocoro-sdk/ into python. Probably some bugs along the way.
Installation
uv add sharp-cocoro
Or install from source:
git clone https://github.com/dvcrn/sharp-cocoro
cd sharp-cocoro
uv sync
Usage:
For auth, read: https://github.com/dvcrn/cocoro-sdk/tree/master?tab=readme-ov-file#authentication
async def main():
app_secret = ''
app_key = ''
# iClub is the default service name, you can also leave it out
async with Cocoro(app_secret=app_secret, app_key=app_key) as cocoro:
await cocoro.login()
devices = await cocoro.query_devices()
device = devices[0]
all_props = device.get_all_properties()
for prop in all_props:
print(prop)
if isinstance(device, Aircon):
aircon = device
print("power state")
print(device.get_power_status())
device.queue_temperature_update(23.5)
aircon.queue_power_on()
device.queue_property_status_update(aircon.get_property_status(StatusCode.OPERATION_MODE))
print(await cocoro.execute_queued_updates(aircon))
else:
print("The first device is not an Aircon")
# Run the async function
asyncio.run(main())
To get a property:
# example: get the operation mode
status = device.get_property_status(StatusCode.OPERATION_MODE.value)
assert isinstance(status, SinglePropertyStatus)
print(ValueSingle(status.valueSingle['code'])) # returns the operation mode
To set it:
device.queue_property_status_update(ValueSingle.OPERATION_COOL)
await cocoro.execute_queued_updates(device)
To get an overview of all properties available
device.dump_all_properties()
# 動作状態 (80): ON (30), set=True get=True options=['ON', 'OFF']
# 冷房モード時温度設定値 (B5): None, set=True get=True
# ...
Each property also includes information on
- It's type (binary, single, range)
- Whether it is settable or gettable
- And options that are allowed. In the example above, we can set the power mode only to ON or OFF
License
MIT
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
sharp_cocoro-0.2.0.tar.gz
(3.3 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters