Documentation

Support

Vivox Unity SDK

Vivox Unity SDK

Channel types

Learn about the different types of Vivox channels available.
Read time 1 minuteLast updated 2 days ago

Vivox uses the following types of channels: The channel type is indicated by the method used to initiate the channel join.
JoinEchoChannelAsync
joins an echo channel,
JoinGroupChannelAsyc
joins a group channel, and
JoinPositionalChannelAsync
joins a positional channel.

Echo channels

Echo channels are joined by using the
JoinEchoChannelAsync
method, which is shown in the following example:
JoinEchoChannelAsync("TestChannel", ChatCapability.AudioOnly)
Developers can use these channels to give users a place to test their microphones or as a general way to test connectivity to the Vivox voice servers.

Group channels

Group channels are joined by using the
JoinGroupChannelAsync
method, which is displayed in the following example:
JoinGroupChannelAsync("TestChannel", ChatCapability.TextAndAudio)
Developers can use these channels to allow for level-wide audio and text channels that players can connect to. Examples of scenarios where non-positional channels are often used include teams and squads in first-person shooters and party chat in MMOs. Non-positional channels are typically the most used channel types in a Vivox implementation.

Positional channels

Positional channels, also referred to as 3D channels, are joined by using the
JoinPositionalChannelAsync
method, which is displayed in the following example:
Channel3DProperties props = new Channel3DProperties() //The Channel3DProperties are set to default values, but might need to be changed based on the wanted scale of your game.JoinPositionalChannelAsync("TestChannel", ChatCapability.TextAndAudio, Channel3DProperties)
Developers can use these channels to provide voice chat that is part of a world, with player voices attenuating and panning to make it seem like they are speaking from where they are positioned in the game world. For this effect to work you must set a user's location. For instructions on how to set the location of players, refer to the Positional channel configuration page. You can parametrize positional channels with certain values that change how the player's positioning affects their voice.