Device
A Device manages a set of
Inputs to Controllers.
Like all OsidObjects,
Device is managed by its
OsidSessions and may not be accessed by
concurrent processing threads.
| Name | Syntax | Many | Description |
|---|---|---|---|
| Identifiable | |||
id |
id | the Id |
|
| Extensible | |||
recordTypes |
type | ⋆ | the record types available |
| Browsable | |||
properties |
Property | ⋆ | a list of properties |
| OsidObject | |||
displayName |
displaytext | the display name | |
description |
displaytext | the description | |
genusType |
type | the genus type of this object | |
Controller
A Controller is an addressable
Operable that executes an action.
Controllers are related to
Devices through Inputs. A
few typical controller modes are defined such as a
toggle, a variable amount, and a set of discreet
states. Other kinds of controllers may be defined in a
ControllerRecord.
Like all OsidObjects,
Controller is managed by its
OsidSessions and may not be accessed by
concurrent processing threads.
| Name | Syntax | Many | Description |
|---|---|---|---|
| Identifiable | |||
id |
id | the Id |
|
| Extensible | |||
recordTypes |
type | ⋆ | the record types available |
| Browsable | |||
properties |
Property | ⋆ | a list of properties |
| OsidObject | |||
displayName |
displaytext | the display name | |
description |
displaytext | the description | |
genusType |
type | the genus type of this object | |
| Operable | |||
isActive |
boolean | true if this operable is active, false if it is
inactive |
|
isEnabled |
boolean | true if this operable is enabled, false if the
active status is determined by other rules |
|
isDisabled |
boolean | true if this operable is disabled, false if the
active status is determined by other rules |
|
isOperational |
boolean | true if this operable is operational, false
otherwise |
|
| Name | Syntax | Many | Description |
|---|---|---|---|
address |
string | the address | |
modelId |
id | the model Id |
|
model |
Model | the model | |
version |
Version | the version | |
isToggleable |
boolean | true if this controller can be toggled, false otherwise |
|
isVariable |
boolean | true if this controller has levels, false otherwise |
|
isVariableByPercentage |
boolean | true if this controller has levels as a percentage, false
otherwise |
|
variableMinimum |
decimal | the minimum level | |
variableMaximum |
decimal | the maximum level | |
variableIncrement |
decimal | the increment | |
hasDiscreetStates |
boolean | true if this controller has discreet states, false otherwise |
|
discreetStateIds |
id | ⋆ | a list of state Ids |
discreetStates |
State | ⋆ | a list of states |
isRampable |
boolean | true if this controller supports ramp rates, false otherwise |
Input
An Input is an
OsidRelationship between a
Device and a Controller. A
Controller is the point of control or
execution in a system while the Device is
the presentation. For example, a joystick device has
controllers for the stick and the firing buttons. The
firing button controllers may also appear on a
keyboard device. The Input describes how
to interact with the Controller (photon
torpedo) on the device (push button, press spacebar,
etc.).
Like all OsidObjects,
Input is managed by its
OsidSessions and may not be accessed by
concurrent processing threads.
| Name | Syntax | Many | Description |
|---|---|---|---|
| Identifiable | |||
id |
id | the Id |
|
| Extensible | |||
recordTypes |
type | ⋆ | the record types available |
| Browsable | |||
properties |
Property | ⋆ | a list of properties |
| OsidObject | |||
displayName |
displaytext | the display name | |
description |
displaytext | the description | |
genusType |
type | the genus type of this object | |
| Temporal | |||
isEffective |
boolean | true if this is effective, false otherwise |
|
startDate |
datetime | the start date | |
endDate |
datetime | the end date | |
| OsidRelationship | |||
hasEndReason |
boolean | true if an end reason is available, false
otherwise |
|
endReasonId |
id | a state Id |
|
endReason |
State | a state | |
| Name | Syntax | Many | Description |
|---|---|---|---|
deviceId |
id | the device Id |
|
device |
Device | the device | |
controllerId |
id | the controller Id |
|
controller |
Controller | the controller |
Setting
An Setting is a preset value for a
Controller.
Like all OsidObjects,
Setting is managed by its
OsidSessions and may not be accessed by
concurrent processing threads.
| Name | Syntax | Many | Description |
|---|---|---|---|
| Identifiable | |||
id |
id | the Id |
|
| Extensible | |||
recordTypes |
type | ⋆ | the record types available |
| Browsable | |||
properties |
Property | ⋆ | a list of properties |
| OsidObject | |||
displayName |
displaytext | the display name | |
description |
displaytext | the description | |
genusType |
type | the genus type of this object | |
| Name | Syntax | Many | Description |
|---|---|---|---|
controllerId |
id | the controller Id |
|
controller |
Controller | the controller | |
isOn |
boolean | true if the controller is on, false otherwise |
|
isOff |
boolean | true if the controller is iff, false otherwise |
|
variableAmount |
decimal | the level amount | |
discreetStateId |
id | the state Id |
|
discreetState |
State | the state | |
rampRate |
duration | the ramp rate |
Scene
A Scene is a collection of
Settings.
Like all OsidObjects,
Scene is managed by its
OsidSessions and may not be accessed by
concurrent processing threads.
| Name | Syntax | Many | Description |
|---|---|---|---|
| Identifiable | |||
id |
id | the Id |
|
| Extensible | |||
recordTypes |
type | ⋆ | the record types available |
| Browsable | |||
properties |
Property | ⋆ | a list of properties |
| OsidObject | |||
displayName |
displaytext | the display name | |
description |
displaytext | the description | |
genusType |
type | the genus type of this object | |
Trigger
A Trigger is an OsidRule
that listens to events from a Controller.
The ActionGroups, Scenes and
Settings are executed based on the event
criteria of the Trigger.
Like all OsidObjects,
Trigger is managed by its
OsidSessions and may not be accessed by
concurrent processing threads.
| Name | Syntax | Many | Description |
|---|---|---|---|
| Identifiable | |||
id |
id | the Id |
|
| Extensible | |||
recordTypes |
type | ⋆ | the record types available |
| Browsable | |||
properties |
Property | ⋆ | a list of properties |
| OsidObject | |||
displayName |
displaytext | the display name | |
description |
displaytext | the description | |
genusType |
type | the genus type of this object | |
| Operable | |||
isActive |
boolean | true if this operable is active, false if it is
inactive |
|
isEnabled |
boolean | true if this operable is enabled, false if the
active status is determined by other rules |
|
isDisabled |
boolean | true if this operable is disabled, false if the
active status is determined by other rules |
|
isOperational |
boolean | true if this operable is operational, false
otherwise |
|
| OsidRule | |||
hasRule |
boolean | true if an explicit rule is available, false
otherwise |
|
ruleId |
id | the rule Id |
|
rule |
Rule | the rule | |
conditionRecordTypes |
type | ⋆ | a list of OsidCondition record Types |
| Name | Syntax | Many | Description |
|---|---|---|---|
controllerId |
id | the controller Id |
|
controller |
Controller | the controller | |
turnedOn |
boolean | true if this is an ON event listener, false
otherwise |
|
turnedOff |
boolean | true if this is an OFF event listener, false
otherwise |
|
changedVariableAmount |
boolean | true if this is a change event listener, false
otherwise |
|
changedExceedsVariableAmount |
decimal | the max threshold | |
changedDeceedsVariableAmount |
decimal | the max threshold | |
changedDiscreetState |
boolean | true if this is a state change event listener,
false otherwise |
|
changedToDiscreetState |
boolean | true if this is a state change event, false
otherwise |
|
discreetStateId |
id | the state Id |
|
discreetState |
State | the state | |
actionGroupIds |
id | ⋆ | the action group Ids |
actionGroups |
ActionGroup | ⋆ | the action group |
sceneIds |
id | ⋆ | the scene Ids |
scenes |
Scene | ⋆ | the action group |
settingIds |
id | ⋆ | the setting Ids |
settings |
Setting | ⋆ | the action group |
Action Group
An ActionGroup is a list of
Actions to execute.
Like all OsidObjects,
ActionGroup is managed by its
OsidSessions and may not be accessed by
concurrent processing threads.
| Name | Syntax | Many | Description |
|---|---|---|---|
| Identifiable | |||
id |
id | the Id |
|
| Extensible | |||
recordTypes |
type | ⋆ | the record types available |
| Browsable | |||
properties |
Property | ⋆ | a list of properties |
| OsidObject | |||
displayName |
displaytext | the display name | |
description |
displaytext | the description | |
genusType |
type | the genus type of this object | |
Action
An Action executes a Scene,
Setting, another ActionGroup, or
other Rule. An Action is
also an OsidRule that may or may not be
active.
Like all OsidObjects,
Action is managed by its
OsidSessions and may not be accessed by
concurrent processing threads.
| Name | Syntax | Many | Description |
|---|---|---|---|
| Identifiable | |||
id |
id | the Id |
|
| Extensible | |||
recordTypes |
type | ⋆ | the record types available |
| Browsable | |||
properties |
Property | ⋆ | a list of properties |
| OsidObject | |||
displayName |
displaytext | the display name | |
description |
displaytext | the description | |
genusType |
type | the genus type of this object | |
| Operable | |||
isActive |
boolean | true if this operable is active, false if it is
inactive |
|
isEnabled |
boolean | true if this operable is enabled, false if the
active status is determined by other rules |
|
isDisabled |
boolean | true if this operable is disabled, false if the
active status is determined by other rules |
|
isOperational |
boolean | true if this operable is operational, false
otherwise |
|
| OsidRule | |||
hasRule |
boolean | true if an explicit rule is available, false
otherwise |
|
ruleId |
id | the rule Id |
|
rule |
Rule | the rule | |
conditionRecordTypes |
type | ⋆ | a list of OsidCondition record Types |
| Name | Syntax | Many | Description |
|---|---|---|---|
actionGroupId |
id | the action group Id |
|
actionGroup |
ActionGroup | the action group | |
delay |
duration | the delay | |
isBlocking |
boolean | true if blocking, false if subsequent actions
can begin before this action completes |
|
executesActionGroup |
boolean | true if this is a scene execution, false
otherwise |
|
nextActionGroupId |
id | the action group Id |
|
nextActionGroup |
ActionGroup | the action group | |
executesScene |
boolean | true if this is a scene execution, false
otherwise |
|
sceneId |
id | the scene Id |
|
scene |
Scene | the scene | |
executesSetting |
boolean | true if this is a setting execution, false
otherwise |
|
settingId |
id | the setting Id |
|
setting |
Setting | the setting | |
executesMatchingSetting |
boolean | true if this is a setting execution, false
otherwise |
|
matchingControllerId |
id | the controller Id |
|
matchingController |
Controller | the controller | |
matchingAmountFactor |
decimal | the factor | |
matchingRateFactor |
decimal | the factor |
System
A System represents a collection of
Devices, Inputs,
Controllers, Settings,
Triggers, ActionGroups, and
Scenes.
Like all OsidObjects,
System is managed by its
OsidSessions and may not be accessed by
concurrent processing threads.
| Name | Syntax | Many | Description |
|---|---|---|---|
| Identifiable | |||
id |
id | the Id |
|
| Extensible | |||
recordTypes |
type | ⋆ | the record types available |
| Browsable | |||
properties |
Property | ⋆ | a list of properties |
| OsidObject | |||
displayName |
displaytext | the display name | |
description |
displaytext | the description | |
genusType |
type | the genus type of this object | |
| Sourceable | |||
providerId |
id | the provider Id |
|
provider |
Resource | the provider | |
brandingIds |
id | ⋆ | a list of asset Ids |
branding |
Asset | ⋆ | a list of assets |
license |
displaytext | the license | |