介绍
GS程序可以由设备事件触发启动,通过这个能力我们能订阅设备事件,并在设备事件触发的时候启动执行一段gs程序。
如何开发一个订阅设备事件的GS应用
我们先来设想一个场景:
假设我们给打印机发送了一个打印任务,打印任务放在打印队列里;这是打印机完成打印任务后,会发送一个打印成功事件。
这里我们假设打印机的物模型时printer,打印成功事件为 printer_result_event, 事件内容为
{
"taskId": "taskId-12334455"
}
1. 在项目的prog文件里配置对应的启动事件
name: lemo-test
script: src/lemo.gs
profile: lemo.xml
deviceType: printer
startEvent: printer_result_event
2. 编写GS脚本读取设备事件内容
var payload = arguments[0];
// 接下来是事件进行处理
// 可以调用业务接口,也可以打印日志
sys.print(payload); // 打印事件内容
3. 上传并部署应用
经过以上步骤,当printer发送printer_result_event的时候, 就能触发执行步骤2中的脚本逻辑。