TeamTalk 4 .NET DLL  Version 4.5A
Client/Server Commands

This section contains the list of commands which can be issued by the client instance to the server. More...

Functions

int BearWare.TeamTalk4.DoLogin (string szNickname, string szServerPassword, string szUsername, string szPassword)
 Logon to a server. More...
 
int BearWare.TeamTalk4.DoLogout ()
 Logout of the server. More...
 
int BearWare.TeamTalk4.DoJoinChannel (Channel lpChannel)
 Create a new channel and join it. This command requires that the flag UserRight USERRIGHT_CHANNEL_CREATION is set in uUserRights of BearWare.ServerProperties. More...
 
int BearWare.TeamTalk4.DoJoinChannelByID (int nChannelID, string szPassword)
 Join an existing channel. More...
 
int BearWare.TeamTalk4.DoLeaveChannel ()
 Leave the current channel. More...
 
int BearWare.TeamTalk4.DoChangeNickname (string szNewNick)
 Change the client instance's nick name. More...
 
int BearWare.TeamTalk4.DoChangeStatus (int nStatusMode, string szStatusMessage)
 Change the client instance's currect status. More...
 
int BearWare.TeamTalk4.DoTextMessage (TextMessage lpTextMessage)
 Send a text message to either a user or a channel. More...
 
int BearWare.TeamTalk4.DoChannelOp (int nUserID, int nChannelID, bool bMakeOperator)
 Make another user operator of a channel. More...
 
int BearWare.TeamTalk4.DoChannelOpEx (int nUserID, int nChannelID, string szOpPassword, bool bMakeOperator)
 Make another user operator of a channel using the szOpPassword of BearWare.Channel. More...
 
int BearWare.TeamTalk4.DoKickUser (int nUserID, int nChannelID)
 Kick user out of channel. More...
 
int BearWare.TeamTalk4.DoSendFile (int nChannelID, string szLocalFilePath)
 Send a file to the specified channel. More...
 
int BearWare.TeamTalk4.DoRecvFile (int nChannelID, int nFileID, string szLocalFilePath)
 Download a file from the specified channel. More...
 
int BearWare.TeamTalk4.DoDeleteFile (int nChannelID, int nFileID)
 Delete a file from a channel. More...
 
int BearWare.TeamTalk4.DoSubscribe (int nUserID, Subscription uSubscriptions)
 Subscribe to user events and/or data. More...
 
int BearWare.TeamTalk4.DoUnsubscribe (int nUserID, Subscription uSubscriptions)
 Unsubscribe to user events/data. This can be used to ignore messages or voice data from a specific user. More...
 
int BearWare.TeamTalk4.DoMakeChannel (Channel lpChanInfo)
 Make a static (persistent) channel. More...
 
int BearWare.TeamTalk4.DoUpdateChannel (Channel lpChanInfo)
 Update a channel's properties. More...
 
int BearWare.TeamTalk4.DoRemoveChannel (int nChannelID)
 Remove a channel from a server. More...
 
int BearWare.TeamTalk4.DoMoveUser (int nUserID, int nChannelID)
 Issue command to move a user from one channel to another. More...
 
int BearWare.TeamTalk4.DoUpdateServer (ServerProperties lpServerInfo)
 Update server properties. More...
 
int BearWare.TeamTalk4.DoListUserAccounts (int nIndex, int nCount)
 Issue command to list user accounts on the server. More...
 
int BearWare.TeamTalk4.DoNewUserAccount (UserAccount lpUserAccount)
 Issue command to create a new user account on the server. More...
 
int BearWare.TeamTalk4.DoDeleteUserAccount (string szUsername)
 Issue command to delete a user account on the server. More...
 
int BearWare.TeamTalk4.DoBanUser (int nUserID)
 Issue a ban command on a user in a specific channel. More...
 
int BearWare.TeamTalk4.DoBanIPAddress (string szIpAddress)
 Issue a ban command on an IP-address user. More...
 
int BearWare.TeamTalk4.DoUnBanUser (string szIpAddress)
 Unban the user with the specified IP-address. More...
 
int BearWare.TeamTalk4.DoListBans (int nIndex, int nCount)
 Issue a command to list the banned users. More...
 
int BearWare.TeamTalk4.DoSaveConfig ()
 Save the server's current state to its settings file (typically the server's .xml file). More...
 
int BearWare.TeamTalk4.DoQueryServerStats ()
 Get the server's current statistics obtained through TeamTalk4.GetServerStatistics(). More...
 
int BearWare.TeamTalk4.DoQuit ()
 Quit from server. More...
 

Detailed Description

This section contains the list of commands which can be issued by the client instance to the server.

Client/Server Command Processing

Functions with the prefix Do* are commands which the client can issue to the server. Every Do* function returns a command identifier which can user application can use to check when the server has finished processing the issued command. Once the client receives a response to a command the client instance posts the event TeamTalk4.OnCmdProcessing() to the user application containing the command identifier and whether the command is being processed or it has completed.

As an example, say the user application wants to issue the TeamTalk4.DoLogin() command. When the application calls TeamTalk4.DoLogin() the returned command ID is stored in a variable. The application then waits for the TeamTalk4.OnCmdProcessing() event to be posted with the stored command ID. The first time TeamTalk4.OnCmdProcessing() is posted to the user application it is to say that processing has begun. The second time TeamTalk4.OnCmdProcessing() is called it is to say that the command has completed. In between the command starting and completing several other events may take place. If e.g. the TeamTalk4.DoLogin() fails the user application would receive the event TeamTalk4.OnCmdError(). If on the other hand the command was successful all the channels and user would be posted as events to the application before the login-command completed processing.

Function Documentation

int BearWare.TeamTalk4.DoLogin ( string  szNickname,
string  szServerPassword,
string  szUsername,
string  szPassword 
)

Logon to a server.

Once connected to a server call this function to logon. If the login is successful OnCmdMyselfLoggedIn is posted, otherwise OnCmdError. Once logged on it's not possible to talk to other users until the client instance joins a channel. Call DoJoinChannel to join a channel.

Possible errors:

Parameters
szNicknameThe nickname to use.
szServerPasswordThe server's password. Leave empty if user has account on the server.
szUsernameIf UserRight USERRIGHT_GUEST_LOGIN is disabled a username and password must be specified in order to login. Leave blank if guest logins are ok.
szPasswordThe password of the user account on the server. Leave blank if no account is needed on the server.
Returns
Returns command ID which will be passed in OnCmdProcessing event when the server is processing the command. -1 is returned in case of error.
See Also
UserRight USERRIGHT_GUEST_LOGIN
BearWare.ServerProperties
TeamTalk4.DoJoinChannel
OnCmdMyselfLoggedIn
OnCmdError
int BearWare.TeamTalk4.DoLogout ( )

Logout of the server.

If successful the event OnCmdMyselfLoggedOut will be posted.

Possible errors:

Returns
Returns command ID which will be passed in OnCmdProcessing event when the server is processing the command. -1 is returned in case of error.
See Also
OnCmdMyselfLoggedOut
int BearWare.TeamTalk4.DoJoinChannel ( Channel  lpChannel)

Create a new channel and join it. This command requires that the flag UserRight USERRIGHT_CHANNEL_CREATION is set in uUserRights of BearWare.ServerProperties.

This function can also be used to join an existing channel and in this case the parameters szTopic and szOpPassword are ignored.

When DoJoinChannel is used to create channels it works similar to IRC. If the client instance tres to join a channel which does not exist it will be created as a new channel. If the client instance is the last user to leave a channel the channel will be removed on the server. Only administrators can create static (persistent) channels, namely by using DoMakeChannel.

If the channel is created successfully the event OnCmdChannelNew will be sent, followed by OnCmdMyselfJoinedChannel.

Possible errors:

Parameters
lpChannelThe channel to join or create if it doesn't already exist.
Returns
Returns command ID which will be passed in OnCmdProcessing event when the server is processing the command. -1 is returned in case of error.
See Also
DoLeaveChannel
DoMakeChannel
OnCmdChannelNew
OnCmdMyselfJoinedChannel
int BearWare.TeamTalk4.DoJoinChannelByID ( int  nChannelID,
string  szPassword 
)

Join an existing channel.

This command basically calls DoJoinChannel but omits the unnecessary parameters for only joining a channel and not creating a new one.

Possible errors:

Parameters
nChannelIDThe ID of the channel to join.
szPasswordThe password for the channel to join.
Returns
Returns command ID which will be passed in OnCmdProcessing event when the server is processing the command. -1 is returned in case of error.
See Also
DoLeaveChannel
DoMakeChannel
OnCmdChannelNew
OnCmdMyselfJoinedChannel
int BearWare.TeamTalk4.DoLeaveChannel ( )

Leave the current channel.

Note that DoLeaveChannel() doesn't take any parameters since a user can only participate in one channel at the time. If command is successful the event OnCmdMyselfLeftChannel will be posted.

Possible errors:

Returns
Returns command ID which will be passed in OnCmdProcessing event when the server is processing the command. -1 is returned in case of error.
See Also
DoJoinChannel
OnCmdMyselfLeftChannel
int BearWare.TeamTalk4.DoChangeNickname ( string  szNewNick)

Change the client instance's nick name.

The event OnCmdUserUpdate will be posted if the update was successful.

Possible errors:

Parameters
szNewNickis the new nick name to use.
Returns
Returns command ID which will be passed in OnCmdProcessing event when the server is processing the command. -1 is returned in case of error.
See Also
OnCmdUserUpdate
int BearWare.TeamTalk4.DoChangeStatus ( int  nStatusMode,
string  szStatusMessage 
)

Change the client instance's currect status.

The event OnCmdUserUpdate will be posted if the update was successful.

Possible errors:

Parameters
nStatusModeThe value for the status mode.
szStatusMessageThe user's message associated with the status mode.
Returns
Returns command ID which will be passed in OnCmdProcessing event when the server is processing the command. -1 is returned in case of error.
See Also
OnCmdUserUpdate
int BearWare.TeamTalk4.DoTextMessage ( TextMessage  lpTextMessage)

Send a text message to either a user or a channel.

Can also be a broadcast message which is received by all users on the server.

Possible errors:

Parameters
lpTextMessageA preallocated text-message struct.
Returns
Returns command ID which will be passed in OnCmdProcessing event when the server is processing the command. -1 is returned in case of error.
See Also
UserRight USERRIGHT_CLIENT_BROADCAST
int BearWare.TeamTalk4.DoChannelOp ( int  nUserID,
int  nChannelID,
bool  bMakeOperator 
)

Make another user operator of a channel.

Requires that the client instance must already be operator of the channel or is logged in as an administrator.

Possible errors:

Parameters
nUserIDThe user who should become channel operator.
nChannelIDThe channel where the user should become operator
bMakeOperatorWhether user should be op'ed or deop'ed
Returns
Returns command ID which will be passed in OnCmdProcessing event when the server is processing the command. -1 is returned in case of error.
See Also
DoChannelOpEx
int BearWare.TeamTalk4.DoChannelOpEx ( int  nUserID,
int  nChannelID,
string  szOpPassword,
bool  bMakeOperator 
)

Make another user operator of a channel using the szOpPassword of BearWare.Channel.

Possible errors:

Note
Requires server version 4.1.0.994 or later.
Parameters
nUserIDThe user who should become channel operator.
nChannelIDThe channel where the user should become operator.
szOpPasswordThe szOpPassword of BearWare.Channel.
bMakeOperatorWhether user should be op'ed or deop'ed.
Returns
Returns command ID which will be passed in OnCmdProcessing event when the server is processing the command. -1 is returned in case of error.
See Also
DoChannelOp
int BearWare.TeamTalk4.DoKickUser ( int  nUserID,
int  nChannelID 
)

Kick user out of channel.

Only a channel operator or administration can kick users. To ban a user call DoBanUser before DoKickUser.

Possible errors:

Parameters
nUserIDThe ID of the user to kick.
nChannelIDThe channel where the user is participating. If local instance is admin and nChannelID is 0, the user will be kicked off the server.
Returns
Returns command ID which will be passed in OnCmdProcessing event when the server is processing the command. -1 is returned in case of error.
See Also
DoBanUser
int BearWare.TeamTalk4.DoSendFile ( int  nChannelID,
string  szLocalFilePath 
)

Send a file to the specified channel.

If user is logged on as an admin the file can be located in any channel. If the user is not an admin the file must be located in the same channel as the user is currently participating in. The file being uploaded must have a file size which is less than the disk quota of the channel, minus the sum of all the files in the channel. The disk quota of a channel can be obtained in the nDiskQuota of the BearWare.Channel struct passed to GetChannel.

Possible errors:

Parameters
nChannelIDThe ID of the channel of where to put the file. Only admins can upload in channel other then their own.
szLocalFilePathThe path of the file to upload, e.g. C:\myfile.txt.
Returns
Returns command ID which will be passed in OnCmdProcessing event when the server is processing the command. -1 is returned in case of error.
See Also
Channel
GetChannel
int BearWare.TeamTalk4.DoRecvFile ( int  nChannelID,
int  nFileID,
string  szLocalFilePath 
)

Download a file from the specified channel.

If user is logged on as an admin the file can be located in any channel. If the user is not an admin the file must be located in the same channel as the user is currently participating in.

Possible errors:

Parameters
nChannelIDThe ID of the channel of where to get the file. Only admins can download in channel other then their own.
nFileIDThe ID of the file which is passed by OnCmdFileNew.
szLocalFilePathThe path of where to store the file, e.g. C:\myfile.txt.
Returns
Returns command ID which will be passed in OnCmdProcessing event when the server is processing the command. -1 is returned in case of error.
See Also
OnCmdFileNew
GetChannelFiles
int BearWare.TeamTalk4.DoDeleteFile ( int  nChannelID,
int  nFileID 
)

Delete a file from a channel.

A user is allowed to delete a file from a channel if either the user is an admin, operator of the channel or owner of the file. To be owner of the file a user must have a BearWare.UserAccount on the server.

Possible errors:

Parameters
nChannelIDThe ID of the channel where the file is located.
nFileIDThe ID of the file to delete. The ID of the file which is passed by OnCmdFileNew.
Returns
Returns command ID which will be passed in OnCmdProcessing event when the server is processing the command. -1 is returned in case of error.
See Also
OnCmdFileNew
GetChannelFiles
int BearWare.TeamTalk4.DoSubscribe ( int  nUserID,
Subscription  uSubscriptions 
)

Subscribe to user events and/or data.

Possible errors:

Parameters
nUserIDThe ID of the user this should affect.
uSubscriptionsUnion of Subscription to subscribe to.
Returns
Returns command ID which will be passed in OnCmdProcessing event when the server is processing the command. -1 is returned in case of error.
See Also
Subscription
int BearWare.TeamTalk4.DoUnsubscribe ( int  nUserID,
Subscription  uSubscriptions 
)

Unsubscribe to user events/data. This can be used to ignore messages or voice data from a specific user.

Possible errors:

Parameters
nUserIDThe ID of the user this should affect.
uSubscriptionsUnion of Subscription to unsubscribe.
Returns
Returns command ID which will be passed in OnCmdProcessing event when the server is processing the command. -1 is returned in case of error.
See Also
Subscription
int BearWare.TeamTalk4.DoMakeChannel ( Channel  lpChanInfo)

Make a static (persistent) channel.

This command only works for admins since it creates a persistent channel on the server which will be stored in the server's config file.

Possible errors:

Parameters
lpChanInfoA Channel-structure containing information about the channel being created. The Channel's member nChannelID is ignored.
Returns
Returns command ID which will be passed in OnCmdProcessing event when the server is processing the command. -1 is returned in case of error.
See Also
DoJoinChannel
int BearWare.TeamTalk4.DoUpdateChannel ( Channel  lpChanInfo)

Update a channel's properties.

Admin and operators of channel can update a channel's properties. Note that a channel's BearWare.AudioCodec cannot be changed if there's currently users in the channel.

Possible errors:

Parameters
lpChanInfoA Channel-structure containing information about the channel being modified. The channel member's nParentID and szName are ignored.
Returns
Returns command ID which will be passed in OnCmdProcessing event when the server is processing the command. -1 is returned in case of error.
See Also
DoMakeChannel
int BearWare.TeamTalk4.DoRemoveChannel ( int  nChannelID)

Remove a channel from a server.

This command only applies to admins.

If there's any users in the channel they will be kicked and subchannels will be deleted as well.

Possible errors:

Parameters
nChannelIDThe ID of the channel to remove.
Returns
Returns command ID which will be passed in OnCmdProcessing event when the server is processing the command. -1 is returned in case of error.
See Also
DoMakeChannel
int BearWare.TeamTalk4.DoMoveUser ( int  nUserID,
int  nChannelID 
)

Issue command to move a user from one channel to another.

This command only applies to admins.

Possible errors:

Parameters
nUserIDUser to be moved.
nChannelIDChannel where user should be put into.
Returns
Returns command ID which will be passed in OnCmdProcessing event when the server is processing the command. -1 is returned in case of error.
See Also
DoMoveUserByID
int BearWare.TeamTalk4.DoUpdateServer ( ServerProperties  lpServerInfo)

Update server properties.

This command only applies to admins.

Possible errors:

Parameters
lpServerInfoA structure holding the information to be set on the server.
Returns
Returns command ID which will be passed in OnCmdProcessing event when the server is processing the command. -1 is returned in case of error.
See Also
GetServerProperties
int BearWare.TeamTalk4.DoListUserAccounts ( int  nIndex,
int  nCount 
)

Issue command to list user accounts on the server.

User accounts can be used to create different user types like e.g. administrators.

Possible errors:

Parameters
nIndexIndex of first user to display.
nCountThe number of users to retrieve.
Returns
Returns command ID which will be passed in OnCmdProcessing event when the server is processing the command. -1 is returned in case of error.
See Also
UserAccount
UserType
GetUserAccounts
int BearWare.TeamTalk4.DoNewUserAccount ( UserAccount  lpUserAccount)

Issue command to create a new user account on the server.

Check out section User Administration to see how the server handles users.

Possible errors:

Parameters
lpUserAccountThe properties of the user account to create.
Returns
Returns command ID which will be passed in OnCmdProcessing event when the server is processing the command. -1 is returned in case of error.
See Also
DoListUserAccounts
DoDeleteUserAccount
UserAccount
UserType
int BearWare.TeamTalk4.DoDeleteUserAccount ( string  szUsername)

Issue command to delete a user account on the server.

Possible errors:

Parameters
szUsernameThe username of the user account to delete.
Returns
Returns command ID which will be passed in OnCmdProcessing event when the server is processing the command. -1 is returned in case of error.
See Also
DoListUserAccounts
DoNewUserAccount
BearWare.UserAccount
BearWare.UserType
int BearWare.TeamTalk4.DoBanUser ( int  nUserID)

Issue a ban command on a user in a specific channel.

The ban applies to the user's IP-address. Call DoKickUser to kick the user off the server. Only admins can ban users.

Possible errors:

Parameters
nUserIDThe ID of the user to ban.
Returns
Returns command ID which will be passed in OnCmdProcessing event when the server is processing the command. -1 is returned in case of error.
See Also
DoKickUser
DoListBans
int BearWare.TeamTalk4.DoBanIPAddress ( string  szIpAddress)

Issue a ban command on an IP-address user.

Same as TeamTalk4.DoBanUser() except this command applies to IP-addresses and therefore doesn't require a user to be logged in.

Possible errors:

Parameters
szIpAddressThe IP-address to ban.
Returns
Returns command ID which will be passed in OnCmdProcessing event when the server is processing the command. -1 is returned in case of error.
See Also
TeamTalk4.DoKickUser
TeamTalk4.DoListBans
int BearWare.TeamTalk4.DoUnBanUser ( string  szIpAddress)

Unban the user with the specified IP-address.

Only admins can remove a ban.

Possible errors:

Parameters
szIpAddressThe IP-address to unban.
Returns
Returns command ID which will be passed in OnCmdProcessing event when the server is processing the command. -1 is returned in case of error.
See Also
DoBanUser
DoListBans
DoBanIPAddress
int BearWare.TeamTalk4.DoListBans ( int  nIndex,
int  nCount 
)

Issue a command to list the banned users.

Only admins can list bans. Once completed call the function GetBannedUsers to get the list of users.

Possible errors:

Parameters
nIndexIndex of first ban to display.
nCountThe number of bans to display.
Returns
Returns command ID which will be passed in OnCmdProcessing event when the server is processing the command. -1 is returned in case of error.
See Also
TeamTalk4.GetBannedUsers
int BearWare.TeamTalk4.DoSaveConfig ( )

Save the server's current state to its settings file (typically the server's .xml file).

Note that the server only saves channels with the flag ChannelType CHANNEL_STATIC.

Possible errors:

Returns
Returns command ID which will be passed in OnCmdProcessing event when the server is processing the command. -1 is returned in case of error.
See Also
DoUpdateServer
int BearWare.TeamTalk4.DoQueryServerStats ( )

Get the server's current statistics obtained through TeamTalk4.GetServerStatistics().

Possible errors:

Note
Requires server version 4.1.0.1089 or later.
Returns
Returns command ID which will be passed in OnCmdProcessing() event when the server is processing the command. -1 is returned in case of error.
int BearWare.TeamTalk4.DoQuit ( )

Quit from server.

Possible errors:

  • none

This will generate a OnConnectionLost since the server will drop the client.

Returns
Returns command ID which will be passed in OnCmdProcessing event when the server is processing the command. -1 is returned in case of error.