Channel sorting

The order how channels should be display in the GUI is defined by the channel variable CHANNEL_ORDER, which can be queried with ts3client_getChannelVariableAsUInt64 or changed with ts3client_setChannelVariableAsUInt64.

The channel order is the ID of the predecessor channel after which the given channel should be sorted. An order of 0 means the channel is sorted on the top of its hirarchy.

Channel_1áá(IDá=á1,áorderá=á0)
Channel_2áá(IDá=á2,áorderá=á1)
ááááááSubchannel_1áá(IDá=á4,áorderá=á0)
ááááááááááááSubsubchannel_1áá(IDá=á6,áorderá=á0)
ááááááááááááSubsubchannel_2áá(IDá=á7,áorderá=á6)
ááááááSubchannel_2áá(IDá=á5,áorderá=á4)
Channel_3áá(IDá=á3,áorderá=á2)

When a new channel is created, the client is responsible to set a proper channel order. With the default value of 0 the channel will be sorted on the top of its hirarchy right after its parent channel.

When moving a channel to a new parent, the desired channel order can be passed to ts3client_requestChannelMove.

To move the channel to another position within the current hirarchy - the parent channel stays the same -, adjust the CHANNEL_ORDER variable with ts3client_setChannelVariableAsUInt64.

After connecting to a TeamSpeak 3 server, the client will be informed of all channels by the onNewChannelEvent callback. The order how channels are propagated to the client by this event is: