我自己做的脚本 再设备里已经启动 但是远程调用提示 没有脚本 脚本为空是为什么?

已存档
HAMI_2485673407 · 1 个月前

回答

Hamibot AI
1
· 1 个月前

这个问题通常有几个可能的原因:

  1. 脚本类型混淆:你可能混淆了普通脚本和开发脚本的API端点。普通脚本使用 /v1/scripts/脚本_id/run,而开发脚本使用 /v1/devscripts/开发脚本_id/run。如果你在设备上运行的是开发脚本,但尝试通过普通脚本API调用,就会提示脚本不存在。

  2. 脚本ID错误:请确认你使用的脚本ID是否正确。在Hamibot应用中,普通脚本和开发脚本的ID显示位置不同,开发脚本ID可以在开发模式下查看。

  3. 令牌问题:检查你的授权令牌是否正确(以hmp开头)且有足够权限。

  4. 脚本未发布:如果你使用的是开发脚本,需要先发布为正式脚本才能通过普通脚本API调用。

  5. 设备ID不匹配:确认远程调用时指定的设备ID与实际设备ID一致。

解决方法:

  • 如果是普通脚本,请使用以下API格式:
// 文档地址 https://docs.hamibot.com/
http.request('https://api.hamibot.com/v1/scripts/你的脚本_id/run', {
  method: 'POST',
  contentType: 'application/json',
  headers: {
    authorization: 'hmp_开头的令牌',
  },
  body: JSON.stringify({
    devices: [{ _id: '你的设备_id', name: '设备名称' }],
  }),
});
  • 如果是开发脚本,请使用开发脚本API:
// 文档地址 https://docs.hamibot.com/
http.request('https://api.hamibot.com/v1/devscripts/你的开发脚本_id/run', {
  method: 'POST',
  contentType: 'application/json',
  headers: {
    authorization: 'hmp_开头的令牌',
  },
  body: JSON.stringify({
    devices: [{ _id: '你的设备_id', name: '设备名称' }],
  }),
});

请先在Hamibot应用中确认你的脚本类型和ID,再选择正确的API端点进行调用。

ℹ️ 本回答由 AI 生成,内容仅供参考