【问题标题】:Attach users to endpoints将用户附加到端点
【发布时间】:2017-03-03 10:44:10
【问题描述】:

我已使用 KaaClient.attachUser() 方法(使用可信验证器)将用户附加到端点,并且我收到了来自服务器的成功状态消息。但是,我在 Admin UI 中哪里可以看到这个用户?此外,如果我尝试使用用户 ID 并尝试将配置更新推送到端点,我会在管理 UI 上收到 item not found 错误。

【问题讨论】:

    标签: kaa


    【解决方案1】:

    目前没有允许列出所有附加用户的功能。只有在至少一次将用户附加到客户端应用程序后,才能通过管理 UI 更新用户配置架构的配置值(使用 userID):

    KaaClient.attachUser(userId, ...)
    

    要为不同的附加用户使用具有不同值的自定义用户配置架构,请尝试按照以下说明操作:

    为所需的演示应用程序添加配置架构(在本指南中,我们将使用事件演示):

    1. 以租户开发者身份登录管理 UI
    2. 转到应用程序 -> 事件演示 -> 模式 -> 配置。点击 添加架构按钮
    3. 在“添加配置架构”页面上单击创建新类型按钮
    4. 填写所有必填字段:名称(例如 EventUserSchema)、命名空间 (例如 org.kaa.kaaproject.demo.schema),显示名称(事件用户 架构)等。
    5. 将所有需要的字段添加到架构中(例如字段“userKey”和 具有“String”类型的“userValue”和具有“Integer”类型的字段“count” 和默认值“42”):在每个字段的同一页面上单击添加 “字段”区域中的按钮,填写包含的所有必填字段 名称和字段类型,然后单击添加按钮。
    6. 在页面顶部添加所有字段后,单击添加按钮。 如果您使用版本“2”做所有正确的新配置模式 并且名称“事件用户架构”将在页面上列出。如果你 导出它并用文件阅读器打开你会看到类似的东西 这个:
    {
      "type": "record",
      "name": "EventUserSchema",
      "namespace": "org.kaa.kaaproject.demo.schema",
      "fields": [
        {
          "name": "userKey",
          "type": [
            {
              "type": "string",
              "avro.java.string": "String"
            },
            "null"
          ],
          "displayName": "",
          "displayPrompt": ""
        },
        {
          "name": "userValue",
          "type": [
            {
              "type": "string",
              "avro.java.string": "String"
            },
            "null"
          ]
        },
        {
          "name": "count",
          "type": "int",
          "by_default": 42
        }
      ],
      "version": 1,
      "dependencies": [],
      "displayName": "Event User Schema",
      "description": ""
    }
    

    使用新创建的配置架构添加 SDK 配置文件:

    1. 转到应用程序 -> 事件演示 -> SDK 配置文件。单击添加 SDK 个人资料按钮。
    2. 输入名称(例如 EventUserSDK),选择配置架构版本 (对于这种情况,版本应设置为 2),添加所需的事件 类族(对于事件演示,我们需要 Chan 事件类族), 选择可信验证者。
    3. 在同一页面上单击添加 SDK 配置文件按钮。
    4. 如果一切正常,名称为“EventUserSDK”的 SDK 配置文件和 配置“v2”将列在 SDK 配置文件页面上。
    5. 在同一页面上,为新创建的 SDK 单击 Generate SDK 按钮, 选择需要的语言并点击 Generate SDK 按钮下载新的 SDK。

    用新下载的 SDK 替换客户端应用程序中的 SDK 库,重新构建您的应用程序。之后,您将能够在应用程序中使用与定义的配置模式相关的配置值:

    kaaClient.getConfiguration().getCount();
    kaaClient.getConfiguration().getUserKey();
    kaaClient.getConfiguration().getUserValue();
    

    这些值可以在 KaaClient.attachUser(...) 放入代码之后使用。

    运行应用程序后。如果用户连接成功并且您收到类似 Attach response: SUCCESS 的信息,则配置值将设置为默认值(默认值在配置模式中描述),您将能够在相应的管理页面上为每个用户 ID 更改它们:

    1. 转到应用程序 > 事件演示 -> 用户 > 更新配置。
    2. 输入已附加到 KaaClient 的用户 ID。
    3. 选择配置架构版本并填写所有值 配置正文区域。
    4. 单击更新配置按钮。 使用输入的用户 ID 的所有端点的配置值都会更改。

    也可以通过 REST 设置配置方案和值。请查看服务器REST APIs documentation页面。

    【讨论】:

    • 非常感谢您的回复。这回答了我的问题。
    猜你喜欢
    • 2020-01-10
    • 2020-09-29
    • 1970-01-01
    • 2021-05-04
    • 1970-01-01
    • 2012-12-31
    • 1970-01-01
    • 2021-06-13
    • 2018-03-18
    相关资源
    最近更新 更多