> ## 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.

# Control de un cambio de estadística basada en eventos

> Código de ejemplo de XSAPI para suscribirse a las notificaciones de cambios de estadísticas basadas en eventos de XBOX Live y limpiar los controladores mediante el servicio de actividad en tiempo real.

En este tema se proporciona código de ejemplo para controlar un cambio de estadística basada en eventos.

**Para obtener notificaciones sobre los cambios de estadísticas basadas en eventos**

1. [Adición de un controlador de cambio de estadística](#ID4EM1)
2. [Suscripción a un cambio de estadística específico](#ID4EM2)

**Para realizar la limpieza**

1. [Eliminación de un controlador de cambio de estadística](#ID4EM3)
2. [Cancelación de la suscripción a un cambio de estadística específico](#ID4EM4)

<a id="ID4EM1" />

## Adición de un controlador de cambio de estadística

Registre un controlador de eventos para las notificaciones de cambio de estadísticas mediante el siguiente código de ejemplo.
El controlador de eventos recibe un objeto [XblStatisticChangeEventArgs](/reference/live/xsapi-c/user_statistics_c/structs/xblstatisticchangeeventargs).

#### API de C plana

```cpp theme={null}
void* context{ nullptr };
XblFunctionContext statisticChangedFunctionContext = XblUserStatisticsAddStatisticChangedHandler(
    xboxLiveContext,
    [](XblStatisticChangeEventArgs eventArgs, void* context) 
    {
        // Handle stat change. 
        LogToScreen("Statistic changed callback: stat changed (%s = %s)",
            eventArgs.latestStatistic.statisticName, 
            eventArgs.latestStatistic.value); 
    },
    context
);
```

Para obtener más información, consulte lo siguiente:

* [XblStatisticChangeEventArgs](/reference/live/xsapi-c/user_statistics_c/structs/xblstatisticchangeeventargs)
* [XblUserStatisticsAddStatisticChangedHandler](/reference/live/xsapi-c/user_statistics_c/functions/xbluserstatisticsaddstatisticchangedhandler)

<a id="ID4EM2" />

## Suscripción a un cambio de estadística específico

Suscríbase a las notificaciones de actualización de estadísticas a través del controlador `XblUserStatisticsSubscribeToStatisticChange` mediante el siguiente código de ejemplo.

#### API de C plana

```cpp theme={null}
XblRealTimeActivitySubscriptionHandle subscriptionHandle{ nullptr };

HRESULT hr = XblUserStatisticsSubscribeToStatisticChange(
    xboxLiveContext,
    xboxUserId,
    scid,
    statisticName.c_str(),
    &subscriptionHandle
);
```

<a id="ID4EM3" />

## Eliminación de un controlador de cambio de estadística

Quite un controlador de eventos para las notificaciones de cambio de estadísticas mediante el siguiente código de ejemplo.

#### API de C plana

```cpp theme={null}
XblUserStatisticsRemoveStatisticChangedHandler(
        xboxLiveContext,
        statisticChangedFunctionContext
);
```

<a id="ID4EM4" />

## Cancelación de la suscripción a un cambio de estadística específico

Cancele la suscripción a un cambio de estadística creada anteriormente mediante el siguiente código de ejemplo.

#### API de C plana

```cpp theme={null}
hr = XblUserStatisticsUnsubscribeFromStatisticChange(
    xboxLiveContext,
    statisticChangeSubscriptionHandle
);
```


## Related topics

- [Código de ejemplo de Estadísticas y tablas de clasificación basadas en eventos](/es/services/xbox-services/player-data/stats-leaderboards/event-based/how-to/live-statslb-eb-howto-nav.md)
- [Obtención de estadísticas basadas en eventos](/es/services/xbox-services/player-data/stats-leaderboards/event-based/how-to/live-getting-eb-stat.md)
- [Configuración en el portal de estadísticas y tablas de clasificación basadas en eventos](/es/services/xbox-services/player-data/stats-leaderboards/event-based/config/live-statslb-eb-config-nav.md)
- [Programación del servicio RTA](/es/services/xbox-services/fundamentals/rta/how-to/live-programming-rta.md)
- [Escritura de un evento para alimentar una estadística basada en eventos](/es/services/xbox-services/player-data/stats-leaderboards/event-based/how-to/live-sending-eb-stat.md)
