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

# Actualización de la presencia de un usuario mediante REST

> Referencia REST para actualizar la presencia enriquecida de XBOX Live con el URI Write Title, incluidos los campos TitleRequest, ActivityRequest y RichPresenceRequest.

Este tema proporciona código de ejemplo para actualizar las cadenas de presencia enriquecida.

Para actualizar una cadena de presencia enriquecida en su título, llame al URI `Write Title` con los parámetros adecuados en un objeto JSON.

Esta llamada RESTful también está encapsulada por las API de servicios XBOX (XSAPI).
Para obtener información sobre la API relacionada con esta llamada, consulte [XblPresenceSetPresenceAsync](/reference/live/xsapi-c/presence_c/functions/xblpresencesetpresenceasync).

El URI tiene el siguiente aspecto:

```uri theme={null}
POST /users/xuid({xuid})/devices/current/titles/current
```

Los siguientes campos son solo para establecer cadenas de presencia enriquecida.
Otros campos opcionales están relacionados con la escritura de la presencia de un título, pero no se enumeran en este tema.

## Objeto TitleRequest

| Propiedad | Tipo            | Obligatoria | Descripción                                                                                                                    |
| --------- | --------------- | ----------- | ------------------------------------------------------------------------------------------------------------------------------ |
| Activity  | ActivityRequest | No          | El registro que describe la información dentro del título (presencia enriquecida e información multimedia, si está disponible) |

## Objeto ActivityRequest

| Propiedad    | Tipo                | Obligatoria | Descripción                                                            |
| ------------ | ------------------- | ----------- | ---------------------------------------------------------------------- |
| richPresence | RichPresenceRequest | No          | El friendlyName de la cadena de presencia enriquecida que se va a usar |

## Objeto RichPresenceRequest

| Propiedad | Tipo   | Obligatoria | Descripción                                                                   |
| --------- | ------ | ----------- | ----------------------------------------------------------------------------- |
| Id        | String | Sí          | El friendlyName de la cadena de presencia enriquecida que se va a usar        |
| Scid      | String | Sí          | El scid que indica dónde están definidas las cadenas de presencia enriquecida |

Por ejemplo, para actualizar la presencia enriquecida del usuario cuyo xuid es 12345, la llamada tiene el siguiente aspecto:

```uri theme={null}
POST /users/xuid(12345)/devices/current/titles/current
```

Tiene el siguiente cuerpo JSON.

```json theme={null}
          {
            activity:
            {
              richPresence:
              {
                id:"playingMap",
                scid:"0000-0000-0000-0000-01010101"
              }
            }
          }
```

Con la API contenedora, esto es una llamada a [XblPresenceSetPresenceAsync](/reference/live/xsapi-c/presence_c/functions/xblpresencesetpresenceasync).

Si mantiene actualizados los datos de jugador de XBOX, no tiene que restablecer la cadena de presencia enriquecida para rellenar el espacio en blanco cada vez que cambian los datos.
En el ejemplo anterior, se está usando el mapa actual.

La presencia busca los datos en los datos de jugador de XBOX cuando un usuario intenta leer la cadena para rellenar el valor actual.
Aunque el usuario esté cambiando de un mapa a otro, no tiene que restablecer la cadena de presencia enriquecida en su juego siempre que esté enviando los eventos adecuados a los datos de jugador de XBOX.

Los datos pueden tardar unos segundos en migrarse a través del sistema de datos de jugador de XBOX.

Cuando alguien intenta leer la presencia enriquecida del usuario 12345, el servicio examina qué configuración regional se está solicitando y da formato a la cadena adecuadamente antes de devolverla.
En este caso, suponga que un usuario quiere leer la cadena en-US.

La lectura de la presencia enriquecida funciona de la siguiente manera.

```uri theme={null}
GET /users/xuid(12345)?level=all
```

Para obtener más información sobre esta llamada, consulte `GET (/users/xuid({xuid}))`.

La API contenedora para esto es [XblPresenceGetPresenceAsync](/reference/live/xsapi-c/presence_c/functions/xblpresencegetpresenceasync) o [XblPresenceGetPresenceForMultipleUsersAsync](/reference/live/xsapi-c/presence_c/functions/xblpresencegetpresenceformultipleusersasync).

En el ejemplo anterior, ha solicitado el `PresenceRecord` del usuario cuyo xuid es 12345.
También ha solicitado que el nivel de detalle sea `all`.

Si no especificó `all`, la presencia enriquecida no se devuelve. En cambio, `all` devuelve lo siguiente en la respuesta JSON.

```json theme={null}
          {
            xuid:"12345",
            state:"online",
            devices:
            [
              {
                type:"D",
                titles:
                [
                  {
                    id:"12345",
                    name:"Buckets are Awesome",
                    lastModified:"2022-08-17T07:15:23.4930000",
                    placement: "full",
                    state:"active",
                    activity:
                    {
                      richPresence:"Playing on map:Mountains"
                    }
                  }
                ]
              }
            ]
          }
```


## Related topics

- [Código de ejemplo de presencia enriquecida](/es/services/xbox-services/community/presence/how-to/live-presence-howto-nav.md)
- [Procedimientos](/es/services/xbox-services/community/presence/how-to/index.md)
- [Actualización de la presencia de un usuario mediante XSAPI C](/es/services/xbox-services/community/presence/how-to/live-updating-user-presence.md)
- [Obtención de la presencia de un usuario](/es/services/xbox-services/community/presence/how-to/live-getting-a-users-presence.md)
- [XBOX Manager: actualización de una consola](/es/tools/tools-console/xbom/manager-tool-updating-console.md)
