PC电脑控制
PC Control API 文档(基于systemcmd调用版本)
基础信息
- 基础URL:
http://pcbot.html.dtns.top/api - 调用方式: 通过systemcmd的
/systemcmd/run-sync接口执行wget命令调用 - 响应格式: JSON
- 字符编码: UTF-8
- 默认密钥:
pcbot_secret_key=pcbot123
调用方式说明
所有PC Control API都通过systemcmd的/systemcmd/run-sync接口执行wget命令来调用:
调用模板:
wget -qO- --timeout=30 --tries=1 "http://pcbot.html.dtns.top/api/[端点路径]?pcbot_secret_key=pcbot123&[其他参数]"
通过systemcmd调用:
{
"cmd": "wget -qO- --timeout=30 --tries=1 'http://pcbot.html.dtns.top/api/[端点路径]?pcbot_secret_key=pcbot123&[其他参数]'",
"cwd": "/tmp",
"ostype": "linux",
"timeout": 30000
}
API调用示例
1. 系统状态
1.1 健康检查
systemcmd调用示例:
{
"cmd": "wget -qO- --timeout=30 --tries=1 'http://pcbot.html.dtns.top/api/health'",
"cwd": "/tmp",
"ostype": "linux",
"timeout": 30000
}
2. 鼠标控制
2.1 移动鼠标
systemcmd调用示例:
{
"cmd": "wget -qO- --timeout=30 --tries=1 'http://pcbot.html.dtns.top/api/mouse/move?pcbot_secret_key=pcbot123&x=500&y=300&duration=0.5'",
"cwd": "/tmp",
"ostype": "linux",
"timeout": 30000
}
2.2 鼠标点击
systemcmd调用示例:
{
"cmd": "wget -qO- --timeout=30 --tries=1 'http://pcbot.html.dtns.top/api/mouse/click?pcbot_secret_key=pcbot123&button=left&clicks=2&x=500&y=300'",
"cwd": "/tmp",
"ostype": "linux",
"timeout": 30000
}
2.3 双击
systemcmd调用示例:
{
"cmd": "wget -qO- --timeout=30 --tries=1 'http://pcbot.html.dtns.top/api/mouse/double-click?pcbot_secret_key=pcbot123&x=500&y=300'",
"cwd": "/tmp",
"ostype": "linux",
"timeout": 30000
}
2.4 右键点击
systemcmd调用示例:
{
"cmd": "wget -qO- --timeout=30 --tries=1 'http://pcbot.html.dtns.top/api/mouse/right-click?bot_secret_key=pcbot123&x=500&y=300'",
"cwd": "/tmp",
"ostype": "linux",
"timeout": 30000
}
2.5 拖动鼠标
systemcmd调用示例:
{
"cmd": "wget -qO- --timeout=30 --tries=1 'http://pcbot.html.dtns.top/api/mouse/drag?pcbot_secret_key=pcbot123&start_x=100&start_y=100&end_x=500&end_y=500&duration=2.0&button=left'",
"cwd": "/tmp",
"ostype": "linux",
"timeout": 30000
}
2.6 滚动鼠标
systemcmd调用示例:
{
"cmd": "wget -qO- --timeout=30 --tries=1 'http://pcbot.html.dtns.top/api/mouse/scroll?pcbot_secret_key=pcbot123&clicks=3&x=500&y=300'",
"cwd": "/tmp",
"ostype": "linux",
"timeout": 30000
}
2.7 获取鼠标位置
systemcmd调用示例:
{
"cmd": "wget -qO- --timeout=30 --tries=1 'http://pcbot.html.dtns.top/api/mouse/position?pcbot_secret_key=pcbot123'",
"cwd": "/tmp",
"ostype": "linux",
"timeout": 30000
}
3. 键盘控制
3.1 输入文字
systemcmd调用示例:
{
"cmd": "wget -qO- --timeout=30 --tries=1 --post-data='pcbot_secret_key=pcbot123&text=Hello World&interval=0.05' 'http://pcbot.html.dtns.top/api/keyboard/type'",
"cwd": "/tmp",
"ostype": "linux",
"timeout": 30000
}
3.2 按下按键
systemcmd调用示例:
{
"cmd": "wget -qO- --timeout=30 --tries=1 'http://pcbot.html.dtns.top/api/keyboard/press?pcbot_secret_key=pcbot123&keys=a,b,c&presses=1&interval=0.1'",
"cwd": "/tmp",
"ostype": "linux",
"timeout": 30000
}
3.3 快捷键组合
systemcmd调用示例:
{
"cmd": "wget -qO- --timeout=30 --tries=1 'http://pcbot.html.dtns.top/api/keyboard/hotkey?pcbot_secret_key=pcbot123&keys=ctrl,c'",
"cwd": "/tmp",
"ostype": "linux",
"timeout": 30000
}
4. 屏幕控制
4.1 获取屏幕信息
systemcmd调用示例:
{
"cmd": "wget -qO- --timeout=30 --tries=1 'http://pcbot.html.dtns.top/api/screen/info?pcbot_secret_key=pcbot123'",
"cwd": "/tmp",
"ostype": "linux",
"timeout": 30000
}
4.2 截图
systemcmd调用示例:
{
"cmd": "wget -qO- --timeout=30 --tries=1 'http://pcbot.html.dtns.top/api/screen/screenshot?pcbot_secret_key=pcbot123' -O /tmp/screenshot.png",
"cwd": "/tmp",
"ostype": "linux",
"timeout": 30000
}
4.3 查找图片
systemcmd调用示例:
{
"cmd": "wget -qO- --timeout=30 --tries=1 'http://pcbot.html.dtns.top/api/screen/find-image?pcbot_secret_key=pcbot123&image_path=C:/images/button.png&confidence=0.9'",
"cwd": "/tmp",
"ostype": "linux",
"timeout": 30000
}
5. 应用控制
5.1 打开应用
systemcmd调用示例:
{
"cmd": "wget -qO- --timeout=30 --tries=1 'http://pcbot.html.dtns.top/api/apps/open?pcbot_secret_key=pcbot123&app_name=notepad.exe'",
"cwd": "/tmp",
"ostype": "linux",
"timeout": 30000
}
5.2 关闭应用
systemcmd调用示例:
{
"cmd": "wget -qO- --timeout=30 --tries=1 'http://pcbot.html.dtns.top/api/apps/close?pcbot_secret_key=pcbot123&window_title=记事本'",
"cwd": "/tmp",
"ostype": "linux",
"timeout": 30000
}
5.3 列出所有窗口
systemcmd调用示例:
{
"cmd": "wget -qO- --timeout=30 --tries=1 'http://pcbot.html.dtns.top/api/apps/windows?pcbot_secret_key=pcbot123'",
"cwd": "/tmp",
"ostype": "linux",
"timeout": 30000
}
5.4 列出所有进程
systemcmd调用示例:
{
"cmd": "wget -qO- --timeout=30 --tries=1 'http://pcbot.html.dtns.top/api/apps/processes?pcbot_secret_key=pcbot123'",
"cwd": "/tmp",
"ostype": "linux",
"timeout": 30000
}
6. 窗口控制
6.1 聚焦窗口
systemcmd调用示例:
{
"cmd": "wget -qO- --timeout=30 --tries=1 'http://pcbot.html.dtns.top/api/windows/focus?pcbot_secret_key=pcbot123&window_title=记事本'",
"cwd": "/tmp",
"ostype": "linux",
"timeout": 30000
}
6.2 最小化窗口
systemcmd调用示例:
{
"cmd": "wget -qO- --timeout=30 --tries=1 'http://pcbot.html.dtns.top/api/windows/minimize?pcbot_secret_key=pcbot123&window_title=记事本'",
"cwd": "/tmp",
"ostype": "linux",
"timeout": 30000
}
6.3 最大化窗口
systemcmd调用示例:
{
"cmd": "wget -qO- --timeout=30 --tries=1 'http://pcbot.html.dtns.top/api/windows/maximize?pcbot_secret_key=pcbot123&window_title=记事本'",
"cwd": "/tmp",
"ostype": "linux",
"timeout": 30000
}
6.4 调整窗口大小
systemcmd调用示例:
{
"cmd": "wget -qO- --timeout=30 --tries=1 'http://pcbot.html.dtns.top/api/windows/resize?pcbot_secret_key=pcbot123&window_title=记事本&width=1024&height=768'",
"cwd": "/tmp",
"ostype": "linux",
"timeout": 30000
}
6. 移动窗口
systemcmd调用示例:
{
"cmd": "wget -qO- --timeout=30 --tries=1 'http://pcbot.html.dtns.top/api/windows/move?pcbot_secret_key=pcbot123&window_title=记事本&x=100&y=100'",
"cwd": "/tmp",
"ostype": "linux",
"timeout": 30000
}
系统命令执行API参考
systemcmd/run-sync 接口说明
| HTTP方法 | 路由路径 | 描述 | 请求参数 | 响应格式 | 状态码 |
|---|---|---|---|---|---|
| ALL | /systemcmd/run-sync |
同步执行系统命令(一次性返回结果) | cmd: 命令字符串cwd: 工作目录ostype: 操作系统类型timeout: 超时时间(毫秒,默认300000) |
{ret: boolean, msg: string, data: {output: string, error: string, exitCode: number, success: boolean}} |
200 |
请求示例:
{
"cmd": "wget -qO- --timeout=30 --tries=1 'http://pcbot.html.dtns.top/api/health'",
"cwd": "/tmp",
"ostype": "linux",
"timeout": 30000
}
响应示例:
{
"ret": true,
"msg": "success",
"data": {
"output": "{\"ret\":true,\"msg\":\"PC Control API is running\",\"data\":{\"status\":\"ok\",\"version\":\"1.0.0\"}}",
"error": "",
"exitCode": 0,
"success": true
}
}
调用方式总结
所有PC Control API都通过以下方式调用:
- GET请求:
{
"cmd": "wget -qO- --timeout=30 --tries=1 'http://pcbot.html.dtns.top/api/[端点路径]?pcbot_secret_key=pcbot123&[其他参数]'",
"cwd": "/tmp",
"ostype": "linux",
"timeout": 30000
}
- 文件下载请求(如截图):
{
"cmd": "wget -qO- --timeout=30 --tries=1 'http://pcbot.html.dtns.top/api/[端点路径]?pcbot_secret_key=pcbot123' -O /tmp/[文件名]",
"cwd": "/tmp",
"ostype": "linux",
"timeout": 30000
}
使用示例
示例1:获取屏幕信息
{
"cmd": "wget -qO- --timeout=30 --tries=1 'http://pcbot.html.dtns.top/api/screen/info?pcbot_secret_key=pcbot123'",
"cwd": "/tmp",
"ostype": "linux",
"timeout": 30000
}
示例2:移动鼠标
{
"cmd": "wget -qO- --timeout=30 --tries=1 'http://pcbot.html.dtns.top/api/mouse/move?pcbot_secret_key=pcbot123&x=500&y=300&duration=0.5'",
"cwd": "/tmp",
"ostype": "linux",
"timeout": 30000
}
示例3:截图并保存
{
"cmd": "wget -qO- --timeout=30 --tries=1 'http://pcbot.html.dtns.top/api/screen/screenshot?pcbot_secret_key=pcbot123' -O /tmp/screenshot_$(date +%Y%m%d_%H%M%S).png",
"cwd": "/tmp",
"ostype": "linux",
"timeout": 30000
}
示例4:打开记事本
{
"cmd": "wget -qO- --timeout=30 --tries=1 'http://pcbot.html.dtns.top/api/apps/open?pcbot_secret_key=pcbot123&app_name=notepad.exe'",
"cwd": "/tmp",
"ostype": "linux",
"timeout": 30000
}
注意事项
- 参数编码: 在wget命令中,URL参数需要正确编码,特别是包含空格或特殊字符时
- 超时设置: 建议设置适当的超时时间(如30秒),避免长时间等待
- 错误处理: 检查systemcmd返回的
exitCode和success字段判断命令执行状态 - JSON解析: PC Control API返回的是JSON字符串,需要解析后才能获取具体数据
- 工作目录: 建议使用
/tmp作为工作,确保有写入权限
元数据
{
"sourceFile": "pc-controll-skill.md",
"integrationWith": "systemcmd-skill.md",
"apiEndpointCount": 20,
"callMethod": "wget via systemcmd/run-sync",
"authentication": "API Key (pcbot123) + systemcmd permissions",
"hasHttpApis": true
}
本文档基于PC Control API文档改造,适配systemcmd调用方式