文档

​
​

Development

User Acquisition

Monetization

工业

Vivox Unreal SDK

Vivox Unreal SDK

此页面不支持所选语言。
Vivox
​
​
Vivox Unreal SDK
  • Overview
  • Get started
  • Release notes
  • Developer guide
    • Set up your project
    • Unity Authentication Service in Unreal
    • Create voice and text channels
      • Channel management
      • Channel name criteria
      • Channel types
      • Positional channels
      • Channel identifiers for large scale games
      • Participant events
      • Join a channel
      • Leave a channel
      • Channel webhooks
      • Audio injection
      • Automatic connection recovery
    • Messaging
    • Audio management
    • Muting
    • In-game moderation
    • Android app development
    • iOS app development
    • Server-side recording
    • Speech-to-text audio transcription
    • Text-to-speech
    • Real-time recording
    • Transmission
    • Troubleshooting
  • Tutorials
  • Reference
  1. Vivox Unreal SDK documentation
  2. Channels

Participant events

Manage participant events when users join or leave channels.
阅读时间1 分钟
最后更新于 8 个月前

The Vivox SDK posts information about individual participants in a channel that is visible to all other participants. This includes the following information:
  • When a user joins a channel
  • When a user leaves a channel
  • When there is an important change in user state, such as whether the user is speaking or typing
Handling participant events is optional. If there is no visualization of user state (for example, displaying who has voice enabled), then the game can ignore these events.
To provide a visualization of user state information, a game must handle the following messages:
  • IChannelSession::EventAfterParticipantAdded
  • IChannelSession::EventBeforeBeforeParticipantRemoved
  • IChannelSession::EventAfterParticipantUpdated
The following code displays an example of how to handle these messages:
void UMyGameClass::OnChannelParticipantAdded(const IParticipant &Participant){ ChannelId Channel = Participant.ParentChannelSession().Channel(); UE_LOG(MyLog, Log, TEXT("%s has been added to %s\n"), *Participant.Account().Name(), *Channel.Name());}void UMyGameClass::OnChannelParticipantRemoved(const IParticipant &Participant){ ChannelId Channel = Participant.ParentChannelSession().Channel(); UE_LOG(MyLog, Log, TEXT("%s has been removed from %s\n"), *Participant.Account().Name(), *Channel.Name());}void UMyGameClass::OnChannelParticipantUpdated(const IParticipant &Participant){ ChannelId Channel = Participant.ParentChannelSession().Channel(); UE_LOG(MyLog, Log, TEXT("%s has been updated in %s\n"), *Participant.Account().Name(), *Channel.Name());}
注意
Use the Participant.IsSelf() query to distinguish events that pertain to you from those that pertain to other users.

Copyright © 2026 Unity Technologies
法律信息隐私政策CookiesDocumentation Terms of Use请勿出售或分享我的个人信息您的隐私选择(Cookie 设置)

“Unity”、Unity 徽标及其他 Unity 商标是 Unity Technologies 或其附属公司在美国和其他地方的商标或注册商标(此处查看更多信息)。其他名称或品牌是其各自所有者的商标。

为方便起见,一些页面是机器翻译的,可能包含不准确的内容。如有信息不一致的情况,以英文版本为准。


    报告此页面的问题