• Public
  • Public/Protected
  • All

Defines meta information of an IO point.

This abstract base object has no associated framework base object type. For instantiation use one of the concrete subtypes IoSource or IoActor.





coreType: CoreType

The framework core type of the object, i.e. the name of the interface that defines the object's shape.

Optional externalId

externalId?: string

External ID associated with this object (optional)

Optional externalRoute

externalRoute?: string

A topic specification used for routing IO values from external sources to Coaty-defined IO actors or from Coaty-defined IO sources to external sinks (optional).

Only used for associating routes that are not created by an IO router, but defined by an external non-Coaty component.


Note that the format of an external route is binding-specific. In order to deliver IO values from/to an external source/actor, the format of the external route must correspond with the configured communication binding. That means, it must be in a valid format and must not have a Coaty-event-like shape. As the external route must be publishable and subscribable, it must not be pattern-based (no wildcard tokens allowed).

Optional isDeactivated

isDeactivated?: boolean

Marks an object that is no longer in use. The concrete definition meaning of this property is defined by the application. The property value is optional and should default to false.

Optional locationId

locationId?: string

Unique ID of Location object that this object has been associated with (optional).


name: string

The name/description of the object


objectId: string

Unique ID of the object


objectType: string

The concrete type name of the object.

The name should be in a canonical form following the naming convention for Java packages to avoid name collisions. All framework core types use the form coaty.<InterfaceName>, e.g. coaty.CoatyObject (see constants in CoreTypes class).


Object type names should be made up of characters in the range 0 to 9, a to z, A to Z, and dot (.).


All object types starting with coaty. are reserved for use by the Coaty framework and must not be used by applications to define custom object types.

Optional parentObjectId

parentObjectId?: string

Unique ID of parent/superordinate object (optional)

Optional updateRate

updateRate?: number

The update rate (in milliseconds) for publishing IoValue events:

  • desired rate for IO actors
  • maximum possible drain rate for IO sources

The IO router specifies the recommended update rate in Associate event data. If undefined, there is no limit on the rate of published events.

Optional useRawIoValues

useRawIoValues?: boolean

Determines whether IO values published by IO sources or received by IO actors should be treated as raw data that is not encoded/decoded as JSON objects.

In order to associate an IO source with an IO actor their values of this property must match, i.e. both properties must be either true or false to ensure that IO values transmitted between an IO source and and an IO actor can be properly encoded and decoded on each side.

Set this property to true to indicate that the IO source or IO actor should handle IO values in raw data format, i.e as a byte array of type Uint8Array (or Buffer in Node.js, a subclass thereof).

If set to false (default), the IO values sent by an IO source should be encodable as JSON and decodable as JSON by an associated IO actor.

Generated using TypeDoc