""" 使用云服务之前, 需要传入配置文件, 并启动云服务, 详见进阶篇中的操作使用云服务 """ from usr.bin.guard import GuardContext import utime # 刷新容器 guard_context = GuardContext() guard_context.refresh() # 获取云服务 cloud_ser = guard_context.get_server("cloud") "==============================================第一种方法===================================" """ 这是非同步的, 所以需要sleep 2秒 """ # # 加载优先级低的服务 并拉起 # guard_context.reload() # # # 等待下载, 因为是异步的这里可以等待2s # utime.sleep(2) # if cloud_ser.get_app_code() == "3001": # # 重启设备 # pass "=============================================第二种========================================" """ 此为订阅此升级事件 """ def func(*args, **kwargs): """ :param args: ('anonymous',) 发送人, 默认是'anonymous'无需关心 :param kwargs: 格式如下 { 'message':{ 'message_id':2, # 消息ID 'sender':'anonymous', # 发送人 'message':'xxx', # 来的消息, 'from_event':'CLOUD', # 从哪个事件或服务来的 'msg_type':255 # 消息类型, 默认是255 } } :return: """ if kwargs['message']['message'] == '3001': # 重启模块, 调用power接口 pass # 订阅服务 cloud_ser.subscribe(func) # reload容器 guard_context.reload()