//% 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`); } }