Interface LightbulbAccessory

    • 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 interface HomekitAccessory
        Returns:
        the collection of services.