API v1
Documentation/维护附录

进程通信

记录宿主与后台 SDK 的消息格式和处理顺序。

Plugin API v1

Documentation content is currently available in Simplified Chinese.

这一页用于维护飞块宿主和 SDK。插件开发时使用 definePlugin() 与 context;SDK 会构造和处理下面的消息。

#消息对象

后台使用 Node.js 进程 IPC 传递消息,日志仍走 stdout 和 stderr。

字段 类型 用途
apiVersion number 当前为 1
id string 消息 ID
type string 消息类型,见下表
action string 命令、事件或能力名称
data unknown 与该名称对应的 JSON 数据
requestId string,可选 关联请求和响应
timestamp number 发送时间

宿主从已绑定的后台进程识别插件,消息中的业务数据只提供这次调用所需的参数。

#消息类型

type 方向 用途
command 宿主 → 后台 执行动作或其他处理函数
response 后台 → 宿主 返回命令结果
error 后台 → 宿主 返回命令错误
event 后台 → 宿主 ready、startup_error 等生命周期事件
capability_request 后台 → 宿主 请求 SDK 宿主能力
capability_response 宿主 → 后台 返回宿主能力结果,失败时包含 error

#命令名称

action 处理入口
invoke_action actions[actionId]
invoke_service services[serviceId][method]
query_widget_options widgetOptions[widgetId][field]
request_data_provider dataProviders[providerId]
invoke_widget_action widgetActions[widgetId][actionId]
ping 返回 alive
stop 调用 onStop()

SDK 用 requestId 匹配完成结果。请求结束或超时后,等待项被移除,之后到达的响应不再完成同一次请求。宿主每 30 秒检查后台响应,连续三次失败后结束进程。

#就绪事件

ready.data 包含实际注册的动作、服务方法、动态选项、数据提供者和实例操作。宿主核对这些信息与清单声明后,进入运行状态。启动失败则通过 startup_error 传递错误消息。