> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Segmentação avançada com propriedades personalizadas do jogador

> Crie segmentos dinâmicos de jogadores do PlayFab a partir de propriedades personalizadas definidas por APIs, pelo Game Manager ou por regras do PlayStream para conduzir ações e tarefas agendadas de live ops.

# Segmentação avançada com propriedades personalizadas (versão prévia pública)

<Note>
  O recurso de segmentação avançada com propriedades personalizadas está em versão prévia privada. Prevemos alterações contínuas nele à medida que continuamos coletando feedback e otimizando-o para o uso dos clientes.
</Note>

A segmentação avançada com [propriedades personalizadas (versão prévia pública)](/pt-BR/services/playfab/live-service-management/game-configuration/segmentation/player-custom-properties) permite criar segmentos dinâmicos de jogadores usando seus próprios dados de comércio, engajamento e dados personalizados. Você pode armazenar e gerenciar as informações personalizadas dos jogadores usando propriedades personalizadas e, em seguida, usá-las para criar segmentos com base nessas propriedades específicas. Essas propriedades podem ser definidas nos jogadores por meio de APIs, do Game Manager ou de regras do PlayStream e podem ser usadas para definir segmentos que agrupam jogadores com base em características compartilhadas. Depois que esses segmentos forem criados, eles poderão ser usados para gerar ações nos jogadores. Além disso, esses segmentos podem ser usados para definir tarefas agendadas ou manuais.

## Criar segmentos com propriedades personalizadas do jogador

Você pode criar segmentos com propriedades personalizadas do jogador por meio da API ou do Game Manager.

### Por meio da API

* Use a [API Create Segment](https://learn.microsoft.com/en-us/rest/api/playfab/admin/segments/create-segment) para criar um segmento.
* Adicione predicados de propriedades personalizadas usando a API [Update Segment](https://learn.microsoft.com/en-us/rest/api/playfab/admin/segments/update-segment).

### Por meio do Game Manager

* Entre no [Game Manager](https://developer.playfab.com).
* Acesse a página **Players**.
* Acesse a guia **Segments**.
* [Crie ou atualize um segmento](/pt-BR/services/playfab/live-service-management/game-configuration/segmentation/segmentation-quickstart).
* Adicione predicados de propriedades personalizadas selecionando **Add filter** em **Player**.
* Salve o segmento.

## Exportar jogadores de um segmento com propriedades personalizadas

1. [Crie um segmento](/pt-BR/services/playfab/live-service-management/game-configuration/segmentation/segmentation-quickstart) que faça referência a predicados de propriedades personalizadas.
2. Use a [API ExportPlayersInSegment](/pt-BR/services/playfab/live-service-management/game-configuration/segmentation/segmentation-export-players-in-a-segment) para exportar perfis de jogador

## Tarefas agendadas

1. [Execute uma tarefa agendada](/pt-BR/services/playfab/data-analytics/acting-data/scheduled-tasks) em um segmento usando predicados de propriedades personalizadas.

## Cenários de início rápido

### Configurar o catálogo e o inventário do Economy V2

1. Crie uma moeda **Gold Bar** como um item.
2. Crie uma moeda **Chocolate Bar** como um item.
   * **Parâmetros obrigatórios:** Friendly ID, Title e Start Date (1º de março)\\
     <img src="https://mintcdn.com/microsoft-4404708b/IwSYTY5BEqd_x-HK/images/playfab/data-analytics/acting-data/advanced_segmentation_docs_2_economy_currencies.png?fit=max&auto=format&n=IwSYTY5BEqd_x-HK&q=85&s=4d7717a09bb5a874d243bccd92600354" alt="Configuração do catálogo do Economy V2" width="1715" height="578" data-path="images/playfab/data-analytics/acting-data/advanced_segmentation_docs_2_economy_currencies.png" />
3. Crie um item de catálogo **Chocolate Bar**:\
   3a. Navegue até **Settings -> Economy (V2) -> Catalog (V2)**.\
   3b. Em **Catalog Settings**, adicione um novo **Content Type**, **Chocolate Bar**, e selecione **Save**.

   <img src="https://mintcdn.com/microsoft-4404708b/IwSYTY5BEqd_x-HK/images/playfab/data-analytics/acting-data/advanced_segmentation_docs_3_economy_settings.png?fit=max&auto=format&n=IwSYTY5BEqd_x-HK&q=85&s=a8cc51e057c5f9605d157092b51f92b8" alt="Configurações do catálogo" width="1184" height="900" data-path="images/playfab/data-analytics/acting-data/advanced_segmentation_docs_3_economy_settings.png" />

   3c. Acesse **Engage -> Economy -> Catalog (V2) -> Items** e selecione **New item** para adicionar.

   <img src="https://mintcdn.com/microsoft-4404708b/IwSYTY5BEqd_x-HK/images/playfab/data-analytics/acting-data/advanced_segmentation_docs_4_economy_new_item.png?fit=max&auto=format&n=IwSYTY5BEqd_x-HK&q=85&s=db3b3f74eec0156f06d22c91c77ed450" alt="Novo item" width="1717" height="570" data-path="images/playfab/data-analytics/acting-data/advanced_segmentation_docs_4_economy_new_item.png" />

   3d. Selecione **Chocolate Bar** em **ContentType**, defina **Start date**, **Time** e **Title** e, em seguida, selecione **Save and Publish**.

   <img src="https://mintcdn.com/microsoft-4404708b/IwSYTY5BEqd_x-HK/images/playfab/data-analytics/acting-data/advanced_segmentation_docs_5_create_chocolate_bar.png?fit=max&auto=format&n=IwSYTY5BEqd_x-HK&q=85&s=3fc3d43286a7a0a5c27ae713dc6fb90b" alt="Salvar e publicar" width="1495" height="757" data-path="images/playfab/data-analytics/acting-data/advanced_segmentation_docs_5_create_chocolate_bar.png" />

***

### 1. Criar um segmento para usuários que gastam entre 25 e 50 Gold Bars (moeda virtual gasta)

1. Navegue até a página **PlayStream Rules** em **Automation -> Rules**.

2. Crie uma regra para o evento `items_subtracted` com a seguinte configuração:

   **Condições:**

   * `Payload.ItemId == <id of Gold Bar currency>`
   * Opcional: `Payload.Amount` entre 25 e 50 para evitar a substituição por outros valores

   **Ações:**

   * Atualizar propriedades personalizadas
     * `AmountSpent = Payload.Amount`
     * `ItemName = Payload.ItemId`

   <img src="https://mintcdn.com/microsoft-4404708b/IwSYTY5BEqd_x-HK/images/playfab/data-analytics/acting-data/advanced_segmentation_docs_6_gold_sub_rule.png?fit=max&auto=format&n=IwSYTY5BEqd_x-HK&q=85&s=d60daa6e9d15493bda013cfddc1b277b" alt="Configuração da regra de moeda virtual" width="1361" height="784" data-path="images/playfab/data-analytics/acting-data/advanced_segmentation_docs_6_gold_sub_rule.png" />

3. Navegue até a página **Segments** em **Players -> Segments**.

4. Crie um novo segmento com a seguinte configuração:

   * A propriedade personalizada (string) `ItemName` é `<Gold Bar id>`
   * A propriedade personalizada (numérica) `AmountSpent` é `>= 25`
   * A propriedade personalizada (numérica) `AmountSpent` é `<= 50`

   <img src="https://mintcdn.com/microsoft-4404708b/IwSYTY5BEqd_x-HK/images/playfab/data-analytics/acting-data/advanced_segmentation_docs_7_gold_segment.png?fit=max&auto=format&n=IwSYTY5BEqd_x-HK&q=85&s=b231ad97b5ae4bdac45fca1fd4d27a76" alt="Configuração do segmento de moeda virtual" width="842" height="845" data-path="images/playfab/data-analytics/acting-data/advanced_segmentation_docs_7_gold_segment.png" />

***

### 2. Criar um segmento para usuários que receberam Chocolate Bars e usaram todas elas (10) após 1º de abril de 2025 (inventário concedido)

1. Navegue até a página **PlayStream Rules** em **Automation -> Rules**.

2. Crie uma regra para o evento `playfab.inventory.items_granted` com a seguinte configuração:

   **Condições:**

   * `Payload.ItemId == <Chocolate Bars id>`

   **Ações:**

   * Atualizar propriedades personalizadas do jogador
     * `AmountSpent = Payload.Amount`
     * `ItemUpdateDate = Timestamp`

   <img src="https://mintcdn.com/microsoft-4404708b/IwSYTY5BEqd_x-HK/images/playfab/data-analytics/acting-data/advanced_segmentation_docs_8_chocolate_sub_rule.png?fit=max&auto=format&n=IwSYTY5BEqd_x-HK&q=85&s=762437c85d96129ed24e7b85dfbcbf32" alt="Configuração da regra de inventário concedido" width="1341" height="833" data-path="images/playfab/data-analytics/acting-data/advanced_segmentation_docs_8_chocolate_sub_rule.png" />

3. Navegue até a página **Segments** em **Players -> Segments**.

4. Crie um segmento com a seguinte configuração:

   * Propriedade personalizada (string) `ItemName = <Chocolate Bars id>`
   * Propriedade personalizada (datetime) `ItemUpdateDate > 4/1/2025`
   * Propriedade personalizada (numérica) `ItemAmountSpent >= 10`

   <img src="https://mintcdn.com/microsoft-4404708b/IwSYTY5BEqd_x-HK/images/playfab/data-analytics/acting-data/advanced_segmentation_docs_9_chocolate_segment.png?fit=max&auto=format&n=IwSYTY5BEqd_x-HK&q=85&s=c41112d6e5b2c6661ae1a28712c53ef5" alt="Configuração do segmento de inventário concedido" width="899" height="1250" data-path="images/playfab/data-analytics/acting-data/advanced_segmentation_docs_9_chocolate_segment.png" />

5. **Como funciona:** a regra **atualizará** a propriedade personalizada do jogador com o valor de cada evento individual; **ela não acumulará nem somará valores ao longo do tempo**. Por exemplo, se um jogador gastar 1 chocolate bar em dez ocasiões separadas, a propriedade `ItemAmountSpent` será definida como `1` a cada vez, e não `10`. Como resultado, o jogador **não** será incluído no segmento que filtra por `ItemAmountSpent >= 10`. Se você precisar acompanhar valores cumulativos ou agregados (por exemplo, o total de itens gastos em vários eventos), recomendamos implementar uma lógica personalizada usando uma **Azure Function** ou o **CloudScript** para calcular e atualizar o total.

6. **Observação:** as Gold Bars do cenário 1 e as Chocolate Bars do cenário 2 gravam na mesma propriedade `ItemName`. Se quiser acompanhar vários valores, você precisará de vários nomes de propriedade para evitar que um jogador fique alternando entre 2 segmentos.

***

### 3. Criar um segmento para usuários que compraram 1 Chocolate Bar em uma única compra (compra de catálogo)

1. Navegue até a página **PlayStream Rules** em **Automation -> Rules**.

2. Crie uma regra para o evento `playfab.inventory.items_purchased` com a seguinte configuração:

   **Condições:**

   * `Payload.ItemType == ChocolateBar`
   * `Payload.Amount >= 1`
   * `Timestamp >= 5 minutes ago`

   **Ações:**

   * Atualizar propriedades personalizadas
     * `ChocolateBarPurchased = Payload.Amount`

   <img src="https://mintcdn.com/microsoft-4404708b/IwSYTY5BEqd_x-HK/images/playfab/data-analytics/acting-data/advanced_segmentation_docs_10_chocolate_purchase_rule.png?fit=max&auto=format&n=IwSYTY5BEqd_x-HK&q=85&s=e0dabaa54932a0f2e7e0ed7898cbdb2b" alt="Configuração da regra de compra de catálogo" width="1686" height="1080" data-path="images/playfab/data-analytics/acting-data/advanced_segmentation_docs_10_chocolate_purchase_rule.png" />

3. Navegue até a página **Segments** em **Players -> Segments**.

4. Crie um segmento com a seguinte configuração:

   * Propriedade personalizada (numérica) `ChocolateBarPurchased >= 1`

   <img src="https://mintcdn.com/microsoft-4404708b/IwSYTY5BEqd_x-HK/images/playfab/data-analytics/acting-data/advanced_segmentation_docs_11_chocolate_purchase_segment.png?fit=max&auto=format&n=IwSYTY5BEqd_x-HK&q=85&s=0690da9ce0f5575e8e1d19a201a2f557" alt="Configuração do segmento de compra de catálogo" width="626" height="1255" data-path="images/playfab/data-analytics/acting-data/advanced_segmentation_docs_11_chocolate_purchase_segment.png" />

5. **Como funciona:**  sempre que um jogador compra uma **Chocolate Bar**, a condição da regra é disparada, executando a ação para adicionar a propriedade personalizada. Em seguida, o jogador entra no segmento e pode receber a recompensa ou a notificação configurada.


## Related topics

- [Propriedades personalizadas do jogador](/pt-BR/services/playfab/live-service-management/game-configuration/segmentation/player-custom-properties.md)
- [Início rápido das propriedades personalizadas do jogador](/pt-BR/services/playfab/live-service-management/game-configuration/segmentation/player-custom-properties-qs.md)
- [Listar propriedades personalizadas do jogador](/pt-BR/services/playfab/api-references/rest/server/player-data-management/list-player-custom-properties.md)
- [Excluir propriedades personalizadas do jogador](/pt-BR/services/playfab/api-references/rest/server/player-data-management/delete-player-custom-properties.md)
- [Obter propriedade personalizada do jogador](/pt-BR/services/playfab/api-references/rest/server/player-data-management/get-player-custom-property.md)
