TeamTalk 5 C-API DLL  Version 5.8B
Channel Struct Reference

A struct containing the properties of a channel. More...

#include <TeamTalk.h>

Public Attributes

INT32 nParentID
 Parent channel ID. 0 means no parent channel, i.e. it's the root channel. More...
 
INT32 nChannelID
 The channel's ID. A value from 1 - TT_CHANNELID_MAX. More...
 
TTCHAR szName [TT_STRLEN]
 Name of the channel. More...
 
TTCHAR szTopic [TT_STRLEN]
 Topic of the channel. More...
 
TTCHAR szPassword [TT_STRLEN]
 Password to join the channel. When extracted through TT_GetChannel the password will only be set for users of user-type USERTYPE_ADMIN. More...
 
TTBOOL bPassword
 Whether password is required to join channel. Read-only property. More...
 
ChannelTypes uChannelType
 A bitmask of the type of channel based on ChannelType. More...
 
INT32 nUserData
 User specific data which will be stored on persistent storage on the server if the channel type is CHANNEL_PERMANENT. More...
 
INT64 nDiskQuota
 Number of bytes available for file storage. More...
 
TTCHAR szOpPassword [TT_STRLEN]
 Password to become channel operator. More...
 
INT32 nMaxUsers
 Max number of users in channel. More...
 
AudioCodec audiocodec
 The audio codec used by users in the channel. More...
 
AudioConfig audiocfg
 The audio configuration which users who join the channel should use. More...
 
INT32 transmitUsers [TT_TRANSMITUSERS_MAX][2]
 List of users who can transmit in a channel. More...
 
INT32 transmitUsersQueue [TT_TRANSMITQUEUE_MAX]
 The users currently queued for voice or media file transmission. More...
 

Detailed Description

A struct containing the properties of a channel.

To change the properties of a channel call TT_DoUpdateChannel(). Note that audiocodec cannot be changed if the channel has users.

See also
TT_GetChannel
ChannelType
AudioCodec

Definition at line 2393 of file TeamTalk.h.

Member Data Documentation

◆ nParentID

INT32 Channel::nParentID

Parent channel ID. 0 means no parent channel, i.e. it's the root channel.

Definition at line 2397 of file TeamTalk.h.

◆ nChannelID

INT32 Channel::nChannelID

The channel's ID. A value from 1 - TT_CHANNELID_MAX.

Definition at line 2399 of file TeamTalk.h.

◆ szName

TTCHAR Channel::szName[TT_STRLEN]

Name of the channel.

Definition at line 2401 of file TeamTalk.h.

◆ szTopic

TTCHAR Channel::szTopic[TT_STRLEN]

Topic of the channel.

Definition at line 2403 of file TeamTalk.h.

◆ szPassword

TTCHAR Channel::szPassword[TT_STRLEN]

Password to join the channel. When extracted through TT_GetChannel the password will only be set for users of user-type USERTYPE_ADMIN.

Definition at line 2407 of file TeamTalk.h.

◆ bPassword

TTBOOL Channel::bPassword

Whether password is required to join channel. Read-only property.

Definition at line 2410 of file TeamTalk.h.

◆ uChannelType

ChannelTypes Channel::uChannelType

A bitmask of the type of channel based on ChannelType.

Definition at line 2412 of file TeamTalk.h.

◆ nUserData

INT32 Channel::nUserData

User specific data which will be stored on persistent storage on the server if the channel type is CHANNEL_PERMANENT.

Definition at line 2416 of file TeamTalk.h.

◆ nDiskQuota

INT64 Channel::nDiskQuota

Number of bytes available for file storage.

Definition at line 2418 of file TeamTalk.h.

◆ szOpPassword

TTCHAR Channel::szOpPassword[TT_STRLEN]

Password to become channel operator.

See also
TT_DoChannelOpEx()

Definition at line 2421 of file TeamTalk.h.

◆ nMaxUsers

INT32 Channel::nMaxUsers

Max number of users in channel.

Definition at line 2423 of file TeamTalk.h.

◆ audiocodec

AudioCodec Channel::audiocodec

The audio codec used by users in the channel.

Definition at line 2425 of file TeamTalk.h.

◆ audiocfg

AudioConfig Channel::audiocfg

The audio configuration which users who join the channel should use.

See also
TT_SetSoundInputPreprocess()

Definition at line 2428 of file TeamTalk.h.

◆ transmitUsers

INT32 Channel::transmitUsers[TT_TRANSMITUSERS_MAX][2]

List of users who can transmit in a channel.

transmitUsers is a 2-dimensional array which specifies who can transmit to the channel.

If uChannelType is set to CHANNEL_CLASSROOM then only the users in transmitUsers are allowed to transmit.

In TeamTalk v5.4 and onwards adding a user ID to transmitUsers will block the user from transmitting if the ChannelType is not CHANNEL_CLASSROOM. Basically the opposite effect of CHANNEL_CLASSROOM.

To specify user ID 46 can transmit voice to a CHANNEL_CLASSROOM channel is done by assigning the following:

* transmitUsers[0][0] = 46;
* transmitUsers[0][1] = STREAMTYPE_VOICE;
* 

To specify user ID 46 can transmit both voice and video capture to a CHANNEL_CLASSROOM channel is done by assigning the following:

* transmitUsers[0][0] = 46;
* transmitUsers[0][1] = STREAMTYPE_VOICE | STREAMTYPE_VIDEOCAPTURE;
* 

The transmission list is terminated by assigning user ID 0 to the end of the list, i.e.:

* transmitUsers[0][0] = 0;
* transmitUsers[0][1] = STREAMTYPE_NONE;
* 

To allow all users of a CHANNEL_CLASSROOM channel to transmit a specific StreamType is done like this:

* transmitUsers[0][0] = TT_CLASSROOM_FREEFORALL;
* transmitUsers[0][1] = STREAMTYPE_VOICE;
* 

Only channel operators are allowed to change the users who are allowed to transmit data to a channel. Call TT_DoUpdateChannel() to update the list of users who are allowed to transmit data to the channel.

See also
TT_IsChannelOperator
TT_DoChannelOp
TT_CLASSROOM_FREEFORALL

Definition at line 2484 of file TeamTalk.h.

◆ transmitUsersQueue

INT32 Channel::transmitUsersQueue[TT_TRANSMITQUEUE_MAX]

The users currently queued for voice or media file transmission.

This property only applied with channel is configured with CHANNEL_SOLO_TRANSMIT. Read-only property.

Definition at line 2489 of file TeamTalk.h.