CohoSDK 1.1.0

CohoSDK 1.1.0

Coho AICoho AI维护。



CohoSDK 1.1.0

  • Coho AI

Coho Swift SDK

概述

Coho Swift SDK提供了一种简单的方式来集成Coho的服务,允许您将自定义事件发送到Coho的端点。SDK支持瞬态错误的重试机制,并提供了详细记录功能。

安装

要将Coho Swift SDK添加到您的项目中,请使用Swift包管理器进行安装

  1. 在Xcode中打开您的项目。
  2. 转到文件 > 添加包依赖...。
  3. 输入Coho SDK仓库的URL:https://github.com/coho-ai/swift-sdk .
  4. 选择您想要使用的版本。
  5. 将包添加到您的目标中。

使用

初始化SDK

在使用SDK之前,您需要使用适当的选项对其进行初始化。

import CohoSDK

let sdkOptions = CohoSDKOptions(
    tenantId: "your-tenant-id",
    region: .US, // or .EU
    retries: 3, // default is 0
    retryDelay: 1000, // default is 100ms
    enableLogging: true
)

let cohoSDK = CohoSDK(options: sdkOptions)

设置用户ID

在发送事件之前,您需要使用setUserId方法设置用户ID。

cohoSDK.setUserId("user-id")

发送事件

要发送事件,请使用sendEvent方法。此方法接受事件名称和一个可选的附加属性字典。

cohoSDK.sendEvent(eventName: "EventName", additionalProperties: ["customField": "customValue"]) { result in
    switch result {
    case .success:
        print("Event sent successfully")
    case .failure(let error):
        print("Error sending event: \(error)")
    }
}

示例

以下是一个完整的示例,它初始化SDK,设置用户ID并发送一个事件。

import CohoSDK

let sdkOptions = CohoSDKOptions(
    tenantId: "your-tenant-id",
    region: .US,
    retries: 3,
    retryDelay: 1000,
    enableLogging: true
)

let cohoSDK = CohoSDK(options: sdkOptions)

cohoSDK.setUserId("user-id")

cohoSDK.sendEvent(eventName: "EventName", additionalProperties: [
    "customField1": "customValue1",
    "customField2": 123,
    "customField3": true
])

详细API

CohoSDKOptions

CohoSDKOptions用于配置SDK。

public struct CohoSDKOptions {
    public enum Region {
        case US, EU
    }

    public let tenantId: String
    public let region: Region
    public let retries: Int
    public let retryDelay: TimeInterval
    public let enableLogging: Bool

    public init(
        tenantId: String,
        region: Region,
        retries: Int = 0,
        retryDelay: TimeInterval = 100,
        enableLogging: Bool = false
    ) {
        self.tenantId = tenantId
        self.region = region
        self.retries = retries
        self.retryDelay = retryDelay
        self.enableLogging = enableLogging
    }
}

CohoSDK

CohoSDK提供设置用户ID和发送事件的方法。

setUserId

设置SDK的用户ID。该方法必须在发送任何事件之前调用。

public func setUserId(_ userId: String)

sendEvent

将事件发送到Coho端点。此方法接受事件名称和一个可选的附加属性字典。

public func sendEvent(
    eventName: String,
    additionalProperties: [String: Any] = [:],
    completion: @escaping (Result<Void, Error>) -> Void = { _ in }
)

错误处理

SDK提供了强大的错误处理机制,包括对瞬态错误的重试。如果未设置用户ID或为空,则不会发送事件,日志消息将指示用户ID缺失。

记录

通过在CohoSDKOptions中设置enableLogging标志来启用记录。启用后,SDK将记录有关请求和响应的详细信息,这在调试时可能很有用。

许可证

Coho Swift SDK在MIT许可证下发布。有关详细信息,请参阅LICENSE

贡献

欢迎贡献!请阅读CONTRIBUTING.md了解我们的行为准则以及提交拉取请求的过程。

对于任何问题或问题,请打开GitHub上的问题。