TeamTalk 5 C-API DLL Version 5.15A
|
This section explains how to configure a server and setup user accounts. More...
Classes | |
struct | ServerProperties |
A struct containing the properties of the server's settings. More... | |
struct | ServerStatistics |
A struct containing the server's statistics, i.e. bandwidth usage and user activity. More... | |
struct | BannedUser |
A struct containing the properties of a banned user. More... | |
struct | AbusePrevention |
Properties to prevent server abuse. More... | |
struct | UserAccount |
A struct containing the properties of a user account. More... | |
Typedefs | |
typedef enum UserRight | UserRight |
The rights users have once they have logged on to the server. | |
typedef UINT32 | UserRights |
A bitmask based on UserRight for holding the rights users have who log on the server. | |
typedef enum ServerLogEvent | ServerLogEvent |
Events that are logged by the server, i.e. written to server's log file. | |
typedef UINT32 | ServerLogEvents |
Bitmask of ServerLogEvent. | |
typedef struct ServerProperties | ServerProperties |
A struct containing the properties of the server's settings. | |
typedef struct ServerStatistics | ServerStatistics |
A struct containing the server's statistics, i.e. bandwidth usage and user activity. | |
typedef enum BanType | BanType |
Way to ban a user from either login or joining a channel. | |
typedef UINT32 | BanTypes |
A mask of types of bans that apply. | |
typedef struct BannedUser | BannedUser |
A struct containing the properties of a banned user. | |
typedef struct AbusePrevention | AbusePrevention |
Properties to prevent server abuse. | |
typedef struct UserAccount | UserAccount |
A struct containing the properties of a user account. | |
Functions | |
TEAMTALKDLL_API TTBOOL | TT_GetServerProperties (IN TTInstance *lpTTInstance, OUT ServerProperties *lpServerProperties) |
Get the server's properties. | |
TEAMTALKDLL_API TTBOOL | TT_GetServerUsers (IN TTInstance *lpTTInstance, IN OUT User *lpUsers, IN OUT INT32 *lpnHowMany) |
Get all the users on the server. | |
This section explains how to configure a server and setup user accounts.
The server keeps track of which users are in which channels and ensures that users in the same channel can communicate with each other. It is also the job of the server to provide user authentication so only users with the proper credentials are allowed to do certain operations.
It is a good idea to check out section TeamTalk Server Setup Guide to learn how to configure the TeamTalk server.
The server's name, message of the day (MOTD) can be updated using the ServerProperties-struct. Only users with USERRIGHT_UPDATE_SERVERPROPERTIES are allowed change a server's properties while it's running. This is done using the command TT_DoUpdateServer().
Sections:
Two types of users exists on a server, default users (USERTYPE_DEFAULT) and administrator users (USERTYPE_ADMIN). The UserType-enum can be used to see who is what. A user of USERTYPE_ADMIN have unrestricted rights on the server and can issue any command to the server whereas a default user is limited to the UserRights which are assigned to the uUserRights
member of the user's UserAccount.
As administrator it is possible to list all users who have an account on the server using TT_DoListUserAccounts. To create a new user account call the command TT_DoNewUserAccount and to delete an account call TT_DoDeleteUserAccount.
Sometimes it may be necessary to kick and ban users from a server. With USERRIGHT_KICK_USERS it is possible to use the command TT_DoKickUser() to kick a user off the server. A channel operator (TT_DoChannelOp()) can also kick a user from a channel (but not off a server).
With USERRIGHT_BAN_USERS it is also possible to ban users from the server, so they can no longer log in. This can be done using TT_DoBanUser(). To list who are currently banned call TT_DoListBans() and to remove a ban call TT_DoUnBanUser().
The rights users have once they have logged on to the server.
ServerProperties holds the user rights in its uUserRights member variable and is retrieved by calling TT_GetServerProperties once connected to the server.
typedef UINT32 UserRights |
A bitmask based on UserRight for holding the rights users have who log on the server.
Definition at line 1717 of file TeamTalk.h.
typedef enum ServerLogEvent ServerLogEvent |
Events that are logged by the server, i.e. written to server's log file.
typedef UINT32 ServerLogEvents |
typedef struct ServerProperties ServerProperties |
A struct containing the properties of the server's settings.
The server properties is available after a successful call to TT_DoLogin
typedef struct ServerStatistics ServerStatistics |
A struct containing the server's statistics, i.e. bandwidth usage and user activity.
Use TT_DoQueryServerStats() to query the server's statistics.
Way to ban a user from either login or joining a channel.
typedef UINT32 BanTypes |
typedef struct BannedUser BannedUser |
A struct containing the properties of a banned user.
typedef struct AbusePrevention AbusePrevention |
Properties to prevent server abuse.
The AbusePrevention-struct is part of UserAccount and can be used to limit the number of commands a user can issue to the server.
Requires TeamTalk version 5.2.3.4896.
typedef struct UserAccount UserAccount |
A struct containing the properties of a user account.
A registered user is one that has a user account on the server.
enum UserRight |
The rights users have once they have logged on to the server.
ServerProperties holds the user rights in its uUserRights member variable and is retrieved by calling TT_GetServerProperties once connected to the server.
Enumerator | |
---|---|
USERRIGHT_NONE | Users who log onto the server has none of the rights below. |
USERRIGHT_MULTI_LOGIN | Allow multiple users to log on to the server with the same UserAccount.
|
USERRIGHT_VIEW_ALL_USERS | User can see users in all other channels. |
USERRIGHT_CREATE_TEMPORARY_CHANNEL | User is allowed to create temporary channels which disappear when last user leaves the channel.
|
USERRIGHT_MODIFY_CHANNELS | User is allowed to create permanent channels which are stored in the server's configuration file.
|
USERRIGHT_TEXTMESSAGE_BROADCAST | User can broadcast text message of type MSGTYPE_BROADCAST to all users. |
USERRIGHT_KICK_USERS | User can kick users off the server.
|
USERRIGHT_BAN_USERS | User can add and remove banned users.
|
USERRIGHT_MOVE_USERS | User can move users from one channel to another.
|
USERRIGHT_OPERATOR_ENABLE | User can make other users channel operator.
|
USERRIGHT_UPLOAD_FILES | User can upload files to channels.
|
USERRIGHT_DOWNLOAD_FILES | User can download files from channels.
|
USERRIGHT_UPDATE_SERVERPROPERTIES | User can update server properties.
|
USERRIGHT_TRANSMIT_VOICE | Users are allowed to forward audio packets through server. TT_EnableVoiceTransmission() |
USERRIGHT_TRANSMIT_VIDEOCAPTURE | User is allowed to forward video packets through server. TT_StartVideoCaptureTransmission() |
USERRIGHT_TRANSMIT_DESKTOP | User is allowed to forward desktop packets through server.
|
USERRIGHT_TRANSMIT_DESKTOPINPUT | User is allowed to forward desktop input packets through server.
|
USERRIGHT_TRANSMIT_MEDIAFILE_AUDIO | User is allowed to stream audio files to channel. |
USERRIGHT_TRANSMIT_MEDIAFILE_VIDEO | User is allowed to stream video files to channel. |
USERRIGHT_TRANSMIT_MEDIAFILE | User is allowed to stream media files to channel. |
USERRIGHT_LOCKED_NICKNAME | User's nick name is locked. TT_DoChangeNickname() cannot be used and TT_DoLogin() will ignore szNickname parameter. |
USERRIGHT_LOCKED_STATUS | User's status is locked. TT_DoChangeStatus() cannot be used. |
USERRIGHT_RECORD_VOICE | User can record voice in all channels. Even channels with CHANNEL_NO_RECORDING. |
USERRIGHT_VIEW_HIDDEN_CHANNELS | User can see hidden channels, CHANNEL_HIDDEN. |
USERRIGHT_TEXTMESSAGE_USER | User can send private text messages, i.e. MSGTYPE_USER.
|
USERRIGHT_TEXTMESSAGE_CHANNEL | User can send channel text messages, i.e. MSGTYPE_CHANNEL.
|
Definition at line 1629 of file TeamTalk.h.
enum ServerLogEvent |
Events that are logged by the server, i.e. written to server's log file.
Enumerator | |
---|---|
SERVERLOGEVENT_NONE | Nothing is logged to file by server. |
SERVERLOGEVENT_USER_CONNECTED | User's IP-address is logged to file by serer. |
SERVERLOGEVENT_USER_DISCONNECTED | User disconnected from server is logged to file by the server. |
SERVERLOGEVENT_USER_LOGGEDIN | User logged in is logged to file by the server. |
SERVERLOGEVENT_USER_LOGGEDOUT | User logged out is logged to file by the server. |
SERVERLOGEVENT_USER_LOGINFAILED | User failed to log in is logged to file by the server. |
SERVERLOGEVENT_USER_TIMEDOUT | User disconnected due to connection timeout is logged to file by the server. |
SERVERLOGEVENT_USER_KICKED | User was kicked is logged to file by the server. |
SERVERLOGEVENT_USER_BANNED | User was banned is logged to file by the server. |
SERVERLOGEVENT_USER_UNBANNED | User was removed from ban list is logged to file by the server. |
SERVERLOGEVENT_USER_UPDATED | User's status is logged to file by the server. |
SERVERLOGEVENT_USER_JOINEDCHANNEL | User joined a channel is logged to file by the server. |
SERVERLOGEVENT_USER_LEFTCHANNEL | User left a channel is logged to file by the server. |
SERVERLOGEVENT_USER_MOVED | User was moved to another channel is logged to file by the server. |
SERVERLOGEVENT_USER_TEXTMESSAGE_PRIVATE | User's private text messages are logged to file by the server. |
SERVERLOGEVENT_USER_TEXTMESSAGE_CUSTOM | User's custom text messages are logged to file by the server. |
SERVERLOGEVENT_USER_TEXTMESSAGE_CHANNEL | User's channel text messages are logged to file by the server. |
SERVERLOGEVENT_USER_TEXTMESSAGE_BROADCAST | User's broadcast text messages are logged to file by the server. |
SERVERLOGEVENT_CHANNEL_CREATED | User created new channel is logged to file by the server. |
SERVERLOGEVENT_CHANNEL_UPDATED | User updated a channel is logged to file by the server. |
SERVERLOGEVENT_CHANNEL_REMOVED | User removed a channel is logged to file by the server. |
SERVERLOGEVENT_FILE_UPLOADED | User uploaded a file is logged to file by the server. |
SERVERLOGEVENT_FILE_DOWNLOADED | User downloaded a file is logged to file by the server. |
SERVERLOGEVENT_FILE_DELETED | User deleted a file is logged to file by the server. |
SERVERLOGEVENT_SERVER_UPDATED | User updated server's properties is logged to file by the server. |
SERVERLOGEVENT_SERVER_SAVECONFIG | User saved server's configuration is logged to file by the server. |
Definition at line 1726 of file TeamTalk.h.
enum BanType |
Way to ban a user from either login or joining a channel.
Enumerator | |
---|---|
BANTYPE_NONE | Ban type not set. |
BANTYPE_CHANNEL | The ban applies to the channel specified in the |
BANTYPE_IPADDR | Ban |
BANTYPE_USERNAME | Ban |
Definition at line 1938 of file TeamTalk.h.
TEAMTALKDLL_API TTBOOL TT_GetServerProperties | ( | IN TTInstance * | lpTTInstance, |
OUT ServerProperties * | lpServerProperties | ||
) |
Get the server's properties.
lpTTInstance | Pointer to client instance created by TT_InitTeamTalk. |
lpServerProperties | A struct to hold the server's properties. |
TEAMTALKDLL_API TTBOOL TT_GetServerUsers | ( | IN TTInstance * | lpTTInstance, |
IN OUT User * | lpUsers, | ||
IN OUT INT32 * | lpnHowMany | ||
) |
Get all the users on the server.
If only users in a specific channel is needed call TT_GetChannelUsers()
lpTTInstance | Pointer to client instance created by TT_InitTeamTalk. |
lpUsers | A preallocated array which has room for lpnHowMany User elements. Pass NULL to query the number of users in channel. |
lpnHowMany | The number of elements in the array lpUsers. If lpUsers is NULL lpnHowMany will receive the number of users. |