IotLibrary 0.0.2

IotLibrary 0.0.2

SzabolcsOrban 维护。



  • 作者:
  • Orban Szabolcs

iot-library-iOS

安装

使用 'pods' 将库添加到您的项目中

pod 'IotLibrary'

在您的 'AppDelegate' 中导入

import IotLibrary
仅使用 token 进行设置
IotTracker.shared.set(configuration: "YourApiKey")
仅使用配置进行设置
let configuarion = Configuration()
configuarion.token = "YourApiKey"
configuarion.minBatchSize = 5
configuarion.loggingEnabled = true
configuarion.debouncingIntervalInMinutes = 15

IotTracker.shared.set(configuration: configuarion)

配置

  • token

    • 这是项目的 API_KEY
    • 如果没有设置 token,将抛出一个异常:NoToken("您需要先设置 token")
  • minBatchSize

    • 默认情况下,事件将以每批10个的方式发送。
    • 如果您将minBatchSize设置为1,则每当事件被跟踪时就会将其发送到服务器。
  • loggingEnabled

    • 默认情况下日志是被禁用的。
    • 如果您启用它,可以使用IoT_Zynk_Software标签来检查事件是否被正确发送。
  • debouncingIntervalIn Minutes

    • 默认和最小值为15分钟。

使用说明

跟踪指标
IotTracker.shared.trackMetric(name: "name", tag: "tag", value: value)
跟踪日志
IotTracker.shared.trackLog(logStream: "logStream", message: "message", value: value)

上传机制

一次性上传

每次存储新事件时,都会执行以下检查:如果事件的数量大于或等于'minBatchSize',将尝试上传所有事件。如果尝试失败,例如由于网络问题,则不会重试,并且事件将保留在存储中。如果您将'minBatchSize'设置为1,则每次生成新事件时都会执行上传尝试。

周期性上传

每15分钟,背景中会运行一个任务,无论应用是否在前台启动。每次任务运行时,都会尝试上传存储的所有事件。如果 fails,例如由于网络问题,它将在稍后重试。它不允许延迟更短。但是,您可以配置更长的延迟,通过将值“15”以上的数值设置到变量“debouncingIntervalInMinutes”。任何低于15的值将被忽略,15分钟的延迟将保持不变。