This page describes the events that can be sent by the OpenAction server to either plugins or property inspectors.
Fired on keypad key down.
Received by: Plugin
{
event: string = "keyDown",
// The action UUID supplied in the plugin manifest.
// Utilise to determine which action was triggered.
action: string,
// A unique value to identify the instance.
context: string,
// A unique value to identify the device.
device: string,
payload: {
// Instance settings as set using the `setSettings` event.
settings: any,
coordinates: {
row: number,
column: number
},
// The currently active state of this instance.
state: number,
// Whether or not this event was triggered as part of a Multi Action.
isInMultiAction: boolean
}
}
Fired on keypad key up.
Received by: Plugin
{
event: string = "keyUp",
action: string,
context: string,
device: string,
payload: {
settings: any,
coordinates: {
row: number,
column: number
},
state: number,
isInMultiAction: boolean
}
}
Fired on encoder dial down.
Received by: Plugin
{
event: string = "dialDown",
action: string,
context: string,
device: string,
payload: {
settings: any,
coordinates: {
row: number,
column: number
},
controller: string
}
}
Fired on encoder dial up.
Received by: Plugin
{
event: string = "dialUp",
action: string,
context: string,
device: string,
payload: {
settings: any,
coordinates: {
row: number,
column: number
},
controller: string
}
}
Fired on encoder dial rotate or encoder slider move.
Received by: Plugin
{
event: string = "dialRotate",
action: string,
context: string,
device: string,
payload: {
settings: any,
coordinates: {
row: number,
column: number
},
controller: string,
// For a dial, positive value signifies clockwise rotation, and a negative value signifies anticlockwise rotation.
// The lowest position is set as 0, and highest position is set as 192.
ticks: number,
pressed: boolean
}
}
Fired when the user switches to a profile containing this action, or a new instance of this action is created.
Received by: Plugin
{
event: string = "willAppear",
action: string,
context: string,
device: string,
payload: {
settings: any,
coordinates: {
row: number,
column: number
},
controller: string,
state: number,
isInMultiAction: boolean
}
}
Fired when the user switches from a profile containing this action, or an instance of this action is removed.
Received by: Plugin
{
event: string = "willDisappear",
action: string,
context: string,
device: string,
payload: {
settings: any,
coordinates: {
row: number,
column: number
},
controller: string,
state: number,
isInMultiAction: boolean
}
}
Fired when a device is connected.
The Stream Deck software supplies an additional field, an integer to designate the model of Stream Deck in use.
Received by: Plugin
{
event: string = "deviceDidConnect",
device: string,
deviceInfo: {
name: string,
size: {
rows: number,
columns: number
}
}
}
Fired when a device is disconnected.
The Stream Deck software supplies an additional field, an integer to designate the model of Stream Deck in use.
Received by: Plugin
{
event: string = "deviceDidDisconnect",
device: string
}
Fired when an action is selected and its property inspector appears.
Received by: Plugin
{
event: string = "propertyInspectorDidAppear",
action: string,
context: string,
device: string
}
Fired when an action is deselected and its property inspector disappears.
Received by: Plugin
{
event: string = "propertyInspectorDidDisappear",
action: string,
context: string,
device: string
}
Fired when the user changes the title parameters of an action.
{
event: string = "titleParametersDidChange",
action: string,
context: string,
device: string,
payload: {
settings: any,
coordinates: {
row: number,
column: number
},
state: number,
title: string,
titleParameters: {
fontFamily: string,
fontSize: number,
fontStyle: string,
fontUnderline: boolean,
showTitle: boolean,
titleAlignment: string,
titleColor: string
}
}
}
Fired in response to the getSettings
event. Additionally fired to the plugin when the property inspector uses setSettings
, and vice versa.
Received by: Plugin, Property inspector
{
event: string = "didReceiveSettings",
action: string,
context: string,
device: string,
payload: {
settings: any,
coordinates: {
row: number,
column: number
},
isInMultiAction: boolean
}
}
Fired in response to the getGlobalSettings
event. Additionally fired to the plugin when the property inspector uses setGlobalSettings
, and vice versa.
Received by: Plugin, Property inspector
{
event: string = "didReceiveGlobalSettings",
payload: {
settings: any
}
}
Fired when the property inspector uses the sendToPlugin
event.
Received by: Plugin
{
event: string = "sendToPlugin",
action: string,
context: string,
payload: any
}
Fired when the plugin uses the sendToPropertyInspector
event.
Received by: Property inspector
{
event: string = "sendToPropertyInspector",
action: string,
context: string,
payload: any
}