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

# Descripción de cómo funciona el chat de PlayFab Party

> Información general sobre el chat de voz y texto de PlayFab Party, que abarca PartyLocalChatControl, redes, códecs de hardware y las características integradas de conversión de voz a texto y traducción.

Con PlayFab Party, puede agregar fácilmente comunicación de voz y texto a su juego.

El chat de PlayFab Party es:

* **Flexible**: le da control total sobre cómo quiere que se comuniquen sus jugadores.
* **Eficaz**: usa aceleración de códecs por hardware en las plataformas compatibles.
* **Accesible**: con tecnología de Azure Cognitive Services, las características de conversión de voz a texto, de texto a voz y de traducción están integradas y son fáciles de habilitar.
* **Eficiente**: tener el sistema de chat estrechamente integrado con la capa de red significa que los datos de voz se envían adonde tienen que ir de la manera más eficiente posible.

## Conceptos básicos del chat

Para agregar comunicación de voz y texto a su juego, primero deberá crear un objeto `PartyLocalChatControl`. Este
objeto `PartyLocalChatControl` actuará como objeto de administración para las operaciones de chat relacionadas con un usuario local específico,
lo que le permitirá elegir el dispositivo de entrada y salida, el estado de silencio y las preferencias de accesibilidad. Cada usuario local puede
tener como máximo un control de chat. Para que un control de chat local se comunique con otro control de chat, se deben cumplir los
requisitos siguientes:

1. Los dos controles de chat deben estar en la misma red.
2. Los [permisos de chat](/services/playfab/community/voice-communications/concepts-chat-permissions-and-muting) entre los dos controles de chat deben permitir
   que fluya la comunicación de audio o texto.

Con su control de chat local en la mano, ya está listo para conectarlo a una red llamando a `PartyNetwork::ConnectChatControl()`.
Tras la conexión, los demás dispositivos de la red recibirán una notificación de que su control de chat se ha unido a la red con un
cambio de estado `PartyChatControlJoinedNetworkStateChange`. También recibirá un `PartyChatControlJoinedNetworkStateChange`
por cada uno de los demás controles de chat que ya estén en la red, y podrá comunicarse con ellos de inmediato.

## Entradas y salidas de audio

Party le permite elegir qué dispositivos de audio usará su control de chat con los métodos `PartyLocalChatControl::SetAudioInput()`
y `PartyLocalChatControl::SetAudioOutput()`. Use la enumeración `PartyAudioDeviceSelectionType` para cambiar el comportamiento
de estos métodos:

### `PartyAudioDeviceSelectionType::None`

Cuando se elige este tipo de selección de dispositivo de audio, el control de chat no usará ningún dispositivo de audio. Este tipo de selección de dispositivo de audio es el predeterminado.

### `PartyAudioDeviceSelectionType::SystemDefault`

Cuando se elige este tipo de selección de dispositivo de audio, el control de chat intenta usar el dispositivo de comunicación predeterminado del sistema.
En Windows, el jugador puede cambiar este dispositivo en cualquier momento a través del Panel de control de sonido de Windows, y Party responderá a esos cambios automáticamente. Este tipo de selección no se admite en XBOX One y, en general, no se recomienda si tiene más de un
usuario local participando en el chat simultáneamente.

### `PartyAudioDeviceSelectionType::PlatformUserDefault`

Cuando se elige este tipo de selección de dispositivo de audio, `PartyLocalChatControl::SetAudioInput()` y `PartyLocalChatControl::SetAudioOutput()`
requieren que el parámetro `audioDeviceSelectionContext` se establezca en un identificador de usuario de plataforma. Party intenta entonces
usar el dispositivo de comunicación predeterminado de la plataforma asociado a ese usuario. En XBOX One, el `audioDeviceSelectionContext`
debe ser el identificador de usuario de XBOX asociado al usuario actualmente vinculado al control de chat.

### `PartyAudioDeviceSelectionType::Manual`

Cuando se elige este tipo de selección de dispositivo de audio, `PartyLocalChatControl::SetAudioInput()` y `PartyLocalChatControl::SetAudioOutput()`
usarán el parámetro `audioDeviceSelectionContext` como identificador de dispositivo de audio válido e intentarán usar cualquier dispositivo
que coincida con ese identificador. Consulte la tabla siguiente para ver qué tipo de identificador admite PlayFab Party:

| **Plataforma** | **Qué usar**                                                                                                                                                                                                           |
| :------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Windows 10     | [`IMMDevice`](https://learn.microsoft.com/en-us/windows/win32/api/mmdeviceapi/nf-mmdeviceapi-immdevice-getid) o [`Windows.Media.Devices`](https://learn.microsoft.com/en-us/uwp/api/windows.media.devices.mediadevice) |
| XBOX           | Consulte la documentación del GDK de XBOX                                                                                                                                                                              |

<Note>
  Se recomienda encarecidamente usar `PartyAudioDeviceSelectionType::PlatformUserDefault` en XBOX One y `PartyAudioDeviceSelectionType::SystemDefault` en las plataformas Windows.
</Note>

## Permisos de chat y silenciado

Party le ofrece un control detallado sobre cómo pueden comunicarse sus jugadores entre sí. En lugar de
especificar equipos o canales, Party requiere definir explícitamente los permisos entre cada par de controles de chat.
Para obtener más información sobre los permisos de chat, el silenciado y cómo crear escenarios de chat comunes, consulte la
página de [información general sobre los permisos de chat](/services/playfab/community/voice-communications/concepts-chat-permissions-and-muting).

## Chat de texto, traducción y moderación

Party también le permite enviar y recibir chat de texto de otros controles de chat. Aunque el método `PartyLocalChatControl::SendText()`
le permitirá enviar mensajes de texto a un número arbitrario de controles de chat, puede estar seguro de que solo los
controles de chat con el permiso de chat `PartyChatPermissionOptions::ReceiveText` adecuado reciben los mensajes.

La traducción del chat de texto también se puede habilitar llamando a `PartyLocalChatControl::SetTextChatOptions()`. Al establecer la
opción `PartyTextChatOptions::TranslateToLocalLanguage`, Party traducirá los mensajes de texto entrantes al idioma del
control de chat local. El idioma del control de chat se puede configurar opcionalmente durante la creación del control de chat, y se puede
consultar llamando a `PartyLocalChatControl::GetLanguage()`. La traducción también se aplicará a la transcripción entrante de voz a texto.

La moderación de texto también está disponible para el chat de texto. Para obtener más información sobre esta característica, consulte la página [Uso de la moderación de texto](/services/playfab/community/voice-communications/concepts-text-moderation).

## Chat accesible

Con tecnología de Azure Speech Services, Party puede transcribir el chat de voz de los jugadores y sintetizar voz a partir de texto.
Esta funcionalidad tiene varios usos, pero se diseñó principalmente como ayuda de accesibilidad. Se recomienda vincular la activación
de esta capacidad a una configuración de accesibilidad del jugador. Para obtener más información sobre cómo usar las características de accesibilidad que proporciona Party, consulte las [directrices de texto a voz](/services/playfab/community/voice-communications/party-text-to-speech-ux-guidelines) y las [directrices de voz a texto](/services/playfab/community/voice-communications/party-speech-to-text-ux-guidelines).

## Supresión de ruido de la entrada de audio

Party le permite suprimir el ruido de fondo en el audio del micrófono capturado antes de que se transmita a los controles de chat remotos. Esto puede aumentar significativamente la calidad del audio de voz de sus jugadores. Para obtener más información sobre cómo habilitar la supresión de ruido, consulte la página [Uso de la supresión de ruido](/services/playfab/community/voice-communications/concepts-noise-suppression).

<Note>
  Actualmente, la supresión de ruido solo está disponible para su uso en iOS y Android.
</Note>

## Pasos siguientes

* [Obtenga más información sobre los permisos de chat y el silenciado de PlayFab Party](/services/playfab/community/voice-communications/concepts-chat-permissions-and-muting)


## Related topics

- [Características de PlayFab Party](/es/services/playfab/multiplayer/networking/party-features.md)
- [Directrices de experiencia de usuario de texto a voz y entrada de texto de PlayFab Party](/es/services/playfab/community/voice-communications/party-text-to-speech-ux-guidelines.md)
- [Adición de chat mediante Microsoft Azure PlayFab Party](/es/services/xbox-services/multiplayer/chat/playfab-party-intro-chat.md)
- [Permisos de chat y silenciado de PlayFab Party](/es/services/playfab/community/voice-communications/concepts-chat-permissions-and-muting.md)
- [Invitaciones de PlayFab Party y el modelo de seguridad](/es/services/playfab/multiplayer/networking/concepts-invitations-security-model.md)
