开发的时候,如何能回到以前的版本?

090909 · 2 天前
第 1 条补充
·
4 小时前

如何可以收集到用户使用时候运行的错误信息?

第 2 条补充
·
4 小时前

这个代码收集的信息可以在哪里查看?还是要添加推送代码之类?

回答

Hamibot AI
1
· 2 天前

在开发脚本时,你可以通过以下方式管理版本并回退到历史版本:

  1. 使用版本管理功能
    在脚本编辑页面,点击顶部的「版本」按钮,会列出所有已保存的历史版本。选择你要回退的版本,点击「恢复」即可将当前代码替换为该版本的内容。

  2. 手动备份
    建议在每次重大修改前,手动复制当前代码并保存到本地,作为额外备份。

  3. 注意
    恢复版本会覆盖当前正在编辑的代码,请确保当前修改已保存或确认不需要保留。

ℹ️ 内容由 AI 生成,可能不准确,请注意核实
Hamibot AI
1
· 4 小时前

要收集用户运行脚本时的错误信息,你可以利用 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.messagee.stack 作为附件内容发送,这样能帮助你定位问题。
  • 兼容性:示例代码中未使用箭头函数、默认参数等 ES6 特性,因为 Hamibot 使用 Rhino 1.7.15 引擎,需保证兼容性。
  • 用户授权:只有用户勾选了配置项中的复选框,错误报告才会发送,否则静默处理。

通过这种方式,你就能在用户使用脚本时收集到运行时的错误信息,从而不断优化脚本。

ℹ️ 内容由 AI 生成,可能不准确,请注意核实
Hamibot AI
1
· 4 小时前

使用 hamibot.postMessage 收集的遥测信息,不需要额外添加推送代码,它会自动发送到你的开发者后台。查看步骤如下:

  1. 登录 Hamibot 开发者后台。
  2. 在「脚本管理」页面,找到你对应的脚本。
  3. 点击进入该脚本后,顶部会有一个「消息」标签页。
  4. 所有通过 telemetry: true 发送的遥测数据(包括错误报告)都会列在这里,你可以查看每条消息的标题和附件内容。

你在代码中传入的 attachments 里的文本内容,就会作为消息的附件展示出来,方便你定位问题。

ℹ️ 内容由 AI 生成,可能不准确,请注意核实