Documentation

Support

Vivox Core SDK

Vivox Core SDK

sdk/VxcEvents.h

Reference the Vivox Core SDK API.
Read time 21 minutesLast updated 20 hours ago

Classes

Name

structvx_evt_account_login_state_change
Sent whenever the login state of the particular account has transitioned from one value to another.
structvx_evt_buddy_presence
Presented when a buddy has issued presence information.
structvx_evt_subscription
Generated when a buddy wants to request presence visibility.
structvx_evt_session_notification
Received when another user has started or stopped typing, or has raised or lowered their hand, within the context of a session.
structvx_evt_message
Presented when an incoming message has arrived from a participant in an open session with text enabled.
structvx_evt_session_delete_message
Presented when an incoming message has arrived from a participant in an open session with message-deleted.
structvx_evt_session_edit_message
Presented when an incoming message has arrived from a participant in an open session with message-edited.
structvx_evt_account_delete_message
Presented when an incoming message has arrived from a participant with message-deleted.
structvx_evt_account_edit_message
Presented when an incoming message has arrived from a participant with message-edited.
structvx_evt_session_archive_message
Presented when a message is found in response to a [vx_req_session_archive_query] or [vx_req_session_chat_history_query] request.
structvx_evt_transcribed_message
Presented when an incoming transcribed text has arrived from a participant in an open session.
structvx_evt_session_archive_query_end
Presented when a channel history query is completed.
structvx_evt_aux_audio_properties
Used by the SDK sound system to present audio information to the application, which can be used to create a visual representation of the speaker (for example, a "VU" meter).
structvx_evt_buddy_changed
Presented when a buddy is either set (added or updated) or removed.
structvx_evt_buddy_group_changed
Presented when a buddy group is set (added or updated) or removed.
structvx_evt_buddy_and_group_list_changed
Presented when the buddy or group list undergoes a significant change.
structvx_evt_keyboard_mouse
Raised to indicate to the application that a particular keyboard/mouse button combination has been pressed or cleared.
structvx_evt_idle_state_changed
Raised to indicate to the application that the user has transitioned between an idle and non-idle state (in either order).
structvx_call_stats
The common structure for holding call-related statistics.
structvx_evt_media_stream_updated
Sent when session media has been altered.
structvx_evt_text_stream_updated
Sent when the session text has been altered.
structvx_evt_sessiongroup_added
Sent when a session group is added.
structvx_evt_sessiongroup_removed
Sent when a session group is removed.
structvx_evt_session_added
Sent when a session is added.
structvx_evt_session_removed
Sent when a session is removed.
structvx_evt_participant_added
Presented when a participant is added to a session.
structvx_evt_participant_removed
Presented when a participant is removed from a session.
structvx_evt_participant_updated
Received when the properties of the participant change For example: mod muted, speaking, volume, energy, or typing notifications.
structvx_evt_sessiongroup_playback_frame_played
Posted after a frame has been played.
structvx_evt_session_updated
Sent when a session is updated.
structvx_evt_sessiongroup_updated
Sent when a session group is updated.
structvx_evt_media_completion
Received when certain media requests have completed.
structvx_evt_server_app_data
The server can send messages to the SDK that the SDK does not need to consume.
structvx_evt_user_app_data
Raised when a message from another user is received.
structvx_evt_network_message
Raised when the network sends a message to a user (as opposed to a user to user message).
structvx_evt_voice_service_connection_state_changed
Raised when the SDK is running out of process and the connection state of the Vivox Voice Service (VVS) changes.
structvx_evt_publication_state_changed
Raised when the publication state has changed.
structvx_evt_audio_device_hot_swap
Raised when audio device changes are made that impact the audio capture or rendering experience, or when other audio devices are added or removed.
structvx_evt_user_to_user_message
Raised when a message from another user is received.
structvx_evt_account_archive_message
Presented when a message is found in response to [vx_req_account_archive_query] or [vx_req_account_chat_history_query] request.
structvx_evt_account_archive_query_end
Presented when an account message archive query is completed.
structvx_evt_account_send_message_failed
Raised when a server reports a directed message send failure.
structvx_evt_tts_injection_started
Raised when a text-to-speech (TTS) message injection has started.
structvx_evt_tts_injection_ended
Raised when an injection of a text-to-speech (TTS) message has ended.
structvx_evt_tts_injection_failed
Raised when an injection of a text-to-speech (TTS) message has failed.
structvx_evt_stt_failed
Raised when the transcription (STT) service has a failure.
structvx_evt_connection_state_changed
Raised when the network connection state has changed.
structvx_evt_presence_updated
Raised when presence status of the signed in user changes.

Types

Name

enumvx_change_type_t { change_type_set = 1, change_type_delete = 2}
For vx_evt_buddy_changed_t and vx_evt_buddy_group_changed_t objects, indicates whether the object was set (added or updated) or deleted.
enumvx_participant_diagnostic_state_t { participant_diagnostic_state_speaking_while_mic_muted = 1, participant_diagnostic_state_speaking_while_mic_volume_zero = 2, participant_diagnostic_state_no_capture_device = 3, participant_diagnostic_state_no_render_device = 4, participant_diagnostic_state_capture_device_read_errors = 5, participant_diagnostic_state_render_device_write_errors = 6}
The special state of the local voice participant that is used to indicate that the participant is attemping to speak while the system is in a state that will not transmit the participant's audio.
enumvx_evt_network_message_type { vx_evt_network_message_type_offline_message = 1, vx_evt_network_message_type_admin_message = 2, vx_evt_network_message_type_sessionless_message = 3}
enumvx_audio_device_hot_swap_event_type_t { vx_audio_device_hot_swap_event_type_disabled_due_to_platform_constraints = 0, vx_audio_device_hot_swap_event_type_active_render_device_changed = 1, vx_audio_device_hot_swap_event_type_active_capture_device_changed = 2, vx_audio_device_hot_swap_event_type_audio_device_added = 3, vx_audio_device_hot_swap_event_type_audio_device_removed = 4}
typedef struct vx_evt_account_login_state_changevx_evt_account_login_state_change_t
Sent whenever the login state of the particular account has transitioned from one value to another.
typedef struct vx_evt_buddy_presencevx_evt_buddy_presence_t
Presented when a buddy has issued presence information.
typedef struct vx_evt_subscriptionvx_evt_subscription_t
Generated when a buddy wants to request presence visibility.
typedef struct vx_evt_session_notificationvx_evt_session_notification_t
Received when another user has started or stopped typing, or has raised or lowered their hand, within the context of a session.
typedef struct vx_evt_messagevx_evt_message_t
Presented when an incoming message has arrived from a participant in an open session with text enabled.
typedef struct vx_evt_session_delete_messagevx_evt_session_delete_message_t
Presented when an incoming message has arrived from a participant in an open session with message-deleted.
typedef struct vx_evt_session_edit_messagevx_evt_session_edit_message_t
Presented when an incoming message has arrived from a participant in an open session with message-edited.
typedef struct vx_evt_account_delete_messagevx_evt_account_delete_message_t
Presented when an incoming message has arrived from a participant with message-deleted.
typedef struct vx_evt_account_edit_messagevx_evt_account_edit_message_t
Presented when an incoming message has arrived from a participant with message-edited.
typedef struct vx_evt_session_archive_messagevx_evt_session_archive_message_t
Presented when a message is found in response to a vx_req_session_archive_query or vx_req_session_chat_history_query request.
typedef struct vx_evt_transcribed_messagevx_evt_transcribed_message_t
Presented when an incoming transcribed text has arrived from a participant in an open session.
typedef struct vx_evt_session_archive_query_endvx_evt_session_archive_query_end_t
Presented when a channel history query is completed.
typedef struct vx_evt_aux_audio_propertiesvx_evt_aux_audio_properties_t
Used by the SDK sound system to present audio information to the application, which can be used to create a visual representation of the speaker (for example, a "VU" meter).
typedef struct vx_evt_buddy_changedvx_evt_buddy_changed_t
Presented when a buddy is either set (added or updated) or removed.
typedef struct vx_evt_buddy_group_changedvx_evt_buddy_group_changed_t
Presented when a buddy group is set (added or updated) or removed.
typedef struct vx_evt_buddy_and_group_list_changedvx_evt_buddy_and_group_list_changed_t
Presented when the buddy or group list undergoes a significant change.
typedef struct vx_evt_keyboard_mousevx_evt_keyboard_mouse_t
Raised to indicate to the application that a particular keyboard/mouse button combination has been pressed or cleared.
typedef struct vx_evt_idle_state_changedvx_evt_idle_state_changed_t
Raised to indicate to the application that the user has transitioned between an idle and non-idle state (in either order).
typedef struct vx_call_statsvx_call_stats_t
The common structure for holding call-related statistics.
typedef struct vx_evt_media_stream_updatedvx_evt_media_stream_updated_t
Sent when session media has been altered.
typedef struct vx_evt_text_stream_updatedvx_evt_text_stream_updated_t
Sent when the session text has been altered.
typedef struct vx_evt_sessiongroup_addedvx_evt_sessiongroup_added_t
Sent when a session group is added.
typedef struct vx_evt_sessiongroup_removedvx_evt_sessiongroup_removed_t
Sent when a session group is removed.
typedef struct vx_evt_session_addedvx_evt_session_added_t
Sent when a session is added.
typedef struct vx_evt_session_removedvx_evt_session_removed_t
Sent when a session is removed.
typedef struct vx_evt_participant_addedvx_evt_participant_added_t
Presented when a participant is added to a session.
typedef struct vx_evt_participant_removedvx_evt_participant_removed_t
Presented when a participant is removed from a session.
typedef struct vx_evt_participant_updatedvx_evt_participant_updated_t
Received when the properties of the participant change For example: mod muted, speaking, volume, energy, or typing notifications.
typedef struct vx_evt_sessiongroup_playback_frame_playedvx_evt_sessiongroup_playback_frame_played_t
Posted after a frame has been played.
typedef struct vx_evt_session_updatedvx_evt_session_updated_t
Sent when a session is updated.
typedef struct vx_evt_sessiongroup_updatedvx_evt_sessiongroup_updated_t
Sent when a session group is updated.
typedef struct vx_evt_media_completionvx_evt_media_completion_t
Received when certain media requests have completed.
typedef struct vx_evt_server_app_datavx_evt_server_app_data_t
The server can send messages to the SDK that the SDK does not need to consume.
typedef struct vx_evt_user_app_datavx_evt_user_app_data_t
Raised when a message from another user is received.
typedef struct vx_evt_network_messagevx_evt_network_message_t
Raised when the network sends a message to a user (as opposed to a user to user message).
typedef struct vx_evt_voice_service_connection_state_changedvx_evt_voice_service_connection_state_changed_t
Raised when the SDK is running out of process and the connection state of the Vivox Voice Service (VVS) changes.
typedef struct vx_evt_publication_state_changedvx_evt_publication_state_changed_t
Raised when the publication state has changed.
typedef struct vx_evt_audio_device_hot_swapvx_evt_audio_device_hot_swap_t
Raised when audio device changes are made that impact the audio capture or rendering experience, or when other audio devices are added or removed.
typedef struct vx_evt_user_to_user_messagevx_evt_user_to_user_message_t
Raised when a message from another user is received.
typedef struct vx_evt_account_archive_messagevx_evt_account_archive_message_t
Presented when a message is found in response to vx_req_account_archive_query or vx_req_account_chat_history_query request.
typedef struct vx_evt_account_archive_query_endvx_evt_account_archive_query_end_t
Presented when an account message archive query is completed.
typedef struct vx_evt_account_send_message_failedvx_evt_account_send_message_failed_t
Raised when a server reports a directed message send failure.
typedef struct vx_evt_tts_injection_startedvx_evt_tts_injection_started_t
Raised when a text-to-speech (TTS) message injection has started.
typedef struct vx_evt_tts_injection_endedvx_evt_tts_injection_ended_t
Raised when an injection of a text-to-speech (TTS) message has ended.
typedef struct vx_evt_tts_injection_failedvx_evt_tts_injection_failed_t
Raised when an injection of a text-to-speech (TTS) message has failed.
typedef struct vx_evt_stt_failedvx_evt_stt_failed_t
Raised when the transcription (STT) service has a failure.
typedef struct vx_evt_connection_state_changedvx_evt_connection_state_changed_t
Raised when the network connection state has changed.
typedef struct vx_evt_presence_updatedvx_evt_presence_updated_t
Raised when presence status of the signed in user changes.

Functions

Name

VIVOXSDK_DLLEXPORT intdestroy_evt(vx_evt_base_t * pCmd)
Free any event of any type.

Types Documentation

enum vx_change_type_t

Enumerator

Value

Description

change_type_set1The buddy or group was added or updated.
change_type_delete2The buddy or group was deleted.
For vx_evt_buddy_changed_t and vx_evt_buddy_group_changed_t objects, indicates whether the object was set (added or updated) or deleted.

enum vx_participant_diagnostic_state_t

Enumerator

Value

Description

participant_diagnostic_state_speaking_while_mic_muted1
participant_diagnostic_state_speaking_while_mic_volume_zero2
participant_diagnostic_state_no_capture_device3
participant_diagnostic_state_no_render_device4
participant_diagnostic_state_capture_device_read_errors5
participant_diagnostic_state_render_device_write_errors6
The special state of the local voice participant that is used to indicate that the participant is attemping to speak while the system is in a state that will not transmit the participant's audio.

enum vx_evt_network_message_type

Enumerator

Value

Description

vx_evt_network_message_type_offline_message1The message that was sent when the target user was offline.
vx_evt_network_message_type_admin_message2
vx_evt_network_message_type_sessionless_message3

enum vx_audio_device_hot_swap_event_type_t

Enumerator

Value

Description

vx_audio_device_hot_swap_event_type_disabled_due_to_platform_constraints0On some platforms (WinXP) with some drivers, polling to find out which devices has changed can take a long time. When the SDK finds that polling can take a long time, it stops looking for device changes. When this happens, vx_evt_audio_device_hot_swap is raised with event_type set to vx_audio_device_hot_swap_event_type_disabled_due_to_platform_constraints.
vx_audio_device_hot_swap_event_type_active_render_device_changed1When the active render device changes, vx_evt_audio_device_hot_swap is raised with event_type set to vx_audio_device_hot_swap_event_type_active_render_device_changed.
vx_audio_device_hot_swap_event_type_active_capture_device_changed2When the active capture device changes, vx_evt_audio_device_hot_swap is raised with event_type set to vx_audio_device_hot_swap_event_type_active_capture_device_changed.
vx_audio_device_hot_swap_event_type_audio_device_added3@future
vx_audio_device_hot_swap_event_type_audio_device_removed4@future

typedef vx_evt_account_login_state_change_t

typedef struct vx_evt_account_login_state_change vx_evt_account_login_state_change_t;
Sent whenever the login state of the particular account has transitioned from one value to another.

typedef vx_evt_buddy_presence_t

typedef struct vx_evt_buddy_presence vx_evt_buddy_presence_t;
Presented when a buddy has issued presence information.

typedef vx_evt_subscription_t

typedef struct vx_evt_subscription vx_evt_subscription_t;
Generated when a buddy wants to request presence visibility. See: vx_req_account_buddy_set This event is not presented if an auto-accept or auto-block rule matches the requesting buddy_uri. Typically, the application uses this event to prompt a user to explicitly accept or deny the request for presence. Optionally, the application might create and store an auto-accept or auto-block rule based on the user's selection. The application should generate a vx_req_account_send_subscription_reply_t request based on application logic and/or end-user response. The subscription_handle value must be extracted and returned as a parameter to vx_req_account_send_subscription_reply_t.

typedef vx_evt_session_notification_t

typedef struct vx_evt_session_notification vx_evt_session_notification_t;
Received when another user has started or stopped typing, or has raised or lowered their hand, within the context of a session.

typedef vx_evt_message_t

typedef struct vx_evt_message vx_evt_message_t;
Presented when an incoming message has arrived from a participant in an open session with text enabled.

typedef vx_evt_session_delete_message_t

typedef struct vx_evt_session_delete_message vx_evt_session_delete_message_t;
Presented when an incoming message has arrived from a participant in an open session with message-deleted.

typedef vx_evt_session_edit_message_t

typedef struct vx_evt_session_edit_message vx_evt_session_edit_message_t;
Presented when an incoming message has arrived from a participant in an open session with message-edited.

typedef vx_evt_account_delete_message_t

typedef struct vx_evt_account_delete_message vx_evt_account_delete_message_t;
Presented when an incoming message has arrived from a participant with message-deleted.

typedef vx_evt_account_edit_message_t

typedef struct vx_evt_account_edit_message vx_evt_account_edit_message_t;
Presented when an incoming message has arrived from a participant with message-edited.

typedef vx_evt_session_archive_message_t

typedef struct vx_evt_session_archive_message vx_evt_session_archive_message_t;
Presented when a message is found in response to a vx_req_session_archive_query or vx_req_session_chat_history_query request. This event is triggered for every message that is found.

typedef vx_evt_transcribed_message_t

typedef struct vx_evt_transcribed_message vx_evt_transcribed_message_t;
Presented when an incoming transcribed text has arrived from a participant in an open session.

typedef vx_evt_session_archive_query_end_t

typedef struct vx_evt_session_archive_query_end vx_evt_session_archive_query_end_t;
Presented when a channel history query is completed. There is one vx_evt_session_archive_query_end event for every query started with a vx_req_session_archive_query request.

typedef vx_evt_aux_audio_properties_t

typedef struct vx_evt_aux_audio_properties vx_evt_aux_audio_properties_t;
Used by the SDK sound system to present audio information to the application, which can be used to create a visual representation of the speaker (for example, a "VU" meter). These events are presented at one half the rate of the audio capture rate.

typedef vx_evt_buddy_changed_t

typedef struct vx_evt_buddy_changed vx_evt_buddy_changed_t;
Presented when a buddy is either set (added or updated) or removed.

typedef vx_evt_buddy_group_changed_t

typedef struct vx_evt_buddy_group_changed vx_evt_buddy_group_changed_t;
Presented when a buddy group is set (added or updated) or removed.

typedef vx_evt_buddy_and_group_list_changed_t

typedef struct vx_evt_buddy_and_group_list_changed vx_evt_buddy_and_group_list_changed_t;
Presented when the buddy or group list undergoes a significant change. This event is always received after login, and can be used to build the initial buddy and group UI.

typedef vx_evt_keyboard_mouse_t

typedef struct vx_evt_keyboard_mouse vx_evt_keyboard_mouse_t;
Raised to indicate to the application that a particular keyboard/mouse button combination has been pressed or cleared. Attention: Not supported on the iPhone platform.

typedef vx_evt_idle_state_changed_t

typedef struct vx_evt_idle_state_changed vx_evt_idle_state_changed_t;
Raised to indicate to the application that the user has transitioned between an idle and non-idle state (in either order). Attention: Not supported on the iPhone platform.

typedef vx_call_stats_t

typedef struct vx_call_stats vx_call_stats_t;
The common structure for holding call-related statistics.

typedef vx_evt_media_stream_updated_t

typedef struct vx_evt_media_stream_updated vx_evt_media_stream_updated_t;
Sent when session media has been altered.

typedef vx_evt_text_stream_updated_t

typedef struct vx_evt_text_stream_updated vx_evt_text_stream_updated_t;
Sent when the session text has been altered.

typedef vx_evt_sessiongroup_added_t

typedef struct vx_evt_sessiongroup_added vx_evt_sessiongroup_added_t;
Sent when a session group is added.

typedef vx_evt_sessiongroup_removed_t

typedef struct vx_evt_sessiongroup_removed vx_evt_sessiongroup_removed_t;
Sent when a session group is removed.

typedef vx_evt_session_added_t

typedef struct vx_evt_session_added vx_evt_session_added_t;
Sent when a session is added.

typedef vx_evt_session_removed_t

typedef struct vx_evt_session_removed vx_evt_session_removed_t;
Sent when a session is removed.

typedef vx_evt_participant_added_t

typedef struct vx_evt_participant_added vx_evt_participant_added_t;
Presented when a participant is added to a session. When joining a channel, a participant added event is raised for all active participants in the channel.

typedef vx_evt_participant_removed_t

typedef struct vx_evt_participant_removed vx_evt_participant_removed_t;
Presented when a participant is removed from a session.

typedef vx_evt_participant_updated_t

typedef struct vx_evt_participant_updated vx_evt_participant_updated_t;
Received when the properties of the participant change For example: mod muted, speaking, volume, energy, or typing notifications.

typedef vx_evt_sessiongroup_playback_frame_played_t

typedef struct vx_evt_sessiongroup_playback_frame_played vx_evt_sessiongroup_playback_frame_played_t;
Posted after a frame has been played. When playback has been stopped by the application, the first, current, and total frames are equal to zero.

typedef vx_evt_session_updated_t

typedef struct vx_evt_session_updated vx_evt_session_updated_t;
Sent when a session is updated.

typedef vx_evt_sessiongroup_updated_t

typedef struct vx_evt_sessiongroup_updated vx_evt_sessiongroup_updated_t;
Sent when a session group is updated.

typedef vx_evt_media_completion_t

typedef struct vx_evt_media_completion vx_evt_media_completion_t;
Received when certain media requests have completed.

typedef vx_evt_server_app_data_t

typedef struct vx_evt_server_app_data vx_evt_server_app_data_t;
The server can send messages to the SDK that the SDK does not need to consume. These messages are propagated to the application through this event. The application can choose to parse and consume these messages or to ignore them.

typedef vx_evt_user_app_data_t

typedef struct vx_evt_user_app_data vx_evt_user_app_data_t;
Raised when a message from another user is received. See: vx_req_account_send_user_app_data Note: This is not to be confused with IMs - this is a P2P communication mechanism for applications to communicate custom content.

typedef vx_evt_network_message_t

typedef struct vx_evt_network_message vx_evt_network_message_t;
Raised when the network sends a message to a user (as opposed to a user to user message). This includes messages that were stored and forwarded on behalf the user, and generic admin messages.

typedef vx_evt_voice_service_connection_state_changed_t

typedef struct vx_evt_voice_service_connection_state_changed vx_evt_voice_service_connection_state_changed_t;
Raised when the SDK is running out of process and the connection state of the Vivox Voice Service (VVS) changes. Sent when the connection is made and when the connection is lost. Alerts the application so the VVS can be restarted, if needed.

typedef vx_evt_publication_state_changed_t

typedef struct vx_evt_publication_state_changed vx_evt_publication_state_changed_t;
Raised when the publication state has changed.

typedef vx_evt_audio_device_hot_swap_t

typedef struct vx_evt_audio_device_hot_swap vx_evt_audio_device_hot_swap_t;
Raised when audio device changes are made that impact the audio capture or rendering experience, or when other audio devices are added or removed.

typedef vx_evt_user_to_user_message_t

typedef struct vx_evt_user_to_user_message vx_evt_user_to_user_message_t;
Raised when a message from another user is received. See: vx_req_account_send_message Note: V5 only.

typedef vx_evt_account_archive_message_t

typedef struct vx_evt_account_archive_message vx_evt_account_archive_message_t;
Presented when a message is found in response to vx_req_account_archive_query or vx_req_account_chat_history_query request. This event is triggered for every message found.

typedef vx_evt_account_archive_query_end_t

typedef struct vx_evt_account_archive_query_end vx_evt_account_archive_query_end_t;
Presented when an account message archive query is completed. There is one vx_evt_account_archive_query_end event for every query started with vx_req_account_archive_query request.

typedef vx_evt_account_send_message_failed_t

typedef struct vx_evt_account_send_message_failed vx_evt_account_send_message_failed_t;
Raised when a server reports a directed message send failure. See: vx_req_account_send_message Note: V5 only.

typedef vx_evt_tts_injection_started_t

typedef struct vx_evt_tts_injection_started vx_evt_tts_injection_started_t;
Raised when a text-to-speech (TTS) message injection has started. Note: V5 only.

typedef vx_evt_tts_injection_ended_t

typedef struct vx_evt_tts_injection_ended vx_evt_tts_injection_ended_t;
Raised when an injection of a text-to-speech (TTS) message has ended. Note: V5 only.

typedef vx_evt_tts_injection_failed_t

typedef struct vx_evt_tts_injection_failed vx_evt_tts_injection_failed_t;
Raised when an injection of a text-to-speech (TTS) message has failed. Note: V5 only.

typedef vx_evt_stt_failed_t

typedef struct vx_evt_stt_failed vx_evt_stt_failed_t;
Raised when the transcription (STT) service has a failure. Note: V5 only.

typedef vx_evt_connection_state_changed_t

typedef struct vx_evt_connection_state_changed vx_evt_connection_state_changed_t;
Raised when the network connection state has changed.

typedef vx_evt_presence_updated_t

typedef struct vx_evt_presence_updated vx_evt_presence_updated_t;
Raised when presence status of the signed in user changes.

Functions Documentation

function destroy_evt

VIVOXSDK_DLLEXPORT int destroy_evt( vx_evt_base_t * pCmd)
Free any event of any type.

Source code

/* Copyright (c) 2019 Unity Technologies. * * This software is subject to, and made available under, the Unity Terms of Service (see Unity Terms of Service). * Your use of this software constitutes your acceptance of such terms. * Unless expressly provided otherwise, the software under this license is made available strictly on an "AS IS" BASIS WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED. * Please review the Terms of Service for details on these and other terms and conditions.” */#pragma once#include <Vxc.h>#pragma pack(push)#pragma pack(8)#ifdef __cplusplusextern "C" {#endiftypedef struct vx_evt_account_login_state_change { vx_evt_base_t base; vx_login_state_change_state state; VX_HANDLE account_handle; int status_code; char *status_string; VX_COOKIE cookie; void *vcookie;} vx_evt_account_login_state_change_t;typedef struct vx_evt_buddy_presence { vx_evt_base_t base; vx_buddy_presence_state state; VX_HANDLE account_handle; char *buddy_uri; vx_buddy_presence_state presence; char *custom_message; char *displayname; char *application; char *contact; char *priority; char *id; char *encoded_uri_with_tag;} vx_evt_buddy_presence_t;typedef struct vx_evt_subscription { vx_evt_base_t base; VX_HANDLE account_handle; char *buddy_uri; char *subscription_handle; vx_subscription_type subscription_type; char *displayname; char *application; char *message;} vx_evt_subscription_t;typedef struct vx_evt_session_notification { vx_evt_base_t base; vx_session_notification_state state; VX_HANDLE session_handle; char *participant_uri; vx_notification_type notification_type; char *encoded_uri_with_tag; int is_current_user;} vx_evt_session_notification_t;typedef struct vx_evt_message { vx_evt_base_t base; vx_message_state state; VX_HANDLE sessiongroup_handle; VX_HANDLE session_handle; char *participant_uri; char *message_header; char *message_body; char *message_id; char *participant_displayname; char *application; char *alias_username; char *encoded_uri_with_tag; int is_current_user; char *language; char *application_stanza_namespace; char *application_stanza_body;} vx_evt_message_t;typedef struct vx_evt_session_delete_message { vx_evt_base_t base; VX_HANDLE sessiongroup_handle; VX_HANDLE session_handle; char *message_id; long long delete_time; char *from_uri;} vx_evt_session_delete_message_t;typedef struct vx_evt_session_edit_message { vx_evt_base_t base; VX_HANDLE sessiongroup_handle; VX_HANDLE session_handle; char *message_id; char *new_message; long long edit_time; char *displayname; char *from_uri; char *language;} vx_evt_session_edit_message_t;typedef struct vx_evt_account_delete_message { vx_evt_base_t base; VX_HANDLE account_handle; char *message_id; long long delete_time; char *from_user;} vx_evt_account_delete_message_t;typedef struct vx_evt_account_edit_message { vx_evt_base_t base; VX_HANDLE account_handle; char *message_id; char *new_message; long long edit_time; char *displayname; char *from_user; char *language;} vx_evt_account_edit_message_t;#ifndef DOXYGEN_MAM_SKIPtypedef struct vx_evt_session_archive_message { vx_evt_base_t base; VX_HANDLE sessiongroup_handle; VX_HANDLE session_handle; char *query_id; char *time_stamp; char *participant_uri; char *displayname; char *message_body; char *message_id; char *encoded_uri_with_tag; int is_current_user; char *language;} vx_evt_session_archive_message_t;#endiftypedef struct vx_evt_transcribed_message { vx_evt_base_t base; VX_HANDLE sessiongroup_handle; VX_HANDLE session_handle; char *participant_uri; char *text; char *language; int is_current_user; char *participant_displayname;} vx_evt_transcribed_message_t;#ifndef DOXYGEN_MAM_SKIPtypedef struct vx_evt_session_archive_query_end { vx_evt_base_t base; VX_HANDLE sessiongroup_handle; VX_HANDLE session_handle; char *query_id; int return_code; int status_code; char *first_id; char *last_id; unsigned int first_index; unsigned int count; char *next_cursor;} vx_evt_session_archive_query_end_t;#endiftypedef struct vx_evt_aux_audio_properties { vx_evt_base_t base; vx_aux_audio_properties_state state; int mic_is_active; int mic_volume; double mic_energy; int speaker_volume; double speaker_energy; int speaker_is_active; double fast_energy_meter; double noise_floor_meter; double speech_threshold_meter;} vx_evt_aux_audio_properties_t;typedef enum { change_type_set = 1, change_type_delete = 2} vx_change_type_t;typedef struct vx_evt_buddy_changed { vx_evt_base_t base; VX_HANDLE account_handle; vx_change_type_t change_type; char *buddy_uri; char *display_name; char *buddy_data; int group_id; int account_id;} vx_evt_buddy_changed_t;typedef struct vx_evt_buddy_group_changed { vx_evt_base_t base; VX_HANDLE account_handle; vx_change_type_t change_type; int group_id; char *group_name; char *group_data;} vx_evt_buddy_group_changed_t;typedef struct vx_evt_buddy_and_group_list_changed { vx_evt_base_t base; VX_HANDLE account_handle; int buddy_count; vx_buddy_t **buddies; int group_count; vx_group_t **groups;} vx_evt_buddy_and_group_list_changed_t;typedef struct vx_evt_keyboard_mouse { vx_evt_base_t base; char *name; int is_down;} vx_evt_keyboard_mouse_t;typedef struct vx_evt_idle_state_changed { vx_evt_base_t base; int is_idle;} vx_evt_idle_state_changed_t;typedef struct vx_call_stats { int insufficient_bandwidth; int min_bars; int max_bars; int current_bars; int pk_loss; int incoming_received; int incoming_expected; int incoming_packetloss; int incoming_out_of_time; int incoming_discarded; int outgoing_sent; int render_device_underruns; int render_device_overruns; int render_device_errors; char *call_id; int plc_on; int plc_synthetic_frames; char *codec_name; int codec_mode; double min_latency; double max_latency; int latency_measurement_count; double latency_sum; double last_latency_measured; int latency_packets_lost; double r_factor; int latency_packets_sent; int latency_packets_dropped; int latency_packets_malformed; int latency_packets_negative_latency; double sample_interval_begin; double sample_interval_end; int capture_device_consecutively_read_count[5]; int current_opus_bit_rate; int current_opus_complexity; int current_opus_vbr_mode; int current_opus_bandwidth; int current_opus_max_packet_size;} vx_call_stats_t;typedef struct vx_evt_media_stream_updated { vx_evt_base_t base; VX_HANDLE sessiongroup_handle; VX_HANDLE session_handle; int status_code; char *status_string; vx_session_media_state state; int incoming; char *durable_media_id; char *media_probe_server; vx_call_stats_t *call_stats;} vx_evt_media_stream_updated_t;typedef struct vx_evt_text_stream_updated { vx_evt_base_t base; VX_HANDLE sessiongroup_handle; VX_HANDLE session_handle; int enabled; vx_session_text_state state; int incoming; int status_code; char *status_string;} vx_evt_text_stream_updated_t;typedef struct vx_evt_sessiongroup_added { vx_evt_base_t base; VX_HANDLE sessiongroup_handle; VX_HANDLE account_handle; vx_sessiongroup_type type; char *alias_username;} vx_evt_sessiongroup_added_t;typedef struct vx_evt_sessiongroup_removed { vx_evt_base_t base; VX_HANDLE sessiongroup_handle;} vx_evt_sessiongroup_removed_t;typedef struct vx_evt_session_added { vx_evt_base_t base; VX_HANDLE sessiongroup_handle; VX_HANDLE session_handle; char *uri; int is_channel; int incoming; char *channel_name; char *displayname; char *application; char *alias_username;} vx_evt_session_added_t;typedef struct vx_evt_session_removed { vx_evt_base_t base; VX_HANDLE sessiongroup_handle; VX_HANDLE session_handle; char *uri;} vx_evt_session_removed_t;typedef struct vx_evt_participant_added { vx_evt_base_t base; VX_HANDLE sessiongroup_handle; VX_HANDLE session_handle; char *participant_uri; char *account_name; char *display_name; int participant_type; char *application; int is_anonymous_login; char *displayname; char *alias_username; char *encoded_uri_with_tag; int is_current_user;} vx_evt_participant_added_t;typedef struct vx_evt_participant_removed { vx_evt_base_t base; VX_HANDLE sessiongroup_handle; VX_HANDLE session_handle; char *participant_uri; char *account_name; vx_participant_removed_reason reason; char *alias_username; char *encoded_uri_with_tag; int is_current_user;} vx_evt_participant_removed_t;typedef enum { participant_diagnostic_state_speaking_while_mic_muted = 1, participant_diagnostic_state_speaking_while_mic_volume_zero = 2, participant_diagnostic_state_no_capture_device = 3, participant_diagnostic_state_no_render_device = 4, participant_diagnostic_state_capture_device_read_errors = 5, participant_diagnostic_state_render_device_write_errors = 6} vx_participant_diagnostic_state_t;typedef struct vx_evt_participant_updated { vx_evt_base_t base; VX_HANDLE sessiongroup_handle; VX_HANDLE session_handle; char *participant_uri; int is_moderator_muted; int is_speaking; int volume; double energy; int active_media; int is_muted_for_me; int is_text_muted_for_me; int is_moderator_text_muted; vx_participant_type type; vx_participant_diagnostic_state_t *diagnostic_states; int diagnostic_state_count; char *alias_username; char *encoded_uri_with_tag; int is_current_user; int has_unavailable_capture_device; int has_unavailable_render_device;} vx_evt_participant_updated_t;typedef struct vx_evt_sessiongroup_playback_frame_played { vx_evt_base_t base; VX_HANDLE sessiongroup_handle; int first_frame; int current_frame; int total_frames;} vx_evt_sessiongroup_playback_frame_played_t;typedef struct vx_evt_session_updated { vx_evt_base_t base; VX_HANDLE sessiongroup_handle; VX_HANDLE session_handle; char *uri; int is_muted; int volume; int transmit_enabled; int is_focused; double speaker_position[3]; // {x, y, z} int session_font_id; int is_text_muted; int is_ad_playing;} vx_evt_session_updated_t;typedef struct vx_evt_sessiongroup_updated { vx_evt_base_t base; VX_HANDLE sessiongroup_handle; int in_delayed_playback; double current_playback_speed; vx_sessiongroup_playback_mode current_playback_mode; int playback_paused; int loop_buffer_capacity; int first_loop_frame; int total_loop_frames_captured; int last_loop_frame_played; char *current_recording_filename; int total_recorded_frames; long long first_frame_timestamp_us;} vx_evt_sessiongroup_updated_t;typedef struct vx_evt_media_completion { vx_evt_base_t base; VX_HANDLE sessiongroup_handle; vx_media_completion_type completion_type;} vx_evt_media_completion_t;typedef struct vx_evt_server_app_data { vx_evt_base_t base; VX_HANDLE account_handle; char *content_type; char *content;} vx_evt_server_app_data_t;typedef struct vx_evt_user_app_data { vx_evt_base_t base; VX_HANDLE account_handle; char *from_uri; char *content_type; char *content;} vx_evt_user_app_data_t;typedef enum { vx_evt_network_message_type_offline_message = 1, vx_evt_network_message_type_admin_message = 2, vx_evt_network_message_type_sessionless_message = 3} vx_evt_network_message_type;typedef struct vx_evt_network_message { vx_evt_base_t base; VX_HANDLE account_handle; vx_evt_network_message_type network_message_type; char *content_type; char *content; char *sender_uri; char *sender_display_name; char *sender_alias_username; char *receiver_alias_username;} vx_evt_network_message_t;typedef struct vx_evt_voice_service_connection_state_changed { vx_evt_base_t base; int connected; char *platform; char *version; char *data_directory; int network_test_run; int network_test_completed; int network_test_state; int network_is_down;} vx_evt_voice_service_connection_state_changed_t;typedef enum { vx_audio_device_hot_swap_event_type_disabled_due_to_platform_constraints = 0, vx_audio_device_hot_swap_event_type_active_render_device_changed = 1, vx_audio_device_hot_swap_event_type_active_capture_device_changed = 2, vx_audio_device_hot_swap_event_type_audio_device_added = 3, vx_audio_device_hot_swap_event_type_audio_device_removed = 4} vx_audio_device_hot_swap_event_type_t;typedef struct vx_evt_publication_state_changed { vx_evt_base_t base; VX_HANDLE account_handle; char *alias_username; vx_publication_state_change_state state; vx_buddy_presence_state presence; char *custom_message; int status_code; char *status_string;} vx_evt_publication_state_changed_t;typedef struct vx_evt_audio_device_hot_swap { vx_evt_base_t base; vx_audio_device_hot_swap_event_type_t event_type; vx_device_t *relevant_device; VX_HANDLE account_handle;} vx_evt_audio_device_hot_swap_t;typedef struct vx_evt_user_to_user_message { vx_evt_base_t base; VX_HANDLE account_handle; char *from_uri; char *encoded_uri_with_tag; char *message_body; char *message_id; char *language; char *application_stanza_namespace; char *application_stanza_body; char *from_displayname;} vx_evt_user_to_user_message_t;#ifndef DOXYGEN_MAM_SKIPtypedef struct vx_evt_account_archive_message { vx_evt_base_t base; VX_HANDLE account_handle; char *query_id; char *time_stamp; char *channel_uri; char *participant_uri; char *displayname; int is_inbound; char *message_body; char *message_id; char *encoded_uri_with_tag; char *language;} vx_evt_account_archive_message_t;typedef struct vx_evt_account_archive_query_end { vx_evt_base_t base; VX_HANDLE account_handle; char *query_id; int return_code; int status_code; char *first_id; char *last_id; unsigned int first_index; unsigned int count; char *next_cursor;} vx_evt_account_archive_query_end_t;#endiftypedef struct vx_evt_account_send_message_failed { vx_evt_base_t base; VX_HANDLE account_handle; char *request_id; int status_code;} vx_evt_account_send_message_failed_t;typedef struct vx_evt_tts_injection_started { vx_evt_base_t base; unsigned int num_consumers; vx_tts_utterance_id utterance_id; double utterance_duration; vx_tts_destination tts_destination;} vx_evt_tts_injection_started_t;typedef struct vx_evt_tts_injection_ended { vx_evt_base_t base; unsigned int num_consumers; vx_tts_utterance_id utterance_id; vx_tts_destination tts_destination;} vx_evt_tts_injection_ended_t;typedef struct vx_evt_tts_injection_failed { vx_evt_base_t base; vx_tts_status status; vx_tts_utterance_id utterance_id; vx_tts_destination tts_destination;} vx_evt_tts_injection_failed_t;typedef struct vx_evt_stt_failed{ vx_evt_base_t base; VX_HANDLE sessiongroup_handle; VX_HANDLE session_handle; int status_code; char *status_string;} vx_evt_stt_failed_t;typedef struct vx_evt_connection_state_changed { vx_evt_base_t base; vx_connection_state connection_state; VX_HANDLE account_handle;} vx_evt_connection_state_changed_t;typedef struct vx_evt_presence_updated { vx_evt_base_t base; vx_presence_state presence; char *sender_uri;} vx_evt_presence_updated_t;#ifndef VIVOX_TYPES_ONLYVIVOXSDK_DLLEXPORT int destroy_evt(vx_evt_base_t *pCmd);#endif#ifdef __cplusplus}#endif#pragma pack(pop)