interface EthernetNetworkDiagnosticsBehavior {
    [reference]: Datasource<StateType>;
    agent: Agent;
    cluster: never;
    context: ActionContext;
    endpoint: Endpoint<Empty>;
    env: Environment;
    events: EventEmitter & Omit<ClusterEvents<Of<{
        attributes: {};
        commands: {};
        events: {};
        id: 0;
        name: "Unknown";
        revision: 0;
    }>, typeof ClusterBehavior>, never> & {} & {
        carrierDetect$Changing: undefined | ClusterEvents.AttributeObservable<OptionalAttribute<null | boolean, any>>;
        fullDuplex$Changing: undefined | ClusterEvents.AttributeObservable<OptionalAttribute<null | boolean, any>>;
        phyRate$Changing: undefined | ClusterEvents.AttributeObservable<OptionalAttribute<null | EthernetNetworkDiagnostics.PhyRate, any>>;
        timeSinceReset$Changing: undefined | ClusterEvents.AttributeObservable<OptionalAttribute<number | bigint, any>>;
    } & {} & {
        carrierDetect$Changed: undefined | ClusterEvents.AttributeObservable<OptionalAttribute<null | boolean, any>>;
        fullDuplex$Changed: undefined | ClusterEvents.AttributeObservable<OptionalAttribute<null | boolean, any>>;
        phyRate$Changed: undefined | ClusterEvents.AttributeObservable<OptionalAttribute<null | EthernetNetworkDiagnostics.PhyRate, any>>;
        timeSinceReset$Changed: undefined | ClusterEvents.AttributeObservable<OptionalAttribute<number | bigint, any>>;
    } & {} & {};
    features: TypeFromBitSchema<{}> & TypeFromBitSchema<{
        errorCounts: BitFlag;
        packetCounts: BitFlag;
    }>;
    session: SecureSession;
    state: Omit<ClusterState.Type<Of<{
        attributes: {};
        commands: {};
        events: {};
        id: 0;
        name: "Unknown";
        revision: 0;
    }>, typeof ClusterBehavior>, never> & {} & {
        carrierDetect?: null | boolean;
        fullDuplex?: null | boolean;
        phyRate?: null | EthernetNetworkDiagnostics.PhyRate;
        timeSinceReset?: number | bigint;
    } & {} & {};
    [asyncDispose](): MaybePromise;
    asAdmin(fn: (() => void)): void;
    assertAttributeEnabled<This, K>(this: This, attributeName: K): void;
    callback<A, R>(reactor: Reactor<A, R>, options?: Reactor.Options): ((...args: A) => undefined | R);
    initialize(_options?: {}): MaybePromise;
    reactTo<O>(observable: O, reactor: Reactor<Parameters<O["emit"]>, ReturnType<O["emit"]>>, options?: Reactor.Options): void;
    requireAttributeEnabled<This, K>(this: This, attributeName: K): Exclude<This["state"][K], undefined>;
    toString(): string;
    State: any;
}

Hierarchy (view full)

Properties

[reference]: Datasource<StateType>
agent: Agent
cluster: never

The implemented cluster.

context: ActionContext
endpoint: Endpoint<Empty>
events: EventEmitter & Omit<ClusterEvents<Of<{
    attributes: {};
    commands: {};
    events: {};
    id: 0;
    name: "Unknown";
    revision: 0;
}>, typeof ClusterBehavior>, never> & {} & {
    carrierDetect$Changing: undefined | ClusterEvents.AttributeObservable<OptionalAttribute<null | boolean, any>>;
    fullDuplex$Changing: undefined | ClusterEvents.AttributeObservable<OptionalAttribute<null | boolean, any>>;
    phyRate$Changing: undefined | ClusterEvents.AttributeObservable<OptionalAttribute<null | EthernetNetworkDiagnostics.PhyRate, any>>;
    timeSinceReset$Changing: undefined | ClusterEvents.AttributeObservable<OptionalAttribute<number | bigint, any>>;
} & {} & {
    carrierDetect$Changed: undefined | ClusterEvents.AttributeObservable<OptionalAttribute<null | boolean, any>>;
    fullDuplex$Changed: undefined | ClusterEvents.AttributeObservable<OptionalAttribute<null | boolean, any>>;
    phyRate$Changed: undefined | ClusterEvents.AttributeObservable<OptionalAttribute<null | EthernetNetworkDiagnostics.PhyRate, any>>;
    timeSinceReset$Changed: undefined | ClusterEvents.AttributeObservable<OptionalAttribute<number | bigint, any>>;
} & {} & {}

Access the behavior's events.

features: TypeFromBitSchema<{}> & TypeFromBitSchema<{
    errorCounts: BitFlag;
    packetCounts: BitFlag;
}>

Supported features as a flag object.

session: SecureSession
state: Omit<ClusterState.Type<Of<{
    attributes: {};
    commands: {};
    events: {};
    id: 0;
    name: "Unknown";
    revision: 0;
}>, typeof ClusterBehavior>, never> & {} & {
    carrierDetect?: null | boolean;
    fullDuplex?: null | boolean;
    phyRate?: null | EthernetNetworkDiagnostics.PhyRate;
    timeSinceReset?: number | bigint;
} & {} & {}

Access the behavior's state.

Type declaration

  • Optional ReadonlycarrierDetect?: null | boolean

    The CarrierDetect attribute shall indicate the value of the Carrier Detect control signal present on the ethernet network interface. A value of null shall indicate that the interface is not currently configured or operational.

    MatterSpecification.v13.Core § 11.16.6.8

  • Optional ReadonlyfullDuplex?: null | boolean

    The FullDuplex attribute shall indicate if the Node is currently utilizing the full-duplex operating mode. A value of null shall indicate that the interface is not currently configured or operational.

    MatterSpecification.v13.Core § 11.16.6.2

  • Optional ReadonlyphyRate?: null | EthernetNetworkDiagnostics.PhyRate

    The PHYRate attribute shall indicate the current nominal, usable speed at the top of the physical layer of the Node. A value of null shall indicate that the interface is not currently configured or operational.

    MatterSpecification.v13.Core § 11.16.6.1

  • Optional ReadonlytimeSinceReset?: number | bigint

    The TimeSinceReset attribute shall indicate the duration of time, in minutes, that it has been since the ethernet network interface has reset for any reason.

    MatterSpecification.v13.Core § 11.16.6.9

Methods

  • Create a generic callback function that has the same properties as a Reactor.

    Like a reactor, the callback's "this" will be bound to an active Behavior instance. Because of this: The reactor MUST be a real JS function - arrow functions will not work!

    Type Parameters

    • A extends any[]
    • R

    Parameters

    Returns ((...args: A) => undefined | R)

      • (...args): undefined | R
      • Parameters

        • Rest...args: A

        Returns undefined | R

  • Behaviors are ephemeral and should not perform initialization in their constructor. They can override this method instead.

    This method may be synchronous or asyncronous. If asynchronous, the behavior will not be available for external use until initialization completes.

    Parameters

    • Optional_options: {}

      Returns MaybePromise

    • Install a Reactor.

      Important: The reactor MUST be a real JS function - arrow functions will not work!

      Type Parameters

      Parameters

      Returns void