Files
makergensdk-mindv1-python/python/main.ts
2026-04-04 14:17:29 +08:00

47 lines
1.6 KiB
TypeScript

//% color="#cf1256" iconWidth=50 iconHeight=40
namespace makergen{
//% block="连接设备 设备ID [ID] Device Key [KEY] 基础URL [BASEURL]" blockType="command"
//% ID.shadow="string"
//% KEY.shadow="string"
//% BASEURL.shadow="string"
//% BASEURL.defl="wss://api.makergen.cn"
export function connect(parameter: any, block: any) {
let id=parameter.ID.code;
let key=parameter.KEY.code;
let baseurl=parameter.BASEURL.code;
Generator.addImport(`\nimport makergen\n`);
Generator.addCode(`makergen_device = makergen.Device(${id},${key},on_msg_callback=(makergen_callback if "makergen_callback" in dir() else None), base_url=${baseurl})\nmakergen_device.connect()\n`);
}
//% block="向数据点 [POINT] 发送数据 [VALUE]" blockType="command"
//% POINT.shadow="string"
//% VALUE.shadow="normal"
export function send_msg(parameter: any, block: any) {
let point=parameter.POINT.code;
let value=parameter.VALUE.code;
Generator.addCode(`makergen_device.send_data(${point},${value})\n`);
}
//% block="当接收到消息时" blockType="hat"
export function on_msg(msg: any) {
Generator.addEvent("makergen_callback", "makergen_callback", "point, value", false);
}
//% block="---"
export function separator() {}
//% block="控制点" blockType="reporter"
export function get_point(parameter: any, block: any) {
Generator.addCode(`point`);
}
//% block="控制值" blockType="reporter"
export function get_value(parameter: any, block: any) {
Generator.addCode(`value`);
}
}