ExposeBox
示例
要运行示例项目,请先克隆仓库,然后从 Example 目录运行 pod install
。
安装
ExposeBox 可以通过 CocoaPods 获取。要安装它,只需将以下行添加到 Podfile 中
pod 'ExposeBox'
用法
导入框架(必需)
import ExposeBoxSDK
设置您的 companyId(必需)。在设置 companyId 之前发送的所有数据将被忽略。
ExposeBox.shared.companyId = "COMPANY_ID"
设置您的 appId(可选)
ExposeBox.shared.appId = "APP_ID"
companyId 是您的公司 ID,appId 是您的应用程序 ID,两者均由 ExposeBox 提供。
然后您可以在应用程序中使用 ExposeBox。
方法
跟踪页面访问
ExposeBox.shared.view(name: "MainView")
或者从UIViewController实例中:
reportExposeBoxView(name: "MainView")
设置类别
ExposeBox.shared.setCategories(["Category1", "Category2"])
设置产品
ExposeBox.shared.setProducts(["e349vb", "x980tmw"])
在单件产品的场景下,您可以为单个元素提供一个数组
设置标签
ExposeBox.shared.setTags(["Key" : ["Key", "Value"]])
添加到/从购物车移除
当您的客户在添加或移除购物车中的项目时使用此功能,其中productId 是您的产品的SKU,数量是指相同产品的数量,而价格是产品的单价
ExposeBox.shared.addToCart(productId: "ID", quantity: INT, unitPrice: FLOAT)
ExposeBox.shared.removeFromCart(productId: "ID", quantity: INT)
添加到/从收藏夹移除
ExposeBox.shared.addToWishlist(productId: "ID")
ExposeBox.shared.removeFromWishlist(productId: "ID")
审批和请求优惠券
ExposeBox.shared.apporove(coupon: "COUPON")
ExposeBox.shared.request(coupon: "COUPON")
客户数据
设置客户详细信息可使ExposeBox发送自动电子邮件并同步离线数据与在线数据。
当客户已登录且数据可供使用时使用本功能。
首先创建CustomerData对象
let customerData = ExposeBoxCustomerData(email: "EMAIL")
customerData.firstName = "FIRST"
customerData.lastName = "LAST"
customerData.customerId = "ID"
customerData.additionalInfo = ["CUSTOM": "DATA"]
ExposeBox.shared.setCustomerData(customerData)
如城市、邮编、地址、电话等其它字段可以通过附加信息获取。
然后将它通过ExposeBox发送
自定义事件
您可以通过发送带有数据的事件
ExposeBox.shared.event(name: "EVENT", data: ["CUSTOM" : "DATA"])
其中eventName是在您的仪表板上显示的事件名称,data是一个包含您自定义事件数据的字典。
点击
ExposeBox.shared.click(placementId: "ID", widgetId: INT, productId: "ID", additionalData: ["CUSTOM": "DATA"])
实际曝光次数
let batches = [RealImpressionBatch(placementId: "ID", widgetId: INT, items: ["CUSTOM" : "DATA"])]
ExposeBox.shared.realImpression(batches)
订单(转化)
通知ExposeBox已发生转化。此信息应在发生转化事件(例如结账后的“感谢”页面)时发送。
首先创建订单中的购物车商品,然后将它通过ExposeBox发送,包含orderId和totalPrice(可选)(orderId应该是您的订单ID,一般是在下单之后获得)。
let products = [CartProduct(productId: "ID", quantity: INT, unitPrice: FLOAT)]
ExposeBox.shared.conversion(orderId: "ID", totalPrice: FLOAT, cartProducts: products)
获取推荐
在您在ExposeBox仪表板上设置好位置后,您可以获取这些位置的产品推荐。在字符串数组中提供位置ID,如下例所示的ID1和ID2。响应将包含ExposeBox位置列表
ExposeBox.shared.recommendations(placementIds: ["ID1", "ID2"]) { objects, error in
// YOUR HANDLERS
}
作者
Виктор Щепан夫斯基, [email protected]
许可证
ExposeBox在MIT许可证下可用。有关更多信息,请参阅LICENSE文件。