def _import_requirement_or_import():
    requirement = REQUIREMENTS
    try:
        from flask import Flask
    except ModuleNotFoundError:
        install_requirement(requirement)

    from flask import Flask
    global Flask
示例#2
0
 def _install_requirement_or_import(self):
     requirement = self.REQUIREMENTS
     try:
         import gpiozero, pigpio
     except ModuleNotFoundError:
         self.pub_notification(f'正在安装 {" ".join(requirement)}...')
         install_requirement(requirement)
         self.pub_notification(f'{" ".join(requirement)} 安装完成')
     from gpiozero import LED
     from gpiozero.pins.pigpio import PiGPIOFactory
     global LED, PiGPIOFactory
示例#3
0
 def _import_requirement_or_import(self):
     requirement = self.REQUIREMENTS
     try:
         from communitysdk import list_connected_devices, MotionSensorKit
     except ModuleNotFoundError:
         self.pub_notification(f'try to install {" ".join(requirement)}...')
         # 只有 local python 下才可用,adapter内置的python无法使用pip(extension)
         install_requirement(requirement)
         self.pub_notification(f'{" ".join(requirement)} installed!')
     from communitysdk import list_connected_devices, MotionSensorKit
     global list_connected_devices, MotionSensorKit
 def _install_requirement_or_import(self):
     requirement = self.REQUIREMENTS
     try:
         import cv2
     except ModuleNotFoundError:
         self.pub_notification(f'try to install {" ".join(requirement)}...')
         install_requirement(requirement)
         self.pub_notification(f'{" ".join(requirement)} installed!')
     import cv2
     import numpy as np
     global cv2, np
示例#5
0
 def _import_requirement_or_import(self):
     requirement = self.REQUIREMENTS
     try:
         import psonic
     except ModuleNotFoundError:
         self.pub_notification(f'正在安装 {" ".join(requirement)}...')
         # 只有 local python 下才可用,adapter内置的python无法使用pip(extension)
         install_requirement(requirement)
         self.pub_notification(f'{" ".join(requirement)} 安装完成')
     import psonic  # 使用点语法 from x import * 不在顶层 无效
     global psonic
 def _import_requirement_or_import(self):
     requirement = self.REQUIREMENTS
     try:
         importlib.import_module("cozmo")
     except ModuleNotFoundError:
         self.pub_notification(f'try to install {" ".join(requirement)}...')
         install_requirement(requirement)
         self.pub_notification(f'{" ".join(requirement)} installed!')
     importlib.import_module("cozmo")
     import cozmo
     from cozmo.util import degrees, distance_mm, speed_mmps
     global cozmo, degrees, distance_mm, speed_mmps  # make it global
    def _import_requirement_or_import(self):
        requirement = self.REQUIREMENTS
        try:
            from mcpi import minecraft
            from minecraftstuff import MinecraftTurtle
        except ModuleNotFoundError:
            self.pub_notification(f'try to install {" ".join(requirement)}...')
            install_requirement(requirement)
            self.pub_notification(f'{" ".join(requirement)} installed!')

        from mcpi import minecraft
        from minecraftstuff import MinecraftTurtle

        global minecraft, MinecraftTurtle
    def _import_requirement_or_import(self):
        requirement = self.REQUIREMENTS
        try:
            import openadk
        except ModuleNotFoundError:
            self.pub_notification(f'try to install {" ".join(requirement)}...')
            install_requirement(requirement)
            self.pub_notification(f'{" ".join(requirement)} installed!')

        import openadk
        from openadk.rest import ApiException
        from openadk.models.motions_parameter import MotionsParameter
        from openadk.models.motions_operation import MotionsOperation
        from openadk.api.motions_api import MotionsApi

        global openadk, ApiException, MotionsParameter, MotionsOperation, MotionsApi
 def _install_requirement(self):  # to install jupyterlab
     self.pub_notification(f"jupyterlab is being installed...")
     output = install_requirement(self.REQUIREMENTS)
     if output == 0:
         self.pub_notification("jupyterlab installed!")
         self.env_manage.set_env(None)  # update env
'''
HCI: human–machine interaction
本插件支持将任何输入映射为鼠标键盘行为
'''

import queue
import time
from codelab_adapter_client import AdapterNode
from codelab_adapter_client.utils import install_requirement

try:
    import pyautogui
except ModuleNotFoundError:
    REQUIREMENTS = ["pyautogui"]
    install_requirement(REQUIREMENTS)
    import pyautogui


class HCINode(AdapterNode):
    NODE_ID = "eim/node_HCI"
    WEIGHT = 98
    HELP_URL = "https://adapter.codelab.club/extension_guide/HCI/"
    DESCRIPTION = "接管鼠标键盘"
    VERSION = "1.1.0"

    def __init__(self, **kwargs):
        super().__init__(**kwargs)
        self.q = queue.Queue()

    def extension_message_handle(self, topic, payload):
        python_code = payload["content"]
示例#11
0
# python3 -m pip  install yeelight

import time

from loguru import logger
from codelab_adapter_client import AdapterNode
from codelab_adapter_client.utils import install_requirement

try:
    from yeelight import discover_bulbs, Bulb
except ModuleNotFoundError:
    install_requirement(requirement)
    from yeelight import discover_bulbs, Bulb


class LightProxy:
    '''
    自维护
    支持连接多盏灯
    '''
    def __init__(self, node=None):
        self.node = node
        self.is_connected = False  # todo 装饰器, 确认某件事才往下,否则返回错误信息, require connect,每次确保某件事发生
        self.lights = []

    def _ensure_connect(self):
        if not self.is_connected:
            raise Exception("Device not connected!")

    def list(self):
        results = discover_bulbs()
 def _install_requirement(self):  # to install jupyterlab
     self.pub_notification("正在安装 JupyterLab...")
     output = install_requirement(self.REQUIREMENTS)
     if output == 0:
         self.pub_notification("JupyterLab 安装完成")
         self.env_manage.set_env(None)  # update env