Package io.github.hapjava.accessories
Interface LightbulbAccessory
-
- All Superinterfaces:
HomekitAccessory
public interface LightbulbAccessory extends HomekitAccessory
A simple light with a binary state.- Author:
- Andy Lintner
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description java.util.concurrent.CompletableFuture<java.lang.Boolean>
getLightbulbPowerState()
Retrieves the current binary state of the light.default java.util.Collection<Service>
getServices()
The collection of Services this accessory supports.java.util.concurrent.CompletableFuture<java.lang.Void>
setLightbulbPowerState(boolean powerState)
Sets the binary state of the lightvoid
subscribeLightbulbPowerState(HomekitCharacteristicChangeCallback callback)
Subscribes to changes in the binary state of the light.void
unsubscribeLightbulbPowerState()
Unsubscribes from changes in the binary state of the light.-
Methods inherited from interface io.github.hapjava.accessories.HomekitAccessory
getFirmwareRevision, getId, getManufacturer, getModel, getName, getPrimaryService, getSerialNumber, identify
-
-
-
-
Method Detail
-
getLightbulbPowerState
java.util.concurrent.CompletableFuture<java.lang.Boolean> getLightbulbPowerState()
Retrieves the current binary state of the light.- Returns:
- a future that will contain the binary state
-
setLightbulbPowerState
java.util.concurrent.CompletableFuture<java.lang.Void> setLightbulbPowerState(boolean powerState) throws java.lang.Exception
Sets the binary state of the light- Parameters:
powerState
- the binary state to set- Returns:
- a future that completes when the change is made
- Throws:
java.lang.Exception
- when the change cannot be made
-
subscribeLightbulbPowerState
void subscribeLightbulbPowerState(HomekitCharacteristicChangeCallback callback)
Subscribes to changes in the binary state of the light.- Parameters:
callback
- the function to call when the state changes.
-
unsubscribeLightbulbPowerState
void unsubscribeLightbulbPowerState()
Unsubscribes from changes in the binary state of the light.
-
getServices
default java.util.Collection<Service> getServices()
Description copied from interface:HomekitAccessory
The collection of Services this accessory supports. Services are the primary way to interact with the accessory via HomeKit. Besides the Services offered here, the accessory will automatically include the required information service.This method will only be useful if you're implementing your own accessory type. For the standard accessories, use the default implementation provided by the interfaces in
io.github.hapjava.accessories
.- Specified by:
getServices
in interfaceHomekitAccessory
- Returns:
- the collection of services.
-
-