Documentation

​
​

Development

User Acquisition

Monetization

Industry

Vivox Core SDK

Vivox Core SDK

Vivox
​
​
Vivox Core SDK
  • Overview
  • Before you begin
  • Get started
  • Release notes
  • Developer Guide
  • Reference
    • Access Token Developer Guide
    • Server to Server Web API Reference Guide
    • Core API Reference Manual
      • Modules
      • Data Structures
        • vx_account
        • vx_auto_accept_rule
        • vx_before_recv_audio_mixed_participant_data_t
        • vx_block_rule
        • vx_buddy
        • vx_call_stats
        • vx_channel
        • vx_connectivity_test_result
        • vx_device
        • vx_evt_account_archive_message
        • vx_evt_account_archive_query_end
        • vx_evt_account_chat_history_message
        • vx_evt_account_chat_history_query_end
        • vx_evt_account_delete_message
        • vx_evt_account_edit_message
        • vx_evt_account_login_state_change
        • vx_evt_account_send_message_failed
        • vx_evt_audio_device_hot_swap
        • vx_evt_aux_audio_properties
        • vx_evt_base
        • vx_evt_buddy_and_group_list_changed
        • vx_evt_buddy_changed
        • vx_evt_buddy_group_changed
        • vx_evt_buddy_presence
        • vx_evt_connection_state_changed
        • vx_evt_idle_state_changed
        • vx_evt_keyboard_mouse
        • vx_evt_media_completion
        • vx_evt_media_stream_updated
        • vx_evt_message
        • vx_evt_network_message
        • vx_evt_participant_added
        • vx_evt_participant_removed
        • vx_evt_participant_updated
        • vx_evt_publication_state_changed
        • vx_evt_server_app_data
        • vx_evt_session_added
        • vx_evt_session_archive_message
        • vx_evt_session_archive_query_end
        • vx_evt_session_chat_history_message
        • vx_evt_session_chat_history_query_end
        • vx_evt_session_delete_message
        • vx_evt_session_edit_message
        • vx_evt_session_notification
        • vx_evt_session_removed
        • vx_evt_session_updated
        • vx_evt_sessiongroup_added
        • vx_evt_sessiongroup_playback_frame_played
        • vx_evt_sessiongroup_removed
        • vx_evt_sessiongroup_updated
        • vx_evt_stt_failed
        • vx_evt_subscription
        • vx_evt_text_stream_updated
        • vx_evt_transcribed_message
        • vx_evt_tts_injection_ended
        • vx_evt_tts_injection_failed
        • vx_evt_tts_injection_started
        • vx_evt_user_app_data
        • vx_evt_user_to_user_message
        • vx_evt_voice_service_connection_state_changed
        • vx_generic_credentials
        • vx_group
        • vx_message_base
        • vx_name_value_pair
        • vx_participant
        • vx_req_account_anonymous_login
        • vx_req_account_archive_query
        • vx_req_account_authtoken_login
        • vx_req_account_buddy_delete
        • vx_req_account_buddy_set
        • vx_req_account_channel_add_acl
        • vx_req_account_channel_change_owner
        • vx_req_account_channel_get_acl
        • vx_req_account_channel_remove_acl
        • vx_req_account_chat_history_get_last_read
        • vx_req_account_chat_history_query
        • vx_req_account_control_communications
        • vx_req_account_create_auto_accept_rule
        • vx_req_account_create_block_rule
        • vx_req_account_delete_auto_accept_rule
        • vx_req_account_delete_block_rule
        • vx_req_account_delete_message Struct Reference
        • vx_req_account_edit_message Struct Reference
        • vx_req_account_get_account
        • vx_req_account_get_session_fonts
        • vx_req_account_get_template_fonts
        • vx_req_account_list_auto_accept_rules
        • vx_req_account_list_block_rules
        • vx_req_account_list_buddies_and_groups
        • vx_req_account_login
        • vx_req_account_logout
        • vx_req_account_post_crash_dump
        • vx_req_account_send_message
        • vx_req_account_send_sms
        • vx_req_account_send_subscription_reply
        • vx_req_account_send_user_app_data
        • vx_req_account_set_login_properties
        • vx_req_account_set_presence
        • vx_req_account_update_account
        • vx_req_account_web_call
        • vx_req_aux_capture_audio_start
        • vx_req_aux_capture_audio_stop
        • vx_req_aux_connectivity_info
        • vx_req_aux_create_account
        • vx_req_aux_deactivate_account
        • vx_req_aux_diagnostic_state_dump
        • vx_req_aux_get_capture_devices
        • vx_req_aux_get_derumbler_properties
        • vx_req_aux_get_mic_level
        • vx_req_aux_get_render_devices
        • vx_req_aux_get_speaker_level
        • vx_req_aux_get_vad_properties
        • vx_req_aux_global_monitor_keyboard_mouse
        • vx_req_aux_notify_application_state_change
        • vx_req_aux_play_audio_buffer
        • vx_req_aux_reactivate_account
        • vx_req_aux_render_audio_modify
        • vx_req_aux_render_audio_start
        • vx_req_aux_render_audio_stop
        • vx_req_aux_reset_password
        • vx_req_aux_set_capture_device
        • vx_req_aux_set_derumbler_properties
        • vx_req_aux_set_idle_timeout
        • vx_req_aux_set_mic_level
        • vx_req_aux_set_render_device
        • vx_req_aux_set_speaker_level
        • vx_req_aux_set_vad_properties
        • vx_req_aux_start_buffer_capture
        • vx_req_base
        • vx_req_channel_ban_user
        • vx_req_channel_get_banned_users
        • vx_req_channel_kick_user
        • vx_req_channel_mute_all_users
        • vx_req_channel_mute_user
        • vx_req_channel_set_lock_mode
        • vx_req_connector_create
        • vx_req_connector_get_local_audio_info
        • vx_req_connector_initiate_shutdown
        • vx_req_connector_mute_local_mic
        • vx_req_connector_mute_local_speaker
        • vx_req_connector_set_local_mic_volume
        • vx_req_connector_set_local_speaker_volume
        • vx_req_session_archive_query
        • vx_req_session_channel_invite_user
        • vx_req_session_chat_history_query
        • vx_req_session_create
        • vx_req_session_delete_message
        • vx_req_session_edit_message
        • vx_req_session_media_connect
        • vx_req_session_media_disconnect
        • vx_req_session_mute_local_speaker
        • vx_req_session_send_dtmf
        • vx_req_session_send_message
        • vx_req_session_send_notification
        • vx_req_session_set_3d_position
        • vx_req_session_set_local_render_volume
        • vx_req_session_set_local_speaker_volume
        • vx_req_session_set_participant_mute_for_me
        • vx_req_session_set_participant_volume_for_me
        • vx_req_session_set_voice_font
        • vx_req_session_terminate
        • vx_req_session_text_connect
        • vx_req_session_text_disconnect
        • vx_req_session_transcription_control
        • vx_req_sessiongroup_add_session
        • vx_req_sessiongroup_control_audio_injection
        • vx_req_sessiongroup_create
        • vx_req_sessiongroup_get_stats
        • vx_req_sessiongroup_remove_session
        • vx_req_sessiongroup_reset_focus
        • vx_req_sessiongroup_set_focus
        • vx_req_sessiongroup_set_session_3d_position
        • vx_req_sessiongroup_set_tx_all_sessions
        • vx_req_sessiongroup_set_tx_no_session
        • vx_req_sessiongroup_set_tx_session
        • vx_req_sessiongroup_terminate
        • vx_req_sessiongroup_unset_focus
        • vx_resp_account_anonymous_login
        • vx_resp_account_archive_query
        • vx_resp_account_authtoken_login
        • vx_resp_account_buddy_delete
        • vx_resp_account_buddy_set
        • vx_resp_account_channel_add_acl
        • vx_resp_account_channel_change_owner
        • vx_resp_account_chat_history_get_last_read
        • vx_resp_account_channel_get_acl
        • vx_resp_account_channel_remove_acl
        • vx_resp_account_chat_history_query
        • vx_resp_account_control_communications
        • vx_resp_account_create_auto_accept_rule
        • vx_resp_account_create_block_rule
        • vx_resp_account_delete_auto_accept_rule
        • vx_resp_account_delete_block_rule
        • vx_resp_account_get_account
        • vx_resp_account_get_session_fonts
        • vx_resp_account_get_template_fonts
        • vx_resp_account_list_auto_accept_rules
        • vx_resp_account_list_block_rules
        • vx_resp_account_list_buddies_and_groups
        • vx_resp_account_login
        • vx_resp_account_logout
        • vx_resp_account_post_crash_dump
        • vx_resp_account_send_message
        • vx_resp_account_send_sms
        • vx_resp_account_send_subscription_reply
        • vx_resp_account_send_user_app_data
        • vx_resp_account_set_login_properties
        • vx_resp_account_set_presence
        • vx_resp_account_update_account
        • vx_resp_account_web_call
        • vx_resp_aux_capture_audio_start
        • vx_resp_aux_capture_audio_stop
        • vx_resp_aux_connectivity_info
        • vx_resp_aux_create_account
        • vx_resp_aux_deactivate_account
        • vx_resp_aux_diagnostic_state_dump
        • vx_resp_aux_get_capture_devices
        • vx_resp_aux_get_derumbler_properties
        • vx_resp_aux_get_mic_level
        • vx_resp_aux_get_render_devices
        • vx_resp_aux_get_speaker_level
        • vx_resp_aux_get_vad_properties
        • vx_resp_aux_global_monitor_keyboard_mouse
        • vx_resp_aux_notify_application_state_change
        • vx_resp_aux_play_audio_buffer
        • vx_resp_aux_reactivate_account
        • vx_resp_aux_render_audio_modify
        • vx_resp_aux_render_audio_start
        • vx_resp_aux_render_audio_stop
        • vx_resp_aux_reset_password
        • vx_resp_aux_set_capture_device
        • vx_resp_aux_set_derumbler_properties
        • vx_resp_aux_set_idle_timeout
        • vx_resp_aux_set_mic_level
        • vx_resp_aux_set_render_device
        • vx_resp_aux_set_speaker_level
        • vx_resp_aux_set_vad_properties
        • vx_resp_aux_start_buffer_capture
        • vx_resp_base
        • vx_resp_channel_ban_user
        • vx_resp_channel_get_banned_users
        • vx_resp_channel_kick_user
        • vx_resp_channel_mute_all_users
        • vx_resp_channel_mute_user
        • vx_resp_channel_set_lock_mode
        • vx_resp_connector_create
        • vx_resp_connector_get_local_audio_info
        • vx_resp_connector_initiate_shutdown
        • vx_resp_connector_mute_local_mic
        • vx_resp_connector_mute_local_speaker
        • vx_resp_connector_set_local_mic_volume
        • vx_resp_connector_set_local_speaker_volume
        • vx_resp_session_archive_query
        • vx_resp_session_channel_invite_user
        • vx_resp_session_chat_history_query
        • vx_resp_session_create
        • vx_resp_session_media_connect
        • vx_resp_session_media_disconnect
        • vx_resp_session_mute_local_speaker
        • vx_resp_session_send_dtmf
        • vx_resp_session_send_message
        • vx_resp_session_send_notification
        • vx_resp_session_set_3d_position
        • vx_resp_session_set_local_render_volume
        • vx_resp_session_set_local_speaker_volume
        • vx_resp_session_set_participant_mute_for_me
        • vx_resp_session_set_participant_volume_for_me
        • vx_resp_session_set_voice_font
        • vx_resp_session_terminate
        • vx_resp_session_text_connect
        • vx_resp_session_text_disconnect
        • vx_resp_session_transcription_control
        • vx_resp_sessiongroup_add_session
        • vx_resp_sessiongroup_control_audio_injection
        • vx_resp_sessiongroup_create
        • vx_resp_sessiongroup_get_stats
        • vx_resp_sessiongroup_remove_session
        • vx_resp_sessiongroup_reset_focus
        • vx_resp_sessiongroup_set_focus
        • vx_resp_sessiongroup_set_session_3d_position
        • vx_resp_sessiongroup_set_tx_all_sessions
        • vx_resp_sessiongroup_set_tx_no_session
        • vx_resp_sessiongroup_set_tx_session
        • vx_resp_sessiongroup_terminate
        • vx_resp_sessiongroup_unset_focus
        • vx_sdk_config
        • vx_stat_sample
        • vx_stat_thread
        • vx_state_account
        • vx_state_buddy
        • vx_state_buddy_contact
        • vx_state_buddy_group
        • vx_state_connector
        • vx_state_participant
        • vx_state_session
        • vx_state_sessiongroup
        • vx_system_stats
        • vx_tts_utterance
        • vx_tts_voice
        • vx_user_channel
        • vx_voice_font
        • vx_vxd
        • vxa_capture_device_stats_t
        • vxa_render_device_stats_t
      • Deprecated List
    • Third-party license information
  • Privacy overview
  1. Vivox Core SDK documentation

vx_evt_media_stream_updated

Reference the Vivox Core SDK API.
Read time 3 minutes
Last updated 8 months ago

Module: Group Voice and Text Communications
Sent when session media has been altered.
#include <VxcEvents.h>

Public Attributes

Name

vx_evt_base_tbase
The common properties for all events.
VX_HANDLEsessiongroup_handle
The handle created for the session group.
VX_HANDLEsession_handle
The handle created for the session.
intstatus_code
The code used to identify why a state change has been made.
char *status_string
Text (in English) to describe the status code.
vx_session_media_statestate
The new state of the entity.
intincoming
Indicates whether this is an incoming call.
char *durable_media_id
The durable media identifier used to access value add services.
char *media_probe_server
The current media probe server.
vx_call_stats_t *call_stats
NULL, except for state session_media_disconnected.

Public Attributes Documentation

variable base

vx_evt_base_t base;
The common properties for all events.

variable sessiongroup_handle

VX_HANDLE sessiongroup_handle;
The handle created for the session group.

variable session_handle

VX_HANDLE session_handle;
The handle created for the session.

variable status_code

int status_code;
The code used to identify why a state change has been made.
This code is only useful if the state is equal to session_media_disconnected. In this case, the following rules apply:
    1. Any code < 400 can be ignored.
    1. 401 - A password is needed to join this channel. Typically, an application presents a password dialog at this point. You can retry the request if you obtain a password from the user.
    1. 403 - If the call is to a channel, the user does not have sufficient privilege to join the channel. Otherwise, the call has been declined.
    1. 404 - The destination (either a channel or other user) does not exist.
    1. 408 - The remote user did not answer the call. You can retry the request after a 10s delay.
    1. 480 - The remote user is temporarily offline. You can retry the request after a 10s delay.
    1. 486 - The remote user is busy (on another call). You can retry the request after a 10s delay.
    1. 503 - The server is busy (overloaded). You can retry the request after a 10s delay.
    1. 603 - The remote user has declined the call. The application should only retry a failed request if there is a chance the retry will succeed, as indicated in the preceding list. It is recommended that the status_string field only be displayed as diagnostic information for status codes > 400, and not the codes in the preceding list. This status_string is often generated by the network, which can also include public PSTN networks. This can result in status_string values that are informative to a technician, but not to an end user, and can be subject to change. Applications should not depend on the value of this field. Applications should present an application-specific message for each of the status codes outlined in the preceding list.

variable status_string

char * status_string;
Text (in English) to describe the status code.
For more information, refer to the vx_evt_media_stream_updated status_code description.

variable state

vx_session_media_state state;
The new state of the entity.
Refer to the codes in table vx_session_media_state

variable incoming

int incoming;
Indicates whether this is an incoming call.

variable durable_media_id

char * durable_media_id;
The durable media identifier used to access value add services.

variable media_probe_server

char * media_probe_server;
The current media probe server.

variable call_stats

vx_call_stats_t * call_stats;
NULL, except for state session_media_disconnected.

Copyright © 2026 Unity Technologies
LegalPrivacy PolicyCookiesDocumentation Terms of UseDo Not Sell or Share My Personal InformationYour Privacy Choices (Cookie Settings)

"Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S and elsewhere (more info here). Other names or brands are trademarks of their respective owners.

Some pages are machine-translated for convenience, and may contain inaccuracies. In the event of conflicting information, the English version is authoritative.

  • On this page
    • Public Attributes

    • Public Attributes Documentation

      • variable base

      • variable sessiongroup_handle

      • variable session_handle

      • variable status_code

      • variable status_string

      • variable state

      • variable incoming

      • variable durable_media_id

      • variable media_probe_server

      • variable call_stats


Report a problem with this page