TeamTalk 5 .NET DLL: BearWare.Channel Struct Reference

TeamTalk 5 .NET DLL Version 5.18A

Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
BearWare.Channel Struct Reference
Channel Properties

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

## Public Member Functions

void | AddTransmitUser (int nUserID, StreamType uStreamType)
| Helper function for adding a user and BearWare.StreamType to `transmitUsers`.
StreamType | GetTransmitStreamTypes (int nUserID)
| Helper function for getting the BearWare.StreamType a user can transmit by querying `transmitUsers`.
int | GetTransmitUserCount ()
| Get the number of users who can currently transmit to the BearWare.ChannelType.CHANNEL_CLASSROOM.
void | RemoveTransmitUser (int nUserID, StreamType uStreamType)
| Helper function for removing a BearWare.StreamType for a user in `transmitUsers`.

## Public Attributes

int | nParentID
| Parent channel ID. 0 means no parent channel, i.e. it's the root channel.
int | nChannelID
| The channel's ID. A value from 1 - BearWare.TeamTalkBase.TT_CHANNELID_MAX.
string | szName
| Name of the channel.
string | szTopic
| Topic of the channel.
string | szPassword
| Password to join the channel. When extracted through TeamTalkBase.GetChannel() the password will only be set for users of user-type BearWare.UserType BearWare.UserType.USERTYPE_ADMIN.
bool | bPassword
| Whether password is required to join channel. Read-only property.
ChannelType | uChannelType
| A bitmask of the type of channel based on BearWare.ChannelType.
int | nUserData
| User specific data which will be stored on persistent storage on the server if the channel type is BearWare.ChannelType.CHANNEL_PERMANENT.
long | nDiskQuota
| Number of bytes available for file storage.
string | szOpPassword
| Password to become channel operator.
int | nMaxUsers
| Max number of users in channel.
AudioCodec | audiocodec
| The audio codec used by users in the channel.
AudioConfig | audiocfg
| The audio configuration which users who join the channel should use.
int[] | transmitUsers
| List of users who can transmit in a channel.
int[] | transmitUsersQueue
| The users currently queued for voice or media file transmission.
int | nTransmitUsersQueueDelayMSec
| Delay for switching to next active voice user in `transmitUsersQueue`.
int | nTimeOutTimerVoiceMSec
| Time out timer for voice stream. The maximum time in miliseconds a user can transmit voice without changing stream ID.
int | nTimeOutTimerMediaFileMSec
| Time out timer for media file stream. The maximum time in miliseconds a user can transmit a media file.

## Detailed Description

A struct containing the properties of a channel.

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

See also
  TeamTalkBase.GetChannel
  ChannelType
  AudioCodec

Definition at line 2562 of file TeamTalk.cs.

## Member Function Documentation

## ◆ AddTransmitUser()

void BearWare.Channel.AddTransmitUser | ( | int | nUserID,
|  | StreamType | uStreamType )

Helper function for adding a user and BearWare.StreamType to `transmitUsers`.

Definition at line 2688 of file TeamTalk.cs.

## ◆ GetTransmitStreamTypes()

StreamType BearWare.Channel.GetTransmitStreamTypes | ( | int | nUserID | ) |

Helper function for getting the BearWare.StreamType a user can transmit by querying `transmitUsers`.

Definition at line 2704 of file TeamTalk.cs.

## ◆ GetTransmitUserCount()

int BearWare.Channel.GetTransmitUserCount | ( |  | ) |

Get the number of users who can currently transmit to the BearWare.ChannelType.CHANNEL_CLASSROOM.

Definition at line 2715 of file TeamTalk.cs.

## ◆ RemoveTransmitUser()

void BearWare.Channel.RemoveTransmitUser | ( | int | nUserID,
|  | StreamType | uStreamType )

Helper function for removing a BearWare.StreamType for a user in `transmitUsers`.

Definition at line 2726 of file TeamTalk.cs.

## Member Data Documentation

## ◆ nParentID

int BearWare.Channel.nParentID

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

Definition at line 2566 of file TeamTalk.cs.

## ◆ nChannelID

int BearWare.Channel.nChannelID

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

Definition at line 2569 of file TeamTalk.cs.

## ◆ szName

string BearWare.Channel.szName

Name of the channel.

Definition at line 2572 of file TeamTalk.cs.

## ◆ szTopic

string BearWare.Channel.szTopic

Topic of the channel.

Definition at line 2575 of file TeamTalk.cs.

## ◆ szPassword

string BearWare.Channel.szPassword

Password to join the channel. When extracted through TeamTalkBase.GetChannel() the password will only be set for users of user-type BearWare.UserType BearWare.UserType.USERTYPE_ADMIN.

Definition at line 2580 of file TeamTalk.cs.

## ◆ bPassword

bool BearWare.Channel.bPassword

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

Definition at line 2583 of file TeamTalk.cs.

## ◆ uChannelType

ChannelType BearWare.Channel.uChannelType

A bitmask of the type of channel based on BearWare.ChannelType.

Definition at line 2585 of file TeamTalk.cs.

## ◆ nUserData

int BearWare.Channel.nUserData

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

Definition at line 2589 of file TeamTalk.cs.

## ◆ nDiskQuota

long BearWare.Channel.nDiskQuota

Number of bytes available for file storage.

Definition at line 2591 of file TeamTalk.cs.

## ◆ szOpPassword

string BearWare.Channel.szOpPassword

Password to become channel operator.

See also
  TeamTalkBase.DoChannelOpEx()

Definition at line 2595 of file TeamTalk.cs.

## ◆ nMaxUsers

int BearWare.Channel.nMaxUsers

Max number of users in channel.

Definition at line 2597 of file TeamTalk.cs.

## ◆ audiocodec

AudioCodec BearWare.Channel.audiocodec

The audio codec used by users in the channel.

Definition at line 2599 of file TeamTalk.cs.

## ◆ audiocfg

AudioConfig BearWare.Channel.audiocfg

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

See also
  TeamTalkBase.SetSoundInputPreprocess()

Definition at line 2602 of file TeamTalk.cs.

## ◆ transmitUsers

int [] BearWare.Channel.transmitUsers

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 BearWare.ChannelType.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 BearWare.ChannelType is not BearWare.ChannelType.CHANNEL_CLASSROOM. Basically the opposite effect of BearWare.ChannelType.CHANNEL_CLASSROOM.

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

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

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

    * transmitUsers[0][0] = 46;
    * transmitUsers[0][1] = StreamType.STREAMTYPE_VOICE | StreamType.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.STREAMTYPE_NONE;
    *

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

    * transmitUsers[0][0] = TeamTalkBase.TT_CLASSROOM_FREEFORALL;
    * transmitUsers[0][1] = StreamType.STREAMTYPE_VOICE;
    *

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

See also
  TeamTalkBase.IsChannelOperator
  TeamTalkBase.DoChannelOp
  TeamTalkBase.TT_CLASSROOM_FREEFORALL

Definition at line 2659 of file TeamTalk.cs.

## ◆ transmitUsersQueue

int [] BearWare.Channel.transmitUsersQueue

The users currently queued for voice or media file transmission.

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

Definition at line 2665 of file TeamTalk.cs.

## ◆ nTransmitUsersQueueDelayMSec

int BearWare.Channel.nTransmitUsersQueueDelayMSec

Delay for switching to next active voice user in `transmitUsersQueue`.

In channels of type BearWare.ChannelType.CHANNEL_SOLO_TRANSMIT only one user can transmit voice. When user has stopped transmitting this value specifies the delay before switching to next user in `transmitUsersQueue`. Default value is 500 msec.

Definition at line 2674 of file TeamTalk.cs.

## ◆ nTimeOutTimerVoiceMSec

int BearWare.Channel.nTimeOutTimerVoiceMSec

Time out timer for voice stream. The maximum time in miliseconds a user can transmit voice without changing stream ID.

See also
  StreamType.STREAMTYPE_VOICE

Definition at line 2679 of file TeamTalk.cs.

## ◆ nTimeOutTimerMediaFileMSec

int BearWare.Channel.nTimeOutTimerMediaFileMSec

Time out timer for media file stream. The maximum time in miliseconds a user can transmit a media file.

See also
  StreamType.STREAMTYPE_MEDIAFILE_AUDIO

Definition at line 2684 of file TeamTalk.cs.