miio.integrations.scishare.coffee.scishare_coffeemaker module
- class miio.integrations.scishare.coffee.scishare_coffeemaker.ScishareCoffee(ip: str | None = None, token: str | None = None, start_id: int = 0, debug: int = 0, lazy_discover: bool = True, timeout: int | None = None, *, model: str | None = None)[source]
Bases:
Device
Main class for Scishare coffee maker (scishare.coffee.s1102).
- actions() → DescriptorCollection[ActionDescriptor]
Return device actions.
- boil_water(amount: int, temperature: int) → bool[source]
Boil water.
- Parameters:
amount – in milliliters
temperature – in degrees
- brew_americano(water_amount: int, water_temperature: int, coffee_amount: int, coffee_temperature: int) → bool[source]
Brew americano.
- Parameters:
water_amount – water in milliliters
water_temperature – water temperature
coffee_amount – coffee amount in milliliters
coffee_temperature – coffee temperature
- brew_espresso(amount: int, temperature: int)[source]
Brew espresso.
- Parameters:
amount – in milliliters
temperature – in degrees
- configure_wifi(ssid, password, uid=0, extra_params=None)
Configure the wifi settings.
- descriptors() → DescriptorCollection[Descriptor]
Return a collection containing all descriptors for the device.
- classmethod get_device_group()
- get_properties(properties, *, property_getter='get_prop', max_properties=None)
Request properties in slices based on given max_properties.
This is necessary as some devices have limitation on how many properties can be queried at once.
If max_properties is None, all properties are requested at once.
- info(*, skip_cache=False) → DeviceInfo
Get (and cache) miIO protocol information from the device.
This includes information about connected wlan network, and hardware and software versions.
- Parameters:
bool (skip_cache) – Skip the cache
- raw_command(command, parameters)
Send a raw command to the device. This is mostly useful when trying out commands which are not implemented by a given device instance.
- send(command: str, parameters: Any | None = None, retry_count: int | None = None, *, extra_parameters=None) → Any
Send a command to the device.
Basic format of the request: {“id”: 1234, “method”: command, “parameters”: parameters}
extra_parameters allows passing elements to the top-level of the request. This is necessary for some devices, such as gateway devices, which expect the sub-device identifier to be on the top-level.
- send_handshake()
Send initial handshake to the device.
- sensors() → DescriptorCollection[PropertyDescriptor]
Return read-only properties.
- settings() → DescriptorCollection[PropertyDescriptor]
Return settable properties.
- status() → ScishareCoffeeStatus[source]
Device status.
- supports_miot() → bool
Return True if the device supports miot commands.
This requests a single property (siid=1, piid=1) and returns True on success.
- update_state()
Return current update state.
- retry_count = 3
- supported_models = ['scishare.coffee.s1102']
- timeout = 5
- class miio.integrations.scishare.coffee.scishare_coffeemaker.ScishareCoffeeStatus(data)[source]
Bases:
DeviceStatus
- descriptors() → DescriptorCollection[PropertyDescriptor]
Return the dict of sensors exposed by the status container.
Use @sensor and @setting decorators to define properties.
- embed(name: str, other: DeviceStatus)
Embed another status container to current one.
This makes it easy to provide a single status response for cases where responses from multiple I/O calls is wanted to provide a simple interface for downstreams.
Internally, this will prepend the name of the other class to the attribute names, and override the __getattribute__ to lookup attributes in the embedded containers.