test.test_connect 源代码

import asyncio
import logging

import mini.mini_sdk as MiniSdk
from mini.dns.dns_browser import WiFiDevice


# 搜索指定序列号(在机器人屁股后面)的机器人, 可以只输入序列号尾部字符即可,长度任意, 建议5个字符以上可以准确匹配, 10秒超时
# 搜索的结果WiFiDevice, 包含机器人名称,ip,port等信息
[文档]async def test_get_device_by_name(): """根据机器人序列号后缀搜索设备 搜索指定序列号(在机器人屁股后面)的机器人, 可以只输入序列号尾部字符即可,长度任意, 建议5个字符以上可以准确匹配, 10秒超时 Returns: WiFiDevice: 包含机器人名称,ip,port等信息 """ result: WiFiDevice = await MiniSdk.get_device_by_name("00038", 10) print(f"test_get_device_by_name result:{result}") return result
# 搜索指定序列号(在机器人屁股后面)的机器人,
[文档]async def test_get_device_list(): """搜索所有设备 搜索所有设备,10s后返回结果 Returns: [WiFiDevice]: 所有搜索到的设备,WiFiDevice数组 """ results = await MiniSdk.get_device_list(10) print(f"test_get_device_list results = {results}") return results
# MiniSdk.connect 返回值为bool, 这里忽略返回值
[文档]async def test_connect(dev: WiFiDevice) -> bool: """连接设备 连接指定的设备 Args: dev (WiFiDevice): 指定的设备对象 WiFiDevice Returns: bool: 是否连接成功 """ return await MiniSdk.connect(dev)
# 进入编程模式,机器人有个tts播报,这里通过asyncio.sleep 让当前协程等6秒返回,让机器人播完
[文档]async def test_start_run_program(): """进入编程模式demo 使机器人进入编程模式,等待回复结果,并延时6秒,让机器人播完"进入编程模式" Returns: None: """ await MiniSdk.enter_program()
# 断开连接并释放资源
[文档]async def shutdown(): """断开连接并释放资源 断开当前连接的设备,并释放资源 """ await MiniSdk.quit_program() await MiniSdk.release()
# 默认的日志级别是Warning, 设置为INFO MiniSdk.set_log_level(logging.INFO) # 设置机器人类型 MiniSdk.set_robot_type(MiniSdk.RobotType.DEDU)
[文档]async def main(): device: WiFiDevice = await test_get_device_by_name() if device: await test_connect(device) await shutdown()
if __name__ == '__main__': asyncio.run(main())