StarterNodeDsl

interface StarterNodeDsl : AutomationFlowContributor

Known direct subclasses
SelectFlowBuilder

Type-safe builder that builds a SelectFlow node.

SequentialFlowBuilder

Type-safe builder that builds a SequentialFlow Node.


Interface for constructing Starter nodes and adding them to an automation flow.

Summary

Public functions

open TypedExpression<T>
<T : Event> starter(structure: Structure, event: EventFactory<T>)

Create a Starter from a Structure and an Event and add it.

open TypedExpression<T>
<T : Trait> starter(structure: Structure, trait: TraitFactory<T>)

Create a Starter from a Structure and a Trait and add it.

open TypedExpression<T>
<T : Event> starter(
    device: HomeDevice,
    deviceType: DeviceTypeFactory<DeviceType>,
    event: EventFactory<T>
)

Create a Starter from a Device and an Event and add it.

open TypedExpression<T>
<T : Trait> starter(
    device: HomeDevice,
    deviceType: DeviceTypeFactory<DeviceType>,
    trait: TraitFactory<T>
)

Create a Starter from a Device and a Trait and add it.

open TypedExpression<T>
<T : Event> starter(
    structure: Structure,
    event: EventFactory<T>,
    block: ParametersBuilder.() -> Unit
)

Create a Starter from a Structure and an Event and add it.

open TypedExpression<T>
<T : Event> starter(
    unknownEntity: UnknownEntity,
    entityType: TypeFactory<HomeObjectType>,
    event: EventFactory<T>
)

Create a Starter from an UnknownEntity and an Event and add it.

open TypedExpression<T>
<T : Trait> starter(
    unknownEntity: UnknownEntity,
    entityType: TypeFactory<HomeObjectType>,
    trait: TraitFactory<T>
)

Create a Starter from an UnknownEntity and a Trait and add it.

open TypedExpression<T>
<T : Event> starter(
    device: HomeDevice,
    deviceType: DeviceTypeFactory<DeviceType>,
    event: EventFactory<T>,
    block: ParametersBuilder.() -> Unit
)

Create a Starter from a Device and a Trait and add it.

Public functions

starter

open fun <T : Event> starter(structure: Structure, event: EventFactory<T>): TypedExpression<T>

Create a Starter from a Structure and an Event and add it.

Parameters
structure: Structure

The Structure associated with the Starter.

event: EventFactory<T>

The Event associated with the Starter.

Returns
TypedExpression<T>

A Starter instance.

starter

open fun <T : Trait> starter(structure: Structure, trait: TraitFactory<T>): TypedExpression<T>

Create a Starter from a Structure and a Trait and add it.

Parameters
structure: Structure

The Structure associated with the Starter.

trait: TraitFactory<T>

The Trait associated with the Starter.

Returns
TypedExpression<T>

A Starter instance.

starter

open fun <T : Event> starter(
    device: HomeDevice,
    deviceType: DeviceTypeFactory<DeviceType>,
    event: EventFactory<T>
): TypedExpression<T>

Create a Starter from a Device and an Event and add it.

Parameters
device: HomeDevice

The HomeDevice associated with the Starter.

deviceType: DeviceTypeFactory<DeviceType>

The DeviceType associated with the Starter.

event: EventFactory<T>

The Event associated with the Starter.

Returns
TypedExpression<T>

A Starter instance.

starter

open fun <T : Trait> starter(
    device: HomeDevice,
    deviceType: DeviceTypeFactory<DeviceType>,
    trait: TraitFactory<T>
): TypedExpression<T>

Create a Starter from a Device and a Trait and add it.

Parameters
device: HomeDevice

The HomeDevice associated with the Starter.

deviceType: DeviceTypeFactory<DeviceType>

The DeviceType associated with the Starter.

trait: TraitFactory<T>

The Trait associated with the Starter.

Returns
TypedExpression<T>

A Starter instance.

starter

open fun <T : Event> starter(
    structure: Structure,
    event: EventFactory<T>,
    block: ParametersBuilder.() -> Unit
): TypedExpression<T>

Create a Starter from a Structure and an Event and add it.

Parameters
structure: Structure

The Structure associated with the Starter.

event: EventFactory<T>

The Event associated with the Starter.

block: ParametersBuilder.() -> Unit

The parameters associated with the Starter.

Returns
TypedExpression<T>

A Starter instance.

starter

open fun <T : Event> starter(
    unknownEntity: UnknownEntity,
    entityType: TypeFactory<HomeObjectType>,
    event: EventFactory<T>
): TypedExpression<T>

Create a Starter from an UnknownEntity and an Event and add it. Automations created using this method will not be valid. This method can be used to create draft automations.

Parameters
unknownEntity: UnknownEntity

The entity associated with the Starter.

entityType: TypeFactory<HomeObjectType>

The type associated with the Starter.

event: EventFactory<T>

The Event associated with the Starter.

Returns
TypedExpression<T>

A Starter instance.

starter

open fun <T : Trait> starter(
    unknownEntity: UnknownEntity,
    entityType: TypeFactory<HomeObjectType>,
    trait: TraitFactory<T>
): TypedExpression<T>

Create a Starter from an UnknownEntity and a Trait and add it. Automations created using this method will not be valid. This method can be used to create draft automations.

Parameters
unknownEntity: UnknownEntity

The entity associated with the Starter.

entityType: TypeFactory<HomeObjectType>

The type associated with the Starter.

trait: TraitFactory<T>

The trait associated with the Starter.

Returns
TypedExpression<T>

A Starter instance.

starter

open fun <T : Event> starter(
    device: HomeDevice,
    deviceType: DeviceTypeFactory<DeviceType>,
    event: EventFactory<T>,
    block: ParametersBuilder.() -> Unit
): TypedExpression<T>

Create a Starter from a Device and a Trait and add it.

Parameters
device: HomeDevice

The HomeDevice associated with the Starter.

deviceType: DeviceTypeFactory<DeviceType>

The DeviceType associated with the Starter.

event: EventFactory<T>

The Event associated with the Starter.

block: ParametersBuilder.() -> Unit

The parameters associated with the Starter.

Returns
TypedExpression<T>

A Starter instance.