TeamTalk 4 C-API DLL
Version 4.5A
|
This section contains the list of commands which can be issued by the client instance to the server. More...
Functions | |
TEAMTALKDLL_API INT32 | TT_DoLogin (IN TTInstance *lpTTInstance, IN const TTCHAR *szNickname, IN const TTCHAR *szServerPassword, IN const TTCHAR *szUsername, IN const TTCHAR *szPassword) |
Logon to a server. More... | |
TEAMTALKDLL_API INT32 | TT_DoLogout (IN TTInstance *lpTTInstance) |
Logout of the server. More... | |
TEAMTALKDLL_API INT32 | TT_DoJoinChannel (IN TTInstance *lpTTInstance, IN const Channel *lpChannel) |
Create a new channel and join it. This command requires that the flag USERRIGHT_CHANNEL_CREATION is set in uUserRights of ServerProperties. More... | |
TEAMTALKDLL_API INT32 | TT_DoJoinChannelByID (IN TTInstance *lpTTInstance, IN INT32 nChannelID, IN const TTCHAR *szPassword) |
Join an existing channel. More... | |
TEAMTALKDLL_API INT32 | TT_DoLeaveChannel (IN TTInstance *lpTTInstance) |
Leave the current channel. More... | |
TEAMTALKDLL_API INT32 | TT_DoChangeNickname (IN TTInstance *lpTTInstance, IN const TTCHAR *szNewNick) |
Change the client instance's nick name. More... | |
TEAMTALKDLL_API INT32 | TT_DoChangeStatus (IN TTInstance *lpTTInstance, IN INT32 nStatusMode, IN const TTCHAR *szStatusMessage) |
Change the client instance's currect status. More... | |
TEAMTALKDLL_API INT32 | TT_DoTextMessage (IN TTInstance *lpTTInstance, IN const TextMessage *lpTextMessage) |
Send a text message to either a user or a channel. More... | |
TEAMTALKDLL_API INT32 | TT_DoChannelOp (IN TTInstance *lpTTInstance, IN INT32 nUserID, IN INT32 nChannelID, IN BOOL bMakeOperator) |
Make another user operator of a channel. More... | |
TEAMTALKDLL_API INT32 | TT_DoChannelOpEx (IN TTInstance *lpTTInstance, IN INT32 nUserID, IN INT32 nChannelID, IN const TTCHAR *szOpPassword, IN BOOL bMakeOperator) |
Make another user operator of a channel using the szOpPassword of Channel. More... | |
TEAMTALKDLL_API INT32 | TT_DoKickUser (IN TTInstance *lpTTInstance, IN INT32 nUserID, IN INT32 nChannelID) |
Kick user out of channel. More... | |
TEAMTALKDLL_API INT32 | TT_DoSendFile (IN TTInstance *lpTTInstance, IN INT32 nChannelID, IN const TTCHAR *szLocalFilePath) |
Send a file to the specified channel. More... | |
TEAMTALKDLL_API INT32 | TT_DoRecvFile (IN TTInstance *lpTTInstance, IN INT32 nChannelID, IN INT32 nFileID, IN const TTCHAR *szLocalFilePath) |
Download a file from the specified channel. More... | |
TEAMTALKDLL_API INT32 | TT_DoDeleteFile (IN TTInstance *lpTTInstance, IN INT32 nChannelID, IN INT32 nFileID) |
Delete a file from a channel. More... | |
TEAMTALKDLL_API INT32 | TT_DoSubscribe (IN TTInstance *lpTTInstance, IN INT32 nUserID, IN Subscriptions uSubscriptions) |
Subscribe to user events and/or data. More... | |
TEAMTALKDLL_API INT32 | TT_DoUnsubscribe (IN TTInstance *lpTTInstance, IN INT32 nUserID, IN Subscriptions uSubscriptions) |
Unsubscribe to user events/data. This can be used to ignore messages or voice data from a specific user. More... | |
TEAMTALKDLL_API INT32 | TT_DoMakeChannel (IN TTInstance *lpTTInstance, IN const Channel *lpChanInfo) |
Make a static (persistent) channel. More... | |
TEAMTALKDLL_API INT32 | TT_DoUpdateChannel (IN TTInstance *lpTTInstance, IN const Channel *lpChanInfo) |
Update a channel's properties. More... | |
TEAMTALKDLL_API INT32 | TT_DoRemoveChannel (IN TTInstance *lpTTInstance, IN INT32 nChannelID) |
Remove a channel from a server. More... | |
TEAMTALKDLL_API INT32 | TT_DoMoveUser (IN TTInstance *lpTTInstance, IN INT32 nUserID, IN INT32 nChannelID) |
Issue command to move a user from one channel to another. More... | |
TEAMTALKDLL_API INT32 | TT_DoUpdateServer (IN TTInstance *lpTTInstance, IN const ServerProperties *lpServerInfo) |
Update server properties. More... | |
TEAMTALKDLL_API INT32 | TT_DoListUserAccounts (IN TTInstance *lpTTInstance, IN INT32 nIndex, IN INT32 nCount) |
Issue command to list user accounts on the server. More... | |
TEAMTALKDLL_API INT32 | TT_DoNewUserAccount (IN TTInstance *lpTTInstance, IN const UserAccount *lpUserAccount) |
Issue command to create a new user account on the server. More... | |
TEAMTALKDLL_API INT32 | TT_DoDeleteUserAccount (IN TTInstance *lpTTInstance, IN const TTCHAR *szUsername) |
Issue command to delete a user account on the server. More... | |
TEAMTALKDLL_API INT32 | TT_DoBanUser (IN TTInstance *lpTTInstance, IN INT32 nUserID) |
Issue a ban command on a user. More... | |
TEAMTALKDLL_API INT32 | TT_DoBanIPAddress (IN TTInstance *lpTTInstance, IN const TTCHAR *szIpAddress) |
Issue a ban command on an IP-address user. More... | |
TEAMTALKDLL_API INT32 | TT_DoUnBanUser (IN TTInstance *lpTTInstance, IN const TTCHAR *szIpAddress) |
Unban the user with the specified IP-address. More... | |
TEAMTALKDLL_API INT32 | TT_DoListBans (IN TTInstance *lpTTInstance, IN INT32 nIndex, IN INT32 nCount) |
Issue a command to list the banned users. More... | |
TEAMTALKDLL_API INT32 | TT_DoSaveConfig (IN TTInstance *lpTTInstance) |
Save the server's current state to its settings file (typically the server's .xml file). More... | |
TEAMTALKDLL_API INT32 | TT_DoQueryServerStats (IN TTInstance *lpTTInstance) |
Get the server's current statistics obtained through TT_GetServerStatistics(). More... | |
TEAMTALKDLL_API INT32 | TT_DoQuit (IN TTInstance *lpTTInstance) |
Quit from server. More... | |
This section contains the list of commands which can be issued by the client instance to the server.
Functions with the prefix TT_Do* are commands which the client can issue to the server. Every TT_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 WM_TEAMTALK_CMD_PROCESSING 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 TT_DoLogin command. When the application calls TT_DoLogin the returned command ID is stored in a variable. The application then waits for the WM_TEAMTALK_CMD_PROCESSING event to be posted with the stored command ID. The first time WM_TEAMTALK_CMD_PROCESSING is posted to the user application it is to say that processing has begun. The second time WM_TEAMTALK_CMD_PROCESSING 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 TT_DoLogin fails the user application would receive the event WM_TEAMTALK_CMD_ERROR. 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.
TEAMTALKDLL_API INT32 TT_DoLogin | ( | IN TTInstance * | lpTTInstance, |
IN const TTCHAR * | szNickname, | ||
IN const TTCHAR * | szServerPassword, | ||
IN const TTCHAR * | szUsername, | ||
IN const TTCHAR * | szPassword | ||
) |
Logon to a server.
Once connected to a server call this function to logon. If the login is successful WM_TEAMTALK_CMD_MYSELF_LOGGEDIN is posted, otherwise WM_TEAMTALK_CMD_ERROR. Once logged on it's not possible to talk to other users until the client instance joins a channel. Call TT_DoJoinChannel to join a channel.
Possible errors:
lpTTInstance | Pointer to client instance created by TT_InitTeamTalk. |
szNickname | The nickname to use. |
szServerPassword | The server's password. Leave empty if user has account on the server. |
szUsername | If USERRIGHT_GUEST_LOGIN is disabled a username and password must be specified in order to login. Leave blank if guest logins are ok. |
szPassword | The password of the user account on the server. Leave blank if no account is needed on the server. |
TEAMTALKDLL_API INT32 TT_DoLogout | ( | IN TTInstance * | lpTTInstance | ) |
Logout of the server.
If successful the event WM_TEAMTALK_CMD_MYSELF_LOGGEDOUT will be posted.
Possible errors:
lpTTInstance | Pointer to client instance created by TT_InitTeamTalk. |
TEAMTALKDLL_API INT32 TT_DoJoinChannel | ( | IN TTInstance * | lpTTInstance, |
IN const Channel * | lpChannel | ||
) |
Create a new channel and join it. This command requires that the flag USERRIGHT_CHANNEL_CREATION is set in uUserRights of ServerProperties.
This function can also be used to join an existing channel and in this case the parameters szTopic and szOpPassword are ignored.
When TT_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 TT_DoMakeChannel.
If the channel is created successfully the event WM_TEAMTALK_CMD_CHANNEL_NEW will be sent, followed by WM_TEAMTALK_CMD_MYSELF_JOINED.
Possible errors:
lpTTInstance | Pointer to client instance created by TT_InitTeamTalk. |
lpChannel | The channel to join or create if it doesn't already exist. |
TEAMTALKDLL_API INT32 TT_DoJoinChannelByID | ( | IN TTInstance * | lpTTInstance, |
IN INT32 | nChannelID, | ||
IN const TTCHAR * | szPassword | ||
) |
Join an existing channel.
This command basically calls TT_DoJoinChannel but omits the unnecessary parameters for only joining a channel and not creating a new one.
Possible errors:
lpTTInstance | Pointer to client instance created by TT_InitTeamTalk. |
nChannelID | The ID of the channel to join. |
szPassword | The password for the channel to join. |
TEAMTALKDLL_API INT32 TT_DoLeaveChannel | ( | IN TTInstance * | lpTTInstance | ) |
Leave the current channel.
Note that TT_DoLeaveChannel() doesn't take any parameters since a user can only participate in one channel at the time. If command is successful the event WM_TEAMTALK_CMD_MYSELF_LEFT will be posted.
Possible errors:
lpTTInstance | Pointer to client instance created by TT_InitTeamTalk. |
TEAMTALKDLL_API INT32 TT_DoChangeNickname | ( | IN TTInstance * | lpTTInstance, |
IN const TTCHAR * | szNewNick | ||
) |
Change the client instance's nick name.
The event WM_TEAMTALK_CMD_USER_UPDATE will be posted if the update was successful.
Possible errors:
lpTTInstance | Pointer to client instance created by TT_InitTeamTalk. |
szNewNick | is the new nick name to use. |
TEAMTALKDLL_API INT32 TT_DoChangeStatus | ( | IN TTInstance * | lpTTInstance, |
IN INT32 | nStatusMode, | ||
IN const TTCHAR * | szStatusMessage | ||
) |
Change the client instance's currect status.
The event WM_TEAMTALK_CMD_USER_UPDATE will be posted if the update was successful.
Possible errors:
lpTTInstance | Pointer to client instance created by TT_InitTeamTalk. |
nStatusMode | The value for the status mode. |
szStatusMessage | The user's message associated with the status mode. |
TEAMTALKDLL_API INT32 TT_DoTextMessage | ( | IN TTInstance * | lpTTInstance, |
IN const 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:
lpTTInstance | Pointer to client instance created by TT_InitTeamTalk. |
lpTextMessage | A preallocated text-message struct. |
TEAMTALKDLL_API INT32 TT_DoChannelOp | ( | IN TTInstance * | lpTTInstance, |
IN INT32 | nUserID, | ||
IN INT32 | nChannelID, | ||
IN 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:
lpTTInstance | Pointer to client instance created by TT_InitTeamTalk. |
nUserID | The user who should become channel operator. |
nChannelID | The channel where the user should become operator. |
bMakeOperator | Whether user should be op'ed or deop'ed. |
TEAMTALKDLL_API INT32 TT_DoChannelOpEx | ( | IN TTInstance * | lpTTInstance, |
IN INT32 | nUserID, | ||
IN INT32 | nChannelID, | ||
IN const TTCHAR * | szOpPassword, | ||
IN BOOL | bMakeOperator | ||
) |
Make another user operator of a channel using the szOpPassword of Channel.
Possible errors:
lpTTInstance | Pointer to client instance created by TT_InitTeamTalk. |
nUserID | The user who should become channel operator. |
nChannelID | The channel where the user should become operator. |
szOpPassword | The szOpPassword of Channel. |
bMakeOperator | Whether user should be op'ed or deop'ed. |
TEAMTALKDLL_API INT32 TT_DoKickUser | ( | IN TTInstance * | lpTTInstance, |
IN INT32 | nUserID, | ||
IN INT32 | nChannelID | ||
) |
Kick user out of channel.
Only a channel operator or administration can kick users. To ban a user call TT_DoBanUser before TT_DoKickUser.
Possible errors:
lpTTInstance | Pointer to client instance created by TT_InitTeamTalk. |
nUserID | The ID of the user to kick. |
nChannelID | The channel where the user is participating. If local instance is admin and nChannelID is 0, the user will be kicked off the server. |
TEAMTALKDLL_API INT32 TT_DoSendFile | ( | IN TTInstance * | lpTTInstance, |
IN INT32 | nChannelID, | ||
IN const TTCHAR * | 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 Channel struct passed to TT_GetChannel.
Possible errors:
lpTTInstance | Pointer to client instance created by TT_InitTeamTalk. |
nChannelID | The ID of the channel of where to put the file. Only admins can upload in channel other then their own. |
szLocalFilePath | The path of the file to upload, e.g. C:\myfile.txt. |
TEAMTALKDLL_API INT32 TT_DoRecvFile | ( | IN TTInstance * | lpTTInstance, |
IN INT32 | nChannelID, | ||
IN INT32 | nFileID, | ||
IN const TTCHAR * | 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:
lpTTInstance | Pointer to client instance created by TT_InitTeamTalk. |
nChannelID | The ID of the channel of where to get the file. Only admins can download in channel other then their own. |
nFileID | The ID of the file which is passed by WM_TEAMTALK_CMD_FILE_NEW. |
szLocalFilePath | The path of where to store the file, e.g. C:\myfile.txt. |
TEAMTALKDLL_API INT32 TT_DoDeleteFile | ( | IN TTInstance * | lpTTInstance, |
IN INT32 | nChannelID, | ||
IN INT32 | 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 UserAccount on the server.
Possible errors:
lpTTInstance | Pointer to client instance created by TT_InitTeamTalk. |
nChannelID | The ID of the channel where the file is located. |
nFileID | The ID of the file to delete. The ID of the file which is passed by WM_TEAMTALK_CMD_FILE_NEW. |
TEAMTALKDLL_API INT32 TT_DoSubscribe | ( | IN TTInstance * | lpTTInstance, |
IN INT32 | nUserID, | ||
IN Subscriptions | uSubscriptions | ||
) |
Subscribe to user events and/or data.
Possible errors:
lpTTInstance | Pointer to client instance created by TT_InitTeamTalk. |
nUserID | The ID of the user this should affect. |
uSubscriptions | Union of Subscription to subscribe to. |
TEAMTALKDLL_API INT32 TT_DoUnsubscribe | ( | IN TTInstance * | lpTTInstance, |
IN INT32 | nUserID, | ||
IN Subscriptions | uSubscriptions | ||
) |
Unsubscribe to user events/data. This can be used to ignore messages or voice data from a specific user.
Possible errors:
lpTTInstance | Pointer to client instance created by TT_InitTeamTalk. |
nUserID | The ID of the user this should affect. |
uSubscriptions | Union of Subscription to unsubscribe. |
TEAMTALKDLL_API INT32 TT_DoMakeChannel | ( | IN TTInstance * | lpTTInstance, |
IN const 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:
lpTTInstance | Pointer to client instance created by TT_InitTeamTalk. |
lpChanInfo | A Channel-structure containing information about the channel being created. The Channel's member nChannelID is ignored. |
TEAMTALKDLL_API INT32 TT_DoUpdateChannel | ( | IN TTInstance * | lpTTInstance, |
IN const Channel * | lpChanInfo | ||
) |
Update a channel's properties.
Admin and operators of channel can update a channel's properties. Note that a channel's AudioCodec cannot be changed if there's currently users in the channel.
Possible errors:
lpTTInstance | Pointer to client instance created by TT_InitTeamTalk. |
lpChanInfo | A Channel-structure containing information about the channel being modified. The channel member's nParentID and szName are ignored. |
TEAMTALKDLL_API INT32 TT_DoRemoveChannel | ( | IN TTInstance * | lpTTInstance, |
IN INT32 | 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:
lpTTInstance | Pointer to client instance created by TT_InitTeamTalk. |
nChannelID | The ID of the channel to remove. |
TEAMTALKDLL_API INT32 TT_DoMoveUser | ( | IN TTInstance * | lpTTInstance, |
IN INT32 | nUserID, | ||
IN INT32 | nChannelID | ||
) |
Issue command to move a user from one channel to another.
This command only applies to admins.
Possible errors:
lpTTInstance | Pointer to client instance created by TT_InitTeamTalk. |
nUserID | User to be moved. |
nChannelID | Channel where user should be put into. |
TEAMTALKDLL_API INT32 TT_DoUpdateServer | ( | IN TTInstance * | lpTTInstance, |
IN const ServerProperties * | lpServerInfo | ||
) |
Update server properties.
This command only applies to admins.
Possible errors:
lpTTInstance | Pointer to client instance created by TT_InitTeamTalk. |
lpServerInfo | A structure holding the information to be set on the server. |
TEAMTALKDLL_API INT32 TT_DoListUserAccounts | ( | IN TTInstance * | lpTTInstance, |
IN INT32 | nIndex, | ||
IN INT32 | 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:
lpTTInstance | Pointer to client instance created by TT_InitTeamTalk. |
nIndex | Index of first user to display. |
nCount | The number of users to retrieve. |
TEAMTALKDLL_API INT32 TT_DoNewUserAccount | ( | IN TTInstance * | lpTTInstance, |
IN const 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:
lpTTInstance | Pointer to client instance created by TT_InitTeamTalk. |
lpUserAccount | The properties of the user account to create. |
TEAMTALKDLL_API INT32 TT_DoDeleteUserAccount | ( | IN TTInstance * | lpTTInstance, |
IN const TTCHAR * | szUsername | ||
) |
Issue command to delete a user account on the server.
Possible errors:
lpTTInstance | Pointer to client instance created by TT_InitTeamTalk. |
szUsername | The username of the user account to delete. |
TEAMTALKDLL_API INT32 TT_DoBanUser | ( | IN TTInstance * | lpTTInstance, |
IN INT32 | nUserID | ||
) |
Issue a ban command on a user.
The ban applies to the user's IP-address. Call TT_DoKickUser to kick the user off the server. Only admins can ban users.
Possible errors:
lpTTInstance | Pointer to client instance created by TT_InitTeamTalk. |
nUserID | The ID of the user to ban. |
TEAMTALKDLL_API INT32 TT_DoBanIPAddress | ( | IN TTInstance * | lpTTInstance, |
IN const TTCHAR * | szIpAddress | ||
) |
Issue a ban command on an IP-address user.
Same as TT_DoBanUser() except this command applies to IP-addresses and therefore doesn't require a user to be logged in.
Possible errors:
lpTTInstance | Pointer to client instance created by TT_InitTeamTalk. |
szIpAddress | The IP-address to ban. |
TEAMTALKDLL_API INT32 TT_DoUnBanUser | ( | IN TTInstance * | lpTTInstance, |
IN const TTCHAR * | szIpAddress | ||
) |
Unban the user with the specified IP-address.
Only admins can remove a ban.
Possible errors:
lpTTInstance | Pointer to client instance created by TT_InitTeamTalk. |
szIpAddress | The IP-address to unban. |
TEAMTALKDLL_API INT32 TT_DoListBans | ( | IN TTInstance * | lpTTInstance, |
IN INT32 | nIndex, | ||
IN INT32 | nCount | ||
) |
Issue a command to list the banned users.
Only admins can list bans. Once completed call the function TT_GetBannedUsers to get the list of users.
Possible errors:
lpTTInstance | Pointer to client instance created by TT_InitTeamTalk. |
nIndex | Index of first ban to display. |
nCount | The number of bans to display. |
TEAMTALKDLL_API INT32 TT_DoSaveConfig | ( | IN TTInstance * | lpTTInstance | ) |
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 CHANNEL_STATIC.
Possible errors:
lpTTInstance | Pointer to client instance created by TT_InitTeamTalk. |
TEAMTALKDLL_API INT32 TT_DoQueryServerStats | ( | IN TTInstance * | lpTTInstance | ) |
Get the server's current statistics obtained through TT_GetServerStatistics().
Possible errors:
lpTTInstance | Pointer to client instance created by TT_InitTeamTalk. |
TEAMTALKDLL_API INT32 TT_DoQuit | ( | IN TTInstance * | lpTTInstance | ) |
Quit from server.
Possible errors:
This will generate a WM_TEAMTALK_CON_LOST since the server will drop the client.