发送的事件
插件可以发送到 Stream Dock 应用程序的事件
插件和 PropertyInspector(属性检查器) 都可以发送的事件:
Event | 描述 |
---|---|
setSettings | 持久保存操作实例的数据 |
getSettings | 请求操作实例的持久性数据 |
setGlobalSettings | 全局保存插件的数据 |
getGlobalSettings | 请求全局持久性数据 |
openUrl | 在默认浏览器中打开 URL |
logMessage | 将调试日志写入日志文件 |
插件可以发送的额外事件:
Event | 描述 |
---|---|
setTitle | 动态更改操作实例的标题 |
setImage | 动态更改操作实例的图片 |
showAlert | 在操作实例显示的图像上临时显示警报图标 |
showOk | 在操作实例显示的图像上临时显示“确定”复选标记图标 |
setState | 更改支持多种状态的操作实例的状态 |
sendToPropertyInspector | 发送数据到 PropertyInspector(属性检查器) |
PropertyInspector(属性检查器)可以发送的额外事件:
Event | 描述 |
---|---|
sendToPlugin | 向插件发送数据 |
setSettings
插件和属性检查器可以使用该事件为操作实例永久保存数据
{
"event": "setSettings",
"context": uniqueValue,
"payload": {<json data>}
}
成员 | 描述 |
---|---|
event | setSettings |
context | 标识实例操作的值 |
payload | 插件或属性检查器发送的数据 |
TIP
请注意,当插件使用此 API 时,属性检查器将自动收到一个didReceiveSettings使用新settings进行回调。同样,当属性检查器使用此 API 时,插件将自动收到一个didReceiveSettings使用新settings进行回调
getSettings
插件和属性检查器可以使用该事件请求操作实例存储的持久性数据
{
"event": "getSettings",
"context": uniqueValue
}
成员 | 描述 |
---|---|
event | getSettings |
context | 标识实例操作的值 |
插件或属性检查器将异步接收事件didReceiveSettings包含此操作的settings
{
"action": "com.mirabox.demo.action1",
"event": "didReceiveSettings",
"context": uniqueValue,
"device": uniqueValue,
"payload": {
"settings": {<json data>},
"coordinates": {
"column": 3,
"row": 1
},
"isInMultiAction": false
}
}
setGlobalSettings
插件和属性检查器可以全局保存持久数据。数据将安全地保存到 macOS 上的 Keychain 或 Windows 上的 Credential Store。此 API 可用于保存插件中每个操作都应可用的token
{
"event": "setGlobalSettings",
"context": uniqueValue,
"payload": {<json data>}
}
成员 | 描述 |
---|---|
event | setGlobalSettings |
context | 标识实例操作的值 |
payload | 需要保存的数据 |
TIP
请注意,当插件使用此 API 时,Property Inspector 将自动收到带有新settings的 didReceiveGlobalSettings 回调。同样,当 Property Inspector 使用此 API 将自动收到带有新settings的 didReceiveGlobalSettings 回调
getGlobalSettings
插件和属性检查器可以使用该事件请求全局存储的持久性数据
{
"event": "getGlobalSettings",
"context": uniqueValue
}
成员 | 描述 |
---|---|
event | getGlobalSettings |
context | 标识实例操作的值 |
插件或属性检查器将异步接收事件didReceiveGlobalSettings包含 global settings
{
"event": "didReceiveGlobalSettings",
"payload": {
"settings": {<json data>}
}
}
openUrl
插件或属性检查器可以使用该事件在默认浏览器中打开 URL
{
"event": "openUrl",
"payload": {
"url": "https://www.example.com"
}
}
成员 | 描述 |
---|---|
event | openUrl |
payload | json对象 |
payload 对象包含以下成员:
payload | 描述 |
---|---|
url | 要打开的url |
logMessage
插件或属性检查器可以使用该事件将调试日志写入日志文件
{
"event": "logMessage",
"payload": {
"message": "Hello World!"
}
}
成员 | 描述 |
---|---|
event | logMessage |
payload | json对象 |
payload 对象包含以下成员:
payload | 描述 |
---|---|
message | 要写入日志文件的消息 |
setTitle
插件可以使用该事件动态更改操作实例的标题
{
"event": "setTitle",
"context": uniqueValue,
"payload": {
"title": "MyTitle",
"target": software, hardware or both,
"state": 0-based integer
}
}
成员 | 描述 |
---|---|
event | setTitle |
context | 标识实例操作的值 |
payload | json对象 |
payload 对象包含以下成员:
| payload | 描述 | | title | 要设置的标题 | | target | 指定是要在硬件和软件 上显示标题 (0),仅在硬件上显示(1),仅在软件上显示(2),默认为0 | | state | 一个从 0 开始的整数值,表示具有多个状态的操作的状态。如果未指定,则标题将设置为所有状态 |
setImage
插件可以使用该事件动态更改操作实例的图片
{
"event": "setImage",
"context": uniqueValue,
"payload": {
"image": <base64 encoded image>,
"target": software, hardware or both,
"state": 0-based integer
}
}
成员 | 描述 |
---|---|
event | setImage |
context | 标识实例操作的值 |
payload | json对象 |
payload 对象包含以下成员:
payload | 描述 |
---|---|
image | 要设置的图片的 base64 编码 |
target | 指定是要在硬件和软件上显示图片 (0),仅在硬件上显示(1),仅在软件上显示(2),默认为0 |
state | 一个从 0 开始的整数值,表示具有多个状态的操作的状态。如果未指定,则标题将设置为所有状态 |
base64 编码图像示例:
"data:image/png;base64,avFOdwp0Ksgoe..."
"data:image/jpg;base64,avFOdwp0Ksgoe..."
"data:image/gif;base64,avFOdwp0Ksgoe..."
此 API 接受还 svg 图像,下面是一个带有 svg 图像的示例
{
"event": "setImage",
"context": context,
"payload": {
"image": "data:image/svg+xml;charset=utf8,<svg></svg>",
"target": 0
}
}
showAlert
插件可以使用该事件在操作上显示一个临时的警告图标
{
"event": "showAlert",
"context": uniqueValue
}
成员 | 描述 |
---|---|
event | showAlert |
context | 标识实例操作的值 |
showOk
插件可以使用该事件在操作上显示一个临时的 OK 复选标记图标
{
"event": "showOk",
"context": uniqueValue
}
成员 | 描述 |
---|---|
event | showOk |
context | 标识实例操作的值 |
setState
插件可以使用该事件动态更改操作实例的状态
{
"event": "setState",
"context": uniqueValue,
"payload": {
state
}
}
成员 | 描述 |
---|---|
event | setState |
context | 标识实例操作的值 |
payload | json对象 |
payload 对象包含以下成员:
payload | 描述 |
---|---|
state | 一个从 0 开始的整数值,表示具有多个状态的操作的状态 |
sendToPropertyInspector
插件可以使用该事件向属性检查器发送数据
{
"action": "com.mirabox.demo.action1",
"event": "sendToPropertyInspector",
"context": uniqueValue,
"payload": {<json data>}
}
成员 | 描述 |
---|---|
action | 操作的唯一标识符 |
event | sendToPropertyInspector |
context | 标识实例操作的值 |
payload | json对象 |
属性检查器将异步接收事件sendToPropertyInspector
{
"action": "com.mirabox.demo.action1",
"event": "sendToPropertyInspector",
"context": uniqueValue,
"payload": {<json data>}
}
sendToPlugin
属性检查器可以使用该事件向插件发送数据
{
"action": "com.mirabox.demo.action1",
"event": "sendToPlugin",
"context": uniqueValue,
"payload": {<json data>}
}
成员 | 描述 |
---|---|
action | 操作的唯一标识符 |
event | sendToPlugin |
context | 标识实例操作的值 |
payload | json对象 |
插件将异步接收事件sendToPlugin
{
"action": "com.mirabox.demo.action1",
"event": "sendToPlugin",
"context": uniqueValue,
"payload": {<json data>}
}