# 管理广告位

## 创建新的广告位

1. 导航至 **Mediation**> **Placements（聚合 > 广告位）**。您将被重定向到[Helium](https://helium.chartboost.com/)后台。
2. 在右上角下拉菜单中选择一个应用。然后点击 **New Placement +（新建广告位）**。如果未选择应用程序，将提示您[导入应用程序](/zh/mediation/apps-overview/)。
3. 选择[广告格式](/zh/mediation/ad-formats/)。
4. 选择预定义的 **广告位名称** 或创建自定义名称。
   - 自定义名称最多50个字符，仅允许数字，字母和连字符。
   - **广告位名称** 将用于 Mediation SDK 集成。
5. 设置 **素材类型**。



## 高级设置

### 素材类型

默认情况下，所有素材类型均允许。允许所有素材类型将有助于最大化收益。有关素材类型与广告类型兼容性的更多信息，请参阅[广告格式](/zh/mediation/ad-formats/)。


### A/B测试

为此广告位启用A/B测试，以进行实验并确定哪些设置最有效。
最佳实践是在完成广告位内的**竞价**和/或**瀑布流**设置之前不要启用A/B测试。


## 应用详情

App的详细信息页面包括以下这些字段：
- **Helium App ID** - 需要使用 `AppID` 或者 `app ID` 时，请使用此字段。
- **Helium Signature** - 需要使用 `AppSignature` 或者`app signature` 时，请使用此字段。
- **App Bundle** - 需要使用 `bundle ID`， `bundle_id，` 或者`appBundleID` 时，请使用此字段。
- **App Store URL** - 需要使用 App Store URL 时，请使用此字段。

### 广告队列

广告队列允许将多个全屏广告以队列的方式连续显示。这可以减少甚至可能消除需要连续显示全屏广告体验中的延迟现象。  

此功能需要聚合 SDK 4.9.0 版本以上。横幅广告和自适应横幅广告不支持广告队列。  

队列的容量可以设置为 1-5 个广告。这个限制可以在 Mediation 后台控制面板上设置3个级别：（1）**Max Queue Size** (最大队列容量)，（2）**Default Queue Size** (默认队列容量)，和（3）**Placement Queue Size** (广告位队列容量)。
- 为广告位设置 **Queue Size**（队列容量）。如果这里没有设置队列容量，那么将使用应用详情页面上设置的默认队列容量。如果默认队列容量大于最大队列容量，最大队列容量将优先被采用。
- 在应用的详情页面上，设置适用于应用中所有放置的 **Max Queue Size**（最大队列容量），默认值为2。如果默认队列容量小于最大队列容量，则默认队列容量将优先被采用。
- 在应用的详情页面上，为任何未设置队列容量的广告位设置 **Default Queue Size** （默认队列容量），默认值为2。如果最大队列容量小于默认队列容量或广告位队列容量，则最大队列容量将优先被采用。

例如，如果最大队列容量设置为4，而默认队列容量设置为2，那么任何广告位的队列大小如果没有设置，将默认为2，或者如果设置的容量大于4，将有一个最大容量为4。

| 如果设置如下：| 那么广告位的队列容量将是：|
|---|---|
| {::nomarkdown}<ul><li>广告位 A：队列设置为5</li> <li>广告位 B：未设置队列容量</li> <li>广告位 C：队列容量设置为3</li> <li>默认队列容量：2</li> <li>最大队列容量：4</li></ul>{:/} | {::nomarkdown}<ul><li>广告位 A: 4</li> <li>广告位 B: 2</li> <li>广告位 C: 3</li></ul>{:/} |


### 激励回调

在创建或编辑激励广告位时，您将在 **Advanced Settings（高级设置）**下看到一个用于配置激励回调的新开关按钮。点击开关按钮以在广告位上启用激励回调。

在这里，您将能够配置以下选项：

| 选项      | 定义                                                                                                         |
| :---------- | :------------------------------------------------------------------------------------------------------------------- |
| Method      | 用于进行回调请求的 `HTTP` 方法。支持 `GET` 和 `POST` 两种方法                                |
| Max Retries | 如果您的服务器未以200 OK做返回响应，聚合将重试回调的次数。`最小值=0`，`最大值=10` |
| URL         | 进行回调请求的URL。必须为 `<https://>`                                                       |
| Body        | 仅在方法为 `POST` 时才可用的可选字段。支持与URL相同的宏                     |

### 支持的宏

使用 POST 方法时，可以将以下宏附加到 URL 或正文。

| 宏                  | 定义                                                               | 必要字段 |
| :--------------------- | :------------------------------------------------------------- | :-------- |
| `%%TRANSACTION_ID%%`   | 与激励事件相关的唯一曝光 ID                                        | 必要  |
| `%%SERVER_TIMESTAMP%%` | 由聚合服务器在处理事件时设置的UNIX时间戳                            | 必要  |
| `%%USER_ID%%`          | 关联的应用发布商特定用户 ID                                        | 必要  |
| `%%VERIFICATION%%`     | 由聚合服务器用您的激励密钥加密的 SHA256 哈希                          | 必要  |
| `%%SDK_TIMESTAMP%%`    | 由聚合 SDK 在处理事件时设置的UNIX时间戳                             | 可选  |
| `%%CPM_PRICE%%`        | 广告单元的 CPM 价格                                                | 可选  |
| `%%AD_REVENUE%%`       | 从曝光中产生的实际广告收入值。CPM_PRICE / 1000 `CPM_PRICE / 1000`  | 可选  |
| `%%CUSTOM_DATA%%`      | 由 SDK 提供的包含自定义数据的键值 JSON                                | 可选  |

请确保所有必需的宏都存在，否则您将无法保存回调。

包含所有必需宏的URL示例：

```
https://myserver.com/page?id=%%TRANSACTION_ID%%&user=%%USER_ID%%&hash=%%VERIFICATION%%&ts=%%SERVER_TIMESTAMP%%
```



### 创建激励密钥

要创建或获取您帐户的密钥，请在 **Tools（工具）**> **General Settings（通用设置）**下查找。

### 验证发布者服务器上的激励回调

当显示激励广告时，聚合将ping您服务器的端点。包含所有必需宏的**正文**示例：

```
{
   "tx": "%%TRANSACTION_ID%%",
   "usr": "%%USER_ID%%",
   "sdk": %%SDK_TIMESTAMP%%,
   "svt": %%SERVER_TIMESTAMP%%,
   "hash": "%%VERIFICATION%%"
}
```

收到回调时，您可以通过使用以下方法重新生成 `%%VERIFICATION%%` 哈希来验证请求是否真实：

```
message = %%SERVER_TIMESTAMP%% + %%TRANSACTION_ID%% + %%USER_ID%%
  SHA256(secret_key, message)
```

请注意，密钥将与后台中的**工具**中提供的值相同。然后，您需要验证上述操作的结果是否等于 `%%VERIFICATION%%` 哈希的值。



## 竞价设置

### 添加竞价网络

查看我们的[合作伙伴网络详细](/zh/mediation/manage-networks/#合作伙伴广告网络详情)信息表，获取可用竞价网络的完整列表以及与 Chartboost 聚合连接其网络的说明。

- 确保网络合作伙伴的凭据与您在每个网络后台上的帐户信息匹配。
- 确保所有所需的竞价网络都处于活动状态。

### 优先出价 

启用此功能将考虑在头部竞价里，只返回高于 **prioritized bidding CPM（已设置优先出价 CPM 价格）**的最高出价。如果没有高于当前 CPM 价格的竞价返回，则会将瀑布流条目和获胜竞标的 CPM按从高到低的顺序排列，以此返回广告。

使用此功能可能不会为每个展示获得最佳价格，因为除非头部竞价的网络里没有返回出价，否则不会考虑瀑布流里的分层（Line Item）的广告，即使你有可用的更高费率的分层。因此，如果你正在经历网络高延迟，或者你有一个庞大而优质的瀑布流分层时，我们推荐启用此选项。

### eCPM底价 

- 如果在此聚合广告位中仅使用竞价，可以通过设置全局底价或特定国家的底价来启用eCPM底价。
- 国家级 eCPM 底价优先于全局 eCPM 底价。对于没有国家级 eCPM 底价的任何国家，聚合将使用全局 eCPM 底价。
- 如果在此聚合广告位中同时使用竞价和瀑布流，您不应启用 eCPM 底价，因为您希望竞价合作伙伴在所有广告请求中与非竞价网络/广告层级竞争。

<div class="alert alert-warning" role="alert">
  <b>注意:</b> 设置更高的eCPM底价将大大增加降低填充率的风险。
</div>



## 瀑布流设置

每个瀑布流可以包含一组特定于广告格式类型的广告组。每个广告组将包含一组特定合作伙伴网络广告位的广告层级。

一个应用可以为不同的用例需求拥有多个瀑布流。

要开始，请点击 **Ad Groups（广告组）**下方的 **+ Add（添加）**，然后选择 **+ Create a new Ad Group（创建新的广告组）**。现有广告组也可以链接到此广告位。


### 广告组 

1. 为您的广告组取一个您容易识别的**名称**。
2. 您无法更改广告组的**类型**（广告格式）。
3. 设置目标国家列表。要设置特定国家的列表，请在下拉菜单中选择 **Include specified countries（包含指定国家）**或 **Exclude specified countries（排除指定国家）**。然后，在 **Select Country（选择国家）**的下拉菜单中，选择要包含/排除的国家，然后点击 **+** 按钮。

### 广告层级

广告层级是特定于合作伙伴网络的。请查看我们的[合作伙伴网络详细](/zh/mediation/manage-networks/#合作伙伴广告网络详情)信息表，获取可用瀑布流网络的完整列表以及将其网络和合作伙伴广告位连接至 Chartboost 聚合的说明。

确保将您的广告层级添加到组中。
1. 点击 **+ Add a line item（添加广告层级）**以组成现有广告层级。
2. 在网络合作伙伴广告位行中选中 **Add to Ad Group（添加到广告组）**的复选框。
3. 点击右下角的 **+ Add Selected Items（添加选定项目）** 按钮。

