Skip to main content
La configuración usada por la biblioteca Party para controlar el comportamiento de medición de calidad de las regiones.

Sintaxis

Miembros

totalMeasurementTimeoutInMilliseconds   uint32_t El número máximo de milisegundos permitidos para resolver nombres de host e intentar medir las condiciones de red entre el dispositivo local y los servidores de baliza de calidad de servicio de PlayFab. Este valor controla el tiempo máximo permitido, en milisegundos, para que la biblioteca Party resuelva los nombres de host de los servidores de baliza de calidad de servicio de PlayFab de todas las regiones disponibles y envíe mensajes ligeros para medir la calidad de conexión con ellos. Si problemas del entorno provocan una resolución de nombres lenta o una latencia o pérdida de paquetes elevadas hacia algunas regiones, solo las regiones con las que se estableció contacto correctamente al menos una vez dentro de este tiempo de espera se notifican en el resultado de PartyRegionsChangedStateChange.

Este valor no incluye ni afecta al tiempo que tarda la biblioteca Party en recuperar la lista de regiones disponibles del servicio de PlayFab.

Normalmente, las aplicaciones deberían definir este tiempo de espera en función de los objetivos o peores casos de la experiencia del usuario, en lugar de intentar derivar un número basado en suposiciones técnicas. La cantidad exacta de tiempo necesaria para medir una región determinada o todas las regiones puede variar considerablemente según factores como el número de regiones disponibles, las condiciones actuales del entorno de red, los tiempos de espera ajustados dinámicamente por la biblioteca Party en función de la latencia observada, entre otros.

Este valor es, en la práctica, un tiempo de espera de peor caso para los dispositivos que experimentan errores completos o parciales. Puede ser útil contrastarlo con observaciones reales de casos correctos típicos. Con los valores predeterminados de PartyRegionQualityMeasurementConfiguration, la disponibilidad de regiones y los patrones de uso de los jugadores, la biblioteca Party observa actualmente que la mayoría de los dispositivos de todo el mundo completan correctamente todo el proceso de medición en 2,3 segundos o menos, y el 97 % de los dispositivos lo completan correctamente en menos de 6 segundos. Se espera que esta duración aumente ligeramente con el tiempo a medida que se introduzcan más regiones.

El valor predeterminado es 15000 (15 segundos) cuando no se ha configurado PartyOption::RegionQualityMeasurementConfiguration.

Un valor de cero significa que no hay tiempo de espera y, por tanto, se permite que todas las mediciones se completen independientemente de cuánto tarde cualquier región en tener éxito o fallar. De lo contrario, el valor mínimo es 50 milisegundos.
highLatencyHintInMilliseconds   uint16_t Una sugerencia que indica el umbral de latencia más alto, en milisegundos, por encima del cual la aplicación considera que una región tiene demasiada latencia como para dedicar tiempo adicional a realizar una medición detallada. Este valor objetivo representa un límite superior flexible para la latencia de la región. No impide directamente incluir regiones cuya latencia medida sea mayor, pero hace que la biblioteca Party elija valores de tiempo de espera y reintento optimizados para regiones con menos latencia que este número. También se inspecciona para cada región después de recibir el número mínimo de respuestas (configurado en el campo minRequiredSuccessfulResponses). Si la latencia mediana medida de una región es mayor que este objetivo, no se usa el número ideal de respuestas (configurado en el campo idealNumberOfSuccessfulResponses) y no se envían más intentos de medición.

Este valor no puede ser cero.

El valor predeterminado es 200 cuando no se ha configurado PartyOption::RegionQualityMeasurementConfiguration.
minRequiredSuccessfulResponses   uint16_t El número mínimo de respuestas correctas a los mensajes de medición necesario para cada región para una evaluación básica. Se espera que cada región candidata a medición responda correctamente al menos este número de veces durante el intercambio de mensajes ligeros de medición de calidad antes de que los resultados se consideren lo suficientemente precisos para evaluarlos frente a la latencia objetivo del campo highLatencyHintInMilliseconds. Establecer requisitos mínimos más altos genera más muestras de medición y, por tanto, más coherencia y precisión frente a fluctuaciones de paquetes atípicas, a costa de tardar más tiempo en completarse.

Incluso sin suficientes respuestas correctas, la medición de una región determinada se considera completa si ocurre cualquiera de las siguientes situaciones: no llega ninguna respuesta correcta y el número de intentos supera el valor configurado en el campo maxRetriesWithNoResponse, ha llegado al menos una respuesta y el número de intentos supera el valor configurado en el campo maxTimeoutsAfterResponse, o transcurre el tiempo de espera general para todas las regiones configurado en el campo totalMeasurementTimeoutInMilliseconds.

Este valor no puede ser cero.

El valor predeterminado es 3 cuando no se ha configurado PartyOption::RegionQualityMeasurementConfiguration.
idealNumberOfSuccessfulResponses   uint16_t
El número de respuestas correctas a los mensajes de medición deseado para cada región a fin de lograr una evaluación exhaustiva. Este valor representa el número total preferido de respuestas correctas para lograr la precisión deseada en las mediciones de latencia de las regiones de interés. Este valor debe ser igual o mayor que el valor mínimo del campo minRequiredSuccessfulResponses. La biblioteca Party solo intenta obtener la diferencia adicional de respuestas entre el mínimo y este valor ideal para una región si esa región ya se ha medido con una latencia mediana menor o igual que el umbral configurado en el campo highLatencyHintInMilliseconds. El número ideal de respuestas de este campo permite seguir refinando la precisión de las mediciones de las regiones que probablemente tengan más valor para el dispositivo local sin dedicar también ese tiempo adicional a las regiones de mayor latencia.

Si no se obtuvo el número mínimo de respuestas para una región, no se intenta alcanzar este objetivo ideal adicional. De lo contrario, si se alcanza el límite de maxTimeoutsAfterResponse para la región o transcurre el tiempo de espera general del campo totalMeasurementTimeoutInMilliseconds para todas las regiones, la medición de la región se considera completa incluso sin recibir este número ideal de respuestas correctas.

El valor predeterminado es 4 cuando no se ha configurado PartyOption::RegionQualityMeasurementConfiguration.
maxRetriesWithNoResponse   uint16_t El número máximo de veces adicionales que se reenvía un mensaje de medición inicial a una región sin ninguna respuesta antes de considerar que la región es inaccesible. Este valor configura el número total de intentos adicionales más allá del primero que realiza la biblioteca Party al reintentar el primer mensaje ligero de medición de calidad a una región antes de considerar que esa región no está disponible. Si se recibe al menos una respuesta correcta del servidor de baliza de calidad de servicio de la región, este máximo deja de usarse y, en su lugar, el campo maxTimeoutsAfterResponse rige el número de intentos que pueden agotar el tiempo de espera.

Los valores máximos de reintento más altos son más tolerantes a problemas temporales del entorno, como la pérdida de paquetes, a costa de tardar más en abandonar las regiones inaccesibles. El tiempo máximo absoluto permitido para medir todas las regiones está limitado por el valor independiente del campo totalMeasurementTimeoutInMilliseconds.

El valor predeterminado es 3 cuando no se ha configurado PartyOption::RegionQualityMeasurementConfiguration.
maxTimeoutsAfterResponse   uint16_t El número máximo de intentos de mensajes de medición que pueden agotar el tiempo de espera para una región que ha respondido previamente antes de considerar que la ruta de red es demasiado poco confiable para seguir midiendo. Si se ha recibido al menos una respuesta correcta del servidor de baliza de calidad de servicio de una región, este valor determina el número total de intentos con tiempo de espera agotado que la biblioteca Party permitirá mientras intenta obtener los resultados de medición minRequiredSuccessfulResponses e idealNumberOfSuccessfulResponses para la región.

Los valores máximos de tiempo de espera más altos son más tolerantes a problemas temporales del entorno, como la pérdida de paquetes, a costa de tardar potencialmente más en terminar de medir las regiones con esas características de mala calidad. El tiempo máximo absoluto permitido para medir todas las regiones está limitado por el valor independiente del campo totalMeasurementTimeoutInMilliseconds.

El valor predeterminado es 3 cuando no se ha configurado PartyOption::RegionQualityMeasurementConfiguration.

Comentarios

Esta estructura se puede usar junto con PartyOption::RegionQualityMeasurementConfiguration para invalidar o consultar la configuración actual de la biblioteca Party mediante PartyManager::SetOption() o PartyManager::GetOption(), respectivamente. Configura el comportamiento de bajo nivel del proceso de medición de calidad de las regiones asociado a los cambios de estado PartyRegionsChangedStateChange.

Requisitos

Encabezado: Party.h

Consulte también

Miembros de Party
PartyOption::RegionQualityMeasurementConfiguration
PartyRegionsChangedStateChange
PartyManager::SetOption
PartyManager::GetOption
Última modificación el 28 de agosto de 2026