Отслеживание дохода
Каждое событие загрузки и показа передаёт объект AdInfo (BMAdInfo) в коллбэки делегата.
Поля AdInfo
| Поле | Тип | Описание |
|---|---|---|
placementId | String | ID плейсмента из дашборда BidMachine |
price | Double | eCPM ÷ 1000 (например, 0.005 = $5 CPM) |
precision | RevenuePrecision | Уровень достоверности сообщённой цены |
info | [String: String] | Сырые метаданные; известные ключи: networkName, dsp, ecpm |
Точность дохода
RevenuePrecision — это перечисление на основе Int с тремя случаями (строковое имя не предоставляется — используйте .rawValue для получения Int):
| Swift | Obj-C | Описание |
|---|---|---|
.exact | RevenuePrecisionExact | Цена аукциона в реальном времени |
.estimated | RevenuePrecisionEstimated | Оценка на основе исторических данных |
.unknown | RevenuePrecisionUnknown | Точность не удалось определить |
Коллбэк дохода
Коллбэк didPayRevenue срабатывает при регистрации оплачиваемого показа — используйте его, чтобы передавать данные о доходе в вашу аналитическую платформу.
- Swift
- Objective-C
func didPayRevenue(adInfo: AdInfo) {
analytics.trackRevenue(
adUnit: adInfo.placementId,
revenue: adInfo.price,
precision: adInfo.precision.rawValue,
network: adInfo.info["networkName"]
)
}
- (void)didPayRevenueWithAdInfo:(BMAdInfo *)adInfo {
[self.analytics trackRevenue:adInfo.placementId
revenue:adInfo.price
precision:(long)adInfo.precision
network:adInfo.info[@"networkName"]];
}