跳到主要内容

RainMaker 常见问题

为什么我们的部署无法使用 Claiming?

Claiming 不可用的主要原因如下:

  • 自身 Claiming 需要一个独立的身份验证服务,该服务包含乐鑫全部系列芯片在芯片制造过程中写入 eFuse 的密钥信息。在私有部署环境中复现该服务并不简单。
  • 主机驱动或辅助 Claiming 赋予 Claiming 设备的用户管理员权限,这在商业部署中并不合适。

在私有部署环境中,不再使用现场 Claiming 的方式,而是预先在模组上烧录凭证,并通过 RainMaker Admin CLI 将公钥证书注册到云后端服务。可以使用以下方法生成并烧录登录凭证:

  1. 购买已烧录登录凭证的乐鑫模组,并使用管理命令行界面 (admin CLI) 注册证书文件。
  2. 使用 admin CLI 生成唯一的固件二进制文件,并注册对应的证书。使用 esptool 逐个烧录模组,或使用编程夹具一次性批量烧录多个模块。

如需更多信息,请联系乐鑫商务。

在哪里可以找到 Alexa 和 GVA 的 Client ID 和回调 URL?

如果尚未配置 Cognito 回调 URL,请按照以下步骤进行设置:配置 Cognito 回调 URL

  1. 用超级管理员登录凭证登录 RainMaker 管理面板。

  2. 在左侧菜单中,选择 Deployment Settings

    Dashboard Deployment Settings

  3. 打开 Cognito Configurations 标签页。

    Cognito Configurations tab

  4. 找到并记录以下客户端的 Client ID

  • esp-rainmaker-alexa-skill

  • esp-rainmaker-google-action

    appclient

在哪里可以找到第三方集成和手机应用的 Client ID 和回调 URL?

Client ID 和 回调 URL 是配置手机应用和启用第三方登录所必需的。

如果尚未配置 Cognito 回调 URL,请按照以下步骤进行设置:配置 Cognito 回调 URL

安卓应用的第三方登录,请参考:设置重定向 URI

iOS 应用的第三方登录,请参考:添加 URL 方案

在 RainMaker 管理面板查找回调 URL 的步骤:

  1. 登录 RainMaker 管理面板,使用超级管理员凭证。

  2. 在左侧菜单中,选择 Deployment Settings

    Dashboard Deployment Settings

  3. 打开 Cognito Configurations 标签页。

    Cognito Configurations tab

  4. Cognito App Client Configurations 小节,可以找到每个应用客户端对应的 Client ID 和 回调 URL。

标准 RainMaker

选择名称为 rainmaker-user-email-mobile-pool-client 的客户端。

OAuth-only RainMaker:

选择名称为 rainmaker-client 的客户端。

Cognito App Client

如何在 Cognito 中找到自定义消息模板?

已配置的自定义消息模板可以在 AWS Cognito 控制台中找到。请按照以下步骤进行操作:

  1. 登录 AWS 控制台。

  2. 在 AWS 控制台中,搜索 Cognito 服务 (AWS Console > Service > Cognito)。

    post_deoploy1

  3. 点击 Manage User Pools

    post_deoploy2

  4. 搜索 rainmaker-user-email-mobile-pool 并点击进入。

    post_deoploy3

  5. 点击 Messaging 选项,并向下滚动到 Message templates

    post_deoploy4

  6. 在消息自定义页面,可以找到已配置的自定义消息详情,包括:SES region、FROM email address ARN、Email subject、Email message 等。

    Message Template

    Message Template

在 RainMaker 移动应用中,将 Amazon Alexa 账户与 RainMaker 账户绑定时,为什么需要重新使用托管 UI 登录?

在账户绑定过程中,RainMaker 需要从 AWS Cognito 获取身份验证代码。

为了获取身份验证代码,需要重新使用托管 UI 进行登录。

在 Alexa 账户绑定过程中,如果我取消绑定并希望使用其他账户重新绑定该技能,托管 UI 会自动使用缓存的浏览器数据登录。如何切换账户?

要在托管 UI 上登录不同的账户,请按照以下步骤操作:

对于 iOS:

  • 打开 iPhone 设置
  • 点击 Safari
  • 点击 高级
  • 选择 网站数据
  • 搜索 OAuth URL 的域名(例如 auth.rainmaker.espressif.com)
  • 右滑并点击 删除

对于安卓:

  • 打开 Chrome 浏览器应用(或你使用的浏览器应用)
  • 点击选项菜单(三点图标)
  • 进入 历史记录
  • 点击 清除浏览数据
  • 点击 清除数据

清除浏览数据后,在下次进行账户绑定时,托管 UI 的登录界面会重新显示,你可以登录其他账户。

我还没有开始使用 RainMaker,但收到了 AWS 的邮件,提示某些服务(如 SQS)已超出免费额度,我该怎么办?

RainMaker 使用 AWS SQS 队列 和 Lambda 来处理消息。Lambda 会定期检查队列中是否有新消息。由于你尚未使用该系统,队列中没有消息,但 Lambda 仍会轮询队列导致空接收。AWS 会将这些空接收计为 ReceiveMessage 请求。无论 SQS 队列是否实际发送或接收消息,这些空接收也会按 Amazon SQS 定价收取费用。

当你开始使用 RainMaker 后,这些空接收次数会自然减少。

更多详细信息请参考 **AWS 知识中心:https://aws.amazon.com/premiumsupport/knowledge-center/sqs-high-charges/**。

乐鑫的 RainMaker 支持团队请求 AWS 控制台的只读访问权限,如何创建具有只读访问权限的 IAM 用户?

AWS Identity and Access Management (IAM) 允许你安全地管理 AWS 服务和资源的访问权限。要创建具有只读权限的 IAM 用户,请按照以下步骤操作:

  1. 登录 AWS 控制台,在搜索框中输入 IAM 进行搜索。

  2. 在 IAM 控制台左侧菜单中,点击 Users,然后点击 Add User

  3. 输入用户名,勾选 AWS Management Console access,然后点击 Next: Permissions

  4. 在 Permissions 页面,选择 Attach existing policies directly,然后搜索 ReadOnlyAccess。找到 ReadOnlyAccess 策略并勾选对应的复选框,点击 Next: Tags

    IAM-readonly-policy

  5. Tags 页面可以跳过,直接点击 Next: Review

  6. 检查用户详细信息是否正确,然后点击 Create User

  7. 用户创建完成后,你可以下载其凭证。点击 Download .CSV 保存凭证,并妥善存储 Secret Access KeyPassword,因为这些信息如果丢失将无法恢复,必须重新设置账户。

  8. 最后,将用户的凭证以及 AWS 控制台登录 URL(位于 Users with AWS Management Console access can sign-in at)共享给相关人员。

如何更改 RainMaker 超级管理员邮箱地址?

不建议使用个人邮箱作为超级管理员用户的邮箱地址。 请使用一个通用的邮箱地址,以确保系统的安全性和可持续管理。由于超级管理员是 RainMaker 部署中权限最高的用户,只有极少数授权人员应当拥有该邮箱的访问权限。
示例: service@<company_domain_name>

要更改 RainMaker 超级管理员邮箱,需要通过 Postman 调用 change_super_admin swagger API。

更改超级管理员邮箱的步骤:

  1. 在 Postman 中使用当前超级管理员账号登录 RainMaker。

    FAQ_change_superadmin_1

  2. 在 Postman 中创建新的 API 请求:

    PUT - {{url}}/v1/admin/change_super_admin

    Header -

    KeyValue
    Authorization{{access_token}}

    Body -

    {

    "new_super_admin": "user@domain.com"

    }

    FAQ_change_superadmin_2

  3. 验证超级管理员邮箱更改请求:

    • 请求发起后,当前超级管理员邮箱和新的超级管理员邮箱都会收到一封包含验证码的邮件。
    • 需要输入并确认验证码,以完成邮箱更改流程。

    你可以使用相同的 API 进行更改请求的确认。

    FAQ_change_superadmin_3

如何查询 CloudWatch 日志组是否存在?

  1. 登录 AWS 控制台,然后搜索 CloudWatch。

  2. 进入 Amazon CloudWatch > Log groups(日志组)。

  3. 输入需要查询的日志组名称。

    Get log group

  4. 如果存在,日志组会在页面上显示。

如何创建 CloudWatch 日志组?

  1. 登录 AWS 控制台,然后搜索 CloudWatch。

  2. 进入 Amazon CloudWatch > Log groups(日志组)。

  3. 点击 Create log group

    Create log group

  4. 日志组创建成功。

终端用户仍然收到来自 no-reply@verificationemail.com 的邮件,而不是已验证的 SES 邮箱,如何解决?

要正确配置 Amazon SES 作为 Cognito 用户池的邮件提供商,请按照以下步骤操作:

  1. 打开 Amazon Cognito。

    • 在 AWS 控制台 中打开 Amazon Cognito
    • 选择你的用户池(如 rainmaker-user-email-mobile-pool)。
    • 在菜单中点击 Messaging

    SES_mail_configure1

  2. 检查邮件提供商设置。

    • Email provider 部分,查看当前的配置以及用于发送邮件的邮箱地址。
    • 确保 Send email with Amazon SES(使用 Amazon SES 发送邮件)选项已启用。
  3. 配置 SES 电子邮件地址。

    • 选择一个已在 Amazon SES 通过验证的邮箱地址。
    • 点击 Save Changes 以应用新的配置。

    SES_mail_configure2

完成上述步骤后,所有发送的邮件都将使用指定的 SES 邮件地址,而不会再使用默认的 no-reply@verificationemail.com

RainMaker 升级后,终端用户无法收到注册/登录 OTP 短信,如何解决?

如果终端用户是通过手机号码进行注册的,请检查 Amazon Cognito 中的以下设置:

  1. 检查 Sign-up experience 设置。

    • 在 AWS 控制中打开 Amazon Cognito。
    • 选择你的用户池(如 rainmaker-user-email-mobile-pool)。
    • 在菜单中点击 Sign-up experience
  2. 确保以下 SMS 属性设置已正确配置:

    SMS_attribute1

  3. 验证 Messaging 偏好设置

    • 在 Messaging 设置下,检查 Send SMS message if phone number is available, otherwise send email message(如果可用,则发送 SMS 短信,否则发送电子邮件)选项是否已启用。
    • 如果该设置不正确,请进行相应更改。
    • 点击 Save Changes 以应用更新。

    SMS_attribute2

在哪里可以找到认证 URL?

标准 RainMaker vs OAuth-only RainMaker

标准 RainMaker:

认证 URL 用于第三方登录以及 Alexa App-to-App 账号关联。要生成认证 URL,必须先配置 Cognito 域。

如果尚未配置 Cognito 域,请按照此步骤操作:配置 Cognito 域

You can get the configured domain name from RainMaker Dashboard with the following steps below:

  • Login to RainMaker Dashboard with superadmin credentials.

  • Go to Deployment Settings tab

  • Go to Identity Configurations tab.

  • You will be able to see your Cognito Domain name.

注意

认证 URL 由 Cognito 域名前缀加上 /oauth2 组成。
请注意,域名 URL 需要是完整的 HTTPS URL,而不仅仅是域名。

认证 URL 格式:https://<your_company_domain_name>.auth.<aws_region>.amazoncognito.com/OAuth2

OAuth-only RainMaker:

  1. 按照 这些步骤 获取 HTTP 基础 URL。

  2. 获取你在 此处 配置的 ProviderName

认证 URL 格式:{HTTP API Endpoint}/authorize?identity_provider=ProviderName (注意:目前仅支持一个身份提供商。)

Where to check the current rainmaker backend & frontend version?

To check the RainMaker backend version follow the below steps.

  1. Login to RainMaker Dashboard using superadmin credentials.
  2. CLick on Deployment Settings option.
  3. Select Deployment Details option.
  4. Here you can see the current rainmaker backend version.

Backend Version

You can check the RainMaker frontend version at the bottom of the RainMaker Dashborad.

Frontend Version

On this page