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

# PartyDirectPeerConnectivityOptions

> Marcas que controlan el intento de uso de la conectividad directa de punto a punto entre los dispositivos de una red.

Marcas que controlan el intento de uso de la conectividad directa de punto a punto entre los dispositivos de una red.

## Sintaxis

```cpp theme={null}
enum class PartyDirectPeerConnectivityOptions  : int32_t  
{  
    None = 0x0,  
    SamePlatformType = 0x1,  
    DifferentPlatformType = 0x2,  
    AnyPlatformType = SamePlatformType | DifferentPlatformType,  
    SameEntityLoginProvider = 0x4,  
    DifferentEntityLoginProvider = 0x8,  
    AnyEntityLoginProvider = SameEntityLoginProvider | DifferentEntityLoginProvider,  
    OnlyServers = 0x10,  
}  
```

## Constantes

| Constante                    | Descripción                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |                                     |
| ---------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ----------------------------------- |
| None                         | No se especifica ninguna marca.<br /><br /> La ausencia de marcas significa que no se permite ningún intento de conexión directa entre pares. Todos los mensajes de punto de conexión y los datos de chat entre dispositivos se transmitirán siempre a través de servidores de retransmisión transparentes en la nube, y nunca se intercambiará información de direcciones IP.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |                                     |
| SamePlatformType             | Se pueden intentar conexiones directas de punto a punto entre dispositivos del mismo tipo de plataforma.<br /><br /> Un par de dispositivos intentará establecer conexiones directas de punto a punto si se identifican como poseedores del mismo tipo de plataforma de hardware u OS (por ejemplo, equipos Windows, consolas de juegos XBOX, dispositivos móviles basados en iOS) asociada a la biblioteca de Party específica que usan. <br /><br /> Tenga en cuenta que esta marca no permite por sí sola ningún intento de conectividad directa de punto a punto. Debe combinarse con una o ambas de las marcas `SameEntityLoginProvider` y `DifferentEntityLoginProvider`.   <br /><br /> Esta marca no se puede combinar con la marca `OnlyServers` en la estructura [PartyNetworkConfiguration](/services/playfab/multiplayer/networking/reference/structs/partynetworkconfiguration). Puede combinarse con `OnlyServers` como parte del valor [PartyOption::LocalDeviceDirectPeerConnectivityOptionsMask](/services/playfab/multiplayer/networking/reference/enums/partyoption).                                                                                                                                                                                                                                                                                                                                                                                             |                                     |
| DifferentPlatformType        | Se pueden intentar conexiones directas de punto a punto entre dispositivos con tipos de plataforma diferentes.<br /><br /> Un par de dispositivos intentará establecer conexiones directas de punto a punto si se identifican como poseedores de tipos diferentes de plataformas de hardware u OS (por ejemplo, equipos Windows, consolas de juegos XBOX, dispositivos móviles basados en iOS) asociadas a las bibliotecas de Party específicas que usa cada dispositivo. <br /><br /> Tenga en cuenta que esta marca no permite por sí sola ningún intento de conectividad directa de punto a punto. Debe combinarse con una o ambas de las marcas `SameEntityLoginProvider` y `DifferentEntityLoginProvider`.   <br /><br /> Esta marca no se puede combinar con la marca `OnlyServers` en la estructura [PartyNetworkConfiguration](/services/playfab/multiplayer/networking/reference/structs/partynetworkconfiguration). Puede combinarse con `OnlyServers` como parte del valor [PartyOption::LocalDeviceDirectPeerConnectivityOptionsMask](/services/playfab/multiplayer/networking/reference/enums/partyoption).                                                                                                                                                                                                                                                                                                                                                             |                                     |
| AnyPlatformType              | Se pueden intentar conexiones directas de punto a punto entre dispositivos independientemente de sus tipos de plataforma.<br /><br /> Esta marca es equivalente a \`\`\`SamePlatformType                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             | DifferentPlatformType\`\`\`.        |
| SameEntityLoginProvider      | Se pueden intentar conexiones directas de punto a punto entre dispositivos que tienen identificadores de entidad de PlayFab de usuarios autenticados que iniciaron sesión con el mismo proveedor.<br /><br /> Un dispositivo que autentica inicialmente a un usuario local en la red intentará establecer conexiones directas de punto a punto con los dispositivos remotos que tengan al menos un identificador de entidad de PlayFab de usuario autenticado que haya iniciado sesión con el mismo proveedor (por ejemplo, XBOX Live, Facebook, iOS, Google) que el usuario que se está autenticando. <br /><br /> Tenga en cuenta que esta marca no permite por sí sola ningún intento de conectividad directa de punto a punto. Debe combinarse con una o ambas de las marcas `SamePlatformType` y `DifferentPlatformType`.   <br /><br /> Esta marca no se puede combinar con la marca `OnlyServers` en la estructura [PartyNetworkConfiguration](/services/playfab/multiplayer/networking/reference/structs/partynetworkconfiguration). Puede combinarse con `OnlyServers` como parte del valor [PartyOption::LocalDeviceDirectPeerConnectivityOptionsMask](/services/playfab/multiplayer/networking/reference/enums/partyoption). <br /><br />                                                                                                                                                                                                                                 |                                     |
| DifferentEntityLoginProvider | Se pueden intentar conexiones directas de punto a punto entre dispositivos con identificadores de entidad de PlayFab de usuarios autenticados que iniciaron sesión con proveedores diferentes.<br /><br /> Un dispositivo que autentica inicialmente a un usuario local en la red intentará establecer conexiones directas de punto a punto con los dispositivos remotos que no tengan ningún identificador de entidad de PlayFab de usuario autenticado que haya iniciado sesión con el mismo proveedor (por ejemplo, XBOX Live, Facebook, iOS, Google) que el usuario que se está autenticando. <br /><br /> Tenga en cuenta que esta marca no permite por sí sola ningún intento de conectividad directa de punto a punto. Debe combinarse con una o ambas de las marcas `SamePlatformType` y `DifferentPlatformType`.   <br /><br /> Esta marca no se puede combinar con la marca `OnlyServers` en la estructura [PartyNetworkConfiguration](/services/playfab/multiplayer/networking/reference/structs/partynetworkconfiguration). Puede combinarse con `OnlyServers` como parte del valor [PartyOption::LocalDeviceDirectPeerConnectivityOptionsMask](/services/playfab/multiplayer/networking/reference/enums/partyoption).                                                                                                                                                                                                                                                   |                                     |
| AnyEntityLoginProvider       | Se pueden intentar conexiones directas de punto a punto entre dispositivos independientemente del proveedor usado para iniciar sesión con los identificadores de entidad de PlayFab de los usuarios autenticados.<br /><br /> Esta marca es equivalente a \`\`\`SameEntityLoginProvider                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | DifferentEntityLoginProvider\`\`\`. |
| OnlyServers                  | Se pueden intentar conexiones directas de punto a punto entre dispositivos si al menos uno de los dispositivos tiene un usuario autenticado con un tipo de entidad de PlayFab `game_server`.<br /><br /> Un dispositivo que autentica inicialmente a un usuario local en la red intentará establecer conexiones directas de punto a punto con los dispositivos remotos si el usuario local o un usuario del dispositivo remoto es de tipo de entidad de PlayFab `game_server`, tal como se especificó en [PartyManager::CreateLocalUserWithEntityType()](/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_createlocaluserwithentitytype). En otras palabras, los dispositivos de los jugadores nunca se conectarán directamente entre sí, solo a los dispositivos de servidor. Los dispositivos de servidor intentarán conectarse directamente a todos los dispositivos de jugadores y a los demás dispositivos de servidor. <br /><br /> Esta marca no se puede combinar con ninguna de las marcas `SamePlatformType`, `DifferentPlatformType`, `SameEntityLoginProvider` o `DifferentEntityLoginProvider` en la estructura [PartyNetworkConfiguration](/services/playfab/multiplayer/networking/reference/structs/partynetworkconfiguration). Puede combinarse con esas marcas como parte del valor [PartyOption::LocalDeviceDirectPeerConnectivityOptionsMask](/services/playfab/multiplayer/networking/reference/enums/partyoption). |                                     |

## Comentarios

Como parte de la autenticación correcta de un usuario inicial en una red, un dispositivo puede intentar establecer conexiones directas de punto a punto con otros dispositivos que ya participan en la red, cuando lo permitan estas marcas declaradas en la estructura [PartyNetworkConfiguration](/services/playfab/multiplayer/networking/reference/structs/partynetworkconfiguration) de la red. En los intentos que tengan éxito, los mensajes de punto de conexión y los datos de chat entre los dispositivos se transmitirán mediante esas conexiones directas. En los intentos que fallen debido a incompatibilidades del entorno entre los dispositivos, toda la comunicación entre esos dispositivos se transmitirá en su lugar a través de servidores de retransmisión transparentes en la nube. Si estas marcas no permiten que los dispositivos intenten conexiones directas entre pares, nunca intercambiarán información de direcciones IP y siempre transmitirán los mensajes de punto de conexión y los datos de chat a través de servidores de retransmisión transparentes en la nube. <br /><br /> Puede determinar si el dispositivo local estableció realmente una conexión directa de punto a punto con un dispositivo remoto específico llamando a [PartyNetwork::GetDeviceConnectionType()](/services/playfab/multiplayer/networking/reference/classes/PartyNetwork/methods/partynetwork_getdeviceconnectiontype).   <br /><br /> Una conectividad directa entre pares correcta puede proporcionar una latencia menor entre algunos dispositivos, aunque intentar establecerla también requiere que los usuarios revelen las direcciones IP de sus dispositivos a otros, lo que puede ser un problema de privacidad o permitir que usuarios malintencionados ataquen potencialmente los dispositivos y las conexiones a Internet de otros usuarios fuera del título. También puede no estar permitida en determinadas plataformas por motivos de directivas. Asegúrese de usar las marcas adecuadas para sus objetivos de rendimiento y seguridad.   <br /><br /> Además del valor de [PartyNetworkConfiguration::directPeerConnectivityOptions](/services/playfab/multiplayer/networking/reference/structs/partynetworkconfiguration) de una red específica, un dispositivo puede restringir aún más de forma opcional las marcas para todas las redes en las que se autentique usando [PartyManager::SetOption()](/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_setoption) para establecer [PartyOption::LocalDeviceDirectPeerConnectivityOptionsMask](/services/playfab/multiplayer/networking/reference/enums/partyoption). Todas las marcas se evalúan mediante una operación AND bit a bit. Es decir, una marca determinada solo está en vigor para un par de dispositivos de una red concreta si está habilitada en tres lugares: la estructura [PartyNetworkConfiguration](/services/playfab/multiplayer/networking/reference/structs/partynetworkconfiguration) de la red y las opciones de máscara local respectivas de *ambos* dispositivos. Aunque la red de Party permita la conectividad directa entre pares de la forma correspondiente, cualquiera de los dispositivos puede excluirse unilateralmente de la divulgación de la dirección IP y de los intentos de conexión directa entre ellos si no habilita la marca. El valor de [PartyOption::LocalDeviceDirectPeerConnectivityOptionsMask](/services/playfab/multiplayer/networking/reference/enums/partyoption) permite de manera predeterminada todas las conexiones directas entre pares habilitadas por las redes, por lo que solo necesita configurarlo si tiene requisitos específicos del dispositivo para impedir parte o la totalidad de la conectividad directa entre pares que lo implique.   <br /><br /> Para evitar un consumo excesivo de recursos, la biblioteca de Party también impedirá internamente que un dispositivo determinado intente establecer más de un número máximo configurado de conexiones directas entre pares en todas las redes en las que participa actualmente, incluso si estas marcas lo permiten. Esto no afecta a la capacidad del dispositivo de participar en redes grandes o múltiples con más dispositivos remotos. La comunicación con los dispositivos adicionales simplemente se transmitirá a través de servidores de retransmisión transparentes en la nube. Para modificar ese número máximo de conexiones directas entre pares, use [PartyManager::SetOption()](/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_setoption) para establecer [PartyOption::LocalDeviceMaxDirectPeerConnections](/services/playfab/multiplayer/networking/reference/enums/partyoption).   <br /><br /> Se recomienda no exigir activamente la disponibilidad de una conexión directa de punto a punto para un par de dispositivos determinado (es decir, no llame a [PartyNetwork::LeaveNetwork()](/services/playfab/multiplayer/networking/reference/classes/PartyNetwork/methods/partynetwork_leavenetwork) si [PartyNetwork::GetDeviceConnectionType()](/services/playfab/multiplayer/networking/reference/classes/PartyNetwork/methods/partynetwork_getdeviceconnectiontype) notifica un valor distinto de [PartyDeviceConnectionType::DirectPeerConnection](/services/playfab/multiplayer/networking/reference/enums/partydeviceconnectiontype)), ya que el método de transmisión subyacente específico en uso no altera la capacidad lógica general de comunicarse. Si el diseño de su juego tiene requisitos estrictos de latencia máxima de mensajes que favorecen la conectividad directa entre pares, es mejor actuar en función de las observaciones concretas actuales de esa latencia, notificadas por la estadística [PartyEndpointStatistic::AverageDeviceRoundTripLatencyInMilliseconds](/services/playfab/multiplayer/networking/reference/enums/partyendpointstatistic), en lugar de hacer suposiciones abstractas basadas en el mecanismo de transmisión. De lo contrario, podría perjudicar continuamente a los usuarios que intentan jugar con el mismo grupo de amigos y que siempre necesitan usar servidores de retransmisión transparentes en la nube cercanos debido a factores del entorno fuera de su control.

## Requisitos

**Encabezado:** Party.h

## Consulte también

[Miembros de Party](/services/playfab/multiplayer/networking/reference/party_members)\
[PartyNetworkConfiguration](/services/playfab/multiplayer/networking/reference/structs/partynetworkconfiguration)\
[PartyOption::LocalDeviceDirectPeerConnectivityOptionsMask](/services/playfab/multiplayer/networking/reference/enums/partyoption)\
[PartyManager::SetOption](/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_setoption)\
[PartyEndpointStatistic::AverageDeviceRoundTripLatencyInMilliseconds](/services/playfab/multiplayer/networking/reference/enums/partyendpointstatistic)\
[PartyLocalEndpoint::GetEndpointStatistics](/services/playfab/multiplayer/networking/reference/classes/PartyLocalEndpoint/methods/partylocalendpoint_getendpointstatistics)


## Related topics

- [PartyOption](/es/services/playfab/multiplayer/networking/reference/enums/partyoption.md)
- [PartyNetworkConfiguration](/es/services/playfab/multiplayer/networking/reference/structs/partynetworkconfiguration.md)
- [Notas de la versión de PlayFab Party](/es/services/playfab/multiplayer/networking/release-notes.md)
- [Información general de la API de C/C++ de Party](/es/services/playfab/multiplayer/networking/reference/party_members.md)
- [DirectPeerConnectivityOptions](/es/services/playfab/multiplayer/networking/unity-party-api-reference/enums/partyunitydirectpeerconnectivityoptions.md)
