Device
A Device manages a set of
Inputs to Controllers.
| 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.
| 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.).
| 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.
| 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.
| 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.
| 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.
| 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.
| 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.
| 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 | |