rtc - YoYoGames/GMEXT-EpicOnlineServices GitHub Wiki
Epic Online Services Interface: RTC Interface
Integrate the Real-time Communication (RTC) Data Interface into your game to use the features of the Epic Online Services (EOS) RTC Data service. Use the RTC Data Interface to allow players to send data messages to each other in a voice chat room.
Note
The RTC-data service restricts the amount of data that a player can send. See the RTC-data Service Limits section of this document for details.
Note
See the RTC Data Interface for a more detailed introduction.
This module offers a collection of functions designed to address specific tasks and provide utilities for various purposes. Explore the available functions to make the most of the functionalities provided by this module.
- eos_rtc_add_notify_disconnected
- eos_rtc_add_notify_participant_status_changed
- eos_rtc_add_notify_room_statistics_updated
- eos_rtc_block_participant
- eos_rtc_join_room
- eos_rtc_leave_room
- eos_rtc_remove_notify_disconnected
- eos_rtc_remove_notify_participant_status_changed
- eos_rtc_remove_notify_room_statistics_updated
- eos_rtc_set_room_setting
- eos_rtc_set_setting
- eos_rtc_admin_copy_user_token_by_index
- eos_rtc_admin_copy_user_token_by_user_id
- eos_rtc_admin_kick
- eos_rtc_admin_query_join_room_token
- eos_rtc_admin_set_participant_hard_mute
- eos_rtc_audio_add_notify_audio_before_render
- eos_rtc_audio_add_notify_audio_before_send
- eos_rtc_audio_add_notify_audio_devices_changed
- eos_rtc_audio_add_notify_audio_input_state
- eos_rtc_audio_add_notify_audio_output_state
- eos_rtc_audio_add_notify_participant_updated
- eos_rtc_audio_copy_input_device_information_by_index
- eos_rtc_audio_copy_output_device_information_by_index
- eos_rtc_audio_get_audio_output_devices_count
- eos_rtc_audio_get_input_devices_count
- eos_rtc_audio_query_input_devices_information
- eos_rtc_audio_query_output_devices_information
- eos_rtc_audio_register_platform_user
- eos_rtc_audio_remove_notify_audio_before_render
- eos_rtc_audio_remove_notify_audio_before_send
- eos_rtc_audio_remove_notify_audio_devices_changed
- eos_rtc_audio_remove_notify_audio_input_state
- eos_rtc_audio_remove_notify_audio_output_state
- eos_rtc_audio_remove_notify_participant_updated
- eos_rtc_audio_send_audio
- eos_rtc_audio_set_input_device_settings
- eos_rtc_audio_set_output_device_settings
- eos_rtc_audio_unregister_platform_user
- eos_rtc_audio_update_participant_volume
- eos_rtc_audio_update_receiving
- eos_rtc_audio_update_receiving_volume
- eos_rtc_audio_update_sending
- eos_rtc_audio_update_sending_volume
- eos_rtc_data_add_notify_data_received
- eos_rtc_data_add_notify_participant_updated
- eos_rtc_data_remove_notify_data_received
- eos_rtc_data_remove_notify_participant_updated
- eos_rtc_data_send_data
- eos_rtc_data_update_receiving
- eos_rtc_data_update_sending
This module offers a collection of structs, which serve as custom data models for organizing and structuring data. Explore the provided structs to better understand the relationships between data elements and simplify your data manipulation tasks.
This module includes a set of predefined constants that can be utilized for various purposes. Browse through the available constants to find values relevant to your needs and enhance the efficiency of your code.
- EOS_RTC_PARTICIPANT_STATUS
- EOS_RTC_BACKGROUND_MODE
- EOS_RTC_AUDIO_STATUS
- EOS_RTC_JOINROOMFLAGS
- EOS_RTC_AUDIO_INPUT_STATUS
- EOS_RTC_AUDIO_OUTPUT_STATUS
- EOS_RTC_DATA_STATUS
Epic Online Services Function: EOS_RTC_AddNotifyDisconnected
This function registers to receive notifications when disconnected from the room. If the returned notification ID is valid, you must call eos_rtc_remove_notify_disconnected when you no longer wish to have the Social Async Event called. This function will always return EOS_INVALID_NOTIFICATIONID when used with lobby RTC room. To be notified of the connection status of a Lobby-managed RTC room, use the eos_lobby_add_notify_rtc_room_connection_changed function instead.
This function operates asynchronously, which means that it does not immediately return the requested result. Instead, upon completion of the task, it will trigger the Social Async Event.
Syntax:
eos_rtc_add_notify_disconnected(local_user_id, room_name)
Argument | Type | Description |
---|---|---|
local_user_id | String | The Product User ID of the user trying to request this operation. |
room_name | String | The room this event is registered on. |
Returns:
Triggers:
Key | Type | Description |
---|---|---|
type | String | the string "eos_rtc_add_notify_disconnected"
|
local_user_id | String | The Product User ID of the user who initiated this request. |
room_name | String | The room associated with this event. |
status | EOS_RESULT | This holds: EOS_RESULT.SUCCESS The room was left cleanly. EOS_RESULT.NO_CONNECTION : There was a network issue connecting to the server (retryable). EOS_RESULT.RTC_USER_KICKED : The user has been kicked by the server (retryable). EOS_RESULT.SERVICE_FAILURE : A known error occurred during interaction with the server (retryable). EOS_RESULT.UNEXPECTED_ERROR Unexpected error (retryable). |
status_message | String | Text representation of the status code |
Epic Online Services Function: EOS_RTC_AddNotifyParticipantStatusChanged
This function registers to receive notifications when a participant's status changes (e.g.: join or leave the room), or when the participant is added or removed from an applicable block list (e.g.: Epic block list and/or current platform's block list). If the returned notification ID is valid, you must call eos_rtc_remove_notify_participant_status_changed when you no longer wish to have the Social Async Event triggered. If you register to this notification before joining a room, you will receive a notification for every member already in the room when you join said room. This allows you to know who is already in the room when you join. To be used effectively with a Lobby-managed RTC room, this should be registered during the eos_lobby_create_lobby or eos_lobby_join_lobby completion callbacks when the ResultCode is EOS_RESULT.SUCCESS
. If this notification is registered after that point, it is possible to miss notifications for already-existing room participants. You can use this notification to detect internal automatic RTC blocks due to block lists. When a participant joins a room and while the system resolves the block list status of said participant, the participant is set to blocked and you'll receive a notification with participant_status
set to EOS_RTC_PARTICIPANT_STATUS.JOINED
and participant_in_blocklist
set to true
. Once the block list status is resolved, if the player is not in any applicable block list(s), it is then unblocked and a new notification is sent with participant_status
set to EOS_RTC_PARTICIPANT_STATUS.JOINED
and participant_in_blocklist
set to false
.
Note
This notification is also raised when the local user joins the room, but NOT when the local user leaves the room.
This function operates asynchronously, which means that it does not immediately return the requested result. Instead, upon completion of the task, it will trigger the Social Async Event.
Syntax:
eos_rtc_add_notify_participant_status_changed(local_user_id, room_name)
Argument | Type | Description |
---|---|---|
local_user_id | String | The Product User ID of the user trying to request this operation. |
room_name | String | The room this event is registered on. |
Returns:
Triggers:
Key | Type | Description |
---|---|---|
type | String | the string "eos_rtc_add_notify_participant_status_changed"
|
local_user_id | String | The Product User ID of the user who initiated this request. |
room_name | String | The room associated with this event. |
participant_in_blocklist | Boolean | The participant's block list status, if participant_status is EOS_RTC_PARTICIPANT_STATUS.JOINED . This is set to true if the participant is in any of the local user's applicable block lists, such as Epic block list or any of the current platform's block lists. It can be used to detect when an internal automatic RTC block is applied because of trust and safety restrictions. |
participant_id | String | The participant whose status changed. |
participant_status | EOS_RTC_PARTICIPANT_STATUS | What status change occurred |
Epic Online Services Function: EOS_RTC_AddNotifyRoomStatisticsUpdated
This function registers to receive notifications to receiving periodical statistics update. If the returned notification ID is valid, you must call eos_rtc_remove_notify_room_statistics_updated when you no longer wish to have the Social Async Event called.
This function operates asynchronously, which means that it does not immediately return the requested result. Instead, upon completion of the task, it will trigger the Social Async Event.
Syntax:
eos_rtc_add_notify_room_statistics_updated(local_user_id, room_name)
Argument | Type | Description |
---|---|---|
local_user_id | String | The Product User ID of the user trying to request this operation |
room_name | String | The room this event is registered on |
Returns:
Triggers:
Key | Type | Description |
---|---|---|
type | String | the string "eos_rtc_add_notify_room_statistics_updated"
|
local_user_id | String | The Product User ID of the user who initiated this request |
room_name | String | The room associated with this event |
statistic | String | Statistics in JSON format |
Epic Online Services Function: EOS_RTC_BlockParticipant
You can use this function to block a participant already connected to the room. After blocking them no media will be sent or received between that user and the local user. This method can be used after receiving the OnParticipantStatusChanged notification.
The function returns an async identifier.
This function operates asynchronously, which means that it does not immediately return the requested result. Instead, upon completion of the task, it will trigger the Social Async Event.
Syntax:
eos_rtc_block_participant(blocked, local_user_id, participant_id, room_name)
Argument | Type | Description |
---|---|---|
blocked | Boolean | Block or unblock the participant |
local_user_id | String | The Product User ID of the user trying to request this operation |
participant_id | String | The Product User ID of the participant to block |
room_name | String | The room the users should be blocked on |
Returns:
Triggers:
Key | Type | Description |
---|---|---|
type | String | the string "eos_rtc_block_participant"
|
identifier | Real | The async identifier returned by the call to the function |
local_user_id | String | The Product User ID of the user who initiated this request |
participant_id | String | The Product User ID of the participant being blocked |
blocked | Boolean | The block state that should have been set |
Epic Online Services Function: EOS_RTC_JoinRoom
You can use this function to join a room. This function does not need to be called for the Lobby RTC Room system; doing so will return EOS_RESULT.ACCESS_DENIED
. The lobby system will automatically join and leave RTC Rooms for all lobbies that have RTC rooms enabled.
The function returns an async identifier.
This function operates asynchronously, which means that it does not immediately return the requested result. Instead, upon completion of the task, it will trigger the Social Async Event.
Syntax:
eos_rtc_join_room(local_user_id, room_name, participant_id, participant_token, manual_audio_input_enabled, manual_audio_output_enabled, client_base_url, flags)
Argument | Type | Description |
---|---|---|
local_user_id | String | The product user id of the user trying to request this operation. |
room_name | String | The room the user would like to join. |
participant_id | String | The participant id used to join the room. If an empty string "" is passed the local_user_id will be used instead. |
participant_token | String | Authorization credential token to join the room |
manual_audio_input_enabled | Boolean | Enable or disable Manual Audio Input. If manual audio input is enabled and audio recording is not started the audio buffers must be passed manually using eos_rtc_audio_send_audio. |
manual_audio_output_enabled | Boolean | Enable or disable Manual Audio Output. If manual audio output is enabled and audio rendering is not started the audio buffers must be received with eos_rtc_audio_add_notify_audio_before_render and rendered manually. |
client_base_url | String | The room the user would like to join |
flags | EOS_RTC_JOINROOMFLAGS | Join room flags, e.g., EOS_RTC_JOINROOMFLAGS_ENABLE_ECHO . This is a bitwise-or union of the defined flags. |
Returns:
Triggers:
Key | Type | Description |
---|---|---|
type | String | the string "eos_rtc_join_room"
|
identifier | Real | The async identifier returned by the call to the function |
local_user_id | String | The Product User ID of the user who initiated this request |
room_name | String | The room the user was trying to join |
options | Array of Struct | an array of structs holding a key and value variable |
Epic Online Services Function: EOS_RTC_LeaveRoom
You can use this function to leave a room and clean up all the resources associated with it. This function has to always be called when the room is abandoned even if the user is already disconnected for other reasons. This function does not need to called for the Lobby RTC Room system; doing so will return EOS_RESULT.ACCESS_DENIED
. The lobby system will automatically join and leave RTC Rooms for all lobbies that have RTC rooms enabled.
The function returns an async identifier.
This function operates asynchronously, which means that it does not immediately return the requested result. Instead, upon completion of the task, it will trigger the Social Async Event.
Syntax:
eos_rtc_leave_room(local_user_id, room_name)
Argument | Type | Description |
---|---|---|
local_user_id | String | Product User ID of the user requesting to leave the room |
room_name | String | The room to leave |
Returns:
Triggers:
Key | Type | Description |
---|---|---|
type | String | the string "eos_rtc_leave_room"
|
identifier | Real | The async identifier returned by the call to the function |
local_user_id | String | The Product User ID of the user who initiated this request |
room_name | String | The room the user was trying to leave |
Epic Online Services Function: EOS_RTC_RemoveNotifyDisconnected
This function unregisters a previously bound notification handler from receiving room disconnection notifications.
Syntax:
eos_rtc_remove_notify_disconnected(notification_id)
Argument | Type | Description |
---|---|---|
notification_id | Real | The Notification ID representing the registered callback |
Returns:
N/A
Epic Online Services Function: EOS_RTC_RemoveNotifyParticipantStatusChanged
This function unregisters a previously bound notification handler from receiving participant status change notifications.
Syntax:
eos_rtc_remove_notify_participant_status_changed(notification_id)
Argument | Type | Description |
---|---|---|
notification_id | Real | The Notification ID representing the registered callback |
Returns:
N/A
Epic Online Services Function: EOS_RTC_RemoveNotifyRoomStatisticsUpdated
This function unregisters a previously bound notification handler from receiving periodical statistics update notifications.
Syntax:
eos_rtc_remove_notify_room_statistics_updated(notification_id)
Argument | Type | Description |
---|---|---|
notification_id | Real | The Notification ID representing the registered callback |
Returns:
N/A
Epic Online Services Function: EOS_RTC_SetRoomSetting
You can use this function to control settings for the specific room.
The available values of setting_name
are:
-
"DisableEchoCancelation"
: Disables the use of echo cancellation for the audio channel. Default"False"
. -
"DisableNoiseSupression"
: Disables the use of noise suppression for the audio channel. Default"False"
. -
"DisableAutoGainControl"
: Disables the use of auto gain control for the audio channel. Default"False"
. -
"DisableDtx"
: Allows to disable the use of DTX. Default"False"
.
The function returns one of the following:
-
EOS_RESULT.SUCCESS
when the setting is successfully set -
EOS_RESULT.NOT_FOUND
when the setting is unknown -
EOS_RESULT.INVALID_PARAMETERS
when the value is invalid
Syntax:
eos_rtc_set_room_setting(local_user_id, room_name, setting_name, setting_value)
Argument | Type | Description |
---|---|---|
local_user_id | String | The Product User ID of the user trying to request this operation |
room_name | String | The room the setting will be applied to |
setting_name | String | The setting that should be set |
setting_value | String | The value to set the setting to |
Returns:
Epic Online Services Function: EOS_RTC_SetSetting
You can use this function to control settings.
-
"DisableEchoCancelation"
: Disables the use of echo cancellation for the audio channel. Default"False"
. -
"DisableNoiseSupression"
: Disables the use of noise suppression for the audio channel. Default"False"
. -
"DisableAutoGainControl"
: Disables the use of auto gain control for the audio channel. Default"False"
. -
"DisableDtx"
: Allows to disable the use of DTX. Default"False"
.
The function returns one of the following:
-
EOS_RESULT.SUCCESS
when the setting is successfully set -
EOS_RESULT.NOT_FOUND
when the setting is unknown -
EOS_RESULT.INVALID_PARAMETERS
when the value is invalid
Syntax:
eos_rtc_set_setting(setting_name, setting_value)
Argument | Type | Description |
---|---|---|
setting_name | String | The setting that should be set |
setting_value | String | The value to set the setting to |
Returns:
Epic Online Services Function: EOS_RTCAdmin_CopyUserTokenByIndex
This function fetches a user token when called inside of the OnQueryJoinRoomTokenComplete callback, initiating the query.
The function returns one of the following:
-
EOS_RESULT.SUCCESS
if the information is available -
EOS_RESULT.NOT_FOUND
if the user token is not found
Syntax:
eos_rtc_admin_copy_user_token_by_index(query_id, user_token_index)
Argument | Type | Description |
---|---|---|
query_id | Real | The query identifier received as part of a previous query |
user_token_index | Real | The Product User ID for the user whose user token we're copying |
Returns:
Epic Online Services Function: EOS_RTCAdmin_CopyUserTokenByUserId
This function fetches a user token for a given user ID when called inside of the OnQueryJoinRoomTokenComplete callback.
Syntax:
eos_rtc_admin_copy_user_token_by_user_id(query_id, target_user_id)
Argument | Type | Description |
---|---|---|
query_id | Real | The query identifier received as part of a previous query |
target_user_id | String | The Product User ID for the user whose user token we're copying |
Returns:
Epic Online Services Function: EOS_RTCAdmin_Kick
This function starts an asynchronous task that removes a participant from a room and revokes their token.
The function returns an async identifier.
This function operates asynchronously, which means that it does not immediately return the requested result. Instead, upon completion of the task, it will trigger the Social Async Event.
Syntax:
eos_rtc_admin_kick(room_name, target_user_id)
Argument | Type | Description |
---|---|---|
room_name | String | The room name to kick the participant from |
target_user_id | String | The product User ID of the participant to kick from the room |
Returns:
Triggers:
Key | Type | Description |
---|---|---|
type | String | the string "eos_rtc_admin_kick"
|
identifier | Real | The identifier returned by the function |
Epic Online Services Function: EOS_RTCAdmin_QueryJoinRoomToken
This function queries for a list of user tokens for joining a room. Each query generates a query ID (see the Social Async Event) which should be used to retrieve the tokens from inside the callback. This query ID and query result itself are only valid for the duration of the callback.
The function returns an async identifier.
This function operates asynchronously, which means that it does not immediately return the requested result. Instead, upon completion of the task, it will trigger the Social Async Event.
Syntax:
eos_rtc_admin_query_join_room_token(local_user_id, room_name, array_ids, array_ips)
Argument | Type | Description |
---|---|---|
local_user_id | String | The product User ID for the local user who is querying join room tokens |
room_name | String | The room name to request a token for |
array_ids | Array | An array of Product User IDs indicating the users to retrieve a token for |
array_ips | Array | An array of IP Addresses, one for each of the users to query tokens for. If you pass an empty array, IP Addresses will be ignored. IPv4 format: "0.0.0.0" , IPv6 format: "0:0:0:0:0:0:0:0"
|
Returns:
Triggers:
Key | Type | Description |
---|---|---|
type | String | the string "eos_rtc_admin_query_join_room_token"
|
identifier | Real | The identifier returned by the function |
status | EOS_RESULT | The result code for the operation. EOS_RESULT.SUCCESS indicates that the operation succeeded; other codes indicate errors. |
status_message | String | Text representation of the status code |
client_base_url | String | URL passed to backend to join room |
query_id | Real | If the query completed successfully, this contains an identifier that should be used to retrieve the tokens. This identifier is only valid for the duration of the callback. |
token_count | Real | How many tokens received as result of the query |
Epic Online Services Function: EOS_RTCAdmin_SetParticipantHardMute
This function starts an asynchronous task that remotely mutes/unmutes a room participant. This remotely mutes the specified participant, so no audio is sent from that participant to any other participant in the room.
The function returns an async identifier.
This function operates asynchronously, which means that it does not immediately return the requested result. Instead, upon completion of the task, it will trigger the Social Async Event.
Syntax:
eos_rtc_admin_set_participant_hard_mute(mute, room_name, target_user_id)
Argument | Type | Description |
---|---|---|
mute | Boolean | The hard mute status (mute on or off) |
room_name | String | The room to kick the participant from |
target_user_id | String | The product User ID of the participant to hard mute for every participant in the room |
Returns:
Triggers:
Key | Type | Description |
---|---|---|
type | String | the string "eos_rtc_admin_set_participant_hard_mute"
|
identifier | Real | The identifier returned by the function |
status | EOS_RESULT | The result code for the operation. EOS_RESULT.SUCCESS indicates that the operation succeeded; other codes indicate errors. |
status_message | String | Text representation of the status code |
Epic Online Services Function: EOS_RTCAudio_AddNotifyAudioBeforeRender
This function registers to receive notifications with remote audio buffers before they are rendered. This gives you access to the audio data received, allowing for example the implementation of custom filters/effects. If the returned notification ID is valid, you must call eos_rtc_audio_remove_notify_audio_before_render when you no longer wish to have the Social Async Event called.
The function returns a notification ID representing the registered callback if successful, an invalid notification ID if not.
This function operates asynchronously, which means that it does not immediately return the requested result. Instead, upon completion of the task, it will trigger the Social Async Event.
Syntax:
eos_rtc_audio_add_notify_audio_before_render(local_user_id, room_name, unmixed_audio)
Argument | Type | Description |
---|---|---|
local_user_id | String | The Product User ID of the user trying to request this operation. |
room_name | String | The room this event is registered on. |
unmixed_audio | Boolean | Mixed audio or unmixed audio. |
Returns:
Triggers:
Key | Type | Description |
---|---|---|
type | String | the string "eos_rtc_audio_add_notify_audio_before_render"
|
local_user_id | String | The Product User ID of the user who initiated this request. |
room_name | String | The room associated with this event. |
participant_id | String | The Product User ID of the participant if unmixed_audio was set to true when setting the notifications, or empty if unmixed_audio was set to false and thus the buffer is the mixed audio of all participants |
Epic Online Services Function: EOS_RTCAudio_AddNotifyAudioBeforeSend
This function registers to receive notifications when local audio buffers are about to be encoded and sent. This gives you access to the audio data about to be sent, allowing for example the implementation of custom filters/effects. If the returned notification ID is valid, you must call eos_rtc_audio_remove_notify_audio_before_send when you no longer wish to have the Social Async Event called.
This function operates asynchronously, which means that it does not immediately return the requested result. Instead, upon completion of the task, it will trigger the Social Async Event.
Syntax:
eos_rtc_audio_add_notify_audio_before_send(local_user_id, room_name)
Argument | Type | Description |
---|---|---|
local_user_id | String | The Product User ID of the user trying to request this operation |
room_name | String | The room this event is registered on |
Returns:
Triggers:
Key | Type | Description |
---|---|---|
type | String | the string "eos_rtc_audio_add_notify_audio_before_send"
|
local_user_id | String | The Product User ID of the user who initiated this request |
room_name | String | The room associated with this event |
Epic Online Services Function: EOS_RTCAudio_AddNotifyAudioDevicesChanged
This function registers to receive notifications when an audio device is added or removed to the system. If the returned notification ID is valid, you must call eos_rtc_audio_remove_notify_audio_devices_changed when you no longer wish to have the Social Async Event called.
The library will try to use user selected audio device while following these rules:
- if none of the audio devices has been available and connected before - the library will try to use it;
- if user selected device failed for some reason, default device will be used instead (and user selected device will be memorized);
- if user selected a device but it was not used for some reason (and default was used instead), when devices selection is triggered we will try to use user selected device again;
- triggers to change a device: when new audio device appears or disappears - library will try to use previously user selected;
- if for any reason, a device cannot be used - the library will fallback to using default;
- if a configuration of the current audio device has been changed, it will be restarted.
The function returns an async identifier.
This function operates asynchronously, which means that it does not immediately return the requested result. Instead, upon completion of the task, it will trigger the Social Async Event.
Syntax:
eos_rtc_audio_add_notify_audio_devices_changed()
Returns:
Triggers:
Key | Type | Description |
---|---|---|
type | String | the string "eos_rtc_audio_add_notify_audio_devices_changed"
|
Epic Online Services Function: EOS_RTCAudio_AddNotifyAudioInputState
This function registers to receive notifications when audio input state changed. If the returned notification ID is valid, you must call eos_rtc_audio_remove_notify_audio_input_state when you no longer wish to have the Social Async Event called.
The function returns the notification ID representing the registered callback if successful, an invalid notification ID if not.
This function operates asynchronously, which means that it does not immediately return the requested result. Instead, upon completion of the task, it will trigger the Social Async Event.
Syntax:
eos_rtc_audio_add_notify_audio_input_state(local_user_id, room_name)
Argument | Type | Description |
---|---|---|
local_user_id | String | The Product User ID of the user trying to request this operation |
room_name | String | The room this event is registered on |
Returns:
Triggers:
Key | Type | Description |
---|---|---|
type | String | the string "eos_rtc_audio_add_notify_audio_input_state"
|
local_user_id | String | The Product User ID of the user who initiated this request |
room_name | String | The room associated with this event |
status | EOS_RTC_AUDIO_INPUT_STATUS | The status of the audio input |
Epic Online Services Function: EOS_RTCAudio_AddNotifyAudioOutputState
This function registers to receive notifications when audio output state changed. If the returned notification ID is valid, you must call eos_rtc_audio_remove_notify_audio_output_state when you no longer wish to have the Social Async Event called.
This function operates asynchronously, which means that it does not immediately return the requested result. Instead, upon completion of the task, it will trigger the Social Async Event.
Syntax:
eos_rtc_audio_add_notify_audio_output_state(local_user_id, room_name)
Argument | Type | Description |
---|---|---|
local_user_id | String | The Product User ID of the user trying to request this operation |
room_name | String | The room this event is registered on |
Returns:
Triggers:
Key | Type | Description |
---|---|---|
type | String | the string "eos_rtc_audio_add_notify_audio_output_state"
|
local_user_id | String | The Product User ID of the user who initiated this request |
room_name | String | The room associated with this event |
status | EOS_RTC_AUDIO_OUTPUT_STATUS | The status of the audio output |
Epic Online Services Function: EOS_RTCAudio_AddNotifyParticipantUpdated
This function registers to receive notifications when a room participant audio status is updated (e.g. when mute state changes or speaking flag changes). The notification is raised when the participant's audio status is updated. In order not to miss any participant status changes, applications need to add the notification before joining a room. If the returned notification ID is valid, you must call eos_rtc_audio_remove_notify_participant_updated when you no longer wish to have the Social Async Event called.
The function returns a notification ID representing the registered callback if successful, an invalid notification ID if not.
This function operates asynchronously, which means that it does not immediately return the requested result. Instead, upon completion of the task, it will trigger the Social Async Event.
Syntax:
eos_rtc_audio_add_notify_participant_updated(local_user_id, room_name)
Argument | Type | Description |
---|---|---|
local_user_id | String | The Product User ID of the user trying to request this operation |
room_name | String | The room this event is registered on |
Returns:
Triggers:
Key | Type | Description |
---|---|---|
type | String | the string "eos_rtc_audio_add_notify_participant_updated"
|
local_user_id | String | The Product User ID of the user who initiated this request |
room_name | String | The room associated with this event |
speaking | Real | The participant speaking / non-speaking status |
audio_status | EOS_RTC_AUDIO_STATUS | The participant audio status (enabled, disabled) |
participant_id | String | The participant updated |
Epic Online Services Function: EOS_RTCAudio_CopyInputDeviceInformationByIndex
This function fetches an audio input device's information from the given index that are cached locally.
Syntax:
eos_rtc_audio_copy_input_device_information_by_index(device_index)
Argument | Type | Description |
---|---|---|
device_index | Real | The index of the audio input device's information to retrieve |
Returns:
Epic Online Services Function: EOS_RTCAudio_CopyOutputDeviceInformationByIndex
This function fetches an audio output device's information from the given index that are cached locally.
Syntax:
eos_rtc_audio_copy_output_device_information_by_index(device_index)
Argument | Type | Description |
---|---|---|
device_index | Real | The index of the audio output device's information to retrieve |
Returns:
Epic Online Services Function: EOS_RTCAudio_GetOutputDevicesCount
This function fetches the number of audio output devices available in the system that are cached locally. The returned value should not be cached and should instead be used immediately with the eos_rtc_audio_copy_output_device_information_by_index function.
The function returns the number of audio output devices available in the system or 0 if there is an error.
Syntax:
eos_rtc_audio_get_audio_output_devices_count()
Returns:
Epic Online Services Function: EOS_RTCAudio_GetInputDevicesCount
This function fetches the number of audio input devices available in the system that are cached locally. The returned value should not be cached and should instead be used immediately with the eos_rtc_audio_copy_input_device_information_by_index function.
The function returns the number of audio input devices available in the system or 0 if there is an error.
Syntax:
eos_rtc_audio_get_input_devices_count()
Returns:
Epic Online Services Function: EOS_RTCAudio_QueryInputDevicesInformation
This function queries for a list of audio input devices available in the system together with their specifications.
It returns the async identifier that you can compare against in the Social Async Event.
This function operates asynchronously, which means that it does not immediately return the requested result. Instead, upon completion of the task, it will trigger the Social Async Event.
Syntax:
eos_rtc_audio_query_input_devices_information()
Returns:
Triggers:
Key | Type | Description |
---|---|---|
type | String | the string "eos_rtc_audio_query_input_devices_information"
|
status | EOS_RESULT |
EOS_RESULT.SUCCESS if the operation succeeded, EOS_RESULT.INVALID_PARAMETERS if any of the parameters were incorrect |
status_message | String | Text representation of the status code |
identifier | Real | The identifier returned by the original call to the function |
Epic Online Services Function: EOS_RTCAudio_QueryOutputDevicesInformation
This function queries for a list of audio output devices available in the system together with their specifications.
It returns the async identifier that you can compare against in the Social Async Event.
This function operates asynchronously, which means that it does not immediately return the requested result. Instead, upon completion of the task, it will trigger the Social Async Event.
Syntax:
eos_rtc_audio_query_output_devices_information()
Returns:
Triggers:
Key | Type | Description |
---|---|---|
type | String | the string "eos_rtc_audio_query_output_devices_information"
|
status | EOS_RESULT |
EOS_RESULT.SUCCESS if the operation succeeded, EOS_RESULT.INVALID_PARAMETERS if any of the parameters were incorrect |
status_message | String | Text representation of the status code |
identifier | Real | The identifier returned by the original call to the function |
Epic Online Services Function: EOS_RTCAudio_RegisterPlatformUser
You can use this function to inform the audio system of a user. This function is only necessary for some platforms.
The function returns one of the following:
-
"EOS_RESULT.SUCCESS"
if the user was successfully registered -
"EOS_RESULT.INVALID_PARAMETERS"
if any of the parameters are incorrect -
"EOS_RESULT.UNEXPECTED_ERROR"
otherwise
Syntax:
eos_rtc_audio_register_platform_user(user_id)
Argument | Type | Description |
---|---|---|
user_id | String | The platform dependent user ID |
Returns:
Epic Online Services Function: EOS_RTCAudio_RemoveNotifyAudioBeforeRender
This function unregisters a previously bound notification handler from receiving remote audio buffers before they are rendered.
Syntax:
eos_rtc_audio_remove_notify_audio_before_render(notification_id)
Argument | Type | Description |
---|---|---|
notification_id | Real | The notification ID representing the registered callback |
Returns:
N/A
Epic Online Services Function: EOS_RTCAudio_RemoveNotifyAudioBeforeSend
This function unregisters a previously bound notification handler from receiving local audio buffers before they are encoded and sent.
Syntax:
eos_rtc_audio_remove_notify_audio_before_send(notification_id)
Argument | Type | Description |
---|---|---|
notification_id | Real | The notification ID representing the registered callback |
Returns:
N/A
Epic Online Services Function: EOS_RTCAudio_RemoveNotifyAudioDevicesChanged
This function unregisters a previously bound notification handler from receiving audio devices notifications.
Syntax:
eos_rtc_audio_remove_notify_audio_devices_changed(notification_id)
Argument | Type | Description |
---|---|---|
notification_id | Real | The notification ID representing the registered callback |
Returns:
N/A
Epic Online Services Function: EOS_RTCAudio_RemoveNotifyAudioInputState
This function unregisters a previously bound notification handler from receiving notifications on audio output state changed.
Syntax:
eos_rtc_audio_remove_notify_audio_input_state(notification_id)
Argument | Type | Description |
---|---|---|
notification_id | Real | The notification ID representing the registered callback |
Returns:
N/A
Epic Online Services Function: EOS_RTCAudio_RemoveNotifyAudioOutputState
This function unregisters a previously bound notification handler from receiving notifications on audio output state changed.
Syntax:
eos_rtc_audio_remove_notify_audio_output_state(notification_id)
Argument | Type | Description |
---|---|---|
notification_id | Real | The notification ID representing the registered callback |
Returns:
N/A
Epic Online Services Function: EOS_RTCAudio_RemoveNotifyParticipantUpdated
This function unregisters a previously bound notification handler from receiving participant updated notifications.
Syntax:
eos_rtc_audio_remove_notify_participant_updated(notification_id)
Argument | Type | Description |
---|---|---|
notification_id | Real | The notification ID representing the registered callback |
Returns:
N/A
Epic Online Services Function: EOS_RTCAudio_SendAudio
You can use this function to push a new audio buffer to be sent to the participants of a room. This should only be used if Manual Audio Input was enabled locally for the specified room.
Syntax:
eos_rtc_audio_send_audio(channels, frames_count, frames, sample_rate, local_user_id, room_name)
Argument | Type | Description |
---|---|---|
channels | Real | The number of audio channels |
frames_count | Real | The number of frames |
frames | Buffer | The buffer storing the frames |
sample_rate | Real | The sample rate of the audio in the buffer |
local_user_id | String | The Product User ID of the user trying to request this operation |
room_name | String | The room this event is registered on |
Returns:
N/A
Epic Online Services Function: EOS_RTCAudio_SetInputDeviceSettings
You can use this function to set audio input device settings, such as the active input device, or platform AEC.
The function returns an async identifier.
This function operates asynchronously, which means that it does not immediately return the requested result. Instead, upon completion of the task, it will trigger the Social Async Event.
Syntax:
eos_rtc_audio_set_input_device_settings(platform_aec, local_user_id, real_device_id)
Argument | Type | Description |
---|---|---|
platform_aec | Boolean | Whether to enable or disable Platform AEC (Acoustic Echo Cancellation) if available. |
local_user_id | String | The Product User ID of the user trying to request this operation. |
real_device_id | String | The device ID to be used for this user. Pass an empty string to use a default input device. If the device ID is invalid, the default device will be used instead. Despite this fact, that device ID will be stored and the library will try to move on it when an audio device pool is being changed. The actual hardware audio input device usage depends on the current payload and optimized not to use it when generated audio frames cannot be processed by someone else based on a scope of rules (For instance, when a client is alone in a room). |
Returns:
Triggers:
Key | Type | Description |
---|---|---|
type | String | the string "eos_rtc_audio_set_input_device_settings"
|
status | EOS_RESULT |
EOS_RESULT.SUCCESS if the operation succeeded, EOS_RESULT.INVALID_PARAMETERS if any of the parameters are incorrect |
status_message | String | Text representation of the status code |
identifier | Real | The identifier returned by the original call to the function |
real_device_id | String | The associated audio input device ID |
Epic Online Services Function: EOS_RTCAudio_SetOutputDeviceSettings
You can use this function to set audio output device settings, such as the active output device.
The function returns an async identifier.
This function operates asynchronously, which means that it does not immediately return the requested result. Instead, upon completion of the task, it will trigger the Social Async Event.
Syntax:
eos_rtc_audio_set_output_device_settings(local_user_id, real_device_id)
Argument | Type | Description |
---|---|---|
local_user_id | String | The Product User ID of the user who initiated this request |
real_device_id | String | The device ID to be used for this user. Pass an empty string to use a default output device. If the device ID is invalid, the default device will be used instead. Despite this fact, that device ID will be stored and the library will try to move on it when an audio device pool is being changed. The actual hardware audio output device usage depends on the current payload and optimized not to use it when generated audio frames cannot be processed by someone else based on a scope of rules (For instance, when a client is alone in a room). |
Returns:
Triggers:
Key | Type | Description |
---|---|---|
type | String | the string "eos_rtc_audio_set_output_device_settings"
|
status | EOS_RESULT |
EOS_RESULT.SUCCESS if the operation succeeded, EOS_RESULT.INVALID_PARAMETERS if any of the parameters are incorrect |
status_message | String | Text representation of the status code |
identifier | Real | The identifier returned by the original call to the function |
real_device_id | String | The associated audio output device ID |
Epic Online Services Function: EOS_RTCAudio_UnregisterPlatformUser
You can use this function to remove a user that was added with eos_rtc_audio_register_platform_user. This function is only necessary for some platforms.
The function returns an async identifier.
This function operates asynchronously, which means that it does not immediately return the requested result. Instead, upon completion of the task, it will trigger the Social Async Event.
Syntax:
eos_rtc_audio_unregister_platform_user(platform_user_id)
Argument | Type | Description |
---|---|---|
platform_user_id | String | The account of a user associated with this event |
Returns:
Triggers:
Key | Type | Description |
---|---|---|
type | String | the string "eos_rtc_audio_unregister_platform_user"
|
status | EOS_RESULT |
EOS_RESULT.SUCCESS if the user was successfully unregistered, EOS_RESULT.INVALID_PARAMETERS if any of the parameters are incorrect, EOS_RESULT.UNEXPECTED_ERROR otherwise |
status_message | String | Text representation of the status code |
identifier | Real | The identifier returned by the original call to the function |
platform_user_id | String | The platform dependent user ID |
Epic Online Services Function: EOS_RTCAudio_UpdateParticipantVolume
You can use this function to change participant audio volume for a room.
The function returns an async identifier.
Note
Due to Epic Online Services implementation details, this function requires that you first register to any notification for room.
This function operates asynchronously, which means that it does not immediately return the requested result. Instead, upon completion of the task, it will trigger the Social Async Event.
Syntax:
eos_rtc_audio_update_participant_volume(local_user_id, participant_id, room_name, volume)
Argument | Type | Description |
---|---|---|
local_user_id | String | The Product User ID of the user trying to request this operation |
participant_id | String | The participant to modify or an empty string to update the global configuration |
room_name | String | The room this setting should be applied on |
volume | Real | The volume to be set for received audio (range 0.0 to 100.0). Volume 50 means that the audio volume is not modified and stays in its source value. |
Returns:
Triggers:
Key | Type | Description |
---|---|---|
type | String | the string "eos_rtc_audio_unregister_platform_user"
|
status | EOS_RESULT |
EOS_RESULT.SUCCESS if volume of remote participant audio was successfully changed, EOS_RESULT.UNEXPECTED_ERROR otherwise |
status_message | String | Text representation of the status code |
identifier | Real | The identifier returned by the original call to the function |
local_user_id | String | The Product User ID of the user who initiated this request |
participant_id | String | The participant to modify |
room_name | String | The room this settings should be applied on |
volume | Real | The volume that was set for received audio (range 0.0 to 100.0) |
Epic Online Services Function: EOS_RTCAudio_UpdateReceiving
You can use this function to tweak incoming audio options for a room.
The function returns an async identifier.
Note
Due to Epic Online Services implementation details, this function requires that you first register to any notification for room.
This function operates asynchronously, which means that it does not immediately return the requested result. Instead, upon completion of the task, it will trigger the Social Async Event.
Syntax:
eos_rtc_audio_update_receiving(local_user_id, participant_id, room_name, audio_enabled)
Argument | Type | Description |
---|---|---|
local_user_id | String | The Product User ID of the user trying to request this operation |
participant_id | String | The participant to modify or an empty string "" to update the global configuration |
room_name | String | The room this setting should be applied on |
audio_enabled | Boolean | Whether to mute or unmute audio track |
Returns:
Triggers:
Key | Type | Description |
---|---|---|
type | String | the string "eos_rtc_audio_update_receiving"
|
status | EOS_RESULT |
EOS_RESULT.SUCCESS if receiving of channels of remote users was successfully enabled/disabled, EOS_RESULT.NOT_FOUND if the participant isn't found by participant_id , EOS_RESULT.UNEXPECTED_ERROR otherwise |
status_message | String | Text representation of the status code |
identifier | Real | The identifier returned by the original call to the function |
participant_id | String | The participant modified |
room_name | String | The room this setting was applied on |
audio_enabled | Boolean | Whether the audio track is muted or unmuted |
Epic Online Services Function: EOS_RTCAudio_UpdateReceivingVolume
You can use this function to change the incoming audio volume for a room.
The function returns an async identifier.
Note
Due to Epic Online Services implementation details, this function requires that you first register to any notification for room.
This function operates asynchronously, which means that it does not immediately return the requested result. Instead, upon completion of the task, it will trigger the Social Async Event.
Syntax:
eos_rtc_audio_update_receiving_volume(local_user_id, room_name, volume)
Argument | Type | Description |
---|---|---|
local_user_id | String | The Product User ID of the user trying to request this operation. |
room_name | String | The room this setting should be applied on. |
volume | Real | The volume to be set for received audio (range 0.0 to 100.0). Volume 50 means that the audio volume is not modified and stays in its source value. |
Returns:
Triggers:
Key | Type | Description |
---|---|---|
type | String | the string "eos_rtc_audio_update_receiving_volume"
|
status | EOS_RESULT |
EOS_RESULT.SUCCESS if receiving volume of channels of the local user was successfully changed. EOS_RESULT.UNEXPECTED_ERROR otherwise. |
status_message | String | Text representation of the status code |
identifier | Real | The identifier returned by the original call to the function |
room_name | String | The room this settings should be applied on |
volume | Real | The volume that was set for received audio (range 0.0 to 100.0) |
Epic Online Services Function: EOS_RTCAudio_UpdateSending
You can use this function to tweak outgoing audio options for a room.
The function returns an async identifier.
Note
Due to Epic Online Services implementation details, this function requires that you first register to any notification for room.
This function operates asynchronously, which means that it does not immediately return the requested result. Instead, upon completion of the task, it will trigger the Social Async Event.
Syntax:
eos_rtc_audio_update_sending(local_user_id, room_name, audio_status)
Argument | Type | Description |
---|---|---|
local_user_id | String | The Product User ID of the user trying to request this operation. |
room_name | String | The room this settings should be applied on. |
audio_status | EOS_RTC_AUDIO_STATUS | Muted or unmuted audio track status |
Returns:
Triggers:
Key | Type | Description |
---|---|---|
type | String | the string "eos_rtc_audio_update_sending"
|
status | EOS_RESULT |
EOS_RESULT.SUCCESS if sending of channels of the local user was successfully enabled/disabled. EOS_RESULT.UNEXPECTED_ERROR otherwise. |
status_message | String | Text representation of the status code |
identifier | Real | The identifier returned by the original call to the function |
room_name | String | The room this setting was applied on |
local_user_id | String | The Product User ID of the user who initiated this request |
audio_status | EOS_RTC_AUDIO_STATUS | Muted or unmuted audio track status |
Epic Online Services Function: EOS_RTCAudio_UpdateSendingVolume
You can use this function to change outgoing audio volume for a room.
The function returns an async identifier.
Note
Due to Epic Online Services implementation details, this function requires that you first register to any notification for room.
This function operates asynchronously, which means that it does not immediately return the requested result. Instead, upon completion of the task, it will trigger the Social Async Event.
Syntax:
eos_rtc_audio_update_sending_volume(local_user_id, room_name, volume)
Argument | Type | Description |
---|---|---|
local_user_id | String | The Product User ID of the user trying to request this operation |
room_name | String | The room this settings should be applied on |
volume | Real | The volume to be set for sent audio (range 0.0 to 100.0). Volume 50 means that the audio volume is not modified and stays in its source value. |
Returns:
Triggers:
Key | Type | Description |
---|---|---|
type | String | the string "eos_rtc_audio_update_sending_volume"
|
status | EOS_RESULT |
EOS_RESULT.SUCCESS if sending volume of channels of the local user was successfully changed, EOS_RESULT.UNEXPECTED_ERROR otherwise |
status_message | String | Text representation of the status code |
identifier | Real | The identifier returned by the original call to the function |
room_name | String | The room this settings should be applied on |
volume | Real | The volume that was set for sent audio (range 0.0 to 100.0) |
Epic Online Services Function: EOS_RTCData_AddNotifyDataReceived
This function registers to receive notifications with remote data packet received. If the returned notification ID is valid, you must call eos_rtc_data_remove_notify_data_received when you no longer wish to have the Social Async Event called.
The function returns an async identifier.
This function operates asynchronously, which means that it does not immediately return the requested result. Instead, upon completion of the task, it will trigger the Social Async Event.
Syntax:
eos_rtc_data_add_notify_data_received(local_user_id, room_name)
Argument | Type | Description |
---|---|---|
local_user_id | String | The Product User ID of the user trying to request this operation |
room_name | String | The room this event is registered on |
Returns:
Triggers:
Key | Type | Description |
---|---|---|
type | String | the string "eos_rtc_data_add_notify_data_received"
|
local_user_id | String | The Product User ID of the user who initiated this request |
room_name | String | The room associated with this event |
participant_id | String | The Product User ID of the participant that sent the data |
Epic Online Services Function: EOS_RTCData_AddNotifyParticipantUpdated
This function registers to receive notifications when a room participant data status is updated (e.g. when connection state changes). The notification is raised when the participant's data status is updated. In order not to miss any participant status changes, applications need to add the notification before joining a room. If the returned notification ID is valid, you must call eos_rtc_data_remove_notify_participant_updated when you no longer wish to have the Social Async Event called.
The function returns an async identifier.
This function operates asynchronously, which means that it does not immediately return the requested result. Instead, upon completion of the task, it will trigger the Social Async Event.
Syntax:
eos_rtc_data_add_notify_participant_updated(local_user_id, room_name)
Argument | Type | Description |
---|---|---|
local_user_id | String | The Product User ID of the user trying to request this operation |
room_name | String | The room this event is registered on |
Returns:
Triggers:
Key | Type | Description |
---|---|---|
type | String | the string "eos_rtc_data_add_notify_participant_updated"
|
local_user_id | String | The Product User ID of the user who initiated this request |
room_name | String | The room associated with this event |
participant_id | String | The participant updated |
data_status | EOS_RTC_DATA_STATUS | The data channel status |
Epic Online Services Function: EOS_RTCData_RemoveNotifyDataReceived
This function unregisters a previously bound notification handler from receiving remote data packets.
Syntax:
eos_rtc_data_remove_notify_data_received(notification_id)
Argument | Type | Description |
---|---|---|
notification_id | Real | The notification ID representing the registered callback |
Returns:
N/A
Epic Online Services Function: EOS_RTCData_RemoveNotifyParticipantUpdated
This function unregisters a previously bound notification handler from receiving participant updated notifications.
Syntax:
eos_rtc_data_remove_notify_participant_updated(notification_id)
Argument | Type | Description |
---|---|---|
notification_id | Real | The notification ID representing the registered callback |
Returns:
N/A
Epic Online Services Function: EOS_RTCData_SendData
You can use this function to send a data packet to the rest of participants.
The data to be sent needs to be stored in a Buffer, which you pass to the function. A total of length
bytes are sent, from the start of the buffer.
The function returns one of the following:
-
EOS_RESULT.SUCCESS
if the data packet was queued for sending -
EOS_RESULT.INVALID_PARAMETERS
if any of the options are invalid -
EOS_RESULT.NOT_FOUND
if the specified room was not found
Syntax:
eos_rtc_data_send_data(buff, length, local_user_id, room_name)
Argument | Type | Description |
---|---|---|
buff | Buffer | The buffer containing the data to send |
length | Real | The number of bytes to send |
local_user_id | String | The Product User ID of the user trying to request this operation |
room_name | String | The room this event is registered on |
Returns:
Epic Online Services Function: EOS_RTCData_UpdateReceiving
You can use this function to tweak incoming data options for a room.
The function returns an async identifier.
This function operates asynchronously, which means that it does not immediately return the requested result. Instead, upon completion of the task, it will trigger the Social Async Event.
Syntax:
eos_rtc_data_update_receiving(local_user_id, participant_id, room_name, data_enabled)
Argument | Type | Description |
---|---|---|
local_user_id | String | The Product User ID of the user trying to request this operation |
participant_id | String | The participant to modify or an empty string to update the global configuration |
room_name | String | The room this setting should be applied on |
data_enabled | Boolean | Creates or destroys data channel subscription |
Returns:
Triggers:
Key | Type | Description |
---|---|---|
type | String | the string "eos_rtc_data_update_receiving" |
status | EOS_RESULT |
EOS_RESULT.SUCCESS if receiving of channels of remote users was successfully enabled/disabled, EOS_RESULT.NOT_FOUND if the participant isn't found by participant_id , EOS_RESULT.UNEXPECTED_ERROR otherwise |
status_message | String | Text representation of the status code |
identifier | Real | The identifier returned by the original call to the function |
local_user_id | String | The Product User ID of the user who initiated this request |
participant_id | String | The participant to modify or an empty string to update the global configuration |
room_name | String | The room this settings should be applied on |
data_enabled | Real | Created or destroyed data channel |
Epic Online Services Function: EOS_RTCData_UpdateSending
You can use this function to tweak outgoing data options for a room.
The function returns an async identifier.
This function operates asynchronously, which means that it does not immediately return the requested result. Instead, upon completion of the task, it will trigger the Social Async Event.
Syntax:
eos_rtc_data_update_sending(local_user_id, room_name, data_enabled)
Argument | Type | Description |
---|---|---|
local_user_id | String | The Product User ID of the user trying to request this operation |
room_name | String | The room this setting should be applied on |
data_enabled | Real | Creates or destroys data channel |
Returns:
Triggers:
Key | Type | Description |
---|---|---|
type | String | the string "eos_rtc_data_update_sending"
|
status | EOS_RESULT |
EOS_RESULT.SUCCESS if sending of channels of the local user was successfully enabled/disabled, EOS_RESULT.UNEXPECTED_ERROR otherwise |
status_message | String | Text representation of the status code |
identifier | Real | The identifier returned by the original call to the function |
local_user_id | String | The Product User ID of the user who initiated this request |
room_name | String | The room this settings should be applied on |
data_enabled | Real | Created or destroyed data channel |
Epic Online Services Enum: EOS_ERTCParticipantStatus
This enumeration holds the possible values for a participant's RTC status change.
These constants are referenced by the following functions:
Member | Description |
---|---|
JOINED |
The participant joined the room |
LEFT |
The participant left the room |
Epic Online Services Enum: EOS_ERTCBackgroundMode
This enumeration holds the possible background modes supported by the RTC components.
Member | Description |
---|---|
LEAVE_ROOMS |
Upon entering a background application status, all logged in users leave any RTC rooms. All subsequent attempts to join any RTC rooms will be rejected. Upon returning to a foreground application status, all subsequent attempts to join any RTC rooms will be allowed. |
KEEP_ROOMS_ALIVE |
Application status has no effect on RTC rooms. Audio is captured from input devices and is played to output devices. Games should obtain consent from users and otherwise make users aware this is occurring. |
Epic Online Services Enum: EOS_ERTCAudioStatus
This enumeration holds the different possible audio channel statuses.
These constants are referenced by the following functions:
Member | Description |
---|---|
UNSUPPORTED |
Audio unsupported by the source (no devices) |
ENABLED |
Audio enabled |
DISABLED |
Audio disabled |
ADMIN_DISABLED |
Audio disabled by the administrator |
NOT_LISTENING_DISABLED |
Audio channel is disabled temporarily for both sending and receiving |
Epic Online Services Docs: EOS_RTC_JoinRoomOptions::Flags
This set of macros holds flags that can be used when joining a room (using the function eos_rtc_join_room).
These constants are referenced by the following functions:
Member | Description |
---|---|
EOS_RTC_JOINROOMFLAGS_ENABLE_ECHO |
Enables echo mode. This can be used during development to have the server send your voice back to you so you don't need 2 clients to test if voice is being sent and received. |
EOS_RTC_JOINROOMFLAGS_ENABLE_DATACHANNEL |
Enables the (optional) data channel feature for RTC rooms. This feature allows members of a room to send packets to all members of a room they are in, and automatically receive data packets sent by other players in that room. Data packets sent this way will be automatically relayed by EOS RTC servers to all other members of the room that are listening. It is not currently possible to send packets to only a subset of members of a room chosen by the sender, all members listening will receive the data. |
Epic Online Services Enum: EOS_ERTCAudioInputStatus
This enumeration holds the different audio input device statuses.
These constants are referenced by the following functions:
Member | Description |
---|---|
IDLE |
The device is not in use right now (e.g., you are alone in the room). In such cases, the hardware resources are not allocated. |
RECORDING |
The device is being used and capturing audio. |
RECORDING_SILENT |
The SDK is in a recording state, but actually capturing silence because the device is exclusively being used by the platform at the moment. This only applies to certain platforms. |
RECORDING_DISCONNECTED |
The SDK is in a recording state, but actually capturing silence because the device is disconnected (e.g., the microphone is not plugged in). This only applies to certain platforms. |
FAILED |
Something failed while trying to use the device. |
Epic Online Services Enum: EOS_ERTCAudioOutputStatus
This enumeration holds the different audio output device statuses.
These constants are referenced by the following functions:
Member | Description |
---|---|
IDLE |
The device is not in used right now (e.g.: you are alone in the room). In such cases, the hardware resources are not allocated. |
PLAYING |
Device is in use |
FAILED |
Something failed while trying to use the device |
Epic Online Services Enum: EOS_ERTCDataStatus
This enumeration holds the different data channel statuses.
These constants are referenced by the following functions:
Member | Description |
---|---|
UNSUPPORTED |
Data unsupported |
ENABLED |
Data enabled |
DISABLED |
Data disabled |
Epic Online Services Struct: EOS_RTCAudio_InputDeviceInformation
This struct holds information about an audio input device.
This struct is referenced by the following functions:
Member | Type | Description |
---|---|---|
default_device | Boolean | True if this is the default audio input device in the system. |
device_id | String | The persistent unique ID of the audio input device. The value can be cached - invalidated only when the audio device pool is changed. |
device_name | String | The human-readable name of the audio input device |
Epic Online Services Struct: EOS_RTCAudio_OutputDeviceInformation
This struct holds information about an audio output device.
This struct is referenced by the following functions:
Member | Type | Description |
---|---|---|
default_device | Boolean | True if this is the default audio output device in the system. |
device_id | String | The persistent unique ID of the audio output device. The value can be cached - invalidated only when the audio device pool is changed. |
device_name | String | The human-readable name of the audio output device |