API接口
使用说明
接口类型 : HTTP
支持版本 : 触摸版本V4.0 以上
接口地址 : http://IP:8000/
以下示例IP均使用192.168.1.2
| 返回状态码 | 说明 |
|---|---|
| 204 | POST/PUT/DELETE 操作成功, 无具体内容 |
| 200 | GET 成功, 内容为请求的数据 |
| 404 | 文件不存在 |
| 400 | 客户端错误, 内容为具体错误信息 |
| 500 | 服务器错误, 内容为具体错误信息 |
基本
服务器是否运行
接口说明 : 获取触摸精灵状态(并非脚本的运行状态)
接口方法 : GET
接口地址 : http://192.168.1.2:8000/
| 参数 | 类型 | |
|---|---|---|
| 无 |
| 返回值 | 类型 | 说明 |
|---|---|---|
| touchelf | string | 返回这个说明触摸正在运行 |
| 返回状态行 | 说明 |
|---|---|
| HTTP/1.1 200 OK | 成功 |
WEB远程UI界面
接口说明 : 远程访问触摸精灵界面
接口方法 : 浏览器访问
接口地址 : http://192.168.1.2:8000/ui
WEB远程操作界面
接口说明 : 远程操作设备
接口方法 : 浏览器访问
支持版本 : 触摸版本V7.0 以上
接口地址 : http://192.168.1.2:8000/control
触摸精灵相关
获取应用状态
接口说明 : 获取触摸精灵及设备信息等状态
接口方法 : GET
接口地址 : http://192.168.1.2:8000/api/app/state
| 返回状态行 | 说明 |
|---|---|
| HTTP/1.1 200 OK | 成功 |
返回值:
{
"app": {
"version": "触摸精灵版本号",
"license": "到期时间"
},
"script": {
"select": "当前选择脚本",
"running": "是否运行中"
},
"system": {
"os": "ios或android",
"name": "设备名称",
"sn": "设备串号",
"ip": "设备IP地址",
"battery": "设备电量",
"log": "最后一条日志"
}
}注册
接口说明 : 使用触摸激活码解除半小时限制
接口方法 : POST
接口地址 : http://192.168.1.2:8000/api/app/register
| 参数 | 类型 | 说明 |
|---|---|---|
| code | string | 16位注册码 |
| 返回状态行 | 说明 |
|---|---|
| HTTP/1.1 204 OK | 成功 |
参数示例:
{
"code":"xxxxxxxxxxxxxxxx"
}设置
接口说明 : 修改触摸精灵设置
接口方法 : PUT
接口地址 : http://192.168.1.2:8000/api/config
| 参数 | 类型 | 说明 |
|---|---|---|
| cloud | object | 广域网设置 |
| enable | bool | 广域网开关 |
| address | string | 广域网网址 |
| notify_stop | bool | 脚本停止提示框开关 |
| 返回状态行 | 说明 |
|---|---|
| HTTP/1.1 204 OK | 成功 |
PUT参数示例:
{
"cloud": {
"enable": true,
"address": "ws://192.168.1.100:3000"
},
"notify_stop": false
}脚本相关
获取脚本列表
接口说明 : 获取脚本列表
接口方法 : GET
接口地址 : http://192.168.1.2:8000/api/script
| 返回状态行 | 说明 |
|---|---|
| HTTP/1.1 200 OK | 成功 |
返回:
["脚本1", "脚本2"]运行脚本
接口说明 : 运行脚本
接口方法 : POST
接口地址 : http://192.168.1.2:8000/api/script/<脚本名>/run
| 参数 | 类型 |
|---|---|
| 脚本名 | string |
| 返回状态行 | 说明 |
|---|---|
| HTTP/1.1 204 OK | 成功 |
| HTTP/1.1 404 OK | 失败 (脚本不存在) |
示例
http://192.168.1.2:8000/api/script/evan.tepe/run停止脚本
接口说明 : 停止脚本
接口方法 : POST
接口地址 : http://192.168.1.2:8000/api/script/stop
| 参数 | 类型 | 说明 |
|---|---|---|
| 无 |
| 返回状态行 | 说明 |
|---|---|
| HTTP/1.1 204 OK | 成功 |
加密脚本
接口说明 : 将tep格式脚本加密为tepe
接口方法 : POST
接口地址 : http://192.168.1.2:8000/api/script/<脚本名>/encrypt
| 参数 | 类型 | 说明 |
|---|---|---|
| script | string | 脚本的名字 |
| 返回状态行 | 说明 |
|---|---|
| HTTP/1.1 204 OK | 成功 |
| HTTP/1.1 404 OK | 失败 (脚本不存在) |
示例
http://192.168.1.2:8000/api/script/evan.tepe/encrypt获取脚本
接口说明 : 下载脚本
接口方法 : GET
接口地址 : http://192.168.1.2:8000/api/script/<脚本名>
| 参数 | 类型 | 说明 |
|---|---|---|
| 脚本名 | string | 要获取的脚本名 |
| 返回值 | 类型 | 说明 |
|---|---|---|
| 文件数据 | arraybuffer |
| 返回状态行 | 说明 |
|---|---|
| HTTP/1.1 200 OK | 成功 |
| HTTP/1.1 404 OK | 失败(文件不存在) |
| HTTP/1.1 400 OK | 失败(缺少参数) |
更新脚本
接口说明 : 上传脚本
接口方法 : PUT
接口地址 : http://192.168.1.2:8000/api/script/<脚本名>
| 参数 | 类型 | 说明 |
|---|---|---|
| 脚本名 | string | 要更新的脚本名 |
| 请求数据 | 类型 | 说明 |
|---|---|---|
| Content-Length | number | 脚本数据长度 |
| data | 文件数据 |
| 返回值 | 类型 | 说明 |
|---|---|---|
| 无 |
| 返回状态行 | 说明 |
|---|---|
| HTTP/1.1 204 OK | 成功 |
删除脚本
接口说明 : 删除脚本
接口方法 : DELETE
接口地址 : http://192.168.1.2:8000/api/script/<脚本名>
| 参数 | 类型 | 说明 |
|---|---|---|
| 脚本名 | string | 要删除的脚本名 |
| 返回状态行 | 说明 |
|---|---|
| HTTP/1.1 204 OK | 成功 |
| HTTP/1.1 404 OK | 失败(脚本不存在) |
系统相关
获取日志
接口说明 : 获取日志
接口方法 : GET
接口地址 : http://192.168.1.2:8000/api/system/log?last=n
返回值 :
- 成功:
HTTP/1.1 200 OK
Content-Type: text/html; charset=utf-8
[日志内容]
| 参数 | 类型 | 说明 |
|---|---|---|
| last | number | 返回日志的最后n行 |
| 返回值 | 类型 | 说明 |
|---|---|---|
| 日志内容 | string |
| 返回状态行 | 说明 |
|---|---|
| HTTP/1.1 200 OK | 成功 |
示例:返回最后10行日志
http://192.168.1.2:8000/api/system/log?last=10删除日志
接口说明 : 删除日志
接口方法 : DELETE
接口地址 : http://192.168.1.2:8000/api/system/log
| 返回状态行 | 说明 |
|---|---|
| HTTP/1.1 204 OK | 成功 |
重启设备
接口说明 : 重启设备
接口方法 : POST
接口地址 : http://192.168.1.2:8000/api/system/reboot
返回值 :
- 成功: HTTP/1.1 204 OK
| 参数 | 类型 | 说明 |
|---|---|---|
| 无 |
| 返回状态行 | 说明 |
|---|---|
| HTTP/1.1 204 OK | 成功 |
注销设备
接口说明 : 注销设备
接口方法 : POST
接口地址 : http://192.168.1.2:8000/api/system/respring
| 参数 | 类型 | 说明 |
|---|---|---|
| 无 |
| 返回状态行 | 说明 |
|---|---|
| HTTP/1.1 204 OK | 成功 |
| HTTP/1.1 403 OK | 失败 (安卓不支持) |
屏幕相关
获取截图
接口说明 : 获取截图
接口方法 : GET
接口地址 : http://192.168.1.2:8000/api/screen/snapshot
| 参数 | 类型 | 说明 | 必填 |
|---|---|---|---|
| format | bmp/png | 截图格式 | 非必填,默认为bmp格式 |
| scale | number | 缩放比例(0-100) | 非必填,默认为100 |
| ltx | number | 截图区域左上角的X坐标 | 非必填,默认全屏 |
| lty | number | 截图区域左上角的Y坐标 | 非必填,默认全屏 |
| rbx | number | 截图区域右下角的X坐标 | 非必填,默认全屏 |
| rby | number | 截图区域右下角的Y坐标 | 非必填,默认全屏 |
| 返回值 | 类型 | 说明 |
|---|---|---|
| 图片数据 | arraybuffer |
| 返回状态行 | 说明 |
|---|---|
| HTTP/1.1 204 OK | 成功 |
返回一个png图片,缩放比例为50
http://192.168.1.2:8000/api/screen/snapshot?format=png&scale=50返回一个区域图片
http://192.168.1.2:8000/api/screen/snapshot?format=png<x=100<y=100&rbx=200&rby=200触摸相关
手指按下
接口说明 : 手指按下
接口方法 : POST
数据类型 : JSON
接口地址 : http://192.168.1.2:8000/api/touch/down
| 参数 | 类型 | 说明 |
|---|---|---|
| finger | number | 手指ID |
| x | number | 坐标x |
| y | number | 坐标y |
| 返回状态行 | 说明 |
|---|---|
| HTTP/1.1 204 OK | 成功 |
| HTTP/1.1 400 | 失败[错误信息] |
参数示例:
{
"finger": 1,
"x": 100,
"y": 100
}手指移动
接口说明 : 手指移动
接口方法 : POST
数据类型 : JSON
接口地址 : http://192.168.1.2:8000/api/touch/move
| 参数 | 类型 | 说明 |
|---|---|---|
| finger | number | 手指ID |
| x | number | 坐标x |
| y | number | 坐标y |
| 返回状态行 | 说明 |
|---|---|
| HTTP/1.1 204 OK | 成功 |
| HTTP/1.1 400 | 失败[错误信息] |
参数示例:
{
"finger": 1,
"x": 100,
"y": 100
}手指抬起
接口说明 : 手指抬起
接口方法 : POST
数据类型 : JSON
接口地址 : http://192.168.1.2:8000/api/touch/up
| 参数 | 类型 | 说明 |
|---|---|---|
| finger | number | 手指ID |
| 返回状态行 | 说明 |
|---|---|
| HTTP/1.1 204 OK | 成功 |
| HTTP/1.1 400 | 失败[错误信息] |
参数示例:
{
"finger": 1
}按键相关
按键按下
接口说明 : 按键按下
接口方法 : POST
数据类型 : JSON
接口地址 : http://192.168.1.2:8000/api/key/down
| 参数 | 类型 | 说明 |
|---|---|---|
| code | string | 按键码 |
| 返回状态行 | 说明 |
|---|---|
| HTTP/1.1 204 OK | 成功 |
| HTTP/1.1 400 | 失败[错误信息] |
参数示例:
{
"code": "home",
}按键抬起
接口说明 : 按键抬起
接口方法 : POST
数据类型 : JSON
接口地址 : http://192.168.1.2:8000/api/key/up
| 参数 | 类型 | 说明 |
|---|---|---|
| code | string | 按键码 |
| 返回状态行 | 说明 |
|---|---|
| HTTP/1.1 204 OK | 成功 |
| HTTP/1.1 400 | 失败[错误信息] |
参数示例:
{
"code": "home",
}文件相关
说明: 此类 API 都必须提供一个 path 参数, 值为从/var/touchelf/目录开始的文件路径
文件列表
接口说明 : 文件列表
接口方法 : GET
接口地址 : http://192.168.1.2:8000/api/file?path=/scripts
| 参数 | 类型 | 说明 |
|---|---|---|
| path | string | 从/var/touchelf目录开始的目录路径 |
| 返回值 | 类型 | 说明 |
|---|---|---|
| 文件列表 | application/json | json格式 |
| 返回状态行 | 说明 |
|---|---|
| HTTP/1.1 200 OK | 成功 |
| HTTP/1.1 404 OK | 失败(目录不存在) |
| HTTP/1.1 400 OK | 失败(缺少参数) |
示例:
[
{
"name": [文件a名],
"type": [文件a类型: dir/file]
},
{
"name": [文件b名],
"type": [文件b类型: dir/file]
},
...
]下载文件
接口说明 : 下载文件
接口方法 : GET
接口地址 : http://192.168.1.2:8000/api/file?path=/scripts/a.lua
| 参数 | 类型 | 说明 |
|---|---|---|
| path | string | 从/var/touchelf目录开始的文件路径 |
| 返回值 | 类型 | 说明 |
|---|---|---|
| 文件数据 | arraybuffer |
| 返回状态行 | 说明 |
|---|---|
| HTTP/1.1 200 OK | 成功 |
| HTTP/1.1 404 OK | 失败(文件不存在) |
| HTTP/1.1 400 OK | 失败(缺少参数) |
上传文件
接口说明 : 上传文件
接口方法 : PUT
接口地址 : http://192.168.1.2:8000/api/file?path=/scripts/a.lua
| 参数 | 类型 | 说明 |
|---|---|---|
| path | string | 从/var/touchelf目录开始的文件路径 |
| 请求数据 | 类型 | 说明 |
|---|---|---|
| Content-Length | number | 文件长度 |
| data | 文件数据 |
| 返回值 | 类型 | 说明 |
|---|---|---|
| 无 |
| 返回状态行 | 说明 |
|---|---|
| HTTP/1.1 204 OK | 成功 |
| HTTP/1.1 404 OK | 失败(父目录不存在) |
| HTTP/1.1 400 OK | 失败(缺少参数) |
创建目录
接口说明 : 创建目录
接口方法 : PUT
接口地址 : http://192.168.1.2:8000/api/file?path=/scripts/a&directory
| 参数 | 类型 | 说明 |
|---|---|---|
| path | string | 从/var/touchelf目录开始的文件路径 |
| 返回状态行 | 说明 |
|---|---|
| HTTP/1.1 204 OK | 成功 |
| HTTP/1.1 400 OK | 失败(缺少参数) |
删除文件/目录
接口说明 : 删除文件/目录
接口方法 : DELETE
接口地址 : http://192.168.1.2:8000/api/file?path=/scripts/a.lua
| 参数 | 类型 | 说明 |
|---|---|---|
| path | string | 从/var/touchelf目录开始的文件路径 |
| 返回状态行 | 说明 |
|---|---|
| HTTP/1.1 204 OK | 成功 |
| HTTP/1.1 400 OK | 失败(缺少参数) |
| HTTP/1.1 404 OK | 失败(文件不存在) |