事件通知

SDK 每次通过回调返回一个 JSON 事件对象,顶层字段名表示事件类型。

以下示例使用 C 接口返回的 camelCase 字段名,例如 printStarted。字段不存在时,应按对应类型的默认值处理。

printStarted

返回打印启动结果。

字段类型说明
successbool高压是否成功开启;false 表示启动失败
messagestring附加状态信息;部分喷头状态异常但启动成功时,也可能包含该字段
{"printStarted":{"success":true}}
{"printStarted":{"message":"高压使能失败"}}

部分成功结果也可能包含说明:

{"printStarted":{"success":true,"message":"部分喷头状态异常"}}

upgradeStatus

返回升级处理状态。

字段类型说明
keystring升级目标
statusstringparsing、progress、ready 或 failed
messagestring进度、结果或失败信息;任意状态下均可能存在
{"upgradeStatus":{"key":"SYSTEM","status":"parsing"}}
{"upgradeStatus":{"key":"SYSTEM","status":"ready"}}
{"upgradeStatus":{"key":"SYSTEM","status":"failed","message":"升级文件无效"}}

驱动板升级时,status 可能为 progress,message 可能包含百分比,例如 "42%"。

状态顺序:

  • 整机升级:parsing → ready 或 failed
  • 驱动板升级:parsing → 零个或多个 progress → ready 或 failed

ready 表示:整机升级文件已经就绪,可以按产品手册执行后续步骤;驱动板升级表示固件已经写入完成。

triggerSignal

返回触发信号状态。

字段类型说明
statusstringon 或 off
{"triggerSignal":{"status":"on"}}

encoderSpeed

返回编码器脉冲频率信息。

字段类型说明
speedint编码器脉冲频率,单位为每秒脉冲数(pps)
pprAint编码器 A 相每转脉冲数(PPR)
pprBint编码器 B 相每转脉冲数(PPR)
{"encoderSpeed":{"speed":123,"pprA":100,"pprB":200}}

fpgaStatus

返回 FPGA 状态码。

字段类型说明
codeintFPGA 状态码
{"fpgaStatus":{"code":12}}

printComplete

返回打印完成通知。该事件没有字段。

{"printComplete":{}}

处理建议

  • 使用顶层事件名称选择处理逻辑。
  • 可选字段不存在时使用默认值。
  • 遇到未知事件时忽略,保持后续版本兼容。
  • 不要在回调中执行长时间阻塞操作。