开发的时候,如何能回到以前的版本?
第 1 条补充
· 4 小时前
如何可以收集到用户使用时候运行的错误信息?
第 2 条补充
· 4 小时前
这个代码收集的信息可以在哪里查看?还是要添加推送代码之类?
回答
在开发脚本时,你可以通过以下方式管理版本并回退到历史版本:
-
使用版本管理功能
在脚本编辑页面,点击顶部的「版本」按钮,会列出所有已保存的历史版本。选择你要回退的版本,点击「恢复」即可将当前代码替换为该版本的内容。 -
手动备份
建议在每次重大修改前,手动复制当前代码并保存到本地,作为额外备份。 -
注意
恢复版本会覆盖当前正在编辑的代码,请确保当前修改已保存或确认不需要保留。
ℹ️ 内容由 AI 生成,可能不准确,请注意核实
要收集用户运行脚本时的错误信息,你可以利用 Hamibot 的遥测功能,通过 hamibot.postMessage 将错误报告发送给你。具体实现步骤如下:
1. 在脚本配置中添加用户授权选项
让用户自行决定是否愿意发送错误报告,这能体现对隐私的尊重,也符合 Hamibot 的推荐做法。
在脚本的配置模式 JSON 中添加一个复选框:
{
"name": "TELEMETRY",
"type": "checkbox",
"label": "发送使用数据和错误报告",
"help": "帮助开发者改进脚本,这个报告会被认为是机密的,匿名的。"
}
2. 在脚本代码中捕获错误并发送
在你的主要脚本逻辑中使用 try...catch 包裹可能出错的代码,并在捕获到异常时,调用 hamibot.postMessage 将错误信息发送出去。注意要结合用户对 TELEMETRY 的选择。
// 文档地址 https://docs.hamibot.com/
// 获取用户是否同意发送遥测数据
var telemetryEnabled = hamibot.getConfig('TELEMETRY');
try {
// 你的主要脚本逻辑
// ...
} catch (e) {
if (telemetryEnabled) {
hamibot.postMessage(Date.now().toString(), {
telemetry: true,
data: {
title: '脚本运行错误',
attachments: [
{
text: '错误信息:' + e.message + '\n堆栈:' + e.stack
}
]
}
});
}
// 可选:重新抛出错误或友好提示
throw e;
}
关键点说明
- 遥测数据:
hamibot.postMessage中的telemetry: true表示这是一条遥测消息,会发送给脚本开发者,而不会干扰用户。 - 错误信息内容:你可以将
e.message和e.stack作为附件内容发送,这样能帮助你定位问题。 - 兼容性:示例代码中未使用箭头函数、默认参数等 ES6 特性,因为 Hamibot 使用 Rhino 1.7.15 引擎,需保证兼容性。
- 用户授权:只有用户勾选了配置项中的复选框,错误报告才会发送,否则静默处理。
通过这种方式,你就能在用户使用脚本时收集到运行时的错误信息,从而不断优化脚本。
ℹ️ 内容由 AI 生成,可能不准确,请注意核实
使用 hamibot.postMessage 收集的遥测信息,不需要额外添加推送代码,它会自动发送到你的开发者后台。查看步骤如下:
- 登录 Hamibot 开发者后台。
- 在「脚本管理」页面,找到你对应的脚本。
- 点击进入该脚本后,顶部会有一个「消息」标签页。
- 所有通过
telemetry: true发送的遥测数据(包括错误报告)都会列在这里,你可以查看每条消息的标题和附件内容。
你在代码中传入的 attachments 里的文本内容,就会作为消息的附件展示出来,方便你定位问题。
ℹ️ 内容由 AI 生成,可能不准确,请注意核实