From 1ac8e9b4041e81519a8015435daf0e169d44f746 Mon Sep 17 00:00:00 2001 From: momom Date: Sat, 4 Apr 2026 13:06:12 +0800 Subject: [PATCH] init --- LICENSE.TXT | 21 +++++++ README.md | 3 + config.json | 26 ++++++++ python/_images/featured.png | Bin 0 -> 129140 bytes python/_images/icon.svg | 26 ++++++++ python/_menus/index.json | 3 + python/libraries/LICENSE | 22 +++++++ python/libraries/makergen/__init__.py | 7 +++ python/libraries/makergen/core.py | 85 ++++++++++++++++++++++++++ python/libraries/requirements.txt | 1 + python/main.ts | 46 ++++++++++++++ 11 files changed, 240 insertions(+) create mode 100644 LICENSE.TXT create mode 100644 README.md create mode 100644 config.json create mode 100644 python/_images/featured.png create mode 100644 python/_images/icon.svg create mode 100644 python/_menus/index.json create mode 100644 python/libraries/LICENSE create mode 100644 python/libraries/makergen/__init__.py create mode 100644 python/libraries/makergen/core.py create mode 100644 python/libraries/requirements.txt create mode 100644 python/main.ts diff --git a/LICENSE.TXT b/LICENSE.TXT new file mode 100644 index 0000000..9740f59 --- /dev/null +++ b/LICENSE.TXT @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2026 QmiTek (https://qmikeji.cn) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 0000000..f24bcf1 --- /dev/null +++ b/README.md @@ -0,0 +1,3 @@ +# Makergen 开发工具 + +郭铭浩说了,文档他写 \ No newline at end of file diff --git a/config.json b/config.json new file mode 100644 index 0000000..53e2e13 --- /dev/null +++ b/config.json @@ -0,0 +1,26 @@ +{ + "name": { + "zh-cn": "makergen开发工具", + "en": "makergen SDK" + }, + "description": { + "zh-cn": "makergen开发工具。允许用户连接makergen页面", + "en": "makergen SDK for makergen users" + }, + "author": "QmiTek", + "email": "qmi@qmikeji.cn", + "license": "MIT", + "isBoard": false, + "id": "makergen", + "platform": ["win","mac","web","linux"], + "version": "0.0.1", + "asset": { + "python": { + "dir": "python/", + "main": "main.ts", + "dependencies": { + "websocket-client":"1.9.0" + } + } +} +} \ No newline at end of file diff --git a/python/_images/featured.png b/python/_images/featured.png new file mode 100644 index 0000000000000000000000000000000000000000..6d40a6a5053214946286e14be1e63d1e86395ad4 GIT binary patch literal 129140 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�YaUBb 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 literal 0 HcmV?d00001 diff --git a/python/_images/icon.svg b/python/_images/icon.svg new file mode 100644 index 0000000..37fec90 --- /dev/null +++ b/python/_images/icon.svg @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/python/_menus/index.json b/python/_menus/index.json new file mode 100644 index 0000000..0db3279 --- /dev/null +++ b/python/_menus/index.json @@ -0,0 +1,3 @@ +{ + +} diff --git a/python/libraries/LICENSE b/python/libraries/LICENSE new file mode 100644 index 0000000..e412f7a --- /dev/null +++ b/python/libraries/LICENSE @@ -0,0 +1,22 @@ +MIT License + +Copyright (c) 2026 QmiTek (https://qmikeji.cn) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + diff --git a/python/libraries/makergen/__init__.py b/python/libraries/makergen/__init__.py new file mode 100644 index 0000000..a054937 --- /dev/null +++ b/python/libraries/makergen/__init__.py @@ -0,0 +1,7 @@ +"""适配makergen的Python SDK""" + +__version__ = '0.1.0' + +from makergen.core import Device + +__all__ = ["Device"] diff --git a/python/libraries/makergen/core.py b/python/libraries/makergen/core.py new file mode 100644 index 0000000..5b88bfd --- /dev/null +++ b/python/libraries/makergen/core.py @@ -0,0 +1,85 @@ +import json +import threading +import time +from json import JSONDecodeError +from typing import Callable, Optional + +import websocket + + +class ServerException(Exception): + pass + + +class Device: + def __init__(self, device_id: str, device_key: str, + on_msg_callback: Optional[Callable[[str, any], None]] = lambda point, value : print(point, value), + on_error_callback: Optional[Callable[[Exception], None]] = lambda error: print(error), + base_url: str = "wss://api.makergen.cn"): + """ + 创建一个设备对象。需要调用connect方法才能真正连接。 + :param device_id: 设备ID,在控制台设备管理中显示 + :param device_key: Device Key,在控制台设备管理中显示 + :param on_msg_callback: 当收到消息后的回调。接收两个参数,第一个参数为控制点,字符串型;第二个参数为控制值,任意类型 + :param on_error_callback: 当遇到错误时的回调。接收一个参数,为错误对象;若遇到服务器或页面发送的消息不合规,传入ServerException对象 + :param base_url: makergen的基础URL,通常为wss://api.makergen.cn + """ + url = f"{base_url if base_url[-1] == '/' else base_url + "/"}ws/device/{device_id}?key={device_key}" + print(url) + self.ws = websocket.WebSocketApp( + url, + on_open=self._on_open, + on_message=self._on_message, + on_close=self._on_close, + on_error=self._on_error, + ) + self.on_msg_callback = on_msg_callback if on_msg_callback is not None else lambda _, __ : None + self.on_error_callback = on_error_callback if on_error_callback is not None else lambda _ : None + self.is_connected = False + + def _on_open(self, ws): + self.is_connected = True + def _on_close(self, ws, close_status_code, close_msg): + self.is_connected = False + + def _on_message(self, ws, message): + try: + message_str = json.loads(message)["payload"] + self.on_msg_callback(message_str["point"], message_str["value"]) + except (KeyError, JSONDecodeError): + self.on_error_callback(ServerException("Page or server sent an invalid message")) + except Exception as e: + self.on_error_callback(e) + + def _on_error(self, ws, error): + self.on_error_callback(error) + + def send_data(self, point: str, value: str): + self.ws.send(json.dumps({ + "type": "data", + "payload": { + "point": point, + "value": value + }, + "timestamp": int(time.time() * 1000) + })) + + def connect(self, timeout: float = 5.0): + """ + 在新线程中运行客户端循环(推荐) + """ + wst = threading.Thread(target=self.ws.run_forever) + wst.daemon = True + wst.start() + start_time = time.time() + while not self.is_connected: + if time.time() - start_time > timeout: + if not self.is_connected: + self.on_error_callback(TimeoutError(f"WebSocket connection timed out after {timeout} seconds")) + time.sleep(0.05) + +def main_loop(self): + """ + 在当前线程中运行客户端循环(不推荐) + """ + self.ws.run_forever() \ No newline at end of file diff --git a/python/libraries/requirements.txt b/python/libraries/requirements.txt new file mode 100644 index 0000000..2f738ef --- /dev/null +++ b/python/libraries/requirements.txt @@ -0,0 +1 @@ +websocket-client==1.9.0 diff --git a/python/main.ts b/python/main.ts new file mode 100644 index 0000000..b9cbf27 --- /dev/null +++ b/python/main.ts @@ -0,0 +1,46 @@ + +//% 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\nmakergen_device = makergen.Device(${id},${key},on_msg_callback=makergen_callback, base_url=${baseurl})\n`); + Generator.addCode(`makergen_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},str(${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`); + } + + +}