TeamTalk 5 C-API DLL Version 5.19A

TeamTalk.h
Go to the documentation of this file.
1#if !defined(TEAMTALKDLL_H)
2#define TEAMTALKDLL_H
3
4/*
5 * BearWare.dk TeamTalk 5 SDK.
6 *
7 * Copyright 2005-2022, BearWare.dk.
8 *
9 * Read the License.txt file included with the TeamTalk 5 SDK for
10 * terms of use.
11 */
12
19#define TEAMTALK_VERSION "5.19.0.5170"
20
21
22#if defined(WIN32)
23
24#ifdef TEAMTALKDLL_EXPORTS
25#define TEAMTALKDLL_API __declspec(dllexport)
26#else
27#define TEAMTALKDLL_API __declspec(dllimport)
28#endif
29
30#else
31
32#define TEAMTALKDLL_API
33
34#endif
35
36
37#ifdef __cplusplus
38 extern "C" {
39#endif
40
41 /* OS specific types. */
42#if !defined(TEAMTALK_TYPES)
43
44#define TEAMTALK_TYPES 1
45
46#if defined(WIN32)
47 /* If you get a compiler error here you probably forgot to include
48 * <windows.h> before this file. */
49
51 typedef WCHAR TTCHAR;
52 typedef int TTBOOL;
53#else
54 typedef char TTCHAR;
55 typedef int TTBOOL;
56 typedef unsigned short UINT16;
57 typedef int INT32;
58 typedef long long INT64;
59 typedef unsigned int UINT32;
60 typedef void VOID;
61
65#define IN
66#define OUT
67
68#ifndef TRUE
69#define TRUE 1
70#endif
71
72#ifndef FALSE
73#define FALSE 0
74#endif
75
76#endif
77
87#define TT_STRLEN 512
88
91#define TT_USERID_MAX 0xFFF
92
95#define TT_CHANNELID_MAX 0xFFF
96
101#define TT_VIDEOFORMATS_MAX 1024
102
107#define TT_TRANSMITUSERS_MAX 128
108
115#define TT_CLASSROOM_FREEFORALL 0xFFF
116
119#define TT_CLASSROOM_USERID_INDEX 0
120
123#define TT_CLASSROOM_STREAMTYPE_INDEX 1
124
128#define TT_TRANSMITUSERS_FREEFORALL 0xFFF
129
133#define TT_TRANSMITUSERS_USERID_INDEX 0
134
138#define TT_TRANSMITUSERS_STREAMTYPE_INDEX 1
139
145#define TT_CHANNELS_OPERATOR_MAX 16
146
151#define TT_TRANSMITQUEUE_MAX 16
152
155#define TT_SAMPLERATES_MAX 16
156
162#define TT_DESKTOPINPUT_MAX 16
163
171#define TT_DESKTOPINPUT_KEYCODE_IGNORE 0xFFFFFFFF
172
179#define TT_DESKTOPINPUT_MOUSEPOS_IGNORE 0xFFFF
180
187#define TT_DESKTOPINPUT_KEYCODE_LMOUSEBTN 0x1000
188
195#define TT_DESKTOPINPUT_KEYCODE_RMOUSEBTN 0x1001
196
203#define TT_DESKTOPINPUT_KEYCODE_MMOUSEBTN 0x1002
204
212#define TT_MEDIAPLAYBACK_OFFSET_IGNORE 0xFFFFFFFF
213
214#endif /* TEAMTALK_TYPES */
215
221 typedef enum StreamType
222 {
224 STREAMTYPE_NONE = 0x00000000,
227 STREAMTYPE_VOICE = 0x00000001,
230 STREAMTYPE_VIDEOCAPTURE = 0x00000002,
233 STREAMTYPE_MEDIAFILE_AUDIO = 0x00000004,
236 STREAMTYPE_MEDIAFILE_VIDEO = 0x00000008,
239 STREAMTYPE_DESKTOP = 0x00000010,
243 STREAMTYPE_DESKTOPINPUT = 0x00000020,
245 STREAMTYPE_MEDIAFILE = STREAMTYPE_MEDIAFILE_AUDIO |
246 STREAMTYPE_MEDIAFILE_VIDEO,
255 STREAMTYPE_CHANNELMSG = 0x00000040,
261 STREAMTYPE_LOCALMEDIAPLAYBACK_AUDIO = 0x00000080,
262
265 STREAMTYPE_CLASSROOM_ALL = STREAMTYPE_VOICE |
266 STREAMTYPE_VIDEOCAPTURE |
267 STREAMTYPE_DESKTOP |
268 STREAMTYPE_MEDIAFILE |
269 STREAMTYPE_CHANNELMSG,
270 } StreamType;
271
273 typedef UINT32 StreamTypes;
274
287 typedef enum SoundSystem
288 {
290 SOUNDSYSTEM_NONE = 0,
292 SOUNDSYSTEM_WINMM = 1,
294 SOUNDSYSTEM_DSOUND = 2,
302 SOUNDSYSTEM_ALSA = 3,
304 SOUNDSYSTEM_COREAUDIO = 4,
315 SOUNDSYSTEM_WASAPI = 5,
322 SOUNDSYSTEM_OPENSLES_ANDROID = 7,
342 SOUNDSYSTEM_AUDIOUNIT = 8,
344 SOUNDSYSTEM_AUDIOUNIT_IOS = SOUNDSYSTEM_AUDIOUNIT,
347 SOUNDSYSTEM_PULSEAUDIO = 10,
348 } SoundSystem;
349
354 typedef enum SoundDeviceFeature
355 {
358 SOUNDDEVICEFEATURE_NONE = 0x0000,
364 SOUNDDEVICEFEATURE_AEC = 0x0001,
370 SOUNDDEVICEFEATURE_AGC = 0x0002,
375 SOUNDDEVICEFEATURE_DENOISE = 0x0004,
378 SOUNDDEVICEFEATURE_3DPOSITION = 0x0008,
381 SOUNDDEVICEFEATURE_DUPLEXMODE = 0x0010,
384 SOUNDDEVICEFEATURE_DEFAULTCOMDEVICE = 0x0020,
385 } SoundDeviceFeature;
386
389 typedef UINT32 SoundDeviceFeatures;
390
403 typedef struct SoundDevice
404 {
410 INT32 nDeviceID;
412 SoundSystem nSoundSystem;
414 TTCHAR szDeviceName[TT_STRLEN];
419 TTCHAR szDeviceID[TT_STRLEN];
436 INT32 nWaveDeviceID;
439 TTBOOL bSupports3D;
441 INT32 nMaxInputChannels;
443 INT32 nMaxOutputChannels;
447 INT32 inputSampleRates[TT_SAMPLERATES_MAX];
451 INT32 outputSampleRates[TT_SAMPLERATES_MAX];
453 INT32 nDefaultSampleRate;
459 SoundDeviceFeatures uSoundDeviceFeatures;
460 } SoundDevice;
461
470 typedef struct SoundDeviceEffects
471 {
487 TTBOOL bEnableAGC;
504 TTBOOL bEnableDenoise;
520 TTBOOL bEnableEchoCancellation;
521 } SoundDeviceEffects;
522
537#define TT_SOUNDDEVICE_ID_SHARED_FLAG 0x00000800
538
543#define TT_SOUNDDEVICE_ID_MASK 0x000007FF
544
547#define TT_SOUNDDEVICE_ID_REMOTEIO 0
548
555#define TT_SOUNDDEVICE_ID_VOICEPREPROCESSINGIO (1 | TT_SOUNDDEVICE_ID_SHARED_FLAG)
556
559#define TT_SOUNDDEVICE_ID_OPENSLES_DEFAULT 0
560
565#define TT_SOUNDDEVICE_ID_OPENSLES_VOICECOM 1
566
575#define TT_SOUNDDEVICE_ID_TEAMTALK_VIRTUAL 1978
576
580 typedef enum SoundLevel
581 {
587 SOUND_VU_MAX = 100,
593 SOUND_VU_MIN = 0,
601 SOUND_VOLUME_MAX = 32000,
609 SOUND_VOLUME_DEFAULT = 1000,
615 SOUND_VOLUME_MIN = 0,
624 SOUND_GAIN_MAX = 32000,
634 SOUND_GAIN_DEFAULT = 1000,
643 SOUND_GAIN_MIN = 0
644 } SoundLevel;
645
660 typedef struct AudioBlock
661 {
665 INT32 nStreamID;
667 INT32 nSampleRate;
669 INT32 nChannels;
673 VOID* lpRawAudio;
675 INT32 nSamples;
683 UINT32 uSampleIndex;
696 StreamTypes uStreamTypes;
697 } AudioBlock;
698
712#define TT_LOCAL_USERID 0
713
721#define TT_LOCAL_TX_USERID 0x1002
722
729#define TT_MUXED_USERID 0x1001 /* TT_USERID_MAX + 2 */
730
739 typedef enum MediaFileStatus
740 {
741 MFS_CLOSED = 0,
743 MFS_ERROR = 1,
745 MFS_STARTED = 2,
747 MFS_FINISHED = 3,
749 MFS_ABORTED = 4,
751 MFS_PAUSED = 5,
754 MFS_PLAYING = 6
755 } MediaFileStatus;
756
760 typedef enum AudioFileFormat
761 {
763 AFF_NONE = 0,
774 AFF_CHANNELCODEC_FORMAT = 1,
776 AFF_WAVE_FORMAT = 2,
778 AFF_MP3_16KBIT_FORMAT = 3,
780 AFF_MP3_32KBIT_FORMAT = 4,
782 AFF_MP3_64KBIT_FORMAT = 5,
784 AFF_MP3_128KBIT_FORMAT = 6,
786 AFF_MP3_256KBIT_FORMAT = 7,
788 AFF_MP3_320KBIT_FORMAT = 8,
789 } AudioFileFormat;
790
798 typedef struct AudioFormat
799 {
801 AudioFileFormat nAudioFmt;
803 INT32 nSampleRate;
805 INT32 nChannels;
806 } AudioFormat;
807
818 typedef enum FourCC
819 {
821 FOURCC_NONE = 0,
824 FOURCC_I420 = 100,
827 FOURCC_YUY2 = 101,
830 FOURCC_RGB32 = 102
831 } FourCC;
832
839 typedef struct VideoFormat
840 {
843 INT32 nWidth;
846 INT32 nHeight;
850 INT32 nFPS_Numerator;
854 INT32 nFPS_Denominator;
856 FourCC picFourCC;
857 } VideoFormat;
858
866 typedef struct VideoFrame
867 {
870 INT32 nWidth;
873 INT32 nHeight;
879 INT32 nStreamID;
884 TTBOOL bKeyFrame;
886 VOID* frameBuffer;
889 INT32 nFrameBufferSize;
890 } VideoFrame;
891
901 typedef struct VideoCaptureDevice
902 {
904 TTCHAR szDeviceID[TT_STRLEN];
906 TTCHAR szDeviceName[TT_STRLEN];
919 TTCHAR szCaptureAPI[TT_STRLEN];
921 VideoFormat videoFormats[TT_VIDEOFORMATS_MAX];
924 INT32 nVideoFormatsCount;
925 } VideoCaptureDevice;
926
934 typedef enum BitmapFormat
935 {
937 BMP_NONE = 0,
943 BMP_RGB8_PALETTE = 1,
946 BMP_RGB16_555 = 2,
950 BMP_RGB24 = 3,
954 BMP_RGB32 = 4
955 } BitmapFormat;
956
961 typedef enum DesktopProtocol
962 {
965 DESKTOPPROTOCOL_ZLIB_1 = 1
966 } DesktopProtocol;
967
974 typedef struct DesktopWindow
975 {
977 INT32 nWidth;
979 INT32 nHeight;
981 BitmapFormat bmpFormat;
984 INT32 nBytesPerLine;
991 INT32 nSessionID;
993 DesktopProtocol nProtocol;
995 VOID* frameBuffer;
998 INT32 nFrameBufferSize;
999 } DesktopWindow;
1000
1004 typedef enum DesktopKeyState
1005 {
1007 DESKTOPKEYSTATE_NONE = 0x00000000,
1009 DESKTOPKEYSTATE_DOWN = 0x00000001,
1011 DESKTOPKEYSTATE_UP = 0x00000002,
1012 } DesktopKeyState;
1013
1015 typedef UINT32 DesktopKeyStates;
1016
1024 typedef struct DesktopInput
1025 {
1029 UINT16 uMousePosX;
1033 UINT16 uMousePosY;
1039 UINT32 uKeyCode;
1042 DesktopKeyStates uKeyState;
1043 } DesktopInput;
1044
1056 typedef struct SpeexCodec
1057 {
1060 INT32 nBandmode;
1063 INT32 nQuality;
1073 INT32 nTxIntervalMSec;
1079 TTBOOL bStereoPlayback;
1080 } SpeexCodec;
1081
1086 typedef struct SpeexVBRCodec
1087 {
1090 INT32 nBandmode;
1093 INT32 nQuality;
1102 INT32 nBitRate;
1106 INT32 nMaxBitRate;
1110 TTBOOL bDTX;
1119 INT32 nTxIntervalMSec;
1125 TTBOOL bStereoPlayback;
1126 } SpeexVBRCodec;
1127
1130#define SPEEX_NB_MIN_BITRATE 2150
1133#define SPEEX_NB_MAX_BITRATE 24600
1136#define SPEEX_WB_MIN_BITRATE 3950
1139#define SPEEX_WB_MAX_BITRATE 42200
1142#define SPEEX_UWB_MIN_BITRATE 4150
1145#define SPEEX_UWB_MAX_BITRATE 44000
1146
1149 typedef struct OpusCodec
1150 {
1153 INT32 nSampleRate;
1155 INT32 nChannels;
1159 INT32 nApplication;
1162 INT32 nComplexity;
1165 TTBOOL bFEC;
1168 TTBOOL bDTX;
1171 INT32 nBitRate;
1173 TTBOOL bVBR;
1176 TTBOOL bVBRConstraint;
1183 INT32 nTxIntervalMSec;
1187 INT32 nFrameSizeMSec;
1188 } OpusCodec;
1189
1192#define OPUS_APPLICATION_VOIP 2048
1195#define OPUS_APPLICATION_AUDIO 2049
1198#define OPUS_MIN_BITRATE 6000
1201#define OPUS_MAX_BITRATE 510000
1204#define OPUS_MIN_FRAMESIZE 2 /* Actually it's 2.5 */
1207#define OPUS_MAX_FRAMESIZE 60
1211#define OPUS_REALMAX_FRAMESIZE 120
1212
1232 typedef struct SpeexDSP
1233 {
1241 TTBOOL bEnableAGC;
1244 INT32 nGainLevel;
1248 INT32 nMaxIncDBSec;
1253 INT32 nMaxDecDBSec;
1257 INT32 nMaxGainDB;
1260 TTBOOL bEnableDenoise;
1264 INT32 nMaxNoiseSuppressDB;
1279 TTBOOL bEnableEchoCancellation;
1283 INT32 nEchoSuppress;
1287 INT32 nEchoSuppressActive;
1288 } SpeexDSP;
1289
1292 typedef struct TTAudioPreprocessor
1293 {
1297 INT32 nGainLevel;
1299 TTBOOL bMuteLeftSpeaker;
1301 TTBOOL bMuteRightSpeaker;
1302 } TTAudioPreprocessor;
1303
1316 typedef struct WebRTCAudioPreprocessor
1317 {
1319 struct
1320 {
1323 TTBOOL bEnable;
1325 float fFixedGainFactor;
1326 } preamplifier;
1329 struct
1330 {
1336 TTBOOL bEnable;
1337 } echocanceller;
1340 struct
1341 {
1343 TTBOOL bEnable;
1346 INT32 nLevel;
1347 } noisesuppression;
1350 struct
1351 {
1354 TTBOOL bEnable;
1357 struct
1358 {
1361 float fGainDB;
1362 } fixeddigital;
1365 struct
1366 {
1368 TTBOOL bEnable;
1370 float fHeadRoomDB;
1372 float fMaxGainDB;
1374 float fInitialGainDB;
1376 float fMaxGainChangeDBPerSecond;
1378 float fMaxOutputNoiseLevelDBFS;
1379 } adaptivedigital;
1380 } gaincontroller2;
1381 } WebRTCAudioPreprocessor;
1382
1384#define WEBRTC_GAINCONTROLLER2_FIXEDGAIN_MAX 49.9f
1385
1389 typedef enum AudioPreprocessorType
1390 {
1393 NO_AUDIOPREPROCESSOR = 0,
1395 SPEEXDSP_AUDIOPREPROCESSOR = 1,
1397 TEAMTALK_AUDIOPREPROCESSOR = 2,
1400 WEBRTC_AUDIOPREPROCESSOR_OBSOLETE_R4332 = 3,
1403 WEBRTC_AUDIOPREPROCESSOR = 4,
1404 } AudioPreprocessorType;
1405
1407 typedef struct AudioPreprocessor
1408 {
1410 AudioPreprocessorType nPreprocessor;
1411 union
1412 {
1414 SpeexDSP speexdsp;
1416 TTAudioPreprocessor ttpreprocessor;
1418 WebRTCAudioPreprocessor webrtc;
1419 };
1420 } AudioPreprocessor;
1421
1426 typedef struct WebMVP8Codec
1427 {
1428 union
1429 {
1431 INT32 nRcTargetBitrate;
1437 UINT32 rc_target_bitrate;
1438 };
1446 UINT32 nEncodeDeadline;
1447 } WebMVP8Codec;
1448
1451#define WEBM_VPX_DL_REALTIME 1
1454#define WEBM_VPX_DL_GOOD_QUALITY 1000000
1457#define WEBM_VPX_DL_BEST_QUALITY 0
1458
1462 typedef enum Codec
1463 {
1465 NO_CODEC = 0,
1468 SPEEX_CODEC = 1,
1471 SPEEX_VBR_CODEC = 2,
1473 OPUS_CODEC = 3,
1475 WEBM_VP8_CODEC = 128,
1476 } Codec;
1477
1480 typedef struct AudioCodec
1481 {
1484 Codec nCodec;
1485 union
1486 {
1489 SpeexCodec speex;
1492 SpeexVBRCodec speex_vbr;
1495 OpusCodec opus;
1496 };
1497 } AudioCodec;
1498
1512 typedef struct AudioConfig
1513 {
1515 TTBOOL bEnableAGC;
1517 INT32 nGainLevel;
1518 } AudioConfig;
1519
1521 typedef struct VideoCodec
1522 {
1526 Codec nCodec;
1527 union
1528 {
1529 WebMVP8Codec webm_vp8;
1530 };
1531 } VideoCodec;
1542 typedef struct MediaFileInfo
1543 {
1546 MediaFileStatus nStatus;
1548 TTCHAR szFileName[TT_STRLEN];
1550 AudioFormat audioFmt;
1552 VideoFormat videoFmt;
1554 UINT32 uDurationMSec;
1556 UINT32 uElapsedMSec;
1557 } MediaFileInfo;
1558
1567 typedef struct MediaFilePlayback
1568 {
1574 UINT32 uOffsetMSec;
1576 TTBOOL bPaused;
1578 AudioPreprocessor audioPreprocessor;
1579 } MediaFilePlayback;
1580
1583 typedef struct AudioInputProgress
1584 {
1586 INT32 nStreamID;
1589 UINT32 uQueueMSec;
1592 UINT32 uElapsedMSec;
1593 } AudioInputProgress;
1594
1610 typedef enum UserRight
1611 {
1614 USERRIGHT_NONE = 0x00000000,
1617 USERRIGHT_MULTI_LOGIN = 0x00000001,
1619 USERRIGHT_VIEW_ALL_USERS = 0x00000002,
1623 USERRIGHT_CREATE_TEMPORARY_CHANNEL = 0x00000004,
1627 USERRIGHT_MODIFY_CHANNELS = 0x00000008,
1630 USERRIGHT_TEXTMESSAGE_BROADCAST = 0x00000010,
1632 USERRIGHT_KICK_USERS = 0x00000020,
1635 USERRIGHT_BAN_USERS = 0x00000040,
1638 USERRIGHT_MOVE_USERS = 0x00000080,
1641 USERRIGHT_OPERATOR_ENABLE = 0x00000100,
1643 USERRIGHT_UPLOAD_FILES = 0x00000200,
1646 USERRIGHT_DOWNLOAD_FILES = 0x00000400,
1649 USERRIGHT_UPDATE_SERVERPROPERTIES = 0x00000800,
1652 USERRIGHT_TRANSMIT_VOICE = 0x00001000,
1655 USERRIGHT_TRANSMIT_VIDEOCAPTURE = 0x00002000,
1658 USERRIGHT_TRANSMIT_DESKTOP = 0x00004000,
1661 USERRIGHT_TRANSMIT_DESKTOPINPUT = 0x00008000,
1664 USERRIGHT_TRANSMIT_MEDIAFILE_AUDIO = 0x00010000,
1667 USERRIGHT_TRANSMIT_MEDIAFILE_VIDEO = 0x00020000,
1670 USERRIGHT_TRANSMIT_MEDIAFILE = USERRIGHT_TRANSMIT_MEDIAFILE_VIDEO | USERRIGHT_TRANSMIT_MEDIAFILE_AUDIO,
1677 USERRIGHT_LOCKED_NICKNAME = 0x00040000,
1680 USERRIGHT_LOCKED_STATUS = 0x00080000,
1683 USERRIGHT_RECORD_VOICE = 0x00100000,
1685 USERRIGHT_VIEW_HIDDEN_CHANNELS = 0x00200000,
1688 USERRIGHT_TEXTMESSAGE_USER = 0x00400000,
1691 USERRIGHT_TEXTMESSAGE_CHANNEL = 0x00800000,
1692 } UserRight;
1693
1698 typedef UINT32 UserRights;
1699
1700
1707 typedef enum ServerLogEvent
1708 {
1710 SERVERLOGEVENT_NONE = 0x00000000,
1712 SERVERLOGEVENT_USER_CONNECTED = 0x00000001,
1714 SERVERLOGEVENT_USER_DISCONNECTED = 0x00000002,
1716 SERVERLOGEVENT_USER_LOGGEDIN = 0x00000004,
1718 SERVERLOGEVENT_USER_LOGGEDOUT = 0x00000008,
1720 SERVERLOGEVENT_USER_LOGINFAILED = 0x00000010,
1722 SERVERLOGEVENT_USER_TIMEDOUT = 0x00000020,
1724 SERVERLOGEVENT_USER_KICKED = 0x00000040,
1726 SERVERLOGEVENT_USER_BANNED = 0x00000080,
1728 SERVERLOGEVENT_USER_UNBANNED = 0x00000100,
1730 SERVERLOGEVENT_USER_UPDATED = 0x00000200,
1732 SERVERLOGEVENT_USER_JOINEDCHANNEL = 0x00000400,
1734 SERVERLOGEVENT_USER_LEFTCHANNEL = 0x00000800,
1736 SERVERLOGEVENT_USER_MOVED = 0x00001000,
1738 SERVERLOGEVENT_USER_TEXTMESSAGE_PRIVATE = 0x00002000,
1740 SERVERLOGEVENT_USER_TEXTMESSAGE_CUSTOM = 0x00004000,
1742 SERVERLOGEVENT_USER_TEXTMESSAGE_CHANNEL = 0x00008000,
1744 SERVERLOGEVENT_USER_TEXTMESSAGE_BROADCAST = 0x00010000,
1746 SERVERLOGEVENT_CHANNEL_CREATED = 0x00020000,
1748 SERVERLOGEVENT_CHANNEL_UPDATED = 0x00040000,
1750 SERVERLOGEVENT_CHANNEL_REMOVED = 0x00080000,
1752 SERVERLOGEVENT_FILE_UPLOADED = 0x00100000,
1754 SERVERLOGEVENT_FILE_DOWNLOADED = 0x00200000,
1756 SERVERLOGEVENT_FILE_DELETED = 0x00400000,
1758 SERVERLOGEVENT_SERVER_UPDATED = 0x00800000,
1760 SERVERLOGEVENT_SERVER_SAVECONFIG = 0x01000000,
1761 } ServerLogEvent;
1762
1765 typedef UINT32 ServerLogEvents;
1766
1778 typedef struct ServerProperties
1779 {
1781 TTCHAR szServerName[TT_STRLEN];
1784 TTCHAR szMOTD[TT_STRLEN];
1793 TTCHAR szMOTDRaw[TT_STRLEN];
1796 INT32 nMaxUsers;
1799 INT32 nMaxLoginAttempts;
1802 INT32 nMaxLoginsPerIPAddress;
1806 INT32 nMaxVoiceTxPerSecond;
1811 INT32 nMaxVideoCaptureTxPerSecond;
1815 INT32 nMaxMediaFileTxPerSecond;
1819 INT32 nMaxDesktopTxPerSecond;
1823 INT32 nMaxTotalTxPerSecond;
1825 TTBOOL bAutoSave;
1827 INT32 nTcpPort;
1829 INT32 nUdpPort;
1832 INT32 nUserTimeout;
1834 TTCHAR szServerVersion[TT_STRLEN];
1837 TTCHAR szServerProtocolVersion[TT_STRLEN];
1846 INT32 nLoginDelayMSec;
1854 TTCHAR szAccessToken[TT_STRLEN];
1860 ServerLogEvents uServerLogEvents;
1861 } ServerProperties;
1862
1868 typedef struct ServerStatistics
1869 {
1872 INT64 nTotalBytesTX;
1875 INT64 nTotalBytesRX;
1878 INT64 nVoiceBytesTX;
1881 INT64 nVoiceBytesRX;
1884 INT64 nVideoCaptureBytesTX;
1887 INT64 nVideoCaptureBytesRX;
1890 INT64 nMediaFileBytesTX;
1893 INT64 nMediaFileBytesRX;
1896 INT64 nDesktopBytesTX;
1899 INT64 nDesktopBytesRX;
1901 INT32 nUsersServed;
1903 INT32 nUsersPeak;
1906 INT64 nFilesTx;
1909 INT64 nFilesRx;
1911 INT64 nUptimeMSec;
1912 } ServerStatistics;
1913
1919 typedef enum BanType
1920 {
1922 BANTYPE_NONE = 0x00,
1926 BANTYPE_CHANNEL = 0x01,
1930 BANTYPE_IPADDR = 0x02,
1932 BANTYPE_USERNAME = 0x04
1933 } BanType;
1934
1936 typedef UINT32 BanTypes;
1937
1942 typedef struct BannedUser
1943 {
1945 TTCHAR szIPAddress[TT_STRLEN];
1947 TTCHAR szChannelPath[TT_STRLEN];
1950 TTCHAR szBanTime[TT_STRLEN];
1952 TTCHAR szNickname[TT_STRLEN];
1954 TTCHAR szUsername[TT_STRLEN];
1956 BanTypes uBanTypes;
1958 TTCHAR szOwner[TT_STRLEN];
1959 } BannedUser;
1960
1964 typedef enum UserType
1965 {
1968 USERTYPE_NONE = 0x0,
1970 USERTYPE_DEFAULT = 0x01,
1972 USERTYPE_ADMIN = 0x02
1973 } UserType;
1974
1978 typedef UINT32 UserTypes;
1979
1988 typedef struct AbusePrevention
1989 {
1999 INT32 nCommandsLimit;
2001 INT32 nCommandsIntervalMSec;
2002 } AbusePrevention;
2003
2012 typedef struct UserAccount
2013 {
2015 TTCHAR szUsername[TT_STRLEN];
2017 TTCHAR szPassword[TT_STRLEN];
2019 UserTypes uUserType;
2023 UserRights uUserRights;
2027 INT32 nUserData;
2029 TTCHAR szNote[TT_STRLEN];
2034 TTCHAR szInitChannel[TT_STRLEN];
2038 INT32 autoOperatorChannels[TT_CHANNELS_OPERATOR_MAX];
2042 INT32 nAudioCodecBpsLimit;
2047 AbusePrevention abusePrevent;
2050 TTCHAR szLastModified[TT_STRLEN];
2053 TTCHAR szLastLoginTime[TT_STRLEN];
2054 } UserAccount;
2078 typedef enum Subscription
2079 {
2081 SUBSCRIBE_NONE = 0x00000000,
2084 SUBSCRIBE_USER_MSG = 0x00000001,
2087 SUBSCRIBE_CHANNEL_MSG = 0x00000002,
2090 SUBSCRIBE_BROADCAST_MSG = 0x00000004,
2093 SUBSCRIBE_CUSTOM_MSG = 0x00000008,
2095 SUBSCRIBE_VOICE = 0x00000010,
2097 SUBSCRIBE_VIDEOCAPTURE = 0x00000020,
2099 SUBSCRIBE_DESKTOP = 0x00000040,
2103 SUBSCRIBE_DESKTOPINPUT = 0x00000080,
2106 SUBSCRIBE_MEDIAFILE = 0x00000100,
2109 SUBSCRIBE_INTERCEPT_USER_MSG = 0x00010000,
2112 SUBSCRIBE_INTERCEPT_CHANNEL_MSG = 0x00020000,
2113 /* unused SUBSCRIBE_INTERCEPT_BROADCAST_MSG = 0x00040000 */
2116 SUBSCRIBE_INTERCEPT_CUSTOM_MSG = 0x00080000,
2121 SUBSCRIBE_INTERCEPT_VOICE = 0x00100000,
2126 SUBSCRIBE_INTERCEPT_VIDEOCAPTURE = 0x00200000,
2131 SUBSCRIBE_INTERCEPT_DESKTOP = 0x00400000,
2132 /* unused SUBSCRIBE_INTERCEPT_DESKTOPINPUT = 0x00800000, */
2137 SUBSCRIBE_INTERCEPT_MEDIAFILE = 0x01000000,
2138 } Subscription;
2139
2144 typedef UINT32 Subscriptions;
2145
2148 typedef enum UserState
2149 {
2151 USERSTATE_NONE = 0x0000000,
2155 USERSTATE_VOICE = 0x00000001,
2157 USERSTATE_MUTE_VOICE = 0x00000002,
2160 USERSTATE_MUTE_MEDIAFILE = 0x00000004,
2165 USERSTATE_DESKTOP = 0x00000008,
2170 USERSTATE_VIDEOCAPTURE = 0x00000010,
2176 USERSTATE_MEDIAFILE_AUDIO = 0x00000020,
2180 USERSTATE_MEDIAFILE_VIDEO = 0x00000040,
2184 USERSTATE_MEDIAFILE = USERSTATE_MEDIAFILE_AUDIO |
2185 USERSTATE_MEDIAFILE_VIDEO
2186 } UserState;
2187
2190 typedef UINT32 UserStates;
2191
2196 typedef struct User
2197 {
2201 INT32 nUserID;
2206 TTCHAR szUsername[TT_STRLEN];
2211 INT32 nUserData;
2215 UserTypes uUserType;
2217 TTCHAR szIPAddress[TT_STRLEN];
2223 UINT32 uVersion;
2229 INT32 nChannelID;
2235 Subscriptions uLocalSubscriptions;
2241 Subscriptions uPeerSubscriptions;
2246 TTCHAR szNickname[TT_STRLEN];
2251 INT32 nStatusMode;
2256 TTCHAR szStatusMsg[TT_STRLEN];
2259 UserStates uUserState;
2262 TTCHAR szMediaStorageDir[TT_STRLEN];
2268 INT32 nVolumeVoice;
2274 INT32 nVolumeMediaFile;
2278 INT32 nStoppedDelayVoice;
2282 INT32 nStoppedDelayMediaFile;
2287 float soundPositionVoice[3];
2292 float soundPositionMediaFile[3];
2297 TTBOOL stereoPlaybackVoice[2];
2302 TTBOOL stereoPlaybackMediaFile[2];
2306 INT32 nBufferMSecVoice;
2310 INT32 nBufferMSecMediaFile;
2314 INT32 nActiveAdaptiveDelayMSec;
2318 TTCHAR szClientName[TT_STRLEN];
2319 } User;
2320
2325 typedef struct UserStatistics
2326 {
2328 INT64 nVoicePacketsRecv;
2330 INT64 nVoicePacketsLost;
2333 INT64 nVideoCapturePacketsRecv;
2335 INT64 nVideoCaptureFramesRecv;
2338 INT64 nVideoCaptureFramesLost;
2341 INT64 nVideoCaptureFramesDropped;
2343 INT64 nMediaFileAudioPacketsRecv;
2345 INT64 nMediaFileAudioPacketsLost;
2348 INT64 nMediaFileVideoPacketsRecv;
2350 INT64 nMediaFileVideoFramesRecv;
2353 INT64 nMediaFileVideoFramesLost;
2356 INT64 nMediaFileVideoFramesDropped;
2357 } UserStatistics;
2358
2367 typedef enum TextMsgType
2368 {
2370 MSGTYPE_NONE = 0,
2373 MSGTYPE_USER = 1,
2378 MSGTYPE_CHANNEL = 2,
2381 MSGTYPE_BROADCAST = 3,
2384 MSGTYPE_CUSTOM = 4
2385 } TextMsgType;
2386
2393 typedef struct TextMessage
2394 {
2396 TextMsgType nMsgType;
2398 INT32 nFromUserID;
2400 TTCHAR szFromUsername[TT_STRLEN];
2402 INT32 nToUserID;
2405 INT32 nChannelID;
2408 TTCHAR szMessage[TT_STRLEN];
2411 TTBOOL bMore;
2412 } TextMessage;
2420 typedef enum ChannelType
2421 {
2424 CHANNEL_DEFAULT = 0x0000,
2427 CHANNEL_PERMANENT = 0x0001,
2429 CHANNEL_SOLO_TRANSMIT = 0x0002,
2440 CHANNEL_CLASSROOM = 0x0004,
2445 CHANNEL_OPERATOR_RECVONLY = 0x0008,
2448 CHANNEL_NO_VOICEACTIVATION = 0x0010,
2450 CHANNEL_NO_RECORDING = 0x0020,
2453 CHANNEL_HIDDEN = 0x0040
2454 } ChannelType;
2455
2458 typedef UINT32 ChannelTypes;
2459
2470 typedef struct Channel
2471 {
2474 INT32 nParentID;
2476 INT32 nChannelID;
2478 TTCHAR szName[TT_STRLEN];
2480 TTCHAR szTopic[TT_STRLEN];
2484 TTCHAR szPassword[TT_STRLEN];
2487 TTBOOL bPassword;
2489 ChannelTypes uChannelType;
2493 INT32 nUserData;
2495 INT64 nDiskQuota;
2498 TTCHAR szOpPassword[TT_STRLEN];
2500 INT32 nMaxUsers;
2502 AudioCodec audiocodec;
2505 AudioConfig audiocfg;
2561 INT32 transmitUsers[TT_TRANSMITUSERS_MAX][2];
2566 INT32 transmitUsersQueue[TT_TRANSMITQUEUE_MAX];
2574 INT32 nTransmitUsersQueueDelayMSec;
2578 INT32 nTimeOutTimerVoiceMSec;
2582 INT32 nTimeOutTimerMediaFileMSec;
2583 } Channel;
2584
2585
2587 typedef enum FileTransferStatus
2588 {
2590 FILETRANSFER_CLOSED = 0,
2592 FILETRANSFER_ERROR = 1,
2594 FILETRANSFER_ACTIVE = 2,
2596 FILETRANSFER_FINISHED = 3
2597 } FileTransferStatus;
2598
2602 typedef struct FileTransfer
2603 {
2605 FileTransferStatus nStatus;
2607 INT32 nTransferID;
2609 INT32 nChannelID;
2611 TTCHAR szLocalFilePath[TT_STRLEN];
2613 TTCHAR szRemoteFileName[TT_STRLEN];
2615 INT64 nFileSize;
2617 INT64 nTransferred;
2619 TTBOOL bInbound;
2620 } FileTransfer;
2621
2622
2626 typedef struct RemoteFile
2627 {
2629 INT32 nChannelID;
2631 INT32 nFileID;
2633 TTCHAR szFileName[TT_STRLEN];
2635 INT64 nFileSize;
2637 TTCHAR szUsername[TT_STRLEN];
2640 TTCHAR szUploadTime[TT_STRLEN];
2641 } RemoteFile;
2652 typedef struct EncryptionContext
2653 {
2659 TTCHAR szCertificateFile[TT_STRLEN];
2661 TTCHAR szPrivateKeyFile[TT_STRLEN];
2666 TTCHAR szCAFile[TT_STRLEN];
2669 TTCHAR szCADir[TT_STRLEN];
2676 TTBOOL bVerifyPeer;
2687 TTBOOL bVerifyClientOnce;
2698 INT32 nVerifyDepth;
2699 } EncryptionContext;
2700
2707 typedef struct ClientKeepAlive
2708 {
2719 INT32 nConnectionLostMSec;
2723 INT32 nTcpKeepAliveIntervalMSec;
2729 INT32 nUdpKeepAliveIntervalMSec;
2735 INT32 nUdpKeepAliveRTXMSec;
2742 INT32 nUdpConnectRTXMSec;
2750 INT32 nUdpConnectTimeoutMSec;
2751 } ClientKeepAlive;
2752
2757 typedef struct ClientStatistics
2758 {
2760 INT64 nUdpBytesSent;
2762 INT64 nUdpBytesRecv;
2764 INT64 nVoiceBytesSent;
2766 INT64 nVoiceBytesRecv;
2768 INT64 nVideoCaptureBytesSent;
2770 INT64 nVideoCaptureBytesRecv;
2772 INT64 nMediaFileAudioBytesSent;
2774 INT64 nMediaFileAudioBytesRecv;
2776 INT64 nMediaFileVideoBytesSent;
2778 INT64 nMediaFileVideoBytesRecv;
2780 INT64 nDesktopBytesSent;
2782 INT64 nDesktopBytesRecv;
2786 INT32 nUdpPingTimeMs;
2790 INT32 nTcpPingTimeMs;
2793 INT32 nTcpServerSilenceSec;
2796 INT32 nUdpServerSilenceSec;
2808 INT32 nSoundInputDeviceDelayMSec;
2809 } ClientStatistics;
2810
2816 typedef struct JitterConfig
2817 {
2819 INT32 nFixedDelayMSec;
2821 TTBOOL bUseAdativeDejitter;
2824 INT32 nMaxAdaptiveDelayMSec;
2831 INT32 nActiveAdaptiveDelayMSec;
2832 } JitterConfig;
2833
2843 typedef enum ClientError
2844 {
2846 CMDERR_SUCCESS = 0,
2847
2848 /* COMMAND ERRORS 1000-1999 ARE DUE TO INVALID OR UNSUPPORTED
2849 * COMMANDS */
2850
2852 CMDERR_SYNTAX_ERROR = 1000,
2857 CMDERR_UNKNOWN_COMMAND = 1001,
2860 CMDERR_MISSING_PARAMETER = 1002,
2863 CMDERR_INCOMPATIBLE_PROTOCOLS = 1003,
2868 CMDERR_UNKNOWN_AUDIOCODEC = 1004,
2871 CMDERR_INVALID_USERNAME = 1005,
2872
2873 /* COMMAND ERRORS 2000-2999 ARE DUE TO INSUFFICIENT RIGHTS */
2874
2880 CMDERR_INCORRECT_CHANNEL_PASSWORD = 2001,
2886 CMDERR_INVALID_ACCOUNT = 2002,
2892 CMDERR_MAX_SERVER_USERS_EXCEEDED = 2003,
2898 CMDERR_MAX_CHANNEL_USERS_EXCEEDED = 2004,
2903 CMDERR_SERVER_BANNED = 2005,
2935 CMDERR_NOT_AUTHORIZED = 2006,
2942 CMDERR_MAX_DISKUSAGE_EXCEEDED = 2008,
2948 CMDERR_INCORRECT_OP_PASSWORD = 2010,
2949
2954 CMDERR_AUDIOCODEC_BITRATE_LIMIT_EXCEEDED = 2011,
2955
2961 CMDERR_MAX_LOGINS_PER_IPADDRESS_EXCEEDED = 2012,
2962
2965 CMDERR_MAX_CHANNELS_EXCEEDED = 2013,
2966
2971 CMDERR_COMMAND_FLOOD = 2014,
2972
2978 CMDERR_CHANNEL_BANNED = 2015,
2979
2984 CMDERR_MAX_FILETRANSFERS_EXCEEDED = 2016,
2985
2986 /* COMMAND ERRORS 3000-3999 ARE DUE TO INVALID STATE OF CLIENT INSTANCE */
2987
2993 CMDERR_NOT_LOGGEDIN = 3000,
2994
2998 CMDERR_ALREADY_LOGGEDIN = 3001,
3002 CMDERR_NOT_IN_CHANNEL = 3002,
3007 CMDERR_ALREADY_IN_CHANNEL = 3003,
3011 CMDERR_CHANNEL_ALREADY_EXISTS = 3004,
3029 CMDERR_CHANNEL_NOT_FOUND = 3005,
3040 CMDERR_USER_NOT_FOUND = 3006,
3045 CMDERR_BAN_NOT_FOUND = 3007,
3050 CMDERR_FILETRANSFER_NOT_FOUND = 3008,
3055 CMDERR_OPENFILE_FAILED = 3009,
3060 CMDERR_ACCOUNT_NOT_FOUND = 3010,
3065 CMDERR_FILE_NOT_FOUND = 3011,
3070 CMDERR_FILE_ALREADY_EXISTS = 3012,
3075 CMDERR_FILESHARING_DISABLED = 3013,
3080 CMDERR_CHANNEL_HAS_USERS = 3015,
3081
3085 CMDERR_LOGINSERVICE_UNAVAILABLE = 3016,
3086
3091 CMDERR_CHANNEL_CANNOT_BE_HIDDEN = 3017,
3092
3093 /* ERRORS 10000-10999 ARE NOT COMMAND ERRORS BUT INSTEAD
3094 * ERRORS IN THE CLIENT INSTANCE. */
3095
3103 INTERR_SNDINPUT_FAILURE = 10000,
3112 INTERR_SNDOUTPUT_FAILURE = 10001,
3116 INTERR_AUDIOCODEC_INIT_FAILED = 10002,
3118 INTERR_SPEEXDSP_INIT_FAILED = 10003,
3126 INTERR_AUDIOPREPROCESSOR_INIT_FAILED = 10003,
3134 INTERR_TTMESSAGE_QUEUE_OVERFLOW = 10004,
3141 INTERR_SNDEFFECT_FAILURE = 10005,
3142 } ClientError;
3143
3145 typedef struct ClientErrorMsg
3146 {
3148 INT32 nErrorNo;
3150 TTCHAR szErrorMsg[TT_STRLEN];
3151 } ClientErrorMsg;
3161 typedef enum ClientEvent
3162 {
3163 CLIENTEVENT_NONE = 0,
3164
3177 CLIENTEVENT_CON_SUCCESS = CLIENTEVENT_NONE + 10,
3188 CLIENTEVENT_CON_CRYPT_ERROR = CLIENTEVENT_NONE + 15,
3199 CLIENTEVENT_CON_FAILED = CLIENTEVENT_NONE + 20,
3216 CLIENTEVENT_CON_LOST = CLIENTEVENT_NONE + 30,
3228 CLIENTEVENT_CON_MAX_PAYLOAD_UPDATED = CLIENTEVENT_NONE + 40,
3243 CLIENTEVENT_CMD_PROCESSING = CLIENTEVENT_NONE + 200,
3258 CLIENTEVENT_CMD_ERROR = CLIENTEVENT_NONE + 210,
3271 CLIENTEVENT_CMD_SUCCESS = CLIENTEVENT_NONE + 220,
3290 CLIENTEVENT_CMD_MYSELF_LOGGEDIN = CLIENTEVENT_NONE + 230,
3300 CLIENTEVENT_CMD_MYSELF_LOGGEDOUT = CLIENTEVENT_NONE + 240,
3311 CLIENTEVENT_CMD_MYSELF_KICKED = CLIENTEVENT_NONE + 250,
3323 CLIENTEVENT_CMD_USER_LOGGEDIN = CLIENTEVENT_NONE + 260,
3338 CLIENTEVENT_CMD_USER_LOGGEDOUT = CLIENTEVENT_NONE + 270,
3348 CLIENTEVENT_CMD_USER_UPDATE = CLIENTEVENT_NONE + 280,
3358 CLIENTEVENT_CMD_USER_JOINED = CLIENTEVENT_NONE + 290,
3366 CLIENTEVENT_CMD_USER_LEFT = CLIENTEVENT_NONE + 300,
3377 CLIENTEVENT_CMD_USER_TEXTMSG = CLIENTEVENT_NONE + 310,
3387 CLIENTEVENT_CMD_CHANNEL_NEW = CLIENTEVENT_NONE + 320,
3397 CLIENTEVENT_CMD_CHANNEL_UPDATE = CLIENTEVENT_NONE + 330,
3408 CLIENTEVENT_CMD_CHANNEL_REMOVE = CLIENTEVENT_NONE + 340,
3419 CLIENTEVENT_CMD_SERVER_UPDATE = CLIENTEVENT_NONE + 350,
3429 CLIENTEVENT_CMD_SERVERSTATISTICS = CLIENTEVENT_NONE + 360,
3442 CLIENTEVENT_CMD_FILE_NEW = CLIENTEVENT_NONE + 370,
3450 CLIENTEVENT_CMD_FILE_REMOVE = CLIENTEVENT_NONE + 380,
3460 CLIENTEVENT_CMD_USERACCOUNT = CLIENTEVENT_NONE + 390,
3470 CLIENTEVENT_CMD_BANNEDUSER = CLIENTEVENT_NONE + 400,
3480 CLIENTEVENT_CMD_USERACCOUNT_NEW = CLIENTEVENT_NONE + 410,
3490 CLIENTEVENT_CMD_USERACCOUNT_REMOVE = CLIENTEVENT_NONE + 420,
3511 CLIENTEVENT_USER_STATECHANGE = CLIENTEVENT_NONE + 500,
3525 CLIENTEVENT_USER_VIDEOCAPTURE = CLIENTEVENT_NONE + 510,
3539 CLIENTEVENT_USER_MEDIAFILE_VIDEO = CLIENTEVENT_NONE + 520,
3555 CLIENTEVENT_USER_DESKTOPWINDOW = CLIENTEVENT_NONE + 530,
3567 CLIENTEVENT_USER_DESKTOPCURSOR = CLIENTEVENT_NONE + 540,
3591 CLIENTEVENT_USER_DESKTOPINPUT = CLIENTEVENT_NONE + 550,
3605 CLIENTEVENT_USER_RECORD_MEDIAFILE = CLIENTEVENT_NONE + 560,
3623 CLIENTEVENT_USER_AUDIOBLOCK = CLIENTEVENT_NONE + 570,
3638 CLIENTEVENT_INTERNAL_ERROR = CLIENTEVENT_NONE + 1000,
3653 CLIENTEVENT_VOICE_ACTIVATION = CLIENTEVENT_NONE + 1010,
3665 CLIENTEVENT_HOTKEY = CLIENTEVENT_NONE + 1020,
3685 CLIENTEVENT_HOTKEY_TEST = CLIENTEVENT_NONE + 1030,
3703 CLIENTEVENT_FILETRANSFER = CLIENTEVENT_NONE + 1040,
3720 CLIENTEVENT_DESKTOPWINDOW_TRANSFER = CLIENTEVENT_NONE + 1050,
3734 CLIENTEVENT_STREAM_MEDIAFILE = CLIENTEVENT_NONE + 1060,
3748 CLIENTEVENT_LOCAL_MEDIAFILE = CLIENTEVENT_NONE + 1070,
3771 CLIENTEVENT_AUDIOINPUT = CLIENTEVENT_NONE + 1080,
3792 CLIENTEVENT_USER_FIRSTVOICESTREAMPACKET = CLIENTEVENT_NONE + 1090,
3809 CLIENTEVENT_SOUNDDEVICE_ADDED = CLIENTEVENT_NONE + 1100,
3827 CLIENTEVENT_SOUNDDEVICE_REMOVED = CLIENTEVENT_NONE + 1110,
3845 CLIENTEVENT_SOUNDDEVICE_UNPLUGGED = CLIENTEVENT_NONE + 1120,
3862 CLIENTEVENT_SOUNDDEVICE_NEW_DEFAULT_INPUT = CLIENTEVENT_NONE + 1130,
3879 CLIENTEVENT_SOUNDDEVICE_NEW_DEFAULT_OUTPUT = CLIENTEVENT_NONE + 1140,
3898 CLIENTEVENT_SOUNDDEVICE_NEW_DEFAULT_INPUT_COMDEVICE = CLIENTEVENT_NONE + 1150,
3917 CLIENTEVENT_SOUNDDEVICE_NEW_DEFAULT_OUTPUT_COMDEVICE = CLIENTEVENT_NONE + 1160,
3918
3919 } ClientEvent;
3920
3921 /* List of structures used internally by TeamTalk. */
3922 typedef enum TTType
3923 {
3924 __NONE = 0,
3925 __AUDIOCODEC = 1,
3926 __BANNEDUSER = 2,
3927 __VIDEOFORMAT = 3,
3928 __OPUSCODEC = 4,
3929 __CHANNEL = 5,
3930 __CLIENTSTATISTICS = 6,
3931 __REMOTEFILE = 7,
3932 __FILETRANSFER = 8,
3933 __MEDIAFILESTATUS = 9,
3934 __SERVERPROPERTIES = 10,
3935 __SERVERSTATISTICS = 11,
3936 __SOUNDDEVICE = 12,
3937 __SPEEXCODEC = 13,
3938 __TEXTMESSAGE = 14,
3939 __WEBMVP8CODEC = 15,
3940 __TTMESSAGE = 16,
3941 __USER = 17,
3942 __USERACCOUNT = 18,
3943 __USERSTATISTICS = 19,
3944 __VIDEOCAPTUREDEVICE = 20,
3945 __VIDEOCODEC = 21,
3946 __AUDIOCONFIG = 22,
3947 __SPEEXVBRCODEC = 23,
3948 __VIDEOFRAME = 24,
3949 __AUDIOBLOCK = 25,
3950 __AUDIOFORMAT = 26,
3951 __MEDIAFILEINFO = 27,
3952 __CLIENTERRORMSG = 28,
3953 __TTBOOL = 29,
3954 __INT32 = 30,
3955 __DESKTOPINPUT = 31,
3956 __SPEEXDSP = 32,
3957 __STREAMTYPE = 33,
3958 __AUDIOPREPROCESSORTYPE = 34,
3959 __AUDIOPREPROCESSOR = 35,
3960 __TTAUDIOPREPROCESSOR = 36,
3961 __MEDIAFILEPLAYBACK = 37,
3962 __CLIENTKEEPALIVE = 38,
3963 __UINT32 = 39,
3964 __AUDIOINPUTPROGRESS = 40,
3965 __JITTERCONFIG = 41,
3966 __WEBRTCAUDIOPREPROCESSOR = 42,
3967 __ENCRYPTIONCONTEXT = 43,
3968 __SOUNDDEVICEEFFECTS = 44,
3969 __DESKTOPWINDOW = 45,
3970 __ABUSEPREVENTION = 46,
3971 } TTType;
3972
3983 typedef struct TTMessage
3984 {
3986 ClientEvent nClientEvent;
3988 INT32 nSource;
3990 TTType ttType;
3992 UINT32 uReserved;
3993 union
3994 {
3996 Channel channel;
3998 ClientErrorMsg clienterrormsg;
4000 DesktopInput desktopinput;
4002 FileTransfer filetransfer;
4004 MediaFileInfo mediafileinfo;
4006 RemoteFile remotefile;
4008 ServerProperties serverproperties;
4010 ServerStatistics serverstatistics;
4012 TextMessage textmessage;
4014 User user;
4016 UserAccount useraccount;
4018 BannedUser banneduser;
4020 TTBOOL bActive;
4022 INT32 nBytesRemain;
4024 INT32 nStreamID;
4026 INT32 nPayloadSize;
4028 StreamType nStreamType;
4030 AudioInputProgress audioinputprogress;
4032 SoundDevice sounddevice;
4033 /* brief First byte in union. */
4034 char data[1];
4035 };
4036 } TTMessage;
4037
4056 typedef enum ClientFlag
4057 {
4062 CLIENT_CLOSED = 0x00000000,
4066 CLIENT_SNDINPUT_READY = 0x00000001,
4070 CLIENT_SNDOUTPUT_READY = 0x00000002,
4076 CLIENT_SNDINOUTPUT_DUPLEX = 0x00000004,
4083 CLIENT_SNDINPUT_VOICEACTIVATED = 0x00000008,
4090 CLIENT_SNDINPUT_VOICEACTIVE = 0x00000010,
4093 CLIENT_SNDOUTPUT_MUTE = 0x00000020,
4099 CLIENT_SNDOUTPUT_AUTO3DPOSITION = 0x00000040,
4103 CLIENT_VIDEOCAPTURE_READY = 0x00000080,
4106 CLIENT_TX_VOICE = 0x00000100,
4110 CLIENT_TX_VIDEOCAPTURE = 0x00000200,
4116 CLIENT_TX_DESKTOP = 0x00000400,
4121 CLIENT_DESKTOP_ACTIVE = 0x00000800,
4125 CLIENT_MUX_AUDIOFILE = 0x00001000,
4128 CLIENT_CONNECTING = 0x00002000,
4133 CLIENT_CONNECTED = 0x00004000,
4136 CLIENT_CONNECTION = CLIENT_CONNECTING | CLIENT_CONNECTED,
4140 CLIENT_AUTHORIZED = 0x00008000,
4145 CLIENT_STREAM_AUDIO = 0x00010000,
4150 CLIENT_STREAM_VIDEO = 0x00020000
4151 } ClientFlag;
4152
4155 typedef UINT32 ClientFlags;
4156
4161 typedef VOID TTInstance;
4162
4167 typedef VOID TTSoundLoop;
4168
4170 TEAMTALKDLL_API const TTCHAR* TT_GetVersion(void);
4171
4172#if defined(WIN32)
4187 TEAMTALKDLL_API TTInstance* TT_InitTeamTalk(IN HWND hWnd, IN UINT32 uMsg);
4188
4196 TEAMTALKDLL_API TTBOOL TT_SwapTeamTalkHWND(IN TTInstance* lpTTInstance,
4197 IN HWND hWnd);
4198#endif
4199
4213 TEAMTALKDLL_API TTInstance* TT_InitTeamTalkPoll(void);
4214
4225 TEAMTALKDLL_API TTBOOL TT_CloseTeamTalk(IN TTInstance* lpTTInstance);
4226
4239 TEAMTALKDLL_API TTBOOL TT_GetMessage(IN TTInstance* lpTTInstance,
4240 OUT TTMessage* pMsg,
4241 IN const INT32* pnWaitMs);
4242
4272 TEAMTALKDLL_API TTBOOL TT_PumpMessage(IN TTInstance* lpTTInstance,
4273 ClientEvent nClientEvent,
4274 INT32 nIdentifier);
4275
4288 TEAMTALKDLL_API ClientFlags TT_GetFlags(IN TTInstance* lpTTInstance);
4289
4298 TEAMTALKDLL_API TTBOOL TT_SetLicenseInformation(IN const TTCHAR szRegName[TT_STRLEN],
4299 IN const TTCHAR szRegKey[TT_STRLEN]);
4312 TEAMTALKDLL_API TTBOOL TT_GetDefaultSoundDevices(OUT INT32* lpnInputDeviceID,
4313 OUT INT32* lpnOutputDeviceID);
4318 TEAMTALKDLL_API TTBOOL TT_GetDefaultSoundDevicesEx(IN SoundSystem nSndSystem,
4319 OUT INT32* lpnInputDeviceID,
4320 OUT INT32* lpnOutputDeviceID);
4321
4335 TEAMTALKDLL_API TTBOOL TT_GetSoundDevices(IN OUT SoundDevice* lpSoundDevices,
4336 IN OUT INT32* lpnHowMany);
4337
4338
4354 TEAMTALKDLL_API TTBOOL TT_RestartSoundSystem(void);
4355
4361 TEAMTALKDLL_API TTSoundLoop* TT_StartSoundLoopbackTest(IN INT32 nInputDeviceID,
4362 IN INT32 nOutputDeviceID,
4363 IN INT32 nSampleRate,
4364 IN INT32 nChannels,
4365 IN TTBOOL bDuplexMode,
4366 IN const SpeexDSP* lpSpeexDSP);
4367
4401 TEAMTALKDLL_API TTSoundLoop* TT_StartSoundLoopbackTestEx(IN INT32 nInputDeviceID,
4402 IN INT32 nOutputDeviceID,
4403 IN INT32 nSampleRate,
4404 IN INT32 nChannels,
4405 IN TTBOOL bDuplexMode,
4406 IN const AudioPreprocessor* lpAudioPreprocessor,
4407 IN const SoundDeviceEffects* lpSoundDeviceEffects);
4408
4409
4420 TEAMTALKDLL_API TTBOOL TT_CloseSoundLoopbackTest(IN TTSoundLoop* lpTTSoundLoop);
4421
4452 TEAMTALKDLL_API TTBOOL TT_InitSoundInputDevice(IN TTInstance* lpTTInstance,
4453 IN INT32 nInputDeviceID);
4454
4485 TEAMTALKDLL_API TTBOOL TT_InitSoundInputSharedDevice(IN INT32 nSampleRate,
4486 IN INT32 nChannels,
4487 IN INT32 nFrameSize);
4518 TEAMTALKDLL_API TTBOOL TT_InitSoundOutputDevice(IN TTInstance* lpTTInstance,
4519 IN INT32 nOutputDeviceID);
4520
4551 TEAMTALKDLL_API TTBOOL TT_InitSoundOutputSharedDevice(IN INT32 nSampleRate,
4552 IN INT32 nChannels,
4553 IN INT32 nFrameSize);
4588 TEAMTALKDLL_API TTBOOL TT_InitSoundDuplexDevices(IN TTInstance* lpTTInstance,
4589 IN INT32 nInputDeviceID,
4590 IN INT32 nOutputDeviceID);
4591
4610 TEAMTALKDLL_API TTBOOL TT_CloseSoundInputDevice(IN TTInstance* lpTTInstance);
4611
4630 TEAMTALKDLL_API TTBOOL TT_CloseSoundOutputDevice(IN TTInstance* lpTTInstance);
4631
4640 TEAMTALKDLL_API TTBOOL TT_CloseSoundDuplexDevices(IN TTInstance* lpTTInstance);
4641
4677 TEAMTALKDLL_API TTBOOL TT_SetSoundDeviceEffects(IN TTInstance* lpTTInstance,
4678 IN const SoundDeviceEffects* lpSoundDeviceEffect);
4679
4684 TEAMTALKDLL_API TTBOOL TT_GetSoundDeviceEffects(IN TTInstance* lpTTInstance,
4685 OUT SoundDeviceEffects* lpSoundDeviceEffect);
4686
4700 TEAMTALKDLL_API INT32 TT_GetSoundInputLevel(IN TTInstance* lpTTInstance);
4701
4719 TEAMTALKDLL_API TTBOOL TT_SetSoundInputGainLevel(IN TTInstance* lpTTInstance,
4720 IN INT32 nLevel);
4721
4731 TEAMTALKDLL_API INT32 TT_GetSoundInputGainLevel(IN TTInstance* lpTTInstance);
4732
4752 TEAMTALKDLL_API TTBOOL TT_SetSoundInputPreprocess(IN TTInstance* lpTTInstance,
4753 IN const SpeexDSP* lpSpeexDSP);
4754
4766 TEAMTALKDLL_API TTBOOL TT_GetSoundInputPreprocess(IN TTInstance* lpTTInstance,
4767 OUT SpeexDSP* lpSpeexDSP);
4768
4782 TEAMTALKDLL_API TTBOOL TT_SetSoundInputPreprocessEx(IN TTInstance* lpTTInstance,
4783 IN const AudioPreprocessor* lpAudioPreprocessor);
4784
4794 TEAMTALKDLL_API TTBOOL TT_GetSoundInputPreprocessEx(IN TTInstance* lpTTInstance,
4795 OUT AudioPreprocessor* lpAudioPreprocessor);
4796
4806 TEAMTALKDLL_API TTBOOL TT_SetSoundOutputVolume(IN TTInstance* lpTTInstance,
4807 IN INT32 nVolume);
4808
4817 TEAMTALKDLL_API INT32 TT_GetSoundOutputVolume(IN TTInstance* lpTTInstance);
4818
4828 TEAMTALKDLL_API TTBOOL TT_SetSoundOutputMute(IN TTInstance* lpTTInstance,
4829 IN TTBOOL bMuteAll);
4830
4843 TEAMTALKDLL_API TTBOOL TT_Enable3DSoundPositioning(IN TTInstance* lpTTInstance,
4844 IN TTBOOL bEnable);
4845
4857 TEAMTALKDLL_API TTBOOL TT_AutoPositionUsers(IN TTInstance* lpTTInstance);
4858
4873 TEAMTALKDLL_API TTBOOL TT_EnableAudioBlockEvent(IN TTInstance* lpTTInstance,
4874 IN INT32 nUserID,
4875 IN StreamTypes uStreamTypes,
4876 IN TTBOOL bEnable);
4877
4954 TEAMTALKDLL_API TTBOOL TT_EnableAudioBlockEventEx(IN TTInstance* lpTTInstance,
4955 IN INT32 nUserID,
4956 IN StreamTypes uStreamTypes,
4957 IN const AudioFormat* lpAudioFormat,
4958 IN TTBOOL bEnable);
4959
4996 TEAMTALKDLL_API TTBOOL TT_InsertAudioBlock(IN TTInstance* lpTTInstance,
4997 IN const AudioBlock* lpAudioBlock);
4998
5018 TEAMTALKDLL_API TTBOOL TT_EnableVoiceTransmission(IN TTInstance* lpTTInstance,
5019 IN TTBOOL bEnable);
5020
5049 TEAMTALKDLL_API TTBOOL TT_EnableVoiceActivation(IN TTInstance* lpTTInstance,
5050 IN TTBOOL bEnable);
5051
5066 TEAMTALKDLL_API TTBOOL TT_SetVoiceActivationLevel(IN TTInstance* lpTTInstance,
5067 IN INT32 nLevel);
5068
5077 TEAMTALKDLL_API INT32 TT_GetVoiceActivationLevel(IN TTInstance* lpTTInstance);
5078
5091 TEAMTALKDLL_API TTBOOL TT_SetVoiceActivationStopDelay(IN TTInstance* lpTTInstance,
5092 IN INT32 nDelayMSec);
5093
5103 TEAMTALKDLL_API INT32 TT_GetVoiceActivationStopDelay(IN TTInstance* lpTTInstance);
5104
5155 TEAMTALKDLL_API TTBOOL TT_StartRecordingMuxedAudioFile(IN TTInstance* lpTTInstance,
5156 IN const AudioCodec* lpAudioCodec,
5157 IN const TTCHAR* szAudioFileName,
5158 IN AudioFileFormat uAFF);
5159
5190 TEAMTALKDLL_API TTBOOL TT_StartRecordingMuxedAudioFileEx(IN TTInstance* lpTTInstance,
5191 IN INT32 nChannelID,
5192 IN const TTCHAR* szAudioFileName,
5193 IN AudioFileFormat uAFF);
5194
5228 TEAMTALKDLL_API TTBOOL TT_StartRecordingMuxedStreams(IN TTInstance* lpTTInstance,
5229 IN StreamTypes uStreamTypes,
5230 IN const AudioCodec* lpAudioCodec,
5231 IN const TTCHAR* szAudioFileName,
5232 IN AudioFileFormat uAFF);
5233
5248 TEAMTALKDLL_API TTBOOL TT_StopRecordingMuxedAudioFile(IN TTInstance* lpTTInstance);
5249
5256 TEAMTALKDLL_API TTBOOL TT_StopRecordingMuxedAudioFileEx(IN TTInstance* lpTTInstance,
5257 IN INT32 nChannelID);
5258
5283 TEAMTALKDLL_API TTBOOL TT_StartVideoCaptureTransmission(IN TTInstance* lpTTInstance,
5284 IN const VideoCodec* lpVideoCodec);
5285
5292 TEAMTALKDLL_API TTBOOL TT_StopVideoCaptureTransmission(IN TTInstance* lpTTInstance);
5293
5310 TEAMTALKDLL_API TTBOOL TT_GetVideoCaptureDevices(IN OUT VideoCaptureDevice* lpVideoDevices,
5311 IN OUT INT32* lpnHowMany);
5312
5326 TEAMTALKDLL_API TTBOOL TT_InitVideoCaptureDevice(IN TTInstance* lpTTInstance,
5327 IN const TTCHAR* szDeviceID,
5328 IN const VideoFormat* lpVideoFormat);
5333 TEAMTALKDLL_API TTBOOL TT_CloseVideoCaptureDevice(IN TTInstance* lpTTInstance);
5334
5335#if defined(WIN32)
5351 TEAMTALKDLL_API TTBOOL TT_PaintVideoFrame(IN HDC hDC,
5352 IN INT32 XDest,
5353 IN INT32 YDest,
5354 IN INT32 nDestWidth,
5355 IN INT32 nDestHeight,
5356 IN VideoFrame* lpVideoFrame);
5357
5389 TEAMTALKDLL_API TTBOOL TT_PaintVideoFrameEx(IN HDC hDC,
5390 IN INT32 XDest,
5391 IN INT32 YDest,
5392 IN INT32 nDestWidth,
5393 IN INT32 nDestHeight,
5394 IN INT32 XSrc,
5395 IN INT32 YSrc,
5396 IN INT32 nSrcWidth,
5397 IN INT32 nSrcHeight,
5398 IN VideoFrame* lpVideoFrame);
5399#endif
5400
5421 TEAMTALKDLL_API VideoFrame* TT_AcquireUserVideoCaptureFrame(IN TTInstance* lpTTInstance,
5422 IN INT32 nUserID);
5423
5433 TEAMTALKDLL_API TTBOOL TT_ReleaseUserVideoCaptureFrame(IN TTInstance* lpTTInstance,
5434 IN VideoFrame* lpVideoFrame);
5442 TEAMTALKDLL_API TTBOOL TT_StartStreamingMediaFileToChannel(IN TTInstance* lpTTInstance,
5443 IN const TTCHAR* szMediaFilePath,
5444 IN const VideoCodec* lpVideoCodec);
5445
5477 TEAMTALKDLL_API TTBOOL TT_StartStreamingMediaFileToChannelEx(IN TTInstance* lpTTInstance,
5478 IN const TTCHAR* szMediaFilePath,
5479 IN const MediaFilePlayback* lpMediaFilePlayback,
5480 IN const VideoCodec* lpVideoCodec);
5481
5500 TEAMTALKDLL_API TTBOOL TT_UpdateStreamingMediaFileToChannel(IN TTInstance* lpTTInstance,
5501 IN const MediaFilePlayback* lpMediaFilePlayback,
5502 IN const VideoCodec* lpVideoCodec);
5503
5511 TEAMTALKDLL_API TTBOOL TT_StopStreamingMediaFileToChannel(IN TTInstance* lpTTInstance);
5512
5542 TEAMTALKDLL_API INT32 TT_InitLocalPlayback(IN TTInstance* lpTTInstance,
5543 IN const TTCHAR* szMediaFilePath,
5544 IN const MediaFilePlayback* lpMediaFilePlayback);
5545
5559 TEAMTALKDLL_API TTBOOL TT_UpdateLocalPlayback(IN TTInstance* lpTTInstance,
5560 IN INT32 nPlaybackSessionID,
5561 IN const MediaFilePlayback* lpMediaFilePlayback);
5562
5572 TEAMTALKDLL_API TTBOOL TT_StopLocalPlayback(IN TTInstance* lpTTInstance,
5573 IN INT32 nPlaybackSessionID);
5574
5582 TEAMTALKDLL_API TTBOOL TT_GetMediaFileInfo(IN const TTCHAR* szMediaFilePath,
5583 OUT MediaFileInfo* lpMediaFileInfo);
5584
5605 TEAMTALKDLL_API VideoFrame* TT_AcquireUserMediaVideoFrame(IN TTInstance* lpTTInstance,
5606 IN INT32 nUserID);
5607
5617 TEAMTALKDLL_API TTBOOL TT_ReleaseUserMediaVideoFrame(IN TTInstance* lpTTInstance,
5618 IN VideoFrame* lpVideoFrame);
5663 TEAMTALKDLL_API INT32 TT_SendDesktopWindow(IN TTInstance* lpTTInstance,
5664 IN const DesktopWindow* lpDesktopWindow,
5665 IN BitmapFormat nConvertBmpFormat);
5666
5676 TEAMTALKDLL_API TTBOOL TT_CloseDesktopWindow(IN TTInstance* lpTTInstance);
5677
5694 TEAMTALKDLL_API unsigned char* TT_Palette_GetColorTable(IN BitmapFormat nBmpPalette,
5695 IN INT32 nIndex);
5696#if defined(WIN32)
5697
5700 TEAMTALKDLL_API HWND TT_Windows_GetDesktopActiveHWND(void);
5701
5703 TEAMTALKDLL_API HWND TT_Windows_GetDesktopHWND(void);
5704
5709 TEAMTALKDLL_API TTBOOL TT_Windows_GetDesktopWindowHWND(IN INT32 nIndex,
5710 OUT HWND* lpHWnd);
5711
5717 typedef struct ShareWindow
5718 {
5720 HWND hWnd;
5722 INT32 nWndX;
5724 INT32 nWndY;
5726 INT32 nWidth;
5728 INT32 nHeight;
5730 TTCHAR szWindowTitle[TT_STRLEN];
5731 } ShareWindow;
5732
5735 TEAMTALKDLL_API TTBOOL TT_Windows_GetWindow(IN HWND hWnd,
5736 OUT ShareWindow* lpShareWindow);
5737
5750 TEAMTALKDLL_API INT32 TT_SendDesktopWindowFromHWND(IN TTInstance* lpTTInstance,
5751 IN HWND hWnd,
5752 IN BitmapFormat nBitmapFormat,
5753 IN DesktopProtocol nDesktopProtocol);
5754
5770 TEAMTALKDLL_API TTBOOL TT_PaintDesktopWindow(IN TTInstance* lpTTInstance,
5771 IN INT32 nUserID,
5772 IN HDC hDC,
5773 IN INT32 XDest,
5774 IN INT32 YDest,
5775 IN INT32 nDestWidth,
5776 IN INT32 nDestHeight);
5777
5812 TEAMTALKDLL_API TTBOOL TT_PaintDesktopWindowEx(IN TTInstance* lpTTInstance,
5813 IN INT32 nUserID,
5814 IN HDC hDC,
5815 IN INT32 XDest,
5816 IN INT32 YDest,
5817 IN INT32 nDestWidth,
5818 IN INT32 nDestHeight,
5819 IN INT32 XSrc,
5820 IN INT32 YSrc,
5821 IN INT32 nSrcWidth,
5822 IN INT32 nSrcHeight);
5823#endif
5824
5825#if defined(__APPLE__)
5826
5832 typedef struct ShareWindow
5833 {
5835 INT64 nWindowID;
5837 INT32 nWindowX;
5839 INT32 nWindowY;
5841 INT32 nWidth;
5843 INT32 nHeight;
5845 TTCHAR szWindowTitle[TT_STRLEN];
5847 INT64 nPID;
5848 } ShareWindow;
5849
5854 TEAMTALKDLL_API TTBOOL TT_MacOS_GetWindow(IN INT32 nIndex,
5855 OUT ShareWindow* lpShareWindow);
5856
5859 TEAMTALKDLL_API TTBOOL TT_MacOS_GetWindowFromWindowID(IN INT64 nWindowID,
5860 OUT ShareWindow* lpShareWindow);
5861
5875 TEAMTALKDLL_API INT32 TT_SendDesktopFromWindowID(IN TTInstance* lpTTInstance,
5876 IN INT64 nWindowID,
5877 IN BitmapFormat nBitmapFormat,
5878 IN DesktopProtocol nDesktopProtocol);
5879#endif
5880
5896 TEAMTALKDLL_API TTBOOL TT_SendDesktopCursorPosition(IN TTInstance* lpTTInstance,
5897 IN UINT16 nPosX,
5898 IN UINT16 nPosY);
5926 TEAMTALKDLL_API TTBOOL TT_SendDesktopInput(IN TTInstance* lpTTInstance,
5927 IN INT32 nUserID,
5928 IN const DesktopInput lpDesktopInputs[TT_DESKTOPINPUT_MAX],
5929 IN INT32 nDesktopInputCount);
5930
5954 TEAMTALKDLL_API DesktopWindow* TT_AcquireUserDesktopWindow(IN TTInstance* lpTTInstance,
5955 IN INT32 nUserID);
5956
5969 TEAMTALKDLL_API DesktopWindow* TT_AcquireUserDesktopWindowEx(IN TTInstance* lpTTInstance,
5970 IN INT32 nUserID,
5971 IN BitmapFormat nBitmapFormat);
5972
5979 TEAMTALKDLL_API TTBOOL TT_ReleaseUserDesktopWindow(IN TTInstance* lpTTInstance,
5980 IN DesktopWindow* lpDesktopWindow);
5999 TEAMTALKDLL_API TTBOOL TT_SetEncryptionContext(IN TTInstance* lpTTInstance,
6000 const EncryptionContext* lpEncryptionContext);
6001
6032 TEAMTALKDLL_API TTBOOL TT_Connect(IN TTInstance* lpTTInstance,
6033 IN const TTCHAR* szHostAddress,
6034 IN INT32 nTcpPort,
6035 IN INT32 nUdpPort,
6036 IN INT32 nLocalTcpPort,
6037 IN INT32 nLocalUdpPort,
6038 IN TTBOOL bEncrypted);
6039
6067 TEAMTALKDLL_API TTBOOL TT_ConnectSysID(IN TTInstance* lpTTInstance,
6068 IN const TTCHAR* szHostAddress,
6069 IN INT32 nTcpPort,
6070 IN INT32 nUdpPort,
6071 IN INT32 nLocalTcpPort,
6072 IN INT32 nLocalUdpPort,
6073 IN TTBOOL bEncrypted,
6074 IN const TTCHAR* szSystemID);
6075
6098 TEAMTALKDLL_API TTBOOL TT_ConnectEx(IN TTInstance* lpTTInstance,
6099 IN const TTCHAR* szHostAddress,
6100 IN INT32 nTcpPort,
6101 IN INT32 nUdpPort,
6102 IN const TTCHAR* szBindIPAddr,
6103 IN INT32 nLocalTcpPort,
6104 IN INT32 nLocalUdpPort,
6105 IN TTBOOL bEncrypted);
6106
6117 TEAMTALKDLL_API TTBOOL TT_Disconnect(IN TTInstance* lpTTInstance);
6118
6130 TEAMTALKDLL_API TTBOOL TT_QueryMaxPayload(IN TTInstance* lpTTInstance,
6131 IN INT32 nUserID);
6132
6138 TEAMTALKDLL_API TTBOOL TT_GetClientStatistics(IN TTInstance* lpTTInstance,
6139 OUT ClientStatistics* lpClientStatistics);
6140
6155 TEAMTALKDLL_API TTBOOL TT_SetClientKeepAlive(IN TTInstance* lpTTInstance,
6156 IN const ClientKeepAlive* lpClientKeepAlive);
6157
6164 TEAMTALKDLL_API TTBOOL TT_GetClientKeepAlive(IN TTInstance* lpTTInstance,
6165 OUT ClientKeepAlive* lpClientKeepAlive);
6166
6190 TEAMTALKDLL_API INT32 TT_DoPing(IN TTInstance* lpTTInstance);
6191
6205 TEAMTALKDLL_API INT32 TT_DoLogin(IN TTInstance* lpTTInstance,
6206 IN const TTCHAR* szNickname,
6207 IN const TTCHAR* szUsername,
6208 IN const TTCHAR* szPassword);
6209
6210
6245 TEAMTALKDLL_API INT32 TT_DoLoginEx(IN TTInstance* lpTTInstance,
6246 IN const TTCHAR* szNickname,
6247 IN const TTCHAR* szUsername,
6248 IN const TTCHAR* szPassword,
6249 IN const TTCHAR* szClientName);
6250
6266 TEAMTALKDLL_API INT32 TT_DoLogout(IN TTInstance* lpTTInstance);
6267
6307 TEAMTALKDLL_API INT32 TT_DoJoinChannel(IN TTInstance* lpTTInstance,
6308 IN const Channel* lpChannel);
6309
6335 TEAMTALKDLL_API INT32 TT_DoJoinChannelByID(IN TTInstance* lpTTInstance,
6336 IN INT32 nChannelID,
6337 IN const TTCHAR* szPassword);
6338
6360 TEAMTALKDLL_API INT32 TT_DoLeaveChannel(IN TTInstance* lpTTInstance);
6361
6380 TEAMTALKDLL_API INT32 TT_DoChangeNickname(IN TTInstance* lpTTInstance,
6381 IN const TTCHAR* szNewNick);
6382
6404 TEAMTALKDLL_API INT32 TT_DoChangeStatus(IN TTInstance* lpTTInstance,
6405 IN INT32 nStatusMode,
6406 IN const TTCHAR* szStatusMessage);
6407
6428 TEAMTALKDLL_API INT32 TT_DoTextMessage(IN TTInstance* lpTTInstance,
6429 IN const TextMessage* lpTextMessage);
6430
6452 TEAMTALKDLL_API INT32 TT_DoChannelOp(IN TTInstance* lpTTInstance,
6453 IN INT32 nUserID,
6454 IN INT32 nChannelID,
6455 IN TTBOOL bMakeOperator);
6456
6478 TEAMTALKDLL_API INT32 TT_DoChannelOpEx(IN TTInstance* lpTTInstance,
6479 IN INT32 nUserID,
6480 IN INT32 nChannelID,
6481 IN const TTCHAR* szOpPassword,
6482 IN TTBOOL bMakeOperator);
6483
6509 TEAMTALKDLL_API INT32 TT_DoKickUser(IN TTInstance* lpTTInstance,
6510 IN INT32 nUserID,
6511 IN INT32 nChannelID);
6512
6549 TEAMTALKDLL_API INT32 TT_DoSendFile(IN TTInstance* lpTTInstance,
6550 IN INT32 nChannelID,
6551 IN const TTCHAR* szLocalFilePath);
6552
6584 TEAMTALKDLL_API INT32 TT_DoRecvFile(IN TTInstance* lpTTInstance,
6585 IN INT32 nChannelID,
6586 IN INT32 nFileID,
6587 IN const TTCHAR* szLocalFilePath);
6588
6613 TEAMTALKDLL_API INT32 TT_DoDeleteFile(IN TTInstance* lpTTInstance,
6614 IN INT32 nChannelID,
6615 IN INT32 nFileID);
6616
6633 TEAMTALKDLL_API INT32 TT_DoSubscribe(IN TTInstance* lpTTInstance,
6634 IN INT32 nUserID,
6635 IN Subscriptions uSubscriptions);
6636
6654 TEAMTALKDLL_API INT32 TT_DoUnsubscribe(IN TTInstance* lpTTInstance,
6655 IN INT32 nUserID,
6656 IN Subscriptions uSubscriptions);
6657
6685 TEAMTALKDLL_API INT32 TT_DoMakeChannel(IN TTInstance* lpTTInstance,
6686 IN const Channel* lpChannel);
6687
6722 TEAMTALKDLL_API INT32 TT_DoUpdateChannel(IN TTInstance* lpTTInstance,
6723 IN const Channel* lpChannel);
6724
6746 TEAMTALKDLL_API INT32 TT_DoRemoveChannel(IN TTInstance* lpTTInstance,
6747 IN INT32 nChannelID);
6748
6770 TEAMTALKDLL_API INT32 TT_DoMoveUser(IN TTInstance* lpTTInstance,
6771 IN INT32 nUserID,
6772 IN INT32 nChannelID);
6773
6792 TEAMTALKDLL_API INT32 TT_DoUpdateServer(IN TTInstance* lpTTInstance,
6793 IN const ServerProperties* lpServerProperties);
6794
6820 TEAMTALKDLL_API INT32 TT_DoListUserAccounts(IN TTInstance* lpTTInstance,
6821 IN INT32 nIndex,
6822 IN INT32 nCount);
6823
6848 TEAMTALKDLL_API INT32 TT_DoNewUserAccount(IN TTInstance* lpTTInstance,
6849 IN const UserAccount* lpUserAccount);
6850
6871 TEAMTALKDLL_API INT32 TT_DoDeleteUserAccount(IN TTInstance* lpTTInstance,
6872 IN const TTCHAR* szUsername);
6873
6902 TEAMTALKDLL_API INT32 TT_DoBanUser(IN TTInstance* lpTTInstance,
6903 IN INT32 nUserID,
6904 IN INT32 nChannelID);
6905
6917 TEAMTALKDLL_API INT32 TT_DoBanUserEx(IN TTInstance* lpTTInstance,
6918 IN INT32 nUserID,
6919 IN BanTypes uBanTypes);
6920
6939 TEAMTALKDLL_API INT32 TT_DoBan(IN TTInstance* lpTTInstance,
6940 IN const BannedUser* lpBannedUser);
6941
6964 TEAMTALKDLL_API INT32 TT_DoBanIPAddress(IN TTInstance* lpTTInstance,
6965 IN const TTCHAR* szIPAddress,
6966 IN INT32 nChannelID);
6967
6991 TEAMTALKDLL_API INT32 TT_DoUnBanUser(IN TTInstance* lpTTInstance,
6992 IN const TTCHAR* szIPAddress,
6993 IN INT32 nChannelID);
7003 TEAMTALKDLL_API INT32 TT_DoUnBanUserEx(IN TTInstance* lpTTInstance,
7004 IN const BannedUser* lpBannedUser);
7005
7028 TEAMTALKDLL_API INT32 TT_DoListBans(IN TTInstance* lpTTInstance,
7029 IN INT32 nChannelID,
7030 IN INT32 nIndex,
7031 IN INT32 nCount);
7032
7052 TEAMTALKDLL_API INT32 TT_DoSaveConfig(IN TTInstance* lpTTInstance);
7053
7072 TEAMTALKDLL_API INT32 TT_DoQueryServerStats(IN TTInstance* lpTTInstance);
7073
7086 TEAMTALKDLL_API INT32 TT_DoQuit(IN TTInstance* lpTTInstance);
7099 TEAMTALKDLL_API TTBOOL TT_GetServerProperties(IN TTInstance* lpTTInstance,
7100 OUT ServerProperties* lpServerProperties);
7101
7117 TEAMTALKDLL_API TTBOOL TT_GetServerUsers(IN TTInstance* lpTTInstance,
7118 IN OUT User* lpUsers,
7119 IN OUT INT32* lpnHowMany);
7134 TEAMTALKDLL_API INT32 TT_GetRootChannelID(IN TTInstance* lpTTInstance);
7135
7144 TEAMTALKDLL_API INT32 TT_GetMyChannelID(IN TTInstance* lpTTInstance);
7145
7155 TEAMTALKDLL_API TTBOOL TT_GetChannel(IN TTInstance* lpTTInstance,
7156 IN INT32 nChannelID,
7157 OUT Channel* lpChannel );
7158
7167 TEAMTALKDLL_API TTBOOL TT_GetChannelPath(IN TTInstance* lpTTInstance,
7168 IN INT32 nChannelID,
7169 OUT TTCHAR szChannelPath[TT_STRLEN]);
7170
7179 TEAMTALKDLL_API INT32 TT_GetChannelIDFromPath(IN TTInstance* lpTTInstance,
7180 IN const TTCHAR* szChannelPath);
7181
7195 TEAMTALKDLL_API TTBOOL TT_GetChannelUsers(IN TTInstance* lpTTInstance,
7196 IN INT32 nChannelID,
7197 IN OUT User* lpUsers,
7198 IN OUT INT32* lpnHowMany);
7199
7215 TEAMTALKDLL_API TTBOOL TT_GetChannelFiles(IN TTInstance* lpTTInstance,
7216 IN INT32 nChannelID,
7217 IN OUT RemoteFile* lpRemoteFiles,
7218 IN OUT INT32* lpnHowMany);
7219
7229 TEAMTALKDLL_API TTBOOL TT_GetChannelFile(IN TTInstance* lpTTInstance,
7230 IN INT32 nChannelID,
7231 IN INT32 nFileID,
7232 OUT RemoteFile* lpRemoteFile);
7233
7242 TEAMTALKDLL_API TTBOOL TT_IsChannelOperator(IN TTInstance* lpTTInstance,
7243 IN INT32 nUserID,
7244 IN INT32 nChannelID);
7245
7252 TEAMTALKDLL_API TTBOOL TT_GetServerChannels(IN TTInstance* lpTTInstance,
7253 IN OUT Channel* lpChannels,
7254 IN OUT INT32* lpnHowMany);
7270 TEAMTALKDLL_API INT32 TT_GetMyUserID(IN TTInstance* lpTTInstance);
7271
7284 TEAMTALKDLL_API TTBOOL TT_GetMyUserAccount(IN TTInstance* lpTTInstance,
7285 OUT UserAccount* lpUserAccount);
7286
7299 TEAMTALKDLL_API UserTypes TT_GetMyUserType(IN TTInstance* lpTTInstance);
7300
7307 TEAMTALKDLL_API UserRights TT_GetMyUserRights(IN TTInstance* lpTTInstance);
7308
7320 TEAMTALKDLL_API INT32 TT_GetMyUserData(IN TTInstance* lpTTInstance);
7321
7330 TEAMTALKDLL_API TTBOOL TT_GetUser(IN TTInstance* lpTTInstance,
7331 IN INT32 nUserID, OUT User* lpUser);
7332
7340 TEAMTALKDLL_API TTBOOL TT_GetUserStatistics(IN TTInstance* lpTTInstance,
7341 IN INT32 nUserID,
7342 OUT UserStatistics* lpUserStatistics);
7353 TEAMTALKDLL_API TTBOOL TT_GetUserByUsername(IN TTInstance* lpTTInstance,
7354 IN const TTCHAR* szUsername,
7355 OUT User* lpUser);
7374 TEAMTALKDLL_API TTBOOL TT_SetUserVolume(IN TTInstance* lpTTInstance,
7375 IN INT32 nUserID,
7376 IN StreamType nStreamType,
7377 IN INT32 nVolume);
7378
7392 TEAMTALKDLL_API TTBOOL TT_SetUserMute(IN TTInstance* lpTTInstance,
7393 IN INT32 nUserID,
7394 IN StreamType nStreamType,
7395 IN TTBOOL bMute);
7396
7414 TEAMTALKDLL_API TTBOOL TT_SetUserStoppedPlaybackDelay(IN TTInstance* lpTTInstance,
7415 IN INT32 nUserID,
7416 IN StreamType nStreamType,
7417 IN INT32 nDelayMSec);
7418
7444 TEAMTALKDLL_API TTBOOL TT_SetUserJitterControl(IN TTInstance* lpTTInstance,
7445 IN INT32 nUserID,
7446 IN StreamType nStreamType,
7447 IN const JitterConfig* lpJitterConfig);
7448
7460 TEAMTALKDLL_API TTBOOL TT_GetUserJitterControl(IN TTInstance* lpTTInstance,
7461 IN INT32 nUserID,
7462 IN StreamType nStreamType,
7463 IN JitterConfig* lpJitterConfig);
7464
7482 TEAMTALKDLL_API TTBOOL TT_SetUserPosition(IN TTInstance* lpTTInstance,
7483 IN INT32 nUserID,
7484 IN StreamType nStreamType,
7485 IN float x,
7486 IN float y,
7487 IN float z);
7488
7501 TEAMTALKDLL_API TTBOOL TT_SetUserStereo(IN TTInstance* lpTTInstance,
7502 IN INT32 nUserID,
7503 IN StreamType nStreamType,
7504 IN TTBOOL bLeftSpeaker,
7505 IN TTBOOL bRightSpeaker);
7506
7543 TEAMTALKDLL_API TTBOOL TT_SetUserMediaStorageDir(IN TTInstance* lpTTInstance,
7544 IN INT32 nUserID,
7545 IN const TTCHAR* szFolderPath,
7546 IN const TTCHAR* szFileNameVars,
7547 IN AudioFileFormat uAFF);
7548
7573 TEAMTALKDLL_API TTBOOL TT_SetUserMediaStorageDirEx(IN TTInstance* lpTTInstance,
7574 IN INT32 nUserID,
7575 IN const TTCHAR* szFolderPath,
7576 IN const TTCHAR* szFileNameVars,
7577 IN AudioFileFormat uAFF,
7578 IN INT32 nStopRecordingExtraDelayMSec);
7579
7606 TEAMTALKDLL_API TTBOOL TT_SetUserAudioStreamBufferSize(IN TTInstance* lpTTInstance,
7607 IN INT32 nUserID,
7608 IN StreamTypes uStreamType,
7609 IN INT32 nMSec);
7610
7634 TEAMTALKDLL_API AudioBlock* TT_AcquireUserAudioBlock(IN TTInstance* lpTTInstance,
7635 IN StreamTypes uStreamTypes,
7636 IN INT32 nUserID);
7637
7651 TEAMTALKDLL_API TTBOOL TT_ReleaseUserAudioBlock(IN TTInstance* lpTTInstance,
7652 IN AudioBlock* lpAudioBlock);
7653
7669 TEAMTALKDLL_API TTBOOL TT_GetFileTransferInfo(IN TTInstance* lpTTInstance,
7670 IN INT32 nTransferID,
7671 OUT FileTransfer* lpFileTransfer);
7672
7683 TEAMTALKDLL_API TTBOOL TT_CancelFileTransfer(IN TTInstance* lpTTInstance,
7684 IN INT32 nTransferID);
7685
7696 TEAMTALKDLL_API void TT_GetErrorMessage(IN INT32 nError,
7697 OUT TTCHAR szErrorMsg[TT_STRLEN]);
7698
7699
7706 typedef enum TTKeyTranslate
7707 {
7709 TTKEY_NO_TRANSLATE = 0,
7713 TTKEY_WINKEYCODE_TO_TTKEYCODE = 1,
7715 TTKEY_TTKEYCODE_TO_WINKEYCODE = 2,
7719 TTKEY_MACKEYCODE_TO_TTKEYCODE = 3,
7722 TTKEY_TTKEYCODE_TO_MACKEYCODE = 4
7723 } TTKeyTranslate;
7724
7746 TEAMTALKDLL_API INT32 TT_DesktopInput_KeyTranslate(TTKeyTranslate nTranslate,
7747 IN const DesktopInput* lpDesktopInputs,
7748 OUT DesktopInput* lpTranslatedDesktopInputs,
7749 IN INT32 nDesktopInputCount);
7750
7772 TEAMTALKDLL_API INT32 TT_DesktopInput_Execute(IN const DesktopInput* lpDesktopInputs,
7773 IN INT32 nDesktopInputCount);
7774
7777#if defined(WIN32)
7778
7810 TEAMTALKDLL_API TTBOOL TT_HotKey_Register(IN TTInstance* lpTTInstance,
7811 IN INT32 nHotKeyID,
7812 IN const INT32* lpnVKCodes,
7813 IN INT32 nVKCodeCount);
7814
7822 TEAMTALKDLL_API TTBOOL TT_HotKey_Unregister(IN TTInstance* lpTTInstance,
7823 IN INT32 nHotKeyID);
7824
7832 TEAMTALKDLL_API INT32 TT_HotKey_IsActive(IN TTInstance* lpTTInstance,
7833 IN INT32 nHotKeyID);
7834
7849 TEAMTALKDLL_API TTBOOL TT_HotKey_InstallTestHook(IN TTInstance* lpTTInstance,
7850 IN HWND hWnd, UINT32 uMsg);
7851
7859 TEAMTALKDLL_API TTBOOL TT_HotKey_RemoveTestHook(IN TTInstance* lpTTInstance);
7860
7869 TEAMTALKDLL_API TTBOOL TT_HotKey_GetKeyString(IN TTInstance* lpTTInstance,
7870 IN INT32 nVKCode,
7871 OUT TTCHAR szKeyName[TT_STRLEN]);
7873#endif
7874
7875 /* Get the 'sizeof' of a structure used by TeamTalk. Useful to ensuring
7876 * binary compatibility when integrating with other programming
7877 * languages. */
7878 TEAMTALKDLL_API INT32 TT_DBG_SIZEOF(IN TTType nType);
7879
7880 TEAMTALKDLL_API VOID* TT_DBG_GETDATAPTR(IN TTMessage* pMsg);
7881
7882 TEAMTALKDLL_API TTBOOL TT_DBG_SetSoundInputTone(IN TTInstance* lpTTInstance,
7883 IN StreamTypes uStreamTypes,
7884 IN INT32 nFrequency);
7885
7886 TEAMTALKDLL_API TTBOOL TT_DBG_WriteAudioFileTone(IN const MediaFileInfo* lpMediaFileInfo,
7887 IN INT32 nFrequency);
7888
7889#if defined(WIN32) /* Exclude mixer and firewall functions from
7890 * non-Windows platforms */
7891
7911 typedef enum MixerControl
7912 {
7913 WAVEOUT_MASTER,
7914 WAVEOUT_WAVE,
7915 WAVEOUT_MICROPHONE,
7916
7917 WAVEIN_MICROPHONE,
7918 WAVEIN_LINEIN,
7919 WAVEIN_WAVEOUT,
7920 } MixerControl;
7921
7928 TEAMTALKDLL_API INT32 TT_Mixer_GetMixerCount(void);
7929
7936 TEAMTALKDLL_API TTBOOL TT_Mixer_GetMixerName(IN INT32 nMixerIndex,
7937 OUT TTCHAR szMixerName[TT_STRLEN]);
7938
7946 TEAMTALKDLL_API TTBOOL TT_Mixer_GetWaveInName(IN INT32 nWaveDeviceID,
7947 OUT TTCHAR szMixerName[TT_STRLEN]);
7948
7956 TEAMTALKDLL_API TTBOOL TT_Mixer_GetWaveOutName(IN INT32 nWaveDeviceID,
7957 OUT TTCHAR szMixerName[TT_STRLEN]);
7958
7969 TEAMTALKDLL_API TTBOOL TT_Mixer_SetWaveOutMute(IN INT32 nWaveDeviceID,
7970 IN MixerControl nControl,
7971 IN TTBOOL bMute);
7972
7982 TEAMTALKDLL_API INT32 TT_Mixer_GetWaveOutMute(IN INT32 nWaveDeviceID,
7983 IN MixerControl nControl);
7984
7993 TEAMTALKDLL_API TTBOOL TT_Mixer_SetWaveOutVolume(IN INT32 nWaveDeviceID,
7994 IN MixerControl nControl,
7995 IN INT32 nVolume);
7996
8005 TEAMTALKDLL_API INT32 TT_Mixer_GetWaveOutVolume(IN INT32 nWaveDeviceID,
8006 IN MixerControl nControl);
8007
8015 TEAMTALKDLL_API TTBOOL TT_Mixer_SetWaveInSelected(IN INT32 nWaveDeviceID,
8016 IN MixerControl nControl);
8017
8026 TEAMTALKDLL_API INT32 TT_Mixer_GetWaveInSelected(IN INT32 nWaveDeviceID,
8027 IN MixerControl nControl);
8028
8037 TEAMTALKDLL_API TTBOOL TT_Mixer_SetWaveInVolume(IN INT32 nWaveDeviceID,
8038 IN MixerControl nControl,
8039 IN INT32 nVolume);
8040
8049 TEAMTALKDLL_API INT32 TT_Mixer_GetWaveInVolume(IN INT32 nWaveDeviceID,
8050 IN MixerControl nControl);
8051
8058 TEAMTALKDLL_API TTBOOL TT_Mixer_SetWaveInBoost(IN INT32 nWaveDeviceID,
8059 IN TTBOOL bEnable);
8066 TEAMTALKDLL_API INT32 TT_Mixer_GetWaveInBoost(IN INT32 nWaveDeviceID);
8067
8074 TEAMTALKDLL_API TTBOOL TT_Mixer_SetWaveInMute(IN INT32 nWaveDeviceID,
8075 IN TTBOOL bEnable);
8076
8083 TEAMTALKDLL_API INT32 TT_Mixer_GetWaveInMute(IN INT32 nWaveDeviceID);
8084
8094 TEAMTALKDLL_API INT32 TT_Mixer_GetWaveInControlCount(IN INT32 nWaveDeviceID);
8095
8106 TEAMTALKDLL_API TTBOOL TT_Mixer_GetWaveInControlName(IN INT32 nWaveDeviceID,
8107 IN INT32 nControlIndex,
8108 OUT TTCHAR szDeviceName[TT_STRLEN]);
8109
8119 TEAMTALKDLL_API TTBOOL TT_Mixer_SetWaveInControlSelected(IN INT32 nWaveDeviceID,
8120 IN INT32 nControlIndex);
8121
8132 TEAMTALKDLL_API TTBOOL TT_Mixer_GetWaveInControlSelected(IN INT32 nWaveDeviceID,
8133 IN INT32 nControlIndex);
8144 TEAMTALKDLL_API TTBOOL TT_Firewall_IsEnabled(void);
8145
8155 TEAMTALKDLL_API TTBOOL TT_Firewall_Enable(IN TTBOOL bEnable);
8156
8163 TEAMTALKDLL_API TTBOOL TT_Firewall_AppExceptionExists(IN const TTCHAR* szExecutable);
8164
8174 TEAMTALKDLL_API TTBOOL TT_Firewall_AddAppException(IN const TTCHAR* szName,
8175 IN const TTCHAR* szExecutable);
8176
8186 TEAMTALKDLL_API TTBOOL TT_Firewall_RemoveAppException(IN const TTCHAR* szExecutable);
8189#endif
8191#ifdef __cplusplus
8192}
8193#endif
8194
8195#endif
TT_STRLEN
#define TT_STRLEN
Definition: TeamTalk.h:87
TT_DBG_GETDATAPTR
TEAMTALKDLL_API VOID * TT_DBG_GETDATAPTR(IN TTMessage *pMsg)
TT_DBG_SetSoundInputTone
TEAMTALKDLL_API TTBOOL TT_DBG_SetSoundInputTone(IN TTInstance *lpTTInstance, IN StreamTypes uStreamTypes, IN INT32 nFrequency)
TEAMTALKDLL_API
#define TEAMTALKDLL_API
Definition: TeamTalk.h:27
TT_DBG_SIZEOF
TEAMTALKDLL_API INT32 TT_DBG_SIZEOF(IN TTType nType)
TTCHAR
WCHAR TTCHAR
TeamTalk uses Unicode on Windows.
Definition: TeamTalk.h:51
TT_DBG_WriteAudioFileTone
TEAMTALKDLL_API TTBOOL TT_DBG_WriteAudioFileTone(IN const MediaFileInfo *lpMediaFileInfo, IN INT32 nFrequency)
TTBOOL
int TTBOOL
Definition: TeamTalk.h:52
ChannelType
ChannelType
The types of channels supported.
Definition: TeamTalk.h:2421
TT_GetFileTransferInfo
TEAMTALKDLL_API TTBOOL TT_GetFileTransferInfo(IN TTInstance *lpTTInstance, IN INT32 nTransferID, OUT FileTransfer *lpFileTransfer)
Get information about an active file transfer.
FileTransfer
struct FileTransfer FileTransfer
A struct containing the properties of a file transfer.
TT_CHANNELS_OPERATOR_MAX
#define TT_CHANNELS_OPERATOR_MAX
Definition: TeamTalk.h:145
TT_GetChannelPath
TEAMTALKDLL_API TTBOOL TT_GetChannelPath(IN TTInstance *lpTTInstance, IN INT32 nChannelID, OUT TTCHAR szChannelPath[TT_STRLEN])
Get the channel's path. Channels are separated by '/'.
TT_TRANSMITQUEUE_MAX
#define TT_TRANSMITQUEUE_MAX
Definition: TeamTalk.h:151
TT_GetChannelFile
TEAMTALKDLL_API TTBOOL TT_GetChannelFile(IN TTInstance *lpTTInstance, IN INT32 nChannelID, IN INT32 nFileID, OUT RemoteFile *lpRemoteFile)
Get information about a file which can be downloaded.
TT_GetMyChannelID
TEAMTALKDLL_API INT32 TT_GetMyChannelID(IN TTInstance *lpTTInstance)
Get the channel which the local client instance is currently participating in.
RemoteFile
struct RemoteFile RemoteFile
A struct containing the properties of a file in a Channel.
TT_CancelFileTransfer
TEAMTALKDLL_API TTBOOL TT_CancelFileTransfer(IN TTInstance *lpTTInstance, IN INT32 nTransferID)
Cancel an active file transfer.
FileTransferStatus
FileTransferStatus
Status of a file transfer.
Definition: TeamTalk.h:2588
TT_GetChannelIDFromPath
TEAMTALKDLL_API INT32 TT_GetChannelIDFromPath(IN TTInstance *lpTTInstance, IN const TTCHAR *szChannelPath)
Get the channel ID of the supplied path. Channels are separated by '/'.
TT_GetChannel
TEAMTALKDLL_API TTBOOL TT_GetChannel(IN TTInstance *lpTTInstance, IN INT32 nChannelID, OUT Channel *lpChannel)
Get the channel with a specific ID.
TT_TRANSMITUSERS_MAX
#define TT_TRANSMITUSERS_MAX
Definition: TeamTalk.h:107
TT_GetChannelFiles
TEAMTALKDLL_API TTBOOL TT_GetChannelFiles(IN TTInstance *lpTTInstance, IN INT32 nChannelID, IN OUT RemoteFile *lpRemoteFiles, IN OUT INT32 *lpnHowMany)
Get the list of the files in a channel which can be downloaded.
ChannelTypes
UINT32 ChannelTypes
Bitmask of ChannelType.
Definition: TeamTalk.h:2458
TT_GetChannelUsers
TEAMTALKDLL_API TTBOOL TT_GetChannelUsers(IN TTInstance *lpTTInstance, IN INT32 nChannelID, IN OUT User *lpUsers, IN OUT INT32 *lpnHowMany)
Get the IDs of all users in a channel.
TT_GetServerChannels
TEAMTALKDLL_API TTBOOL TT_GetServerChannels(IN TTInstance *lpTTInstance, IN OUT Channel *lpChannels, IN OUT INT32 *lpnHowMany)
Get all the channels on the server.
Channel
struct Channel Channel
A struct containing the properties of a channel.
TT_IsChannelOperator
TEAMTALKDLL_API TTBOOL TT_IsChannelOperator(IN TTInstance *lpTTInstance, IN INT32 nUserID, IN INT32 nChannelID)
Check whether user is operator of a channel.
TT_GetRootChannelID
TEAMTALKDLL_API INT32 TT_GetRootChannelID(IN TTInstance *lpTTInstance)
Get the root channel's ID.
CHANNEL_OPERATOR_RECVONLY
@ CHANNEL_OPERATOR_RECVONLY
Only channel operators (and administrators) will receive audio/video/desktop transmissions....
Definition: TeamTalk.h:2445
CHANNEL_HIDDEN
@ CHANNEL_HIDDEN
Hidden channel which can only be seen with USERRIGHT_VIEW_HIDDEN_CHANNELS.
Definition: TeamTalk.h:2453
CHANNEL_SOLO_TRANSMIT
@ CHANNEL_SOLO_TRANSMIT
Only one user can transmit at a time.
Definition: TeamTalk.h:2429
CHANNEL_NO_RECORDING
@ CHANNEL_NO_RECORDING
Don't allow recording to files in the channel.
Definition: TeamTalk.h:2450
CHANNEL_CLASSROOM
@ CHANNEL_CLASSROOM
Voice and video transmission in the channel is controlled by a channel operator.
Definition: TeamTalk.h:2440
CHANNEL_PERMANENT
@ CHANNEL_PERMANENT
A channel which persists even when the last user leaves the channel.
Definition: TeamTalk.h:2427
CHANNEL_NO_VOICEACTIVATION
@ CHANNEL_NO_VOICEACTIVATION
Don't allow voice transmission if it's trigged by voice activation.
Definition: TeamTalk.h:2448
CHANNEL_DEFAULT
@ CHANNEL_DEFAULT
A default channel is a channel which disappears after the last user leaves the channel.
Definition: TeamTalk.h:2424
FILETRANSFER_FINISHED
@ FILETRANSFER_FINISHED
File transfer finished.
Definition: TeamTalk.h:2596
FILETRANSFER_CLOSED
@ FILETRANSFER_CLOSED
Definition: TeamTalk.h:2590
FILETRANSFER_ERROR
@ FILETRANSFER_ERROR
Error during file transfer.
Definition: TeamTalk.h:2592
FILETRANSFER_ACTIVE
@ FILETRANSFER_ACTIVE
File transfer active.
Definition: TeamTalk.h:2594
SpeexDSP
struct SpeexDSP SpeexDSP
Speex DSP is used for specifying how recorded audio from a sound input device should be preprocessed ...
AudioPreprocessorType
AudioPreprocessorType
The types of supported audio preprocessors.
Definition: TeamTalk.h:1390
WebMVP8Codec
struct WebMVP8Codec WebMVP8Codec
WebM video codec settings.
Codec
Codec
The codecs supported.
Definition: TeamTalk.h:1463
SpeexCodec
struct SpeexCodec SpeexCodec
Speex audio codec settings for Constant Bitrate mode (CBR).
SpeexVBRCodec
struct SpeexVBRCodec SpeexVBRCodec
Speex audio codec settings for Variable Bitrate mode (VBR).
AudioConfig
struct AudioConfig AudioConfig
Audio configuration for clients in a channel.
OpusCodec
struct OpusCodec OpusCodec
OPUS audio codec settings. For detailed information about the OPUS codec check out http://www....
TTAudioPreprocessor
struct TTAudioPreprocessor TTAudioPreprocessor
Use TeamTalk's internal audio preprocessor for gain audio. Same as used for TT_SetSoundInputGainLevel...
AudioPreprocessor
struct AudioPreprocessor AudioPreprocessor
Configure the audio preprocessor specified by nPreprocessor.
WebRTCAudioPreprocessor
struct WebRTCAudioPreprocessor WebRTCAudioPreprocessor
WebRTC's audio preprocessor.
AudioCodec
struct AudioCodec AudioCodec
Struct used for specifying which audio codec a channel uses.
VideoCodec
struct VideoCodec VideoCodec
Struct used for specifying the video codec to use.
WEBRTC_AUDIOPREPROCESSOR
@ WEBRTC_AUDIOPREPROCESSOR
Use WebRTC's audio preprocessor from WebRTCAudioPreprocessor. https://webrtc.org.
Definition: TeamTalk.h:1403
SPEEXDSP_AUDIOPREPROCESSOR
@ SPEEXDSP_AUDIOPREPROCESSOR
Use the SpeexDSP audio preprocessor.
Definition: TeamTalk.h:1395
TEAMTALK_AUDIOPREPROCESSOR
@ TEAMTALK_AUDIOPREPROCESSOR
Use TeamTalk's internal audio preprocessor TTAudioPreprocessor.
Definition: TeamTalk.h:1397
WEBRTC_AUDIOPREPROCESSOR_OBSOLETE_R4332
@ WEBRTC_AUDIOPREPROCESSOR_OBSOLETE_R4332
WebRTC audio preprocessor used prior to TeamTalk v5.18. Based on WebRTC r4332.
Definition: TeamTalk.h:1400
NO_AUDIOPREPROCESSOR
@ NO_AUDIOPREPROCESSOR
Value for specifying that no audio preprocessing should occur.
Definition: TeamTalk.h:1393
NO_CODEC
@ NO_CODEC
No codec specified.
Definition: TeamTalk.h:1465
WEBM_VP8_CODEC
@ WEBM_VP8_CODEC
WebM video codec.
Definition: TeamTalk.h:1475
SPEEX_VBR_CODEC
@ SPEEX_VBR_CODEC
Speex audio codec in VBR mode, http://www.speex.org.
Definition: TeamTalk.h:1471
SPEEX_CODEC
@ SPEEX_CODEC
Speex audio codec, http://www.speex.org.
Definition: TeamTalk.h:1468
OPUS_CODEC
@ OPUS_CODEC
OPUS audio codec.
Definition: TeamTalk.h:1473
TT_DoUnBanUserEx
TEAMTALKDLL_API INT32 TT_DoUnBanUserEx(IN TTInstance *lpTTInstance, IN const BannedUser *lpBannedUser)
Unban the properties specified in BannedUser.
TT_DoJoinChannelByID
TEAMTALKDLL_API INT32 TT_DoJoinChannelByID(IN TTInstance *lpTTInstance, IN INT32 nChannelID, IN const TTCHAR *szPassword)
Join an existing channel.
TT_DoUnsubscribe
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 us...
TT_DoLoginEx
TEAMTALKDLL_API INT32 TT_DoLoginEx(IN TTInstance *lpTTInstance, IN const TTCHAR *szNickname, IN const TTCHAR *szUsername, IN const TTCHAR *szPassword, IN const TTCHAR *szClientName)
Logon to a server.
TT_DoSendFile
TEAMTALKDLL_API INT32 TT_DoSendFile(IN TTInstance *lpTTInstance, IN INT32 nChannelID, IN const TTCHAR *szLocalFilePath)
Send a file to the specified channel.
TT_DoChannelOpEx
TEAMTALKDLL_API INT32 TT_DoChannelOpEx(IN TTInstance *lpTTInstance, IN INT32 nUserID, IN INT32 nChannelID, IN const TTCHAR *szOpPassword, IN TTBOOL bMakeOperator)
Make another user operator of a channel using the szOpPassword of Channel.
TT_DoQuit
TEAMTALKDLL_API INT32 TT_DoQuit(IN TTInstance *lpTTInstance)
Quit from server.
TT_DoUnBanUser
TEAMTALKDLL_API INT32 TT_DoUnBanUser(IN TTInstance *lpTTInstance, IN const TTCHAR *szIPAddress, IN INT32 nChannelID)
Unban the user with the specified IP-address.
TT_DoSubscribe
TEAMTALKDLL_API INT32 TT_DoSubscribe(IN TTInstance *lpTTInstance, IN INT32 nUserID, IN Subscriptions uSubscriptions)
Subscribe to user events and/or data.
TT_DoListBans
TEAMTALKDLL_API INT32 TT_DoListBans(IN TTInstance *lpTTInstance, IN INT32 nChannelID, IN INT32 nIndex, IN INT32 nCount)
Issue a command to list the banned users.
TT_DoBanUserEx
TEAMTALKDLL_API INT32 TT_DoBanUserEx(IN TTInstance *lpTTInstance, IN INT32 nUserID, IN BanTypes uBanTypes)
Ban the user with nUserID using the ban types specified.
TT_DoMoveUser
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.
TT_DoNewUserAccount
TEAMTALKDLL_API INT32 TT_DoNewUserAccount(IN TTInstance *lpTTInstance, IN const UserAccount *lpUserAccount)
Issue command to create a new user account on the server.
TT_DoUpdateServer
TEAMTALKDLL_API INT32 TT_DoUpdateServer(IN TTInstance *lpTTInstance, IN const ServerProperties *lpServerProperties)
Update server properties.
TT_DoChannelOp
TEAMTALKDLL_API INT32 TT_DoChannelOp(IN TTInstance *lpTTInstance, IN INT32 nUserID, IN INT32 nChannelID, IN TTBOOL bMakeOperator)
Make another user operator of a channel.
TT_DoDeleteFile
TEAMTALKDLL_API INT32 TT_DoDeleteFile(IN TTInstance *lpTTInstance, IN INT32 nChannelID, IN INT32 nFileID)
Delete a file from a channel.
TT_DoMakeChannel
TEAMTALKDLL_API INT32 TT_DoMakeChannel(IN TTInstance *lpTTInstance, IN const Channel *lpChannel)
Make a new channel on the server.
TT_DoTextMessage
TEAMTALKDLL_API INT32 TT_DoTextMessage(IN TTInstance *lpTTInstance, IN const TextMessage *lpTextMessage)
Send a text message to either a user or a channel.
TT_DoUpdateChannel
TEAMTALKDLL_API INT32 TT_DoUpdateChannel(IN TTInstance *lpTTInstance, IN const Channel *lpChannel)
Update a channel's properties.
TT_DoJoinChannel
TEAMTALKDLL_API INT32 TT_DoJoinChannel(IN TTInstance *lpTTInstance, IN const Channel *lpChannel)
Create a new channel and join it.
TT_DoBan
TEAMTALKDLL_API INT32 TT_DoBan(IN TTInstance *lpTTInstance, IN const BannedUser *lpBannedUser)
Ban the properties specified in lpBannedUser.
TT_DoBanIPAddress
TEAMTALKDLL_API INT32 TT_DoBanIPAddress(IN TTInstance *lpTTInstance, IN const TTCHAR *szIPAddress, IN INT32 nChannelID)
Issue a ban command on an IP-address user.
TT_DoLogin
TEAMTALKDLL_API INT32 TT_DoLogin(IN TTInstance *lpTTInstance, IN const TTCHAR *szNickname, IN const TTCHAR *szUsername, IN const TTCHAR *szPassword)
Same as TT_DologinEx() but without the option to specify szClientName. Kept for backwards compatibili...
TT_DoDeleteUserAccount
TEAMTALKDLL_API INT32 TT_DoDeleteUserAccount(IN TTInstance *lpTTInstance, IN const TTCHAR *szUsername)
Issue command to delete a user account on the server.
TT_DoRemoveChannel
TEAMTALKDLL_API INT32 TT_DoRemoveChannel(IN TTInstance *lpTTInstance, IN INT32 nChannelID)
Remove a channel from a server.
TT_DoPing
TEAMTALKDLL_API INT32 TT_DoPing(IN TTInstance *lpTTInstance)
Ping server and wait for server to reply.
TT_DoKickUser
TEAMTALKDLL_API INT32 TT_DoKickUser(IN TTInstance *lpTTInstance, IN INT32 nUserID, IN INT32 nChannelID)
Kick user from either channel or server.
TT_DoLogout
TEAMTALKDLL_API INT32 TT_DoLogout(IN TTInstance *lpTTInstance)
Logout of the server.
TT_DoRecvFile
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.
TT_DoListUserAccounts
TEAMTALKDLL_API INT32 TT_DoListUserAccounts(IN TTInstance *lpTTInstance, IN INT32 nIndex, IN INT32 nCount)
Issue command to list user accounts on the server.
TT_DoLeaveChannel
TEAMTALKDLL_API INT32 TT_DoLeaveChannel(IN TTInstance *lpTTInstance)
Leave the current channel.
TT_DoChangeStatus
TEAMTALKDLL_API INT32 TT_DoChangeStatus(IN TTInstance *lpTTInstance, IN INT32 nStatusMode, IN const TTCHAR *szStatusMessage)
Change the client instance's currect status.
TT_DoSaveConfig
TEAMTALKDLL_API INT32 TT_DoSaveConfig(IN TTInstance *lpTTInstance)
Save the server's current state to its settings file (typically the server's .xml file).
TT_DoChangeNickname
TEAMTALKDLL_API INT32 TT_DoChangeNickname(IN TTInstance *lpTTInstance, IN const TTCHAR *szNewNick)
Change the client instance's nick name.
TT_DoBanUser
TEAMTALKDLL_API INT32 TT_DoBanUser(IN TTInstance *lpTTInstance, IN INT32 nUserID, IN INT32 nChannelID)
Issue a ban command on a user.
TT_DoQueryServerStats
TEAMTALKDLL_API INT32 TT_DoQueryServerStats(IN TTInstance *lpTTInstance)
Get the server's current statistics.
TT_Connect
TEAMTALKDLL_API TTBOOL TT_Connect(IN TTInstance *lpTTInstance, IN const TTCHAR *szHostAddress, IN INT32 nTcpPort, IN INT32 nUdpPort, IN INT32 nLocalTcpPort, IN INT32 nLocalUdpPort, IN TTBOOL bEncrypted)
Connect to a server.
TT_ConnectSysID
TEAMTALKDLL_API TTBOOL TT_ConnectSysID(IN TTInstance *lpTTInstance, IN const TTCHAR *szHostAddress, IN INT32 nTcpPort, IN INT32 nUdpPort, IN INT32 nLocalTcpPort, IN INT32 nLocalUdpPort, IN TTBOOL bEncrypted, IN const TTCHAR *szSystemID)
Same as TT_Connect() but the option of providing a unique system-ID.
TT_Disconnect
TEAMTALKDLL_API TTBOOL TT_Disconnect(IN TTInstance *lpTTInstance)
Disconnect from the server.
JitterConfig
struct JitterConfig JitterConfig
Configuration parameters for the Jitter Buffer.
TT_QueryMaxPayload
TEAMTALKDLL_API TTBOOL TT_QueryMaxPayload(IN TTInstance *lpTTInstance, IN INT32 nUserID)
Query the maximum size of UDP data packets to the user or server.
ClientKeepAlive
struct ClientKeepAlive ClientKeepAlive
Control timers for sending keep alive information to the server.
TT_GetClientKeepAlive
TEAMTALKDLL_API TTBOOL TT_GetClientKeepAlive(IN TTInstance *lpTTInstance, OUT ClientKeepAlive *lpClientKeepAlive)
Get the client instance's current keep alive settings.
EncryptionContext
struct EncryptionContext EncryptionContext
Configure peer verification for encrypted connection.
TT_ConnectEx
TEAMTALKDLL_API TTBOOL TT_ConnectEx(IN TTInstance *lpTTInstance, IN const TTCHAR *szHostAddress, IN INT32 nTcpPort, IN INT32 nUdpPort, IN const TTCHAR *szBindIPAddr, IN INT32 nLocalTcpPort, IN INT32 nLocalUdpPort, IN TTBOOL bEncrypted)
Bind to specific IP-address prior to connecting to server.
TT_GetClientStatistics
TEAMTALKDLL_API TTBOOL TT_GetClientStatistics(IN TTInstance *lpTTInstance, OUT ClientStatistics *lpClientStatistics)
Retrieve client statistics of bandwidth usage and response times.
TT_SetClientKeepAlive
TEAMTALKDLL_API TTBOOL TT_SetClientKeepAlive(IN TTInstance *lpTTInstance, IN const ClientKeepAlive *lpClientKeepAlive)
Update the client instance's default keep alive settings.
TT_SetEncryptionContext
TEAMTALKDLL_API TTBOOL TT_SetEncryptionContext(IN TTInstance *lpTTInstance, const EncryptionContext *lpEncryptionContext)
Setup encryption properties prior to TT_Connect().
ClientStatistics
struct ClientStatistics ClientStatistics
Statistics of bandwidth usage and ping times in the local client instance.
TT_SendDesktopInput
TEAMTALKDLL_API TTBOOL TT_SendDesktopInput(IN TTInstance *lpTTInstance, IN INT32 nUserID, IN const DesktopInput lpDesktopInputs[TT_DESKTOPINPUT_MAX], IN INT32 nDesktopInputCount)
Send a mouse or keyboard event to a shared desktop window.
TT_DesktopInput_Execute
TEAMTALKDLL_API INT32 TT_DesktopInput_Execute(IN const DesktopInput *lpDesktopInputs, IN INT32 nDesktopInputCount)
Execute desktop (mouse or keyboard) input.
BitmapFormat
BitmapFormat
The bitmap format used for a DesktopWindow.
Definition: TeamTalk.h:935
TT_Windows_GetDesktopWindowHWND
TEAMTALKDLL_API TTBOOL TT_Windows_GetDesktopWindowHWND(IN INT32 nIndex, OUT HWND *lpHWnd)
Enumerate all the handles (HWND) of visible windows. Increment nIndex until the function returns FALS...
TT_Windows_GetDesktopActiveHWND
TEAMTALKDLL_API HWND TT_Windows_GetDesktopActiveHWND(void)
Get the handle (HWND) of the window which is currently active (focused) on the Windows desktop.
TT_MacOS_GetWindow
TEAMTALKDLL_API TTBOOL TT_MacOS_GetWindow(IN INT32 nIndex, OUT ShareWindow *lpShareWindow)
Enumerate all windows on the desktop. Increment nIndex until the function returns FALSE....
TT_ReleaseUserDesktopWindow
TEAMTALKDLL_API TTBOOL TT_ReleaseUserDesktopWindow(IN TTInstance *lpTTInstance, IN DesktopWindow *lpDesktopWindow)
Release memory allocated by the DesktopWindow.
TT_DesktopInput_KeyTranslate
TEAMTALKDLL_API INT32 TT_DesktopInput_KeyTranslate(TTKeyTranslate nTranslate, IN const DesktopInput *lpDesktopInputs, OUT DesktopInput *lpTranslatedDesktopInputs, IN INT32 nDesktopInputCount)
Translate platform key-code to and from TeamTalk's intermediate format.
TT_AcquireUserDesktopWindow
TEAMTALKDLL_API DesktopWindow * TT_AcquireUserDesktopWindow(IN TTInstance *lpTTInstance, IN INT32 nUserID)
Acquire a user's desktop window (bitmap image).
TTKeyTranslate
TTKeyTranslate
Translate to and from TeamTalk's intermediate key-codes (TTKEYCODE).
Definition: TeamTalk.h:7707
DesktopProtocol
DesktopProtocol
The protocols supported for transferring a DesktopWindow.
Definition: TeamTalk.h:962
TT_Windows_GetWindow
TEAMTALKDLL_API TTBOOL TT_Windows_GetWindow(IN HWND hWnd, OUT ShareWindow *lpShareWindow)
Get the properties of a window from its window handle (HWND).
TT_CloseDesktopWindow
TEAMTALKDLL_API TTBOOL TT_CloseDesktopWindow(IN TTInstance *lpTTInstance)
Close the current desktop session.
TT_AcquireUserDesktopWindowEx
TEAMTALKDLL_API DesktopWindow * TT_AcquireUserDesktopWindowEx(IN TTInstance *lpTTInstance, IN INT32 nUserID, IN BitmapFormat nBitmapFormat)
Same as TT_AcquireUserDesktopWindow() except an extra option for converting bitmap to a different for...
DesktopInput
struct DesktopInput DesktopInput
A struct containing a mouse or keyboard event.
TT_SendDesktopWindowFromHWND
TEAMTALKDLL_API INT32 TT_SendDesktopWindowFromHWND(IN TTInstance *lpTTInstance, IN HWND hWnd, IN BitmapFormat nBitmapFormat, IN DesktopProtocol nDesktopProtocol)
Transmit the specified window in a desktop session.
DesktopKeyState
DesktopKeyState
The state of a key (or mouse button), i.e. if it's pressed or released.
Definition: TeamTalk.h:1005
ShareWindow
struct ShareWindow ShareWindow
A struct which describes the properties of a window which can be shared.
TT_MacOS_GetWindowFromWindowID
TEAMTALKDLL_API TTBOOL TT_MacOS_GetWindowFromWindowID(IN INT64 nWindowID, OUT ShareWindow *lpShareWindow)
Get information about a window by passing its handle (CGWindowID).
TT_SendDesktopFromWindowID
TEAMTALKDLL_API INT32 TT_SendDesktopFromWindowID(IN TTInstance *lpTTInstance, IN INT64 nWindowID, IN BitmapFormat nBitmapFormat, IN DesktopProtocol nDesktopProtocol)
Transmit the specified window in a desktop session.
TT_PaintDesktopWindowEx
TEAMTALKDLL_API TTBOOL TT_PaintDesktopWindowEx(IN TTInstance *lpTTInstance, IN INT32 nUserID, IN HDC hDC, IN INT32 XDest, IN INT32 YDest, IN INT32 nDestWidth, IN INT32 nDestHeight, IN INT32 XSrc, IN INT32 YSrc, IN INT32 nSrcWidth, IN INT32 nSrcHeight)
Paint user's desktop window using a Windows' DC (device context).
TT_SendDesktopCursorPosition
TEAMTALKDLL_API TTBOOL TT_SendDesktopCursorPosition(IN TTInstance *lpTTInstance, IN UINT16 nPosX, IN UINT16 nPosY)
Send the position of mouse cursor to users in the same channel.
TT_SendDesktopWindow
TEAMTALKDLL_API INT32 TT_SendDesktopWindow(IN TTInstance *lpTTInstance, IN const DesktopWindow *lpDesktopWindow, IN BitmapFormat nConvertBmpFormat)
Transmit a desktop window (bitmap) to users in the same channel.
TT_Palette_GetColorTable
TEAMTALKDLL_API unsigned char * TT_Palette_GetColorTable(IN BitmapFormat nBmpPalette, IN INT32 nIndex)
Get RGB values of the palette for the bitmap format.
TT_PaintDesktopWindow
TEAMTALKDLL_API TTBOOL TT_PaintDesktopWindow(IN TTInstance *lpTTInstance, IN INT32 nUserID, IN HDC hDC, IN INT32 XDest, IN INT32 YDest, IN INT32 nDestWidth, IN INT32 nDestHeight)
Paint user's desktop window using a Windows' DC (device context).
TT_Windows_GetDesktopHWND
TEAMTALKDLL_API HWND TT_Windows_GetDesktopHWND(void)
Get the handle (HWND) of the Windows desktop (full desktop).
DesktopKeyStates
UINT32 DesktopKeyStates
Mask of key states.
Definition: TeamTalk.h:1015
TT_DESKTOPINPUT_MAX
#define TT_DESKTOPINPUT_MAX
Definition: TeamTalk.h:162
DesktopWindow
struct DesktopWindow DesktopWindow
A struct containing the properties of a shared desktop window.
BMP_RGB16_555
@ BMP_RGB16_555
The bitmap is a 16-bit colored bitmap. The maximum pixels.
Definition: TeamTalk.h:946
BMP_RGB8_PALETTE
@ BMP_RGB8_PALETTE
The bitmap is a 256-colored bitmap requiring a palette. The default 256 colored palette is the Netsca...
Definition: TeamTalk.h:943
BMP_RGB24
@ BMP_RGB24
The bitmap is a 24-bit colored bitmap. The maximum size of a 24-bit bitmap is 4095 blocks of 85 by 16...
Definition: TeamTalk.h:950
BMP_RGB32
@ BMP_RGB32
The bitmap is a 32-bit colored bitmap. The maximum size of a 32-bit bitmap is 4095 blocks of 51 by 20...
Definition: TeamTalk.h:954
BMP_NONE
@ BMP_NONE
Used to denote nothing selected.
Definition: TeamTalk.h:937
TTKEY_TTKEYCODE_TO_MACKEYCODE
@ TTKEY_TTKEYCODE_TO_MACKEYCODE
Translate from TTKEYCODE to Mac OS X Carbon kVK_* key-code.
Definition: TeamTalk.h:7722
TTKEY_NO_TRANSLATE
@ TTKEY_NO_TRANSLATE
Perform no translation.
Definition: TeamTalk.h:7709
TTKEY_MACKEYCODE_TO_TTKEYCODE
@ TTKEY_MACKEYCODE_TO_TTKEYCODE
Translate from Mac OS X Carbon kVK_* key-code to TTKEYCODE. The Mac OS X key-codes are defined in Car...
Definition: TeamTalk.h:7719
TTKEY_TTKEYCODE_TO_WINKEYCODE
@ TTKEY_TTKEYCODE_TO_WINKEYCODE
Translate from TTKEYCODE to Windows scan-code.
Definition: TeamTalk.h:7715
TTKEY_WINKEYCODE_TO_TTKEYCODE
@ TTKEY_WINKEYCODE_TO_TTKEYCODE
Translate from Windows scan-code to TTKEYCODE. The Windows scan-code can be retrieved in Windows' WM_...
Definition: TeamTalk.h:7713
DESKTOPPROTOCOL_ZLIB_1
@ DESKTOPPROTOCOL_ZLIB_1
Desktop protocol based on ZLIB for image compression and UDP for data transmission.
Definition: TeamTalk.h:965
DESKTOPKEYSTATE_NONE
@ DESKTOPKEYSTATE_NONE
The key is ignored.
Definition: TeamTalk.h:1007
DESKTOPKEYSTATE_DOWN
@ DESKTOPKEYSTATE_DOWN
The key is pressed.
Definition: TeamTalk.h:1009
DESKTOPKEYSTATE_UP
@ DESKTOPKEYSTATE_UP
The key is released.
Definition: TeamTalk.h:1011
TT_GetErrorMessage
TEAMTALKDLL_API void TT_GetErrorMessage(IN INT32 nError, OUT TTCHAR szErrorMsg[TT_STRLEN])
Get textual discription of an error message.
ClientError
ClientError
Errors which can occur either as a result of client commands or as a result of internal errors.
Definition: TeamTalk.h:2844
ClientErrorMsg
struct ClientErrorMsg ClientErrorMsg
Struct containing an error message.
CMDERR_MAX_FILETRANSFERS_EXCEEDED
@ CMDERR_MAX_FILETRANSFERS_EXCEEDED
Maximum number of file transfers exceeded.
Definition: TeamTalk.h:2984
CMDERR_LOGINSERVICE_UNAVAILABLE
@ CMDERR_LOGINSERVICE_UNAVAILABLE
The login service is currently unavailable.
Definition: TeamTalk.h:3085
CMDERR_MISSING_PARAMETER
@ CMDERR_MISSING_PARAMETER
Command cannot be performed due to missing parameter. Only used internally.
Definition: TeamTalk.h:2860
CMDERR_SYNTAX_ERROR
@ CMDERR_SYNTAX_ERROR
Command has syntax error. Only used internally.
Definition: TeamTalk.h:2852
CMDERR_SERVER_BANNED
@ CMDERR_SERVER_BANNED
IP-address has been banned from server.
Definition: TeamTalk.h:2903
INTERR_SNDINPUT_FAILURE
@ INTERR_SNDINPUT_FAILURE
A sound input device failed.
Definition: TeamTalk.h:3103
INTERR_SPEEXDSP_INIT_FAILED
@ INTERR_SPEEXDSP_INIT_FAILED
Same as INTERR_AUDIOPREPROCESSOR_INIT_FAILED.
Definition: TeamTalk.h:3118
CMDERR_NOT_IN_CHANNEL
@ CMDERR_NOT_IN_CHANNEL
Cannot leave channel because not in channel.
Definition: TeamTalk.h:3002
CMDERR_INCOMPATIBLE_PROTOCOLS
@ CMDERR_INCOMPATIBLE_PROTOCOLS
The server uses a protocol which is incompatible with the client instance.
Definition: TeamTalk.h:2863
CMDERR_MAX_DISKUSAGE_EXCEEDED
@ CMDERR_MAX_DISKUSAGE_EXCEEDED
Cannot upload file because disk quota will be exceeded.
Definition: TeamTalk.h:2942
CMDERR_ACCOUNT_NOT_FOUND
@ CMDERR_ACCOUNT_NOT_FOUND
Cannot find user account.
Definition: TeamTalk.h:3060
CMDERR_INVALID_USERNAME
@ CMDERR_INVALID_USERNAME
Invalid username for UserAccount.
Definition: TeamTalk.h:2871
INTERR_SNDOUTPUT_FAILURE
@ INTERR_SNDOUTPUT_FAILURE
A sound output device failed.
Definition: TeamTalk.h:3112
CMDERR_CHANNEL_HAS_USERS
@ CMDERR_CHANNEL_HAS_USERS
Cannot process command since channel is not empty.
Definition: TeamTalk.h:3080
INTERR_AUDIOPREPROCESSOR_INIT_FAILED
@ INTERR_AUDIOPREPROCESSOR_INIT_FAILED
AudioPreprocessor failed to initialize.
Definition: TeamTalk.h:3126
CMDERR_FILESHARING_DISABLED
@ CMDERR_FILESHARING_DISABLED
Server does not allow file transfers.
Definition: TeamTalk.h:3075
CMDERR_COMMAND_FLOOD
@ CMDERR_COMMAND_FLOOD
Command flooding prevented by server.
Definition: TeamTalk.h:2971
CMDERR_MAX_LOGINS_PER_IPADDRESS_EXCEEDED
@ CMDERR_MAX_LOGINS_PER_IPADDRESS_EXCEEDED
The maximum number of logins allowed per IP-address has been exceeded.
Definition: TeamTalk.h:2961
CMDERR_ALREADY_IN_CHANNEL
@ CMDERR_ALREADY_IN_CHANNEL
Cannot join same channel twice.
Definition: TeamTalk.h:3007
CMDERR_BAN_NOT_FOUND
@ CMDERR_BAN_NOT_FOUND
Banned IP-address does not exist.
Definition: TeamTalk.h:3045
CMDERR_CHANNEL_ALREADY_EXISTS
@ CMDERR_CHANNEL_ALREADY_EXISTS
Channel already exists.
Definition: TeamTalk.h:3011
CMDERR_INCORRECT_OP_PASSWORD
@ CMDERR_INCORRECT_OP_PASSWORD
Invalid password for becoming channel operator.
Definition: TeamTalk.h:2948
CMDERR_CHANNEL_BANNED
@ CMDERR_CHANNEL_BANNED
Banned from joining a channel.
Definition: TeamTalk.h:2978
CMDERR_CHANNEL_NOT_FOUND
@ CMDERR_CHANNEL_NOT_FOUND
Channel does not exist.
Definition: TeamTalk.h:3029
INTERR_AUDIOCODEC_INIT_FAILED
@ INTERR_AUDIOCODEC_INIT_FAILED
Audio codec used by channel failed to initialize. Ensure the settings specified in AudioCodec are val...
Definition: TeamTalk.h:3116
CMDERR_NOT_LOGGEDIN
@ CMDERR_NOT_LOGGEDIN
Client instance has not been authenticated.
Definition: TeamTalk.h:2993
CMDERR_MAX_CHANNELS_EXCEEDED
@ CMDERR_MAX_CHANNELS_EXCEEDED
The maximum number of channels has been exceeded.
Definition: TeamTalk.h:2965
CMDERR_FILE_ALREADY_EXISTS
@ CMDERR_FILE_ALREADY_EXISTS
File already exist.
Definition: TeamTalk.h:3070
CMDERR_OPENFILE_FAILED
@ CMDERR_OPENFILE_FAILED
Server failed to open file.
Definition: TeamTalk.h:3055
CMDERR_CHANNEL_CANNOT_BE_HIDDEN
@ CMDERR_CHANNEL_CANNOT_BE_HIDDEN
Cannot apply CHANNEL_HIDDEN to Channel's type.
Definition: TeamTalk.h:3091
CMDERR_AUDIOCODEC_BITRATE_LIMIT_EXCEEDED
@ CMDERR_AUDIOCODEC_BITRATE_LIMIT_EXCEEDED
The selected AudioCodec exceeds what the server allows.
Definition: TeamTalk.h:2954
CMDERR_SUCCESS
@ CMDERR_SUCCESS
Command indicating success. Only used internally.
Definition: TeamTalk.h:2846
CMDERR_ALREADY_LOGGEDIN
@ CMDERR_ALREADY_LOGGEDIN
Already logged in.
Definition: TeamTalk.h:2998
CMDERR_USER_NOT_FOUND
@ CMDERR_USER_NOT_FOUND
User not found.
Definition: TeamTalk.h:3040
INTERR_SNDEFFECT_FAILURE
@ INTERR_SNDEFFECT_FAILURE
SoundDeviceEffects failed to initialize.
Definition: TeamTalk.h:3141
CMDERR_UNKNOWN_AUDIOCODEC
@ CMDERR_UNKNOWN_AUDIOCODEC
The server does not support the audio codec specified by the client. Introduced in version 4....
Definition: TeamTalk.h:2868
INTERR_TTMESSAGE_QUEUE_OVERFLOW
@ INTERR_TTMESSAGE_QUEUE_OVERFLOW
TTMessage event queue overflowed.
Definition: TeamTalk.h:3134
CMDERR_FILETRANSFER_NOT_FOUND
@ CMDERR_FILETRANSFER_NOT_FOUND
File transfer doesn't exists.
Definition: TeamTalk.h:3050
CMDERR_FILE_NOT_FOUND
@ CMDERR_FILE_NOT_FOUND
File does not exist.
Definition: TeamTalk.h:3065
CMDERR_MAX_SERVER_USERS_EXCEEDED
@ CMDERR_MAX_SERVER_USERS_EXCEEDED
Login failed due to maximum number of users on server.
Definition: TeamTalk.h:2892
CMDERR_INVALID_ACCOUNT
@ CMDERR_INVALID_ACCOUNT
Invalid username or password for account.
Definition: TeamTalk.h:2886
CMDERR_NOT_AUTHORIZED
@ CMDERR_NOT_AUTHORIZED
Command not authorized.
Definition: TeamTalk.h:2935
CMDERR_INCORRECT_CHANNEL_PASSWORD
@ CMDERR_INCORRECT_CHANNEL_PASSWORD
Invalid channel password.
Definition: TeamTalk.h:2880
CMDERR_UNKNOWN_COMMAND
@ CMDERR_UNKNOWN_COMMAND
The server doesn't support the issued command.
Definition: TeamTalk.h:2857
CMDERR_MAX_CHANNEL_USERS_EXCEEDED
@ CMDERR_MAX_CHANNEL_USERS_EXCEEDED
Cannot join channel because it has maximum number of users.
Definition: TeamTalk.h:2898
TTMessage
struct TTMessage TTMessage
A struct containing the properties of an event.
ClientEvent
ClientEvent
TeamTalk client event messages.
Definition: TeamTalk.h:3162
TTType
TTType
Definition: TeamTalk.h:3923
CLIENTEVENT_SOUNDDEVICE_ADDED
@ CLIENTEVENT_SOUNDDEVICE_ADDED
New sound device available.
Definition: TeamTalk.h:3809
CLIENTEVENT_CMD_SUCCESS
@ CLIENTEVENT_CMD_SUCCESS
The server successfully processed a command issued by the local client instance.
Definition: TeamTalk.h:3271
CLIENTEVENT_USER_VIDEOCAPTURE
@ CLIENTEVENT_USER_VIDEOCAPTURE
A new video frame from a video capture device was received from a user.
Definition: TeamTalk.h:3525
CLIENTEVENT_CMD_USER_TEXTMSG
@ CLIENTEVENT_CMD_USER_TEXTMSG
A user has sent a text-message.
Definition: TeamTalk.h:3377
CLIENTEVENT_CMD_CHANNEL_NEW
@ CLIENTEVENT_CMD_CHANNEL_NEW
A new channel has been created.
Definition: TeamTalk.h:3387
CLIENTEVENT_CMD_USER_LOGGEDOUT
@ CLIENTEVENT_CMD_USER_LOGGEDOUT
A client logged out of the server.
Definition: TeamTalk.h:3338
CLIENTEVENT_USER_MEDIAFILE_VIDEO
@ CLIENTEVENT_USER_MEDIAFILE_VIDEO
A new video frame from a video media file was received from a user.
Definition: TeamTalk.h:3539
CLIENTEVENT_HOTKEY
@ CLIENTEVENT_HOTKEY
A hotkey has been acticated or deactivated.
Definition: TeamTalk.h:3665
CLIENTEVENT_DESKTOPWINDOW_TRANSFER
@ CLIENTEVENT_DESKTOPWINDOW_TRANSFER
Used for tracking when a desktop window has been transmitted to the server.
Definition: TeamTalk.h:3720
CLIENTEVENT_CMD_USERACCOUNT
@ CLIENTEVENT_CMD_USERACCOUNT
A user account has been received from the server.
Definition: TeamTalk.h:3460
CLIENTEVENT_CMD_PROCESSING
@ CLIENTEVENT_CMD_PROCESSING
A command issued by TT_Do* methods is being processed.
Definition: TeamTalk.h:3243
CLIENTEVENT_CMD_MYSELF_LOGGEDOUT
@ CLIENTEVENT_CMD_MYSELF_LOGGEDOUT
The client instance logged out of the server.
Definition: TeamTalk.h:3300
CLIENTEVENT_SOUNDDEVICE_NEW_DEFAULT_OUTPUT_COMDEVICE
@ CLIENTEVENT_SOUNDDEVICE_NEW_DEFAULT_OUTPUT_COMDEVICE
New sound output device has been selected as default communication device.
Definition: TeamTalk.h:3917
CLIENTEVENT_USER_AUDIOBLOCK
@ CLIENTEVENT_USER_AUDIOBLOCK
A new audio block can be extracted.
Definition: TeamTalk.h:3623
CLIENTEVENT_CMD_FILE_REMOVE
@ CLIENTEVENT_CMD_FILE_REMOVE
A file has been removed from a channel.
Definition: TeamTalk.h:3450
CLIENTEVENT_CMD_BANNEDUSER
@ CLIENTEVENT_CMD_BANNEDUSER
A banned user has been received from the server.
Definition: TeamTalk.h:3470
CLIENTEVENT_CMD_SERVER_UPDATE
@ CLIENTEVENT_CMD_SERVER_UPDATE
Server has updated its settings (server name, MOTD, etc.)
Definition: TeamTalk.h:3419
CLIENTEVENT_USER_STATECHANGE
@ CLIENTEVENT_USER_STATECHANGE
A user state has changed.
Definition: TeamTalk.h:3511
CLIENTEVENT_USER_DESKTOPINPUT
@ CLIENTEVENT_USER_DESKTOPINPUT
Desktop input (mouse or keyboard input) has been received from a user.
Definition: TeamTalk.h:3591
CLIENTEVENT_CON_CRYPT_ERROR
@ CLIENTEVENT_CON_CRYPT_ERROR
Failed to connect to server due to encryption error.
Definition: TeamTalk.h:3188
CLIENTEVENT_CON_FAILED
@ CLIENTEVENT_CON_FAILED
Failed to connect to server.
Definition: TeamTalk.h:3199
CLIENTEVENT_USER_DESKTOPCURSOR
@ CLIENTEVENT_USER_DESKTOPCURSOR
A user has sent the position of the mouse cursor.
Definition: TeamTalk.h:3567
CLIENTEVENT_VOICE_ACTIVATION
@ CLIENTEVENT_VOICE_ACTIVATION
Voice activation has triggered transmission.
Definition: TeamTalk.h:3653
CLIENTEVENT_SOUNDDEVICE_NEW_DEFAULT_OUTPUT
@ CLIENTEVENT_SOUNDDEVICE_NEW_DEFAULT_OUTPUT
New sound device has been selected as default output device.
Definition: TeamTalk.h:3879
CLIENTEVENT_CON_LOST
@ CLIENTEVENT_CON_LOST
Connection to server has been lost.
Definition: TeamTalk.h:3216
CLIENTEVENT_FILETRANSFER
@ CLIENTEVENT_FILETRANSFER
A file transfer is processing.
Definition: TeamTalk.h:3703
CLIENTEVENT_CMD_CHANNEL_UPDATE
@ CLIENTEVENT_CMD_CHANNEL_UPDATE
A channel's properties has been updated.
Definition: TeamTalk.h:3397
CLIENTEVENT_CMD_MYSELF_KICKED
@ CLIENTEVENT_CMD_MYSELF_KICKED
The client instance was kicked from a channel.
Definition: TeamTalk.h:3311
CLIENTEVENT_SOUNDDEVICE_NEW_DEFAULT_INPUT
@ CLIENTEVENT_SOUNDDEVICE_NEW_DEFAULT_INPUT
New sound device has been selected as default input device.
Definition: TeamTalk.h:3862
CLIENTEVENT_NONE
@ CLIENTEVENT_NONE
Definition: TeamTalk.h:3163
CLIENTEVENT_CMD_USERACCOUNT_REMOVE
@ CLIENTEVENT_CMD_USERACCOUNT_REMOVE
A user account has been removed.
Definition: TeamTalk.h:3490
CLIENTEVENT_CON_SUCCESS
@ CLIENTEVENT_CON_SUCCESS
Connected successfully to the server.
Definition: TeamTalk.h:3177
CLIENTEVENT_USER_DESKTOPWINDOW
@ CLIENTEVENT_USER_DESKTOPWINDOW
A new or updated desktop window has been received from a user.
Definition: TeamTalk.h:3555
CLIENTEVENT_SOUNDDEVICE_NEW_DEFAULT_INPUT_COMDEVICE
@ CLIENTEVENT_SOUNDDEVICE_NEW_DEFAULT_INPUT_COMDEVICE
New sound input device has been selected as default communication device.
Definition: TeamTalk.h:3898
CLIENTEVENT_CMD_USER_UPDATE
@ CLIENTEVENT_CMD_USER_UPDATE
User changed properties.
Definition: TeamTalk.h:3348
CLIENTEVENT_USER_RECORD_MEDIAFILE
@ CLIENTEVENT_USER_RECORD_MEDIAFILE
A media file recording has changed status.
Definition: TeamTalk.h:3605
CLIENTEVENT_USER_FIRSTVOICESTREAMPACKET
@ CLIENTEVENT_USER_FIRSTVOICESTREAMPACKET
The first voice packet of a new voice stream has been received.
Definition: TeamTalk.h:3792
CLIENTEVENT_LOCAL_MEDIAFILE
@ CLIENTEVENT_LOCAL_MEDIAFILE
Media file played locally is processing.
Definition: TeamTalk.h:3748
CLIENTEVENT_CMD_USER_JOINED
@ CLIENTEVENT_CMD_USER_JOINED
A user has joined a channel.
Definition: TeamTalk.h:3358
CLIENTEVENT_HOTKEY_TEST
@ CLIENTEVENT_HOTKEY_TEST
A button was pressed or released on the user's keyboard or mouse.
Definition: TeamTalk.h:3685
CLIENTEVENT_CMD_ERROR
@ CLIENTEVENT_CMD_ERROR
The server rejected a command issued by the local client instance.
Definition: TeamTalk.h:3258
CLIENTEVENT_CMD_MYSELF_LOGGEDIN
@ CLIENTEVENT_CMD_MYSELF_LOGGEDIN
The client instance successfully logged on to server.
Definition: TeamTalk.h:3290
CLIENTEVENT_CMD_SERVERSTATISTICS
@ CLIENTEVENT_CMD_SERVERSTATISTICS
Server statistics available.
Definition: TeamTalk.h:3429
CLIENTEVENT_STREAM_MEDIAFILE
@ CLIENTEVENT_STREAM_MEDIAFILE
Media file being streamed to a channel is processing.
Definition: TeamTalk.h:3734
CLIENTEVENT_AUDIOINPUT
@ CLIENTEVENT_AUDIOINPUT
Progress is audio being injected as STREAMTYPE_VOICE.
Definition: TeamTalk.h:3771
CLIENTEVENT_CMD_USERACCOUNT_NEW
@ CLIENTEVENT_CMD_USERACCOUNT_NEW
A user account has been created.
Definition: TeamTalk.h:3480
CLIENTEVENT_CMD_FILE_NEW
@ CLIENTEVENT_CMD_FILE_NEW
A new file is added to a channel.
Definition: TeamTalk.h:3442
CLIENTEVENT_CMD_USER_LEFT
@ CLIENTEVENT_CMD_USER_LEFT
User has left a channel.
Definition: TeamTalk.h:3366
CLIENTEVENT_CMD_USER_LOGGEDIN
@ CLIENTEVENT_CMD_USER_LOGGEDIN
A new user logged on to the server.
Definition: TeamTalk.h:3323
CLIENTEVENT_CMD_CHANNEL_REMOVE
@ CLIENTEVENT_CMD_CHANNEL_REMOVE
A channel has been removed.
Definition: TeamTalk.h:3408
CLIENTEVENT_SOUNDDEVICE_UNPLUGGED
@ CLIENTEVENT_SOUNDDEVICE_UNPLUGGED
Sound device unplugged.
Definition: TeamTalk.h:3845
CLIENTEVENT_SOUNDDEVICE_REMOVED
@ CLIENTEVENT_SOUNDDEVICE_REMOVED
Sound device removed.
Definition: TeamTalk.h:3827
CLIENTEVENT_CON_MAX_PAYLOAD_UPDATED
@ CLIENTEVENT_CON_MAX_PAYLOAD_UPDATED
The maximum size of the payload put into UDP packets has been updated.
Definition: TeamTalk.h:3228
CLIENTEVENT_INTERNAL_ERROR
@ CLIENTEVENT_INTERNAL_ERROR
An internal error occurred in the client instance.
Definition: TeamTalk.h:3638
__CLIENTSTATISTICS
@ __CLIENTSTATISTICS
Definition: TeamTalk.h:3930
__OPUSCODEC
@ __OPUSCODEC
Definition: TeamTalk.h:3928
__DESKTOPINPUT
@ __DESKTOPINPUT
Definition: TeamTalk.h:3955
__BANNEDUSER
@ __BANNEDUSER
Definition: TeamTalk.h:3926
__ABUSEPREVENTION
@ __ABUSEPREVENTION
Definition: TeamTalk.h:3970
__AUDIOFORMAT
@ __AUDIOFORMAT
Definition: TeamTalk.h:3950
__USERACCOUNT
@ __USERACCOUNT
Definition: TeamTalk.h:3942
__SERVERPROPERTIES
@ __SERVERPROPERTIES
Definition: TeamTalk.h:3934
__AUDIOPREPROCESSORTYPE
@ __AUDIOPREPROCESSORTYPE
Definition: TeamTalk.h:3958
__TEXTMESSAGE
@ __TEXTMESSAGE
Definition: TeamTalk.h:3938
__ENCRYPTIONCONTEXT
@ __ENCRYPTIONCONTEXT
Definition: TeamTalk.h:3967
__VIDEOFORMAT
@ __VIDEOFORMAT
Definition: TeamTalk.h:3927
__VIDEOCAPTUREDEVICE
@ __VIDEOCAPTUREDEVICE
Definition: TeamTalk.h:3944
__AUDIOBLOCK
@ __AUDIOBLOCK
Definition: TeamTalk.h:3949
__JITTERCONFIG
@ __JITTERCONFIG
Definition: TeamTalk.h:3965
__TTAUDIOPREPROCESSOR
@ __TTAUDIOPREPROCESSOR
Definition: TeamTalk.h:3960
__SOUNDDEVICE
@ __SOUNDDEVICE
Definition: TeamTalk.h:3936
__CLIENTKEEPALIVE
@ __CLIENTKEEPALIVE
Definition: TeamTalk.h:3962
__MEDIAFILEPLAYBACK
@ __MEDIAFILEPLAYBACK
Definition: TeamTalk.h:3961
__STREAMTYPE
@ __STREAMTYPE
Definition: TeamTalk.h:3957
__TTMESSAGE
@ __TTMESSAGE
Definition: TeamTalk.h:3940
__SOUNDDEVICEEFFECTS
@ __SOUNDDEVICEEFFECTS
Definition: TeamTalk.h:3968
__AUDIOINPUTPROGRESS
@ __AUDIOINPUTPROGRESS
Definition: TeamTalk.h:3964
__NONE
@ __NONE
Definition: TeamTalk.h:3924
__DESKTOPWINDOW
@ __DESKTOPWINDOW
Definition: TeamTalk.h:3969
__UINT32
@ __UINT32
Definition: TeamTalk.h:3963
__CHANNEL
@ __CHANNEL
Definition: TeamTalk.h:3929
__AUDIOCONFIG
@ __AUDIOCONFIG
Definition: TeamTalk.h:3946
__USERSTATISTICS
@ __USERSTATISTICS
Definition: TeamTalk.h:3943
__USER
@ __USER
Definition: TeamTalk.h:3941
__SERVERSTATISTICS
@ __SERVERSTATISTICS
Definition: TeamTalk.h:3935
__WEBMVP8CODEC
@ __WEBMVP8CODEC
Definition: TeamTalk.h:3939
__CLIENTERRORMSG
@ __CLIENTERRORMSG
Definition: TeamTalk.h:3952
__INT32
@ __INT32
Definition: TeamTalk.h:3954
__VIDEOFRAME
@ __VIDEOFRAME
Definition: TeamTalk.h:3948
__FILETRANSFER
@ __FILETRANSFER
Definition: TeamTalk.h:3932
__WEBRTCAUDIOPREPROCESSOR
@ __WEBRTCAUDIOPREPROCESSOR
Definition: TeamTalk.h:3966
__SPEEXDSP
@ __SPEEXDSP
Definition: TeamTalk.h:3956
__MEDIAFILESTATUS
@ __MEDIAFILESTATUS
Definition: TeamTalk.h:3933
__AUDIOCODEC
@ __AUDIOCODEC
Definition: TeamTalk.h:3925
__MEDIAFILEINFO
@ __MEDIAFILEINFO
Definition: TeamTalk.h:3951
__TTBOOL
@ __TTBOOL
Definition: TeamTalk.h:3953
__AUDIOPREPROCESSOR
@ __AUDIOPREPROCESSOR
Definition: TeamTalk.h:3959
__REMOTEFILE
@ __REMOTEFILE
Definition: TeamTalk.h:3931
__SPEEXVBRCODEC
@ __SPEEXVBRCODEC
Definition: TeamTalk.h:3947
__VIDEOCODEC
@ __VIDEOCODEC
Definition: TeamTalk.h:3945
__SPEEXCODEC
@ __SPEEXCODEC
Definition: TeamTalk.h:3937
TT_Firewall_IsEnabled
TEAMTALKDLL_API TTBOOL TT_Firewall_IsEnabled(void)
Check if the Windows Firewall is currently enabled.
TT_Firewall_RemoveAppException
TEAMTALKDLL_API TTBOOL TT_Firewall_RemoveAppException(IN const TTCHAR *szExecutable)
Remove an application from the Windows Firewall exception list.
TT_Firewall_AddAppException
TEAMTALKDLL_API TTBOOL TT_Firewall_AddAppException(IN const TTCHAR *szName, IN const TTCHAR *szExecutable)
Add an application to the Windows Firewall exception list.
TT_Firewall_Enable
TEAMTALKDLL_API TTBOOL TT_Firewall_Enable(IN TTBOOL bEnable)
Enable/disable the Windows Firewall.
TT_Firewall_AppExceptionExists
TEAMTALKDLL_API TTBOOL TT_Firewall_AppExceptionExists(IN const TTCHAR *szExecutable)
Check if an executable is already in the Windows Firewall exception list.
TT_HotKey_IsActive
TEAMTALKDLL_API INT32 TT_HotKey_IsActive(IN TTInstance *lpTTInstance, IN INT32 nHotKeyID)
Check whether hotkey is active.
TT_HotKey_GetKeyString
TEAMTALKDLL_API TTBOOL TT_HotKey_GetKeyString(IN TTInstance *lpTTInstance, IN INT32 nVKCode, OUT TTCHAR szKeyName[TT_STRLEN])
Get a string description of the virtual-key code.
TT_HotKey_Register
TEAMTALKDLL_API TTBOOL TT_HotKey_Register(IN TTInstance *lpTTInstance, IN INT32 nHotKeyID, IN const INT32 *lpnVKCodes, IN INT32 nVKCodeCount)
Register a global hotkey.
TT_HotKey_RemoveTestHook
TEAMTALKDLL_API TTBOOL TT_HotKey_RemoveTestHook(IN TTInstance *lpTTInstance)
Remove the test hook again so the hWnd in TT_HotKey_InstallTestHook will no longer be notified.
TT_HotKey_Unregister
TEAMTALKDLL_API TTBOOL TT_HotKey_Unregister(IN TTInstance *lpTTInstance, IN INT32 nHotKeyID)
Unregister a registered hotkey.
TT_HotKey_InstallTestHook
TEAMTALKDLL_API TTBOOL TT_HotKey_InstallTestHook(IN TTInstance *lpTTInstance, IN HWND hWnd, UINT32 uMsg)
Install a test hook so the HWND will be messaged whenever a key or mouse button is pressed.
TT_InitTeamTalkPoll
TEAMTALKDLL_API TTInstance * TT_InitTeamTalkPoll(void)
Create a new TeamTalk client instance where events are 'polled' using TT_GetMessage.
TT_GetVersion
TEAMTALKDLL_API const TTCHAR * TT_GetVersion(void)
Get the DLL's version number.
TT_PumpMessage
TEAMTALKDLL_API TTBOOL TT_PumpMessage(IN TTInstance *lpTTInstance, ClientEvent nClientEvent, INT32 nIdentifier)
Cause client instance event thread to schedule an update event.
TT_GetMessage
TEAMTALKDLL_API TTBOOL TT_GetMessage(IN TTInstance *lpTTInstance, OUT TTMessage *pMsg, IN const INT32 *pnWaitMs)
Poll for events in the client instance.
TTInstance
VOID TTInstance
Pointer to a TeamTalk client instance created by TT_InitTeamTalk.
Definition: TeamTalk.h:4161
ClientFlags
UINT32 ClientFlags
A bitmask based on ClientFlag describing the local client instance's current state.
Definition: TeamTalk.h:4155
TT_InitTeamTalk
TEAMTALKDLL_API TTInstance * TT_InitTeamTalk(IN HWND hWnd, IN UINT32 uMsg)
Create a new TeamTalk client instance where events are posted to a HWND.
TT_SwapTeamTalkHWND
TEAMTALKDLL_API TTBOOL TT_SwapTeamTalkHWND(IN TTInstance *lpTTInstance, IN HWND hWnd)
Replace the HWND passed as parameter to TT_InitTeamTalk with this HWND.
ClientFlag
ClientFlag
Flags used to describe the the client instance current state.
Definition: TeamTalk.h:4057
TT_SetLicenseInformation
TEAMTALKDLL_API TTBOOL TT_SetLicenseInformation(IN const TTCHAR szRegName[TT_STRLEN], IN const TTCHAR szRegKey[TT_STRLEN])
Set license information to disable trial mode.
TT_GetFlags
TEAMTALKDLL_API ClientFlags TT_GetFlags(IN TTInstance *lpTTInstance)
Get a bitmask describing the client's current state.
TT_CloseTeamTalk
TEAMTALKDLL_API TTBOOL TT_CloseTeamTalk(IN TTInstance *lpTTInstance)
Close the TeamTalk client instance and release its resources.
CLIENT_CONNECTED
@ CLIENT_CONNECTED
If set the client instance is connected to a server, i.e. CLIENTEVENT_CON_SUCCESS event has been issu...
Definition: TeamTalk.h:4133
CLIENT_CONNECTING
@ CLIENT_CONNECTING
If set the client instance is currently try to connect to a server, i.e. TT_Connect has been called.
Definition: TeamTalk.h:4128
CLIENT_TX_VOICE
@ CLIENT_TX_VOICE
If set the client instance is currently transmitting audio.
Definition: TeamTalk.h:4106
CLIENT_TX_DESKTOP
@ CLIENT_TX_DESKTOP
If set the client instance is currently transmitting a desktop window. A desktop window update is iss...
Definition: TeamTalk.h:4116
CLIENT_SNDINOUTPUT_DUPLEX
@ CLIENT_SNDINOUTPUT_DUPLEX
If set the client instance is running in sound duplex mode where multiple audio output streams are mi...
Definition: TeamTalk.h:4076
CLIENT_SNDOUTPUT_MUTE
@ CLIENT_SNDOUTPUT_MUTE
If set the client instance has muted all users.
Definition: TeamTalk.h:4093
CLIENT_STREAM_VIDEO
@ CLIENT_STREAM_VIDEO
If set the client is currently streaming the video of a media file. When streaming a video file the C...
Definition: TeamTalk.h:4150
CLIENT_SNDOUTPUT_AUTO3DPOSITION
@ CLIENT_SNDOUTPUT_AUTO3DPOSITION
If set the client instance will auto position users in a 180 degree circle using 3D-sound....
Definition: TeamTalk.h:4099
CLIENT_MUX_AUDIOFILE
@ CLIENT_MUX_AUDIOFILE
If set the client instance is currently muxing audio streams into a single file. This is enabled by c...
Definition: TeamTalk.h:4125
CLIENT_CLOSED
@ CLIENT_CLOSED
The client instance (TTInstance) is in closed state, i.e. TT_InitTeamTalk has return a valid instance...
Definition: TeamTalk.h:4062
CLIENT_SNDINPUT_READY
@ CLIENT_SNDINPUT_READY
If set the client instance's sound input device has been initialized, i.e. TT_InitSoundInputDevice ha...
Definition: TeamTalk.h:4066
CLIENT_DESKTOP_ACTIVE
@ CLIENT_DESKTOP_ACTIVE
If set the client instance current have an active desktop session, i.e. TT_SendDesktopWindow() has be...
Definition: TeamTalk.h:4121
CLIENT_CONNECTION
@ CLIENT_CONNECTION
Helper for CLIENT_CONNECTING and CLIENT_CONNECTED to see if TT_Disconnect should be called.
Definition: TeamTalk.h:4136
CLIENT_AUTHORIZED
@ CLIENT_AUTHORIZED
If set the client instance is logged on to a server, i.e. got CLIENTEVENT_CMD_MYSELF_LOGGEDIN event a...
Definition: TeamTalk.h:4140
CLIENT_SNDINPUT_VOICEACTIVE
@ CLIENT_SNDINPUT_VOICEACTIVE
If set GetSoundInputLevel() is higher than the voice activation level. To enable voice transmission i...
Definition: TeamTalk.h:4090
CLIENT_SNDOUTPUT_READY
@ CLIENT_SNDOUTPUT_READY
If set the client instance's sound output device has been initialized, i.e. TT_InitSoundOutputDevice ...
Definition: TeamTalk.h:4070
CLIENT_SNDINPUT_VOICEACTIVATED
@ CLIENT_SNDINPUT_VOICEACTIVATED
If set the client instance will start transmitting audio if the sound level is above the voice activa...
Definition: TeamTalk.h:4083
CLIENT_TX_VIDEOCAPTURE
@ CLIENT_TX_VIDEOCAPTURE
If set the client instance is currently transmitting video.
Definition: TeamTalk.h:4110
CLIENT_STREAM_AUDIO
@ CLIENT_STREAM_AUDIO
If set the client is currently streaming the audio of a media file. When streaming a video file the C...
Definition: TeamTalk.h:4145
CLIENT_VIDEOCAPTURE_READY
@ CLIENT_VIDEOCAPTURE_READY
If set the client instance's video device has been initialized, i.e. TT_InitVideoCaptureDevice has be...
Definition: TeamTalk.h:4103
TT_InitLocalPlayback
TEAMTALKDLL_API INT32 TT_InitLocalPlayback(IN TTInstance *lpTTInstance, IN const TTCHAR *szMediaFilePath, IN const MediaFilePlayback *lpMediaFilePlayback)
Play media file using settings from TTInstance.
TT_UpdateLocalPlayback
TEAMTALKDLL_API TTBOOL TT_UpdateLocalPlayback(IN TTInstance *lpTTInstance, IN INT32 nPlaybackSessionID, IN const MediaFilePlayback *lpMediaFilePlayback)
TT_StartStreamingMediaFileToChannelEx
TEAMTALKDLL_API TTBOOL TT_StartStreamingMediaFileToChannelEx(IN TTInstance *lpTTInstance, IN const TTCHAR *szMediaFilePath, IN const MediaFilePlayback *lpMediaFilePlayback, IN const VideoCodec *lpVideoCodec)
Stream media file to channel, e.g. avi, wav or MP3-file.
TT_StopLocalPlayback
TEAMTALKDLL_API TTBOOL TT_StopLocalPlayback(IN TTInstance *lpTTInstance, IN INT32 nPlaybackSessionID)
TT_UpdateStreamingMediaFileToChannel
TEAMTALKDLL_API TTBOOL TT_UpdateStreamingMediaFileToChannel(IN TTInstance *lpTTInstance, IN const MediaFilePlayback *lpMediaFilePlayback, IN const VideoCodec *lpVideoCodec)
Update active media file being streamed to channel.
MediaFilePlayback
struct MediaFilePlayback MediaFilePlayback
Properties for initializing or updating a file for media streaming.
TT_GetMediaFileInfo
TEAMTALKDLL_API TTBOOL TT_GetMediaFileInfo(IN const TTCHAR *szMediaFilePath, OUT MediaFileInfo *lpMediaFileInfo)
Get the properties of a media file.
MediaFileInfo
struct MediaFileInfo MediaFileInfo
Struct describing the audio and video format used by a media file.
MediaFileStatus
MediaFileStatus
Status of media file being written to disk.
Definition: TeamTalk.h:740
TT_StopStreamingMediaFileToChannel
TEAMTALKDLL_API TTBOOL TT_StopStreamingMediaFileToChannel(IN TTInstance *lpTTInstance)
Stop streaming media file to channel.
AudioInputProgress
struct AudioInputProgress AudioInputProgress
The progress of the audio currently being processed as audio input.
AudioFileFormat
AudioFileFormat
Media file formats supported for muxed audio recordings.
Definition: TeamTalk.h:761
TT_StartStreamingMediaFileToChannel
TEAMTALKDLL_API TTBOOL TT_StartStreamingMediaFileToChannel(IN TTInstance *lpTTInstance, IN const TTCHAR *szMediaFilePath, IN const VideoCodec *lpVideoCodec)
Stream media file to channel, e.g. avi-, wav- or MP3-file.
TT_AcquireUserMediaVideoFrame
TEAMTALKDLL_API VideoFrame * TT_AcquireUserMediaVideoFrame(IN TTInstance *lpTTInstance, IN INT32 nUserID)
Extract a user's media video frame for display.
AudioFormat
struct AudioFormat AudioFormat
Struct describing the audio format used by a media file.
TT_ReleaseUserMediaVideoFrame
TEAMTALKDLL_API TTBOOL TT_ReleaseUserMediaVideoFrame(IN TTInstance *lpTTInstance, IN VideoFrame *lpVideoFrame)
Delete a user's video frame, acquired through TT_AcquireUserMediaVideoFrame(), so its allocated resou...
MFS_PAUSED
@ MFS_PAUSED
Paused processing of media file.
Definition: TeamTalk.h:751
MFS_ERROR
@ MFS_ERROR
Error while processing media file.
Definition: TeamTalk.h:743
MFS_STARTED
@ MFS_STARTED
Started processing media file.
Definition: TeamTalk.h:745
MFS_ABORTED
@ MFS_ABORTED
Aborted processing of media file.
Definition: TeamTalk.h:749
MFS_CLOSED
@ MFS_CLOSED
Definition: TeamTalk.h:741
MFS_PLAYING
@ MFS_PLAYING
Playing media file with updated uElapsedMSec of MediaFileInfo.
Definition: TeamTalk.h:754
MFS_FINISHED
@ MFS_FINISHED
Finished processing media file.
Definition: TeamTalk.h:747
AFF_CHANNELCODEC_FORMAT
@ AFF_CHANNELCODEC_FORMAT
Store audio in the same format as the Channel's configured audio codec.
Definition: TeamTalk.h:774
AFF_MP3_16KBIT_FORMAT
@ AFF_MP3_16KBIT_FORMAT
Store in MP3-format.
Definition: TeamTalk.h:778
AFF_MP3_256KBIT_FORMAT
@ AFF_MP3_256KBIT_FORMAT
Definition: TeamTalk.h:786
AFF_MP3_320KBIT_FORMAT
@ AFF_MP3_320KBIT_FORMAT
Definition: TeamTalk.h:788
AFF_MP3_64KBIT_FORMAT
@ AFF_MP3_64KBIT_FORMAT
Definition: TeamTalk.h:782
AFF_MP3_32KBIT_FORMAT
@ AFF_MP3_32KBIT_FORMAT
Definition: TeamTalk.h:780
AFF_NONE
@ AFF_NONE
Used to denote nothing selected.
Definition: TeamTalk.h:763
AFF_MP3_128KBIT_FORMAT
@ AFF_MP3_128KBIT_FORMAT
Definition: TeamTalk.h:784
AFF_WAVE_FORMAT
@ AFF_WAVE_FORMAT
Store in PCM 16-bit wave format.
Definition: TeamTalk.h:776
TT_Mixer_GetWaveInName
TEAMTALKDLL_API TTBOOL TT_Mixer_GetWaveInName(IN INT32 nWaveDeviceID, OUT TTCHAR szMixerName[TT_STRLEN])
Get the name of the mixer associated with a wave-in device.
TT_Mixer_GetWaveInControlName
TEAMTALKDLL_API TTBOOL TT_Mixer_GetWaveInControlName(IN INT32 nWaveDeviceID, IN INT32 nControlIndex, OUT TTCHAR szDeviceName[TT_STRLEN])
Get the name of the Wave-In device with the specified index.
TT_Mixer_GetWaveInMute
TEAMTALKDLL_API INT32 TT_Mixer_GetWaveInMute(IN INT32 nWaveDeviceID)
See if microphone is muted.
TT_Mixer_SetWaveOutVolume
TEAMTALKDLL_API TTBOOL TT_Mixer_SetWaveOutVolume(IN INT32 nWaveDeviceID, IN MixerControl nControl, IN INT32 nVolume)
Set the volume of a Windows Mixer Wave-Out device from the 'enum' of devices.
TT_Mixer_SetWaveInMute
TEAMTALKDLL_API TTBOOL TT_Mixer_SetWaveInMute(IN INT32 nWaveDeviceID, IN TTBOOL bEnable)
Mute/unmute microphone input.
TT_Mixer_GetMixerCount
TEAMTALKDLL_API INT32 TT_Mixer_GetMixerCount(void)
Get the number of Windows Mixers available.
TT_Mixer_SetWaveOutMute
TEAMTALKDLL_API TTBOOL TT_Mixer_SetWaveOutMute(IN INT32 nWaveDeviceID, IN MixerControl nControl, IN TTBOOL bMute)
Mute or unmute a Windows Mixer Wave-Out device from the 'enum' of devices.
MixerControl
MixerControl
The Windows mixer controls which can be queried by the TT_Mixer_* functions.
Definition: TeamTalk.h:7912
TT_Mixer_GetWaveInBoost
TEAMTALKDLL_API INT32 TT_Mixer_GetWaveInBoost(IN INT32 nWaveDeviceID)
See if microphone boost is enabled.
TT_Mixer_GetWaveOutMute
TEAMTALKDLL_API INT32 TT_Mixer_GetWaveOutMute(IN INT32 nWaveDeviceID, IN MixerControl nControl)
Get the mute state of a Windows Mixer Wave-Out device from the 'enum' of devices.
TT_Mixer_GetWaveOutVolume
TEAMTALKDLL_API INT32 TT_Mixer_GetWaveOutVolume(IN INT32 nWaveDeviceID, IN MixerControl nControl)
Get the volume of a Windows Mixer Wave-Out device from the 'enum' of devices.
TT_Mixer_GetWaveInControlCount
TEAMTALKDLL_API INT32 TT_Mixer_GetWaveInControlCount(IN INT32 nWaveDeviceID)
Get the number of Windows Mixer Wave-In devices.
TT_Mixer_GetWaveOutName
TEAMTALKDLL_API TTBOOL TT_Mixer_GetWaveOutName(IN INT32 nWaveDeviceID, OUT TTCHAR szMixerName[TT_STRLEN])
Get the name of the mixer associated with a wave-out device.
TT_Mixer_SetWaveInControlSelected
TEAMTALKDLL_API TTBOOL TT_Mixer_SetWaveInControlSelected(IN INT32 nWaveDeviceID, IN INT32 nControlIndex)
Set the selected state of a Wave-In device in the Windows Mixer.
TT_Mixer_GetWaveInVolume
TEAMTALKDLL_API INT32 TT_Mixer_GetWaveInVolume(IN INT32 nWaveDeviceID, IN MixerControl nControl)
Get the volume of a Windows Mixer Wave-In device from the 'enum' of devices.
TT_Mixer_GetWaveInControlSelected
TEAMTALKDLL_API TTBOOL TT_Mixer_GetWaveInControlSelected(IN INT32 nWaveDeviceID, IN INT32 nControlIndex)
Get the selected state of a Wave-In device in the Windows Mixer.
TT_Mixer_SetWaveInVolume
TEAMTALKDLL_API TTBOOL TT_Mixer_SetWaveInVolume(IN INT32 nWaveDeviceID, IN MixerControl nControl, IN INT32 nVolume)
Set the volume of a Windows Mixer Wave-In device from the 'enum' of devices.
TT_Mixer_SetWaveInSelected
TEAMTALKDLL_API TTBOOL TT_Mixer_SetWaveInSelected(IN INT32 nWaveDeviceID, IN MixerControl nControl)
Set the selected state of a Windows Mixer Wave-In device from the 'enum' of devices.
TT_Mixer_SetWaveInBoost
TEAMTALKDLL_API TTBOOL TT_Mixer_SetWaveInBoost(IN INT32 nWaveDeviceID, IN TTBOOL bEnable)
Enable and disable microphone boost.
TT_Mixer_GetMixerName
TEAMTALKDLL_API TTBOOL TT_Mixer_GetMixerName(IN INT32 nMixerIndex, OUT TTCHAR szMixerName[TT_STRLEN])
Get the name of a Windows Mixer based on its name.
TT_Mixer_GetWaveInSelected
TEAMTALKDLL_API INT32 TT_Mixer_GetWaveInSelected(IN INT32 nWaveDeviceID, IN MixerControl nControl)
Get the selected state of a Windows Mixer Wave-In device from the 'enum' of devices.
WAVEOUT_WAVE
@ WAVEOUT_WAVE
Definition: TeamTalk.h:7914
WAVEIN_MICROPHONE
@ WAVEIN_MICROPHONE
Definition: TeamTalk.h:7917
WAVEOUT_MICROPHONE
@ WAVEOUT_MICROPHONE
Definition: TeamTalk.h:7915
WAVEIN_WAVEOUT
@ WAVEIN_WAVEOUT
Definition: TeamTalk.h:7919
WAVEIN_LINEIN
@ WAVEIN_LINEIN
Definition: TeamTalk.h:7918
WAVEOUT_MASTER
@ WAVEOUT_MASTER
Definition: TeamTalk.h:7913
ServerLogEvents
UINT32 ServerLogEvents
Bitmask of ServerLogEvent.
Definition: TeamTalk.h:1765
TT_GetServerUsers
TEAMTALKDLL_API TTBOOL TT_GetServerUsers(IN TTInstance *lpTTInstance, IN OUT User *lpUsers, IN OUT INT32 *lpnHowMany)
Get all the users on the server.
BannedUser
struct BannedUser BannedUser
A struct containing the properties of a banned user.
ServerProperties
struct ServerProperties ServerProperties
A struct containing the properties of the server's settings.
BanType
BanType
Way to ban a user from either login or joining a channel.
Definition: TeamTalk.h:1920
TT_GetServerProperties
TEAMTALKDLL_API TTBOOL TT_GetServerProperties(IN TTInstance *lpTTInstance, OUT ServerProperties *lpServerProperties)
Get the server's properties.
UserAccount
struct UserAccount UserAccount
A struct containing the properties of a user account.
UserRights
UINT32 UserRights
A bitmask based on UserRight for holding the rights users have who log on the server.
Definition: TeamTalk.h:1698
BanTypes
UINT32 BanTypes
A mask of types of bans that apply.
Definition: TeamTalk.h:1936
UserRight
UserRight
The rights users have once they have logged on to the server.
Definition: TeamTalk.h:1611
ServerStatistics
struct ServerStatistics ServerStatistics
A struct containing the server's statistics, i.e. bandwidth usage and user activity.
ServerLogEvent
ServerLogEvent
Events that are logged by the server, i.e. written to server's log file.
Definition: TeamTalk.h:1708
AbusePrevention
struct AbusePrevention AbusePrevention
Properties to prevent server abuse.
BANTYPE_IPADDR
@ BANTYPE_IPADDR
Ban szIPAddress specified in BannedUser. szIPAddress can be a regular expression, i....
Definition: TeamTalk.h:1930
BANTYPE_USERNAME
@ BANTYPE_USERNAME
Ban szUsername specified in BannedUser.
Definition: TeamTalk.h:1932
BANTYPE_NONE
@ BANTYPE_NONE
Ban type not set.
Definition: TeamTalk.h:1922
BANTYPE_CHANNEL
@ BANTYPE_CHANNEL
The ban applies to the channel specified in the szChannel of BannedUser. Otherwise the ban applies to...
Definition: TeamTalk.h:1926
USERRIGHT_VIEW_HIDDEN_CHANNELS
@ USERRIGHT_VIEW_HIDDEN_CHANNELS
User can see hidden channels, CHANNEL_HIDDEN.
Definition: TeamTalk.h:1685
USERRIGHT_UPLOAD_FILES
@ USERRIGHT_UPLOAD_FILES
User can upload files to channels.
Definition: TeamTalk.h:1643
USERRIGHT_TRANSMIT_MEDIAFILE_AUDIO
@ USERRIGHT_TRANSMIT_MEDIAFILE_AUDIO
User is allowed to stream audio files to channel.
Definition: TeamTalk.h:1664
USERRIGHT_TEXTMESSAGE_CHANNEL
@ USERRIGHT_TEXTMESSAGE_CHANNEL
User can send channel text messages, i.e. MSGTYPE_CHANNEL.
Definition: TeamTalk.h:1691
USERRIGHT_DOWNLOAD_FILES
@ USERRIGHT_DOWNLOAD_FILES
User can download files from channels.
Definition: TeamTalk.h:1646
USERRIGHT_VIEW_ALL_USERS
@ USERRIGHT_VIEW_ALL_USERS
User can see users in all other channels.
Definition: TeamTalk.h:1619
USERRIGHT_UPDATE_SERVERPROPERTIES
@ USERRIGHT_UPDATE_SERVERPROPERTIES
User can update server properties.
Definition: TeamTalk.h:1649
USERRIGHT_LOCKED_NICKNAME
@ USERRIGHT_LOCKED_NICKNAME
User's nick name is locked. TT_DoChangeNickname() cannot be used and TT_DoLogin() will ignore szNickn...
Definition: TeamTalk.h:1677
USERRIGHT_OPERATOR_ENABLE
@ USERRIGHT_OPERATOR_ENABLE
User can make other users channel operator.
Definition: TeamTalk.h:1641
USERRIGHT_TEXTMESSAGE_USER
@ USERRIGHT_TEXTMESSAGE_USER
User can send private text messages, i.e. MSGTYPE_USER.
Definition: TeamTalk.h:1688
USERRIGHT_MOVE_USERS
@ USERRIGHT_MOVE_USERS
User can move users from one channel to another.
Definition: TeamTalk.h:1638
USERRIGHT_NONE
@ USERRIGHT_NONE
Users who log onto the server has none of the rights below.
Definition: TeamTalk.h:1614
USERRIGHT_TEXTMESSAGE_BROADCAST
@ USERRIGHT_TEXTMESSAGE_BROADCAST
User can broadcast text message of type MSGTYPE_BROADCAST to all users.
Definition: TeamTalk.h:1630
USERRIGHT_KICK_USERS
@ USERRIGHT_KICK_USERS
User can kick users off the server.
Definition: TeamTalk.h:1632
USERRIGHT_BAN_USERS
@ USERRIGHT_BAN_USERS
User can add and remove banned users.
Definition: TeamTalk.h:1635
USERRIGHT_MODIFY_CHANNELS
@ USERRIGHT_MODIFY_CHANNELS
User is allowed to create permanent channels which are stored in the server's configuration file.
Definition: TeamTalk.h:1627
USERRIGHT_TRANSMIT_MEDIAFILE
@ USERRIGHT_TRANSMIT_MEDIAFILE
User is allowed to stream media files to channel.
Definition: TeamTalk.h:1670
USERRIGHT_TRANSMIT_VIDEOCAPTURE
@ USERRIGHT_TRANSMIT_VIDEOCAPTURE
User is allowed to forward video packets through server. TT_StartVideoCaptureTransmission()
Definition: TeamTalk.h:1655
USERRIGHT_RECORD_VOICE
@ USERRIGHT_RECORD_VOICE
User can record voice in all channels. Even channels with CHANNEL_NO_RECORDING.
Definition: TeamTalk.h:1683
USERRIGHT_TRANSMIT_MEDIAFILE_VIDEO
@ USERRIGHT_TRANSMIT_MEDIAFILE_VIDEO
User is allowed to stream video files to channel.
Definition: TeamTalk.h:1667
USERRIGHT_LOCKED_STATUS
@ USERRIGHT_LOCKED_STATUS
User's status is locked. TT_DoChangeStatus() cannot be used.
Definition: TeamTalk.h:1680
USERRIGHT_MULTI_LOGIN
@ USERRIGHT_MULTI_LOGIN
Allow multiple users to log on to the server with the same UserAccount.
Definition: TeamTalk.h:1617
USERRIGHT_TRANSMIT_DESKTOPINPUT
@ USERRIGHT_TRANSMIT_DESKTOPINPUT
User is allowed to forward desktop input packets through server.
Definition: TeamTalk.h:1661
USERRIGHT_TRANSMIT_DESKTOP
@ USERRIGHT_TRANSMIT_DESKTOP
User is allowed to forward desktop packets through server.
Definition: TeamTalk.h:1658
USERRIGHT_CREATE_TEMPORARY_CHANNEL
@ USERRIGHT_CREATE_TEMPORARY_CHANNEL
User is allowed to create temporary channels which disappear when last user leaves the channel.
Definition: TeamTalk.h:1623
USERRIGHT_TRANSMIT_VOICE
@ USERRIGHT_TRANSMIT_VOICE
Users are allowed to forward audio packets through server. TT_EnableVoiceTransmission()
Definition: TeamTalk.h:1652
SERVERLOGEVENT_USER_MOVED
@ SERVERLOGEVENT_USER_MOVED
User was moved to another channel is logged to file by the server.
Definition: TeamTalk.h:1736
SERVERLOGEVENT_USER_UPDATED
@ SERVERLOGEVENT_USER_UPDATED
User's status is logged to file by the server.
Definition: TeamTalk.h:1730
SERVERLOGEVENT_USER_TEXTMESSAGE_PRIVATE
@ SERVERLOGEVENT_USER_TEXTMESSAGE_PRIVATE
User's private text messages are logged to file by the server.
Definition: TeamTalk.h:1738
SERVERLOGEVENT_SERVER_SAVECONFIG
@ SERVERLOGEVENT_SERVER_SAVECONFIG
User saved server's configuration is logged to file by the server.
Definition: TeamTalk.h:1760
SERVERLOGEVENT_USER_LOGINFAILED
@ SERVERLOGEVENT_USER_LOGINFAILED
User failed to log in is logged to file by the server.
Definition: TeamTalk.h:1720
SERVERLOGEVENT_USER_TEXTMESSAGE_CHANNEL
@ SERVERLOGEVENT_USER_TEXTMESSAGE_CHANNEL
User's channel text messages are logged to file by the server.
Definition: TeamTalk.h:1742
SERVERLOGEVENT_USER_LEFTCHANNEL
@ SERVERLOGEVENT_USER_LEFTCHANNEL
User left a channel is logged to file by the server.
Definition: TeamTalk.h:1734
SERVERLOGEVENT_CHANNEL_REMOVED
@ SERVERLOGEVENT_CHANNEL_REMOVED
User removed a channel is logged to file by the server.
Definition: TeamTalk.h:1750
SERVERLOGEVENT_CHANNEL_UPDATED
@ SERVERLOGEVENT_CHANNEL_UPDATED
User updated a channel is logged to file by the server.
Definition: TeamTalk.h:1748
SERVERLOGEVENT_USER_KICKED
@ SERVERLOGEVENT_USER_KICKED
User was kicked is logged to file by the server.
Definition: TeamTalk.h:1724
SERVERLOGEVENT_USER_CONNECTED
@ SERVERLOGEVENT_USER_CONNECTED
User's IP-address is logged to file by serer.
Definition: TeamTalk.h:1712
SERVERLOGEVENT_USER_JOINEDCHANNEL
@ SERVERLOGEVENT_USER_JOINEDCHANNEL
User joined a channel is logged to file by the server.
Definition: TeamTalk.h:1732
SERVERLOGEVENT_USER_LOGGEDOUT
@ SERVERLOGEVENT_USER_LOGGEDOUT
User logged out is logged to file by the server.
Definition: TeamTalk.h:1718
SERVERLOGEVENT_USER_TIMEDOUT
@ SERVERLOGEVENT_USER_TIMEDOUT
User disconnected due to connection timeout is logged to file by the server.
Definition: TeamTalk.h:1722
SERVERLOGEVENT_FILE_UPLOADED
@ SERVERLOGEVENT_FILE_UPLOADED
User uploaded a file is logged to file by the server.
Definition: TeamTalk.h:1752
SERVERLOGEVENT_USER_TEXTMESSAGE_BROADCAST
@ SERVERLOGEVENT_USER_TEXTMESSAGE_BROADCAST
User's broadcast text messages are logged to file by the server.
Definition: TeamTalk.h:1744
SERVERLOGEVENT_CHANNEL_CREATED
@ SERVERLOGEVENT_CHANNEL_CREATED
User created new channel is logged to file by the server.
Definition: TeamTalk.h:1746
SERVERLOGEVENT_FILE_DELETED
@ SERVERLOGEVENT_FILE_DELETED
User deleted a file is logged to file by the server.
Definition: TeamTalk.h:1756
SERVERLOGEVENT_USER_TEXTMESSAGE_CUSTOM
@ SERVERLOGEVENT_USER_TEXTMESSAGE_CUSTOM
User's custom text messages are logged to file by the server.
Definition: TeamTalk.h:1740
SERVERLOGEVENT_NONE
@ SERVERLOGEVENT_NONE
Nothing is logged to file by server.
Definition: TeamTalk.h:1710
SERVERLOGEVENT_USER_UNBANNED
@ SERVERLOGEVENT_USER_UNBANNED
User was removed from ban list is logged to file by the server.
Definition: TeamTalk.h:1728
SERVERLOGEVENT_USER_BANNED
@ SERVERLOGEVENT_USER_BANNED
User was banned is logged to file by the server.
Definition: TeamTalk.h:1726
SERVERLOGEVENT_FILE_DOWNLOADED
@ SERVERLOGEVENT_FILE_DOWNLOADED
User downloaded a file is logged to file by the server.
Definition: TeamTalk.h:1754
SERVERLOGEVENT_USER_DISCONNECTED
@ SERVERLOGEVENT_USER_DISCONNECTED
User disconnected from server is logged to file by the server.
Definition: TeamTalk.h:1714
SERVERLOGEVENT_SERVER_UPDATED
@ SERVERLOGEVENT_SERVER_UPDATED
User updated server's properties is logged to file by the server.
Definition: TeamTalk.h:1758
SERVERLOGEVENT_USER_LOGGEDIN
@ SERVERLOGEVENT_USER_LOGGEDIN
User logged in is logged to file by the server.
Definition: TeamTalk.h:1716
TTSoundLoop
VOID TTSoundLoop
Pointer to a sound loop for testing sound devices created by TT_StartSoundLoopbackTest()
Definition: TeamTalk.h:4167
TT_StartSoundLoopbackTest
TEAMTALKDLL_API TTSoundLoop * TT_StartSoundLoopbackTest(IN INT32 nInputDeviceID, IN INT32 nOutputDeviceID, IN INT32 nSampleRate, IN INT32 nChannels, IN TTBOOL bDuplexMode, IN const SpeexDSP *lpSpeexDSP)
Perform a record and playback test of specified sound devices along with an audio configuration.
TT_SetSoundInputGainLevel
TEAMTALKDLL_API TTBOOL TT_SetSoundInputGainLevel(IN TTInstance *lpTTInstance, IN INT32 nLevel)
Set voice gaining of recorded audio.
TT_SetUserMute
TEAMTALKDLL_API TTBOOL TT_SetUserMute(IN TTInstance *lpTTInstance, IN INT32 nUserID, IN StreamType nStreamType, IN TTBOOL bMute)
Mute a user.
TT_SetSoundDeviceEffects
TEAMTALKDLL_API TTBOOL TT_SetSoundDeviceEffects(IN TTInstance *lpTTInstance, IN const SoundDeviceEffects *lpSoundDeviceEffect)
Set up audio effects on a sound device.
TT_GetSoundDeviceEffects
TEAMTALKDLL_API TTBOOL TT_GetSoundDeviceEffects(IN TTInstance *lpTTInstance, OUT SoundDeviceEffects *lpSoundDeviceEffect)
Get the audio effects that are currently enabled.
SoundSystem
SoundSystem
The supported sound systems.
Definition: TeamTalk.h:288
SoundDevice
struct SoundDevice SoundDevice
A struct containing the properties of a sound device for either playback or recording.
TT_RestartSoundSystem
TEAMTALKDLL_API TTBOOL TT_RestartSoundSystem(void)
Reinitialize sound system (in order to detect new/removed devices).
TT_GetDefaultSoundDevices
TEAMTALKDLL_API TTBOOL TT_GetDefaultSoundDevices(OUT INT32 *lpnInputDeviceID, OUT INT32 *lpnOutputDeviceID)
Get the default sound devices.
SoundDeviceFeatures
UINT32 SoundDeviceFeatures
A bitmask of available SoundDeviceFeature. Checkout uSoundDeviceFeatures on SoundDevice.
Definition: TeamTalk.h:389
TT_EnableAudioBlockEvent
TEAMTALKDLL_API TTBOOL TT_EnableAudioBlockEvent(IN TTInstance *lpTTInstance, IN INT32 nUserID, IN StreamTypes uStreamTypes, IN TTBOOL bEnable)
Enable/disable access to raw audio from individual users, local microphone input or mixed stream of a...
SoundDeviceFeature
SoundDeviceFeature
Features available on a sound device. Checkout uSoundDeviceFeatures on SoundDevice.
Definition: TeamTalk.h:355
TT_GetDefaultSoundDevicesEx
TEAMTALKDLL_API TTBOOL TT_GetDefaultSoundDevicesEx(IN SoundSystem nSndSystem, OUT INT32 *lpnInputDeviceID, OUT INT32 *lpnOutputDeviceID)
Get the default sound devices for the specified sound system.
TT_SetUserAudioStreamBufferSize
TEAMTALKDLL_API TTBOOL TT_SetUserAudioStreamBufferSize(IN TTInstance *lpTTInstance, IN INT32 nUserID, IN StreamTypes uStreamType, IN INT32 nMSec)
Change the amount of media data which can be buffered in the user's playback queue.
TT_SetUserJitterControl
TEAMTALKDLL_API TTBOOL TT_SetUserJitterControl(IN TTInstance *lpTTInstance, IN INT32 nUserID, IN StreamType nStreamType, IN const JitterConfig *lpJitterConfig)
Set the configuration for de-jitter measures for a user.
TT_ReleaseUserAudioBlock
TEAMTALKDLL_API TTBOOL TT_ReleaseUserAudioBlock(IN TTInstance *lpTTInstance, IN AudioBlock *lpAudioBlock)
Release the shared memory of an AudioBlock.
TT_Enable3DSoundPositioning
TEAMTALKDLL_API TTBOOL TT_Enable3DSoundPositioning(IN TTInstance *lpTTInstance, IN TTBOOL bEnable)
Enable automatically position users using 3D-sound.
TT_GetSoundDevices
TEAMTALKDLL_API TTBOOL TT_GetSoundDevices(IN OUT SoundDevice *lpSoundDevices, IN OUT INT32 *lpnHowMany)
Retrieve list of sound devices for recording and playback.
TT_AcquireUserAudioBlock
TEAMTALKDLL_API AudioBlock * TT_AcquireUserAudioBlock(IN TTInstance *lpTTInstance, IN StreamTypes uStreamTypes, IN INT32 nUserID)
Extract the raw audio associated with the event CLIENTEVENT_USER_AUDIOBLOCK.
TT_SetSoundInputPreprocessEx
TEAMTALKDLL_API TTBOOL TT_SetSoundInputPreprocessEx(IN TTInstance *lpTTInstance, IN const AudioPreprocessor *lpAudioPreprocessor)
Enable sound preprocessor which should be used for processing audio recorded by the sound input devic...
TT_GetUserJitterControl
TEAMTALKDLL_API TTBOOL TT_GetUserJitterControl(IN TTInstance *lpTTInstance, IN INT32 nUserID, IN StreamType nStreamType, IN JitterConfig *lpJitterConfig)
Get the de-jitter configuration for a user.
TT_InitSoundOutputDevice
TEAMTALKDLL_API TTBOOL TT_InitSoundOutputDevice(IN TTInstance *lpTTInstance, IN INT32 nOutputDeviceID)
Initialize the sound output device (for audio playback).
TT_InitSoundOutputSharedDevice
TEAMTALKDLL_API TTBOOL TT_InitSoundOutputSharedDevice(IN INT32 nSampleRate, IN INT32 nChannels, IN INT32 nFrameSize)
Setup sample rate, channels and frame size of shared sound output device.
TT_CloseSoundOutputDevice
TEAMTALKDLL_API TTBOOL TT_CloseSoundOutputDevice(IN TTInstance *lpTTInstance)
Shutdown the output sound device.
AudioBlock
struct AudioBlock AudioBlock
An audio block containing the raw audio from a user who was talking.
TT_SetUserPosition
TEAMTALKDLL_API TTBOOL TT_SetUserPosition(IN TTInstance *lpTTInstance, IN INT32 nUserID, IN StreamType nStreamType, IN float x, IN float y, IN float z)
Set the position of a user.
TT_GetSoundInputLevel
TEAMTALKDLL_API INT32 TT_GetSoundInputLevel(IN TTInstance *lpTTInstance)
Get the volume level of the current recorded audio.
TT_StartSoundLoopbackTestEx
TEAMTALKDLL_API TTSoundLoop * TT_StartSoundLoopbackTestEx(IN INT32 nInputDeviceID, IN INT32 nOutputDeviceID, IN INT32 nSampleRate, IN INT32 nChannels, IN TTBOOL bDuplexMode, IN const AudioPreprocessor *lpAudioPreprocessor, IN const SoundDeviceEffects *lpSoundDeviceEffects)
Perform a record and playback test of specified sound devices along with an audio configuration.
TT_InitSoundInputDevice
TEAMTALKDLL_API TTBOOL TT_InitSoundInputDevice(IN TTInstance *lpTTInstance, IN INT32 nInputDeviceID)
Initialize the sound input device (for recording audio).
TT_InitSoundDuplexDevices
TEAMTALKDLL_API TTBOOL TT_InitSoundDuplexDevices(IN TTInstance *lpTTInstance, IN INT32 nInputDeviceID, IN INT32 nOutputDeviceID)
Enable duplex mode where multiple audio streams are mixed into a single stream using software.
TT_GetSoundInputPreprocess
TEAMTALKDLL_API TTBOOL TT_GetSoundInputPreprocess(IN TTInstance *lpTTInstance, OUT SpeexDSP *lpSpeexDSP)
Get the sound preprocessor settings which are currently in use for recorded sound input device (voice...
TT_SetUserVolume
TEAMTALKDLL_API TTBOOL TT_SetUserVolume(IN TTInstance *lpTTInstance, IN INT32 nUserID, IN StreamType nStreamType, IN INT32 nVolume)
Set the volume of a user.
TT_SAMPLERATES_MAX
#define TT_SAMPLERATES_MAX
Definition: TeamTalk.h:155
TT_EnableAudioBlockEventEx
TEAMTALKDLL_API TTBOOL TT_EnableAudioBlockEventEx(IN TTInstance *lpTTInstance, IN INT32 nUserID, IN StreamTypes uStreamTypes, IN const AudioFormat *lpAudioFormat, IN TTBOOL bEnable)
Enable/disable access to raw audio from individual users, local microphone input or mixed stream of a...
TT_GetSoundInputPreprocessEx
TEAMTALKDLL_API TTBOOL TT_GetSoundInputPreprocessEx(IN TTInstance *lpTTInstance, OUT AudioPreprocessor *lpAudioPreprocessor)
Get the sound preprocessor settings which are currently in use for recorded sound input device (voice...
TT_SetUserStereo
TEAMTALKDLL_API TTBOOL TT_SetUserStereo(IN TTInstance *lpTTInstance, IN INT32 nUserID, IN StreamType nStreamType, IN TTBOOL bLeftSpeaker, IN TTBOOL bRightSpeaker)
Set whether a user should speak in the left, right or both speakers. This function only works if Audi...
TT_SetSoundOutputMute
TEAMTALKDLL_API TTBOOL TT_SetSoundOutputMute(IN TTInstance *lpTTInstance, IN TTBOOL bMuteAll)
Set all users mute.
TT_SetUserMediaStorageDir
TEAMTALKDLL_API TTBOOL TT_SetUserMediaStorageDir(IN TTInstance *lpTTInstance, IN INT32 nUserID, IN const TTCHAR *szFolderPath, IN const TTCHAR *szFileNameVars, IN AudioFileFormat uAFF)
Store user's audio to disk.
TT_AutoPositionUsers
TEAMTALKDLL_API TTBOOL TT_AutoPositionUsers(IN TTInstance *lpTTInstance)
Automatically position users using 3D-sound.
TT_CloseSoundLoopbackTest
TEAMTALKDLL_API TTBOOL TT_CloseSoundLoopbackTest(IN TTSoundLoop *lpTTSoundLoop)
Stop recorder and playback test.
TT_SetSoundOutputVolume
TEAMTALKDLL_API TTBOOL TT_SetSoundOutputVolume(IN TTInstance *lpTTInstance, IN INT32 nVolume)
Set master volume.
SoundDeviceEffects
struct SoundDeviceEffects SoundDeviceEffects
Set up audio effects supported by the sound device.
TT_InitSoundInputSharedDevice
TEAMTALKDLL_API TTBOOL TT_InitSoundInputSharedDevice(IN INT32 nSampleRate, IN INT32 nChannels, IN INT32 nFrameSize)
Setup sample rate, channels and frame size of shared sound input device.
TT_SetSoundInputPreprocess
TEAMTALKDLL_API TTBOOL TT_SetSoundInputPreprocess(IN TTInstance *lpTTInstance, IN const SpeexDSP *lpSpeexDSP)
Enable sound preprocessor which should be used for processing audio recorded by the sound input devic...
TT_SetUserStoppedPlaybackDelay
TEAMTALKDLL_API TTBOOL TT_SetUserStoppedPlaybackDelay(IN TTInstance *lpTTInstance, IN INT32 nUserID, IN StreamType nStreamType, IN INT32 nDelayMSec)
Set the delay of when a user should no longer be considered as playing audio (either voice or audio f...
SoundLevel
SoundLevel
An enum encapsulation the minimum, maximum and default sound levels for input and output sound device...
Definition: TeamTalk.h:581
TT_CloseSoundDuplexDevices
TEAMTALKDLL_API TTBOOL TT_CloseSoundDuplexDevices(IN TTInstance *lpTTInstance)
Shut down sound devices running in duplex mode.
TT_SetUserMediaStorageDirEx
TEAMTALKDLL_API TTBOOL TT_SetUserMediaStorageDirEx(IN TTInstance *lpTTInstance, IN INT32 nUserID, IN const TTCHAR *szFolderPath, IN const TTCHAR *szFileNameVars, IN AudioFileFormat uAFF, IN INT32 nStopRecordingExtraDelayMSec)
Store user's audio to disk.
TT_GetSoundInputGainLevel
TEAMTALKDLL_API INT32 TT_GetSoundInputGainLevel(IN TTInstance *lpTTInstance)
Get voice gain level of outgoing audio.
TT_CloseSoundInputDevice
TEAMTALKDLL_API TTBOOL TT_CloseSoundInputDevice(IN TTInstance *lpTTInstance)
Shutdown the input sound device.
TT_GetSoundOutputVolume
TEAMTALKDLL_API INT32 TT_GetSoundOutputVolume(IN TTInstance *lpTTInstance)
Get master volume.
SOUNDSYSTEM_NONE
@ SOUNDSYSTEM_NONE
Sound system denoting invalid or not found.
Definition: TeamTalk.h:290
SOUNDSYSTEM_DSOUND
@ SOUNDSYSTEM_DSOUND
DirectSound audio system. Should be used on Windows.
Definition: TeamTalk.h:294
SOUNDSYSTEM_AUDIOUNIT_IOS
@ SOUNDSYSTEM_AUDIOUNIT_IOS
Same as SOUNDSYSTEM_AUDIOUNIT.
Definition: TeamTalk.h:344
SOUNDSYSTEM_OPENSLES_ANDROID
@ SOUNDSYSTEM_OPENSLES_ANDROID
Android sound API.
Definition: TeamTalk.h:322
SOUNDSYSTEM_WASAPI
@ SOUNDSYSTEM_WASAPI
Windows Audio Session API (WASAPI). Should be used on Windows Vista/7/8/10.
Definition: TeamTalk.h:315
SOUNDSYSTEM_PULSEAUDIO
@ SOUNDSYSTEM_PULSEAUDIO
PulseAudio API. PulseAudio is typically used on Ubuntu 22.
Definition: TeamTalk.h:347
SOUNDSYSTEM_AUDIOUNIT
@ SOUNDSYSTEM_AUDIOUNIT
iOS sound API.
Definition: TeamTalk.h:342
SOUNDSYSTEM_ALSA
@ SOUNDSYSTEM_ALSA
Advanced Linux Sound Architecture (ALSA). Should be used on Linux.
Definition: TeamTalk.h:302
SOUNDSYSTEM_WINMM
@ SOUNDSYSTEM_WINMM
Windows legacy audio system. Should be used on Windows Mobile.
Definition: TeamTalk.h:292
SOUNDSYSTEM_COREAUDIO
@ SOUNDSYSTEM_COREAUDIO
Core Audio. Should be used on MacOS.
Definition: TeamTalk.h:304
SOUNDDEVICEFEATURE_AGC
@ SOUNDDEVICEFEATURE_AGC
The SoundDevice can enable Automatic Gain Control (AGC). Enable AGC use property bEnableAGC on SoundD...
Definition: TeamTalk.h:370
SOUNDDEVICEFEATURE_3DPOSITION
@ SOUNDDEVICEFEATURE_3DPOSITION
The SoundDevice can position user in 3D.
Definition: TeamTalk.h:378
SOUNDDEVICEFEATURE_DEFAULTCOMDEVICE
@ SOUNDDEVICEFEATURE_DEFAULTCOMDEVICE
The SoundDevice is the default communication device. This feature is only supported on SOUNDSYSTEM_WA...
Definition: TeamTalk.h:384
SOUNDDEVICEFEATURE_AEC
@ SOUNDDEVICEFEATURE_AEC
The SoundDevice can enable Acoustic Echo Canceler (AEC). Enable AEC use property bEnableAEC on SoundD...
Definition: TeamTalk.h:364
SOUNDDEVICEFEATURE_DENOISE
@ SOUNDDEVICEFEATURE_DENOISE
The SoundDevice can enable denoising. Enable denoising use property bEnableDenoising on SoundDeviceEf...
Definition: TeamTalk.h:375
SOUNDDEVICEFEATURE_DUPLEXMODE
@ SOUNDDEVICEFEATURE_DUPLEXMODE
The SoundDevice can run in duplex mode.
Definition: TeamTalk.h:381
SOUNDDEVICEFEATURE_NONE
@ SOUNDDEVICEFEATURE_NONE
No sound device features are available on this sound device.
Definition: TeamTalk.h:358
SOUND_VU_MIN
@ SOUND_VU_MIN
The minimum value of recorded audio.
Definition: TeamTalk.h:593
SOUND_GAIN_MIN
@ SOUND_GAIN_MIN
The minimum gain level (since it's zero it means silence).
Definition: TeamTalk.h:643
SOUND_VOLUME_DEFAULT
@ SOUND_VOLUME_DEFAULT
The default volume. Use this whenever possible since it requires the least amount of CPU usage.
Definition: TeamTalk.h:609
SOUND_GAIN_MAX
@ SOUND_GAIN_MAX
The maximum gain level.
Definition: TeamTalk.h:624
SOUND_VOLUME_MAX
@ SOUND_VOLUME_MAX
The maximum volume.
Definition: TeamTalk.h:601
SOUND_VU_MAX
@ SOUND_VU_MAX
The maximum value of recorded audio.
Definition: TeamTalk.h:587
SOUND_VOLUME_MIN
@ SOUND_VOLUME_MIN
The minimum volume.
Definition: TeamTalk.h:615
SOUND_GAIN_DEFAULT
@ SOUND_GAIN_DEFAULT
The default gain level.
Definition: TeamTalk.h:634
TT_StopVideoCaptureTransmission
TEAMTALKDLL_API TTBOOL TT_StopVideoCaptureTransmission(IN TTInstance *lpTTInstance)
Stop transmitting from video capture device.
TT_StartVideoCaptureTransmission
TEAMTALKDLL_API TTBOOL TT_StartVideoCaptureTransmission(IN TTInstance *lpTTInstance, IN const VideoCodec *lpVideoCodec)
Start transmitting from video capture device.
TT_SetVoiceActivationLevel
TEAMTALKDLL_API TTBOOL TT_SetVoiceActivationLevel(IN TTInstance *lpTTInstance, IN INT32 nLevel)
Set voice activation level.
StreamTypes
UINT32 StreamTypes
Mask of StreamType.
Definition: TeamTalk.h:273
TT_StartRecordingMuxedStreams
TEAMTALKDLL_API TTBOOL TT_StartRecordingMuxedStreams(IN TTInstance *lpTTInstance, IN StreamTypes uStreamTypes, IN const AudioCodec *lpAudioCodec, IN const TTCHAR *szAudioFileName, IN AudioFileFormat uAFF)
Mix multiple StreamTypes into a single audio file.
TT_StopRecordingMuxedAudioFileEx
TEAMTALKDLL_API TTBOOL TT_StopRecordingMuxedAudioFileEx(IN TTInstance *lpTTInstance, IN INT32 nChannelID)
Stop recording conversations from a channel to a single file.
StreamType
StreamType
The types of streams which are available for transmission.
Definition: TeamTalk.h:222
TT_StopRecordingMuxedAudioFile
TEAMTALKDLL_API TTBOOL TT_StopRecordingMuxedAudioFile(IN TTInstance *lpTTInstance)
Stop an active muxed audio recording.
TT_EnableVoiceTransmission
TEAMTALKDLL_API TTBOOL TT_EnableVoiceTransmission(IN TTInstance *lpTTInstance, IN TTBOOL bEnable)
Start/stop transmitting of voice data from sound input.
TT_StartRecordingMuxedAudioFileEx
TEAMTALKDLL_API TTBOOL TT_StartRecordingMuxedAudioFileEx(IN TTInstance *lpTTInstance, IN INT32 nChannelID, IN const TTCHAR *szAudioFileName, IN AudioFileFormat uAFF)
Store audio conversations from a specific channel into a single file.
TT_SetVoiceActivationStopDelay
TEAMTALKDLL_API TTBOOL TT_SetVoiceActivationStopDelay(IN TTInstance *lpTTInstance, IN INT32 nDelayMSec)
Set the delay of when voice activation should be stopped.
TT_InsertAudioBlock
TEAMTALKDLL_API TTBOOL TT_InsertAudioBlock(IN TTInstance *lpTTInstance, IN const AudioBlock *lpAudioBlock)
Transmit application provided raw audio in AudioBlock-structs as STREAMTYPE_VOICE,...
TT_GetVoiceActivationStopDelay
TEAMTALKDLL_API INT32 TT_GetVoiceActivationStopDelay(IN TTInstance *lpTTInstance)
Get the delay of when voice active state should be disabled.
TT_GetVoiceActivationLevel
TEAMTALKDLL_API INT32 TT_GetVoiceActivationLevel(IN TTInstance *lpTTInstance)
Get voice activation level.
TT_StartRecordingMuxedAudioFile
TEAMTALKDLL_API TTBOOL TT_StartRecordingMuxedAudioFile(IN TTInstance *lpTTInstance, IN const AudioCodec *lpAudioCodec, IN const TTCHAR *szAudioFileName, IN AudioFileFormat uAFF)
Store all audio conversations with specific AudioCodec settings to a single file.
TT_EnableVoiceActivation
TEAMTALKDLL_API TTBOOL TT_EnableVoiceActivation(IN TTInstance *lpTTInstance, IN TTBOOL bEnable)
Enable voice activation.
STREAMTYPE_MEDIAFILE_AUDIO
@ STREAMTYPE_MEDIAFILE_AUDIO
Audio stream type from a media file which is being streamed.
Definition: TeamTalk.h:233
STREAMTYPE_CLASSROOM_ALL
@ STREAMTYPE_CLASSROOM_ALL
Shortcut to allow voice, media files, desktop, webcamera and channel messages.
Definition: TeamTalk.h:265
STREAMTYPE_DESKTOPINPUT
@ STREAMTYPE_DESKTOPINPUT
Desktop input stream type which is keyboard or mouse input being transmitted.
Definition: TeamTalk.h:243
STREAMTYPE_MEDIAFILE
@ STREAMTYPE_MEDIAFILE
Shortcut to allow both audio and video media files.
Definition: TeamTalk.h:245
STREAMTYPE_VIDEOCAPTURE
@ STREAMTYPE_VIDEOCAPTURE
Video capture stream type which is video recorded from a webcam.
Definition: TeamTalk.h:230
STREAMTYPE_DESKTOP
@ STREAMTYPE_DESKTOP
Desktop window stream type which is a window (or bitmap) being transmitted.
Definition: TeamTalk.h:239
STREAMTYPE_LOCALMEDIAPLAYBACK_AUDIO
@ STREAMTYPE_LOCALMEDIAPLAYBACK_AUDIO
Stream type for audio of local playback.
Definition: TeamTalk.h:261
STREAMTYPE_NONE
@ STREAMTYPE_NONE
No stream.
Definition: TeamTalk.h:224
STREAMTYPE_VOICE
@ STREAMTYPE_VOICE
Voice stream type which is audio recorded from a sound input device.
Definition: TeamTalk.h:227
STREAMTYPE_CHANNELMSG
@ STREAMTYPE_CHANNELMSG
Channel text messages as stream type.
Definition: TeamTalk.h:255
STREAMTYPE_MEDIAFILE_VIDEO
@ STREAMTYPE_MEDIAFILE_VIDEO
Video stream type from a media file which is being streamed.
Definition: TeamTalk.h:236
UserType
UserType
The types of users supported.
Definition: TeamTalk.h:1965
TextMsgType
TextMsgType
Text message types.
Definition: TeamTalk.h:2368
UserStatistics
struct UserStatistics UserStatistics
Packet reception and data statistics for a user.
Subscriptions
UINT32 Subscriptions
A bitmask based on Subscription describing which subscriptions are enabled.
Definition: TeamTalk.h:2144
TT_GetUser
TEAMTALKDLL_API TTBOOL TT_GetUser(IN TTInstance *lpTTInstance, IN INT32 nUserID, OUT User *lpUser)
Get the user with the specified ID.
TT_GetUserStatistics
TEAMTALKDLL_API TTBOOL TT_GetUserStatistics(IN TTInstance *lpTTInstance, IN INT32 nUserID, OUT UserStatistics *lpUserStatistics)
Get statistics for data and packet reception from a user.
TT_GetMyUserID
TEAMTALKDLL_API INT32 TT_GetMyUserID(IN TTInstance *lpTTInstance)
Get the local client instance's user ID.
TextMessage
struct TextMessage TextMessage
A struct containing the properties of a text message sent by a user.
UserTypes
UINT32 UserTypes
A bitmask based on UserType describing the user type.
Definition: TeamTalk.h:1978
TT_GetMyUserRights
TEAMTALKDLL_API UserRights TT_GetMyUserRights(IN TTInstance *lpTTInstance)
Convenience method for TT_GetMyUserAccount()
UserStates
UINT32 UserStates
A bitmask based on UserState indicating a User's current state.
Definition: TeamTalk.h:2190
TT_GetMyUserAccount
TEAMTALKDLL_API TTBOOL TT_GetMyUserAccount(IN TTInstance *lpTTInstance, OUT UserAccount *lpUserAccount)
Get the local client instance's UserAccount.
TT_GetUserByUsername
TEAMTALKDLL_API TTBOOL TT_GetUserByUsername(IN TTInstance *lpTTInstance, IN const TTCHAR *szUsername, OUT User *lpUser)
Get the user with the specified username.
TT_GetMyUserType
TEAMTALKDLL_API UserTypes TT_GetMyUserType(IN TTInstance *lpTTInstance)
Get the client instance's user type.
Subscription
Subscription
A user by default accepts audio, video and text messages from all users. Using subscribtions can,...
Definition: TeamTalk.h:2079
TT_GetMyUserData
TEAMTALKDLL_API INT32 TT_GetMyUserData(IN TTInstance *lpTTInstance)
If an account was used in TT_DoLogin then this value will return the nUserData from the UserAccount.
User
struct User User
A struct containing the properties of a user.
UserState
UserState
The possible states for a user. Used for User's uUserState variable.
Definition: TeamTalk.h:2149
USERTYPE_DEFAULT
@ USERTYPE_DEFAULT
A default user who can join channels.
Definition: TeamTalk.h:1970
USERTYPE_ADMIN
@ USERTYPE_ADMIN
A user with administrator privileges.
Definition: TeamTalk.h:1972
USERTYPE_NONE
@ USERTYPE_NONE
Used internally to denote an unauthenticated user.
Definition: TeamTalk.h:1968
MSGTYPE_BROADCAST
@ MSGTYPE_BROADCAST
A broadcast message. Requires USERRIGHT_TEXTMESSAGE_BROADCAST.
Definition: TeamTalk.h:2381
MSGTYPE_CHANNEL
@ MSGTYPE_CHANNEL
A User to channel text message. Users of type USERTYPE_DEFAULT can only send this text message to the...
Definition: TeamTalk.h:2378
MSGTYPE_USER
@ MSGTYPE_USER
A User to user text message. A message of this type can be sent across channels.
Definition: TeamTalk.h:2373
MSGTYPE_CUSTOM
@ MSGTYPE_CUSTOM
A custom user to user text message. Works the same way as MSGTYPE_USER.
Definition: TeamTalk.h:2384
MSGTYPE_NONE
@ MSGTYPE_NONE
An incomplete text message.
Definition: TeamTalk.h:2370
SUBSCRIBE_BROADCAST_MSG
@ SUBSCRIBE_BROADCAST_MSG
Subscribing to broadcast text messsages.
Definition: TeamTalk.h:2090
SUBSCRIBE_USER_MSG
@ SUBSCRIBE_USER_MSG
Subscribing to user text messages.
Definition: TeamTalk.h:2084
SUBSCRIBE_INTERCEPT_VOICE
@ SUBSCRIBE_INTERCEPT_VOICE
Intercept all voice sent by a user. Only user-type USERTYPE_ADMIN can do this. By enabling this subsc...
Definition: TeamTalk.h:2121
SUBSCRIBE_INTERCEPT_VIDEOCAPTURE
@ SUBSCRIBE_INTERCEPT_VIDEOCAPTURE
Intercept all video sent by a user. Only user-type USERTYPE_ADMIN can do this. By enabling this subsc...
Definition: TeamTalk.h:2126
SUBSCRIBE_INTERCEPT_DESKTOP
@ SUBSCRIBE_INTERCEPT_DESKTOP
Intercept all desktop data sent by a user. Only user-type USERTYPE_ADMIN can do this....
Definition: TeamTalk.h:2131
SUBSCRIBE_CUSTOM_MSG
@ SUBSCRIBE_CUSTOM_MSG
Subscribing to custom user messages.
Definition: TeamTalk.h:2093
SUBSCRIBE_MEDIAFILE
@ SUBSCRIBE_MEDIAFILE
Subscribing to STREAMTYPE_MEDIAFILE_VIDEO and STREAMTYPE_MEDIAFILE_AUDIO.
Definition: TeamTalk.h:2106
SUBSCRIBE_INTERCEPT_CHANNEL_MSG
@ SUBSCRIBE_INTERCEPT_CHANNEL_MSG
Intercept all channel messages sent by a user. Only user-type USERTYPE_ADMIN can do this.
Definition: TeamTalk.h:2112
SUBSCRIBE_NONE
@ SUBSCRIBE_NONE
No subscriptions.
Definition: TeamTalk.h:2081
SUBSCRIBE_CHANNEL_MSG
@ SUBSCRIBE_CHANNEL_MSG
Subscribing to channel texxt messages.
Definition: TeamTalk.h:2087
SUBSCRIBE_INTERCEPT_USER_MSG
@ SUBSCRIBE_INTERCEPT_USER_MSG
Intercept all user text messages sent by a user. Only user-type USERTYPE_ADMIN can do this.
Definition: TeamTalk.h:2109
SUBSCRIBE_VOICE
@ SUBSCRIBE_VOICE
Subscribing to STREAMTYPE_VOICE.
Definition: TeamTalk.h:2095
SUBSCRIBE_INTERCEPT_CUSTOM_MSG
@ SUBSCRIBE_INTERCEPT_CUSTOM_MSG
Intercept all custom text messages sent by user. Only user-type USERTYPE_ADMIN can do this.
Definition: TeamTalk.h:2116
SUBSCRIBE_VIDEOCAPTURE
@ SUBSCRIBE_VIDEOCAPTURE
Subscribing to STREAMTYPE_VIDEOCAPTURE.
Definition: TeamTalk.h:2097
SUBSCRIBE_INTERCEPT_MEDIAFILE
@ SUBSCRIBE_INTERCEPT_MEDIAFILE
Intercept all media file data sent by a user. Only user-type USERTYPE_ADMIN can do this....
Definition: TeamTalk.h:2137
SUBSCRIBE_DESKTOPINPUT
@ SUBSCRIBE_DESKTOPINPUT
Subscribing to STREAMTYPE_DESKTOPINPUT.
Definition: TeamTalk.h:2103
SUBSCRIBE_DESKTOP
@ SUBSCRIBE_DESKTOP
Subscribing to STREAMTYPE_DESKTOP.
Definition: TeamTalk.h:2099
USERSTATE_VOICE
@ USERSTATE_VOICE
If set the user is currently talking. If this flag changes the event CLIENTEVENT_USER_STATECHANGE is ...
Definition: TeamTalk.h:2155
USERSTATE_VIDEOCAPTURE
@ USERSTATE_VIDEOCAPTURE
If set the user currently has an active video stream. If this flag changes the event CLIENTEVENT_USER...
Definition: TeamTalk.h:2170
USERSTATE_MUTE_MEDIAFILE
@ USERSTATE_MUTE_MEDIAFILE
If set the user's media file playback is muted.
Definition: TeamTalk.h:2160
USERSTATE_MEDIAFILE
@ USERSTATE_MEDIAFILE
If set user is streaming a media file. If this flag changes the event CLIENTEVENT_USER_STATECHANGE is...
Definition: TeamTalk.h:2184
USERSTATE_MUTE_VOICE
@ USERSTATE_MUTE_VOICE
If set the user's voice is muted.
Definition: TeamTalk.h:2157
USERSTATE_NONE
@ USERSTATE_NONE
The user is in initial state.
Definition: TeamTalk.h:2151
USERSTATE_MEDIAFILE_VIDEO
@ USERSTATE_MEDIAFILE_VIDEO
If set the user currently streams a video file. If this flag changes the event CLIENTEVENT_USER_STATE...
Definition: TeamTalk.h:2180
USERSTATE_MEDIAFILE_AUDIO
@ USERSTATE_MEDIAFILE_AUDIO
If set the user currently streams an audio file. If user is streaming a video file with audio then th...
Definition: TeamTalk.h:2176
USERSTATE_DESKTOP
@ USERSTATE_DESKTOP
If set the user currently has an active desktop session. If this flag changes the event CLIENTEVENT_U...
Definition: TeamTalk.h:2165
TT_CloseVideoCaptureDevice
TEAMTALKDLL_API TTBOOL TT_CloseVideoCaptureDevice(IN TTInstance *lpTTInstance)
Close a video capture device.
TT_InitVideoCaptureDevice
TEAMTALKDLL_API TTBOOL TT_InitVideoCaptureDevice(IN TTInstance *lpTTInstance, IN const TTCHAR *szDeviceID, IN const VideoFormat *lpVideoFormat)
Initialize a video capture device.
VideoFrame
struct VideoFrame VideoFrame
A RGB32 image where the pixels can be accessed directly in an allocated frameBuffer.
TT_AcquireUserVideoCaptureFrame
TEAMTALKDLL_API VideoFrame * TT_AcquireUserVideoCaptureFrame(IN TTInstance *lpTTInstance, IN INT32 nUserID)
Extract a user's video capture frame for display.
VideoFormat
struct VideoFormat VideoFormat
A struct containing the properties of a video capture format.
TT_PaintVideoFrameEx
TEAMTALKDLL_API TTBOOL TT_PaintVideoFrameEx(IN HDC hDC, IN INT32 XDest, IN INT32 YDest, IN INT32 nDestWidth, IN INT32 nDestHeight, IN INT32 XSrc, IN INT32 YSrc, IN INT32 nSrcWidth, IN INT32 nSrcHeight, IN VideoFrame *lpVideoFrame)
Paint user's video frame using a Windows' DC (device context).
VideoCaptureDevice
struct VideoCaptureDevice VideoCaptureDevice
A struct containing the properties of a video capture device.
TT_VIDEOFORMATS_MAX
#define TT_VIDEOFORMATS_MAX
Definition: TeamTalk.h:101
TT_PaintVideoFrame
TEAMTALKDLL_API TTBOOL TT_PaintVideoFrame(IN HDC hDC, IN INT32 XDest, IN INT32 YDest, IN INT32 nDestWidth, IN INT32 nDestHeight, IN VideoFrame *lpVideoFrame)
Paint user's video frame using a Windows' DC (device context).
TT_ReleaseUserVideoCaptureFrame
TEAMTALKDLL_API TTBOOL TT_ReleaseUserVideoCaptureFrame(IN TTInstance *lpTTInstance, IN VideoFrame *lpVideoFrame)
Delete a user's video frame, acquired through TT_AcquireUserVideoCaptureFrame(), so its allocated res...
FourCC
FourCC
The picture format used by a capture device.
Definition: TeamTalk.h:819
TT_GetVideoCaptureDevices
TEAMTALKDLL_API TTBOOL TT_GetVideoCaptureDevices(IN OUT VideoCaptureDevice *lpVideoDevices, IN OUT INT32 *lpnHowMany)
Get the list of devices available for video capture.
FOURCC_RGB32
@ FOURCC_RGB32
The image format with the highest bandwidth usage. A 640x480 pixel images takes up 1....
Definition: TeamTalk.h:830
FOURCC_I420
@ FOURCC_I420
Prefered image format with the lowest bandwidth usage. A 640x480 pixel image takes up 460....
Definition: TeamTalk.h:824
FOURCC_YUY2
@ FOURCC_YUY2
Image format where a 640x480 pixel images takes up 614.400 bytes.
Definition: TeamTalk.h:827
FOURCC_NONE
@ FOURCC_NONE
Internal use to denote no supported formats.
Definition: TeamTalk.h:821
AbusePrevention
Properties to prevent server abuse.
Definition: TeamTalk.h:1989
AbusePrevention::nCommandsIntervalMSec
INT32 nCommandsIntervalMSec
Commands within given interval.
Definition: TeamTalk.h:2001
AbusePrevention::nCommandsLimit
INT32 nCommandsLimit
Limit number of commands a user can send to the server.
Definition: TeamTalk.h:1999
AudioBlock
An audio block containing the raw audio from a user who was talking.
Definition: TeamTalk.h:661
AudioBlock::lpRawAudio
VOID * lpRawAudio
The raw audio in 16-bit integer format array. The size of the array in bytes is sizeof(short) * nSamp...
Definition: TeamTalk.h:673
AudioBlock::nSampleRate
INT32 nSampleRate
The sample rate of the raw audio.
Definition: TeamTalk.h:667
AudioBlock::uSampleIndex
UINT32 uSampleIndex
The index of the first sample in lpRawAudio. Its value will be a multiple of nSamples....
Definition: TeamTalk.h:683
AudioBlock::uStreamTypes
StreamTypes uStreamTypes
The stream types used to generate the AudioBlock's raw audio.
Definition: TeamTalk.h:696
AudioBlock::nChannels
INT32 nChannels
The number of channels used (1 for mono, 2 for stereo).
Definition: TeamTalk.h:669
AudioBlock::nStreamID
INT32 nStreamID
The ID of the stream. The stream id changes every time the user enables a new transmission using TT_E...
Definition: TeamTalk.h:665
AudioBlock::nSamples
INT32 nSamples
The number of samples in the raw audio array.
Definition: TeamTalk.h:675
AudioCodec
Struct used for specifying which audio codec a channel uses.
Definition: TeamTalk.h:1481
AudioCodec::speex
SpeexCodec speex
Speex codec settings if nCodec is SPEEX_CODEC.
Definition: TeamTalk.h:1489
AudioCodec::opus
OpusCodec opus
Opus codec settings if nCodec is OPUS_CODEC.
Definition: TeamTalk.h:1495
AudioCodec::nCodec
Codec nCodec
Specifies whether the member speex, speex_vbr or opus holds the codec settings.
Definition: TeamTalk.h:1484
AudioCodec::speex_vbr
SpeexVBRCodec speex_vbr
Speex codec settings if nCodec is SPEEX_VBR_CODEC.
Definition: TeamTalk.h:1492
AudioConfig
Audio configuration for clients in a channel.
Definition: TeamTalk.h:1513
AudioConfig::nGainLevel
INT32 nGainLevel
Reference gain level to be used by all users.
Definition: TeamTalk.h:1517
AudioConfig::bEnableAGC
TTBOOL bEnableAGC
Users should enable automatic gain control.
Definition: TeamTalk.h:1515
AudioFormat
Struct describing the audio format used by a media file.
Definition: TeamTalk.h:799
AudioFormat::nSampleRate
INT32 nSampleRate
Sample rate of media file.
Definition: TeamTalk.h:803
AudioFormat::nChannels
INT32 nChannels
Channels used by media file, mono = 1, stereo = 2.
Definition: TeamTalk.h:805
AudioFormat::nAudioFmt
AudioFileFormat nAudioFmt
The audio file format, e.g. wave or MP3.
Definition: TeamTalk.h:801
AudioInputProgress
The progress of the audio currently being processed as audio input.
Definition: TeamTalk.h:1584
AudioInputProgress::uQueueMSec
UINT32 uQueueMSec
The duration of the audio currently queued for transmission.
Definition: TeamTalk.h:1589
AudioInputProgress::uElapsedMSec
UINT32 uElapsedMSec
The duration of the audio that has been transmitted.
Definition: TeamTalk.h:1592
AudioInputProgress::nStreamID
INT32 nStreamID
The stream ID provided in the AudioBlock.
Definition: TeamTalk.h:1586
AudioPreprocessor
Configure the audio preprocessor specified by nPreprocessor.
Definition: TeamTalk.h:1408
AudioPreprocessor::webrtc
WebRTCAudioPreprocessor webrtc
Used when nPreprocessor is WEBRTC_AUDIOPREPROCESSOR.
Definition: TeamTalk.h:1418
AudioPreprocessor::speexdsp
SpeexDSP speexdsp
Used when nPreprocessor is SPEEXDSP_AUDIOPREPROCESSOR.
Definition: TeamTalk.h:1414
AudioPreprocessor::ttpreprocessor
TTAudioPreprocessor ttpreprocessor
Used when nPreprocessor is TEAMTALK_AUDIOPREPROCESSOR.
Definition: TeamTalk.h:1416
AudioPreprocessor::nPreprocessor
AudioPreprocessorType nPreprocessor
The audio preprocessor to use in the union of audio preprocessors.
Definition: TeamTalk.h:1410
BannedUser
A struct containing the properties of a banned user.
Definition: TeamTalk.h:1943
BannedUser::szChannelPath
TTCHAR szChannelPath[TT_STRLEN]
Channel where user was located when banned.
Definition: TeamTalk.h:1947
BannedUser::szOwner
TTCHAR szOwner[TT_STRLEN]
The username of the user who made the ban.
Definition: TeamTalk.h:1958
BannedUser::uBanTypes
BanTypes uBanTypes
The type of ban that applies to this banned user.
Definition: TeamTalk.h:1956
BannedUser::szBanTime
TTCHAR szBanTime[TT_STRLEN]
Date and time when user was banned. Read-only property. Date/time is converted local time.
Definition: TeamTalk.h:1950
BannedUser::szNickname
TTCHAR szNickname[TT_STRLEN]
Nickname of banned user. Read-only property.
Definition: TeamTalk.h:1952
BannedUser::szUsername
TTCHAR szUsername[TT_STRLEN]
Username of banned user.
Definition: TeamTalk.h:1954
BannedUser::szIPAddress
TTCHAR szIPAddress[TT_STRLEN]
IP-address of banned user.
Definition: TeamTalk.h:1945
Channel
A struct containing the properties of a channel.
Definition: TeamTalk.h:2471
Channel::szPassword
TTCHAR szPassword[TT_STRLEN]
Password to join the channel. When extracted through TT_GetChannel the password will only be set for ...
Definition: TeamTalk.h:2484
Channel::szTopic
TTCHAR szTopic[TT_STRLEN]
Topic of the channel.
Definition: TeamTalk.h:2480
Channel::nTimeOutTimerVoiceMSec
INT32 nTimeOutTimerVoiceMSec
Time out timer for voice stream. The maximum time in miliseconds a user can transmit voice without ch...
Definition: TeamTalk.h:2578
Channel::nMaxUsers
INT32 nMaxUsers
Max number of users in channel.
Definition: TeamTalk.h:2500
Channel::transmitUsers
INT32 transmitUsers[TT_TRANSMITUSERS_MAX][2]
List of users who can transmit in a channel.
Definition: TeamTalk.h:2561
Channel::nDiskQuota
INT64 nDiskQuota
Number of bytes available for file storage.
Definition: TeamTalk.h:2495
Channel::bPassword
TTBOOL bPassword
Whether password is required to join channel. Read-only property.
Definition: TeamTalk.h:2487
Channel::nParentID
INT32 nParentID
Parent channel ID. 0 means no parent channel, i.e. it's the root channel.
Definition: TeamTalk.h:2474
Channel::nTransmitUsersQueueDelayMSec
INT32 nTransmitUsersQueueDelayMSec
Delay for switching to next active voice user in transmitUsersQueue.
Definition: TeamTalk.h:2574
Channel::nTimeOutTimerMediaFileMSec
INT32 nTimeOutTimerMediaFileMSec
Time out timer for media file stream. The maximum time in miliseconds a user can transmit a media fil...
Definition: TeamTalk.h:2582
Channel::uChannelType
ChannelTypes uChannelType
A bitmask of the type of channel based on ChannelType.
Definition: TeamTalk.h:2489
Channel::audiocfg
AudioConfig audiocfg
The audio configuration which users who join the channel should use.
Definition: TeamTalk.h:2505
Channel::transmitUsersQueue
INT32 transmitUsersQueue[TT_TRANSMITQUEUE_MAX]
The users currently queued for voice or media file transmission.
Definition: TeamTalk.h:2566
Channel::nChannelID
INT32 nChannelID
The channel's ID. A value from 1 - TT_CHANNELID_MAX.
Definition: TeamTalk.h:2476
Channel::audiocodec
AudioCodec audiocodec
The audio codec used by users in the channel.
Definition: TeamTalk.h:2502
Channel::szName
TTCHAR szName[TT_STRLEN]
Name of the channel.
Definition: TeamTalk.h:2478
Channel::nUserData
INT32 nUserData
User specific data which will be stored on persistent storage on the server if the channel type is CH...
Definition: TeamTalk.h:2493
Channel::szOpPassword
TTCHAR szOpPassword[TT_STRLEN]
Password to become channel operator.
Definition: TeamTalk.h:2498
ClientErrorMsg
Struct containing an error message.
Definition: TeamTalk.h:3146
ClientErrorMsg::nErrorNo
INT32 nErrorNo
Error number based on ClientError.
Definition: TeamTalk.h:3148
ClientErrorMsg::szErrorMsg
TTCHAR szErrorMsg[TT_STRLEN]
Text message describing the error.
Definition: TeamTalk.h:3150
ClientKeepAlive
Control timers for sending keep alive information to the server.
Definition: TeamTalk.h:2708
ClientKeepAlive::nConnectionLostMSec
INT32 nConnectionLostMSec
The duration before the TTInstance should consider the client/server connection lost.
Definition: TeamTalk.h:2719
ClientKeepAlive::nUdpKeepAliveRTXMSec
INT32 nUdpKeepAliveRTXMSec
Client instance's interval for retransmitting UDP keep alive packets. If server hasn't responded to U...
Definition: TeamTalk.h:2735
ClientKeepAlive::nUdpKeepAliveIntervalMSec
INT32 nUdpKeepAliveIntervalMSec
Client instance's interval between sending UDP keep alive packets. The UDP keep alive packets are use...
Definition: TeamTalk.h:2729
ClientKeepAlive::nTcpKeepAliveIntervalMSec
INT32 nTcpKeepAliveIntervalMSec
Client instance's interval between automatically doing TT_DoPing() command. Read-only value....
Definition: TeamTalk.h:2723
ClientKeepAlive::nUdpConnectRTXMSec
INT32 nUdpConnectRTXMSec
Client instance's interval for retransmitting UDP connect packets. UDP connect packets are only sent ...
Definition: TeamTalk.h:2742
ClientKeepAlive::nUdpConnectTimeoutMSec
INT32 nUdpConnectTimeoutMSec
The duration before the client instance should give up trying to connect to the server on UDP....
Definition: TeamTalk.h:2750
ClientStatistics
Statistics of bandwidth usage and ping times in the local client instance.
Definition: TeamTalk.h:2758
ClientStatistics::nUdpBytesRecv
INT64 nUdpBytesRecv
Bytes received on UDP.
Definition: TeamTalk.h:2762
ClientStatistics::nUdpPingTimeMs
INT32 nUdpPingTimeMs
Response time to server on UDP (based on ping/pong sent at a specified interval. Set to -1 if not cur...
Definition: TeamTalk.h:2786
ClientStatistics::nSoundInputDeviceDelayMSec
INT32 nSoundInputDeviceDelayMSec
Delay of sound input device until the first audio frame is delivered (in msec).
Definition: TeamTalk.h:2808
ClientStatistics::nUdpBytesSent
INT64 nUdpBytesSent
Bytes sent on UDP.
Definition: TeamTalk.h:2760
ClientStatistics::nTcpServerSilenceSec
INT32 nTcpServerSilenceSec
The number of seconds nothing has been received by the client on TCP.
Definition: TeamTalk.h:2793
ClientStatistics::nMediaFileAudioBytesSent
INT64 nMediaFileAudioBytesSent
Audio from media file data sent (on UDP).
Definition: TeamTalk.h:2772
ClientStatistics::nDesktopBytesSent
INT64 nDesktopBytesSent
Desktop data sent (on UDP).
Definition: TeamTalk.h:2780
ClientStatistics::nVoiceBytesRecv
INT64 nVoiceBytesRecv
Voice data received (on UDP).
Definition: TeamTalk.h:2766
ClientStatistics::nUdpServerSilenceSec
INT32 nUdpServerSilenceSec
The number of seconds nothing has been received by the client on UDP.
Definition: TeamTalk.h:2796
ClientStatistics::nMediaFileVideoBytesRecv
INT64 nMediaFileVideoBytesRecv
Video from media file data received (on UDP).
Definition: TeamTalk.h:2778
ClientStatistics::nVoiceBytesSent
INT64 nVoiceBytesSent
Voice data sent (on UDP).
Definition: TeamTalk.h:2764
ClientStatistics::nMediaFileVideoBytesSent
INT64 nMediaFileVideoBytesSent
Video from media file data sent (on UDP).
Definition: TeamTalk.h:2776
ClientStatistics::nVideoCaptureBytesSent
INT64 nVideoCaptureBytesSent
Video data sent (on UDP).
Definition: TeamTalk.h:2768
ClientStatistics::nMediaFileAudioBytesRecv
INT64 nMediaFileAudioBytesRecv
Audio from media file data received (on UDP).
Definition: TeamTalk.h:2774
ClientStatistics::nTcpPingTimeMs
INT32 nTcpPingTimeMs
Response time to server on TCP (based on ping/pong sent at a specified interval. Set to -1 if not cur...
Definition: TeamTalk.h:2790
ClientStatistics::nVideoCaptureBytesRecv
INT64 nVideoCaptureBytesRecv
Video data received (on UDP).
Definition: TeamTalk.h:2770
ClientStatistics::nDesktopBytesRecv
INT64 nDesktopBytesRecv
Desktop data received (on UDP).
Definition: TeamTalk.h:2782
DesktopInput
A struct containing a mouse or keyboard event.
Definition: TeamTalk.h:1025
DesktopInput::uMousePosX
UINT16 uMousePosX
The X coordinate of the mouse. If used with TT_DesktopInput_Execute() and the mouse position should b...
Definition: TeamTalk.h:1029
DesktopInput::uKeyCode
UINT32 uKeyCode
The key-code (or mouse button) pressed. If used with TT_DesktopInput_Execute() and no key (or mouse b...
Definition: TeamTalk.h:1039
DesktopInput::uKeyState
DesktopKeyStates uKeyState
The state of the key (or mouse button) pressed, i.e. if it's up or down.
Definition: TeamTalk.h:1042
DesktopInput::uMousePosY
UINT16 uMousePosY
The Y coordinate of the mouse. If used with TT_DesktopInput_Execute() and the mouse position should b...
Definition: TeamTalk.h:1033
DesktopWindow
A struct containing the properties of a shared desktop window.
Definition: TeamTalk.h:975
DesktopWindow::nFrameBufferSize
INT32 nFrameBufferSize
The size in bytes of the buffer allocate in frameBuffer. Typically nBytesPerLine * nHeight.
Definition: TeamTalk.h:998
DesktopWindow::nWidth
INT32 nWidth
The width in pixels of the bitmap.
Definition: TeamTalk.h:977
DesktopWindow::nHeight
INT32 nHeight
The height in pixels of the bitmap.
Definition: TeamTalk.h:979
DesktopWindow::nBytesPerLine
INT32 nBytesPerLine
The number of bytes for each scan-line in the bitmap. Zero means 4-byte aligned.
Definition: TeamTalk.h:984
DesktopWindow::nSessionID
INT32 nSessionID
The ID of the session which the bitmap belongs to. If the session ID changes it means the user has st...
Definition: TeamTalk.h:991
DesktopWindow::bmpFormat
BitmapFormat bmpFormat
The format of the bitmap.
Definition: TeamTalk.h:981
DesktopWindow::frameBuffer
VOID * frameBuffer
A buffer pointing to the bitmap data (often refered to as Scan0).
Definition: TeamTalk.h:995
DesktopWindow::nProtocol
DesktopProtocol nProtocol
The desktop protocol used for transmitting the desktop window.
Definition: TeamTalk.h:993
EncryptionContext
Configure peer verification for encrypted connection.
Definition: TeamTalk.h:2653
EncryptionContext::bVerifyClientOnce
TTBOOL bVerifyClientOnce
Whether to only verify client's certificate once during initial connection.
Definition: TeamTalk.h:2687
EncryptionContext::szCertificateFile
TTCHAR szCertificateFile[TT_STRLEN]
Path to SSL certificate in PEM format.
Definition: TeamTalk.h:2659
EncryptionContext::szPrivateKeyFile
TTCHAR szPrivateKeyFile[TT_STRLEN]
Path to certificate's private key.
Definition: TeamTalk.h:2661
EncryptionContext::szCADir
TTCHAR szCADir[TT_STRLEN]
Path to directory containing Certificate Authority (CA) Certificates in PEM format.
Definition: TeamTalk.h:2669
EncryptionContext::bVerifyPeer
TTBOOL bVerifyPeer
Verify that peer (client or server) uses a certificate that has been generated by the Certificate Aut...
Definition: TeamTalk.h:2676
EncryptionContext::szCAFile
TTCHAR szCAFile[TT_STRLEN]
Path to Certificate Authority (CA) Certificate in PEM format.
Definition: TeamTalk.h:2666
EncryptionContext::nVerifyDepth
INT32 nVerifyDepth
Set limit to depth in the certificate chain during the verification procedure.
Definition: TeamTalk.h:2698
FileTransfer
A struct containing the properties of a file transfer.
Definition: TeamTalk.h:2603
FileTransfer::nStatus
FileTransferStatus nStatus
Status of file transfer.
Definition: TeamTalk.h:2605
FileTransfer::bInbound
TTBOOL bInbound
TRUE if download and FALSE if upload.
Definition: TeamTalk.h:2619
FileTransfer::szRemoteFileName
TTCHAR szRemoteFileName[TT_STRLEN]
The filename in the channel.
Definition: TeamTalk.h:2613
FileTransfer::nChannelID
INT32 nChannelID
The channel where the file is/will be located.
Definition: TeamTalk.h:2609
FileTransfer::nTransferred
INT64 nTransferred
The number of bytes transferred so far.
Definition: TeamTalk.h:2617
FileTransfer::nFileSize
INT64 nFileSize
The size of the file being transferred.
Definition: TeamTalk.h:2615
FileTransfer::nTransferID
INT32 nTransferID
The ID identifying the file transfer.
Definition: TeamTalk.h:2607
FileTransfer::szLocalFilePath
TTCHAR szLocalFilePath[TT_STRLEN]
The file path on local disk.
Definition: TeamTalk.h:2611
JitterConfig
Configuration parameters for the Jitter Buffer.
Definition: TeamTalk.h:2817
JitterConfig::nActiveAdaptiveDelayMSec
INT32 nActiveAdaptiveDelayMSec
The current adaptive delay. When used with TT_SetUserJitterControl, this value is used as the adaptiv...
Definition: TeamTalk.h:2831
JitterConfig::nMaxAdaptiveDelayMSec
INT32 nMaxAdaptiveDelayMSec
A hard maximum delay on the adaptive delay. Only valid when higher than zero. Default = 0.
Definition: TeamTalk.h:2824
JitterConfig::bUseAdativeDejitter
TTBOOL bUseAdativeDejitter
Turns adaptive jitter buffering ON/OFF. Default is OFF.
Definition: TeamTalk.h:2821
JitterConfig::nFixedDelayMSec
INT32 nFixedDelayMSec
The fixed delay in milliseconds. Default = 0.
Definition: TeamTalk.h:2819
MediaFileInfo
Struct describing the audio and video format used by a media file.
Definition: TeamTalk.h:1543
MediaFileInfo::videoFmt
VideoFormat videoFmt
The video properties of the media file.
Definition: TeamTalk.h:1552
MediaFileInfo::uElapsedMSec
UINT32 uElapsedMSec
The elapsed time of the media file in miliseconds.
Definition: TeamTalk.h:1556
MediaFileInfo::audioFmt
AudioFormat audioFmt
The audio properties of the media file.
Definition: TeamTalk.h:1550
MediaFileInfo::uDurationMSec
UINT32 uDurationMSec
The duration of the media file in miliseconds.
Definition: TeamTalk.h:1554
MediaFileInfo::szFileName
TTCHAR szFileName[TT_STRLEN]
Name of file.
Definition: TeamTalk.h:1548
MediaFileInfo::nStatus
MediaFileStatus nStatus
Status of media file if it's being saved to disk.
Definition: TeamTalk.h:1546
MediaFilePlayback
Properties for initializing or updating a file for media streaming.
Definition: TeamTalk.h:1568
MediaFilePlayback::bPaused
TTBOOL bPaused
Start or pause media file playback.
Definition: TeamTalk.h:1576
MediaFilePlayback::uOffsetMSec
UINT32 uOffsetMSec
Offset in milliseconds in the media file where to start playback. Pass TT_MEDIAPLAYBACK_OFFSET_IGNORE...
Definition: TeamTalk.h:1574
MediaFilePlayback::audioPreprocessor
AudioPreprocessor audioPreprocessor
Option to activate audio preprocessor on local media file playback.
Definition: TeamTalk.h:1578
OpusCodec
OPUS audio codec settings. For detailed information about the OPUS codec check out http://www....
Definition: TeamTalk.h:1150
OpusCodec::nChannels
INT32 nChannels
Mono = 1 or stereo = 2.
Definition: TeamTalk.h:1155
OpusCodec::bVBRConstraint
TTBOOL bVBRConstraint
Enable constrained VBR. bVBR must be enabled to enable this.
Definition: TeamTalk.h:1176
OpusCodec::bFEC
TTBOOL bFEC
Forward error correction. Corrects errors if there's packetloss.
Definition: TeamTalk.h:1165
OpusCodec::nBitRate
INT32 nBitRate
Bitrate for encoded audio. Should be between OPUS_MIN_BITRATE and OPUS_MAX_BITRATE.
Definition: TeamTalk.h:1171
OpusCodec::bDTX
TTBOOL bDTX
Discontinuous transmission. Enables "null" packets during silence.
Definition: TeamTalk.h:1168
OpusCodec::bVBR
TTBOOL bVBR
Enable variable bitrate.
Definition: TeamTalk.h:1173
OpusCodec::nFrameSizeMSec
INT32 nFrameSizeMSec
OPUS supports 2.5, 5, 10, 20, 40, 60, 80, 100 and 120 msec. If nFrameSizeMSec is 0 then nFrameSizeMSe...
Definition: TeamTalk.h:1187
OpusCodec::nSampleRate
INT32 nSampleRate
The sample rate to use. Sample rate must be 8000, 12000, 16000, 24000 or 48000 Hz.
Definition: TeamTalk.h:1153
OpusCodec::nApplication
INT32 nApplication
Application of encoded audio, i.e. VoIP or music.
Definition: TeamTalk.h:1159
OpusCodec::nComplexity
INT32 nComplexity
Complexity of encoding (affects CPU usage). Value from 0-10.
Definition: TeamTalk.h:1162
OpusCodec::nTxIntervalMSec
INT32 nTxIntervalMSec
Duration of audio before each transmission. Minimum is 2 msec. Recommended is 40 msec....
Definition: TeamTalk.h:1183
RemoteFile
A struct containing the properties of a file in a Channel.
Definition: TeamTalk.h:2627
RemoteFile::szUsername
TTCHAR szUsername[TT_STRLEN]
Username of the person who uploaded the file.
Definition: TeamTalk.h:2637
RemoteFile::szFileName
TTCHAR szFileName[TT_STRLEN]
The name of the file.
Definition: TeamTalk.h:2633
RemoteFile::nFileSize
INT64 nFileSize
The size of the file.
Definition: TeamTalk.h:2635
RemoteFile::szUploadTime
TTCHAR szUploadTime[TT_STRLEN]
Time when file was uploaded. Read-only property. Date/time is converted local time.
Definition: TeamTalk.h:2640
RemoteFile::nFileID
INT32 nFileID
The ID identifying the file.
Definition: TeamTalk.h:2631
RemoteFile::nChannelID
INT32 nChannelID
The ID of the channel where the file is located.
Definition: TeamTalk.h:2629
ServerProperties
A struct containing the properties of the server's settings.
Definition: TeamTalk.h:1779
ServerProperties::szMOTDRaw
TTCHAR szMOTDRaw[TT_STRLEN]
The message of the day including variables. The result of the szMOTDRaw string will be displayed in s...
Definition: TeamTalk.h:1793
ServerProperties::uServerLogEvents
ServerLogEvents uServerLogEvents
The events that are logged on the server.
Definition: TeamTalk.h:1860
ServerProperties::szServerName
TTCHAR szServerName[TT_STRLEN]
The server's name.
Definition: TeamTalk.h:1781
ServerProperties::nLoginDelayMSec
INT32 nLoginDelayMSec
Number of msec before an IP-address can make another login attempt. If less than this amount then TT_...
Definition: TeamTalk.h:1846
ServerProperties::nTcpPort
INT32 nTcpPort
The server's TCP port.
Definition: TeamTalk.h:1827
ServerProperties::szServerProtocolVersion
TTCHAR szServerProtocolVersion[TT_STRLEN]
The version of the server's protocol. Read-only property.
Definition: TeamTalk.h:1837
ServerProperties::nMaxUsers
INT32 nMaxUsers
The maximum number of users allowed on the server. A user with admin account can ignore this.
Definition: TeamTalk.h:1796
ServerProperties::szAccessToken
TTCHAR szAccessToken[TT_STRLEN]
A randomly generated 256 bit access token created by the server to identify the login session.
Definition: TeamTalk.h:1854
ServerProperties::szMOTD
TTCHAR szMOTD[TT_STRLEN]
The message of the day. Read-only property. Use szMOTDRaw to update this property.
Definition: TeamTalk.h:1784
ServerProperties::szServerVersion
TTCHAR szServerVersion[TT_STRLEN]
The server version. Read-only property.
Definition: TeamTalk.h:1834
ServerProperties::bAutoSave
TTBOOL bAutoSave
Whether the server automatically saves changes.
Definition: TeamTalk.h:1825
ServerProperties::nUserTimeout
INT32 nUserTimeout
The number of seconds before a user who hasn't responded to keepalives will be kicked off the server.
Definition: TeamTalk.h:1832
ServerProperties::nMaxMediaFileTxPerSecond
INT32 nMaxMediaFileTxPerSecond
The maximum number of bytes per second which the server will allow for media file packets....
Definition: TeamTalk.h:1815
ServerProperties::nMaxDesktopTxPerSecond
INT32 nMaxDesktopTxPerSecond
The maximum number of bytes per second which the server will allow for desktop packets....
Definition: TeamTalk.h:1819
ServerProperties::nMaxLoginsPerIPAddress
INT32 nMaxLoginsPerIPAddress
The maximum number of users allowed to log in with the same IP-address. 0 means disabled.
Definition: TeamTalk.h:1802
ServerProperties::nUdpPort
INT32 nUdpPort
The server's UDP port.
Definition: TeamTalk.h:1829
ServerProperties::nMaxLoginAttempts
INT32 nMaxLoginAttempts
The maximum number of logins with wrong password before banning user's IP-address.
Definition: TeamTalk.h:1799
ServerProperties::nMaxVoiceTxPerSecond
INT32 nMaxVoiceTxPerSecond
The maximum number of bytes per second which the server will allow for voice packets....
Definition: TeamTalk.h:1806
ServerProperties::nMaxVideoCaptureTxPerSecond
INT32 nMaxVideoCaptureTxPerSecond
The maximum number of bytes per second which the server will allow for video input packets....
Definition: TeamTalk.h:1811
ServerProperties::nMaxTotalTxPerSecond
INT32 nMaxTotalTxPerSecond
The amount of bytes per second which the server will allow for packet forwarding. If this value is ex...
Definition: TeamTalk.h:1823
ServerStatistics
A struct containing the server's statistics, i.e. bandwidth usage and user activity.
Definition: TeamTalk.h:1869
ServerStatistics::nVideoCaptureBytesTX
INT64 nVideoCaptureBytesTX
The number of bytes in video packets sent from the server to clients.
Definition: TeamTalk.h:1884
ServerStatistics::nVoiceBytesRX
INT64 nVoiceBytesRX
The number of bytes in audio packets received by the server from clients.
Definition: TeamTalk.h:1881
ServerStatistics::nUptimeMSec
INT64 nUptimeMSec
The server's uptime in msec.
Definition: TeamTalk.h:1911
ServerStatistics::nVoiceBytesTX
INT64 nVoiceBytesTX
The number of bytes in audio packets sent from the server to clients.
Definition: TeamTalk.h:1878
ServerStatistics::nDesktopBytesTX
INT64 nDesktopBytesTX
The number of bytes in desktop packets sent from the server to clients.
Definition: TeamTalk.h:1896
ServerStatistics::nFilesTx
INT64 nFilesTx
The number of bytes for file transmission transmitted from the server.
Definition: TeamTalk.h:1906
ServerStatistics::nTotalBytesRX
INT64 nTotalBytesRX
The number of bytes received by the server from clients.
Definition: TeamTalk.h:1875
ServerStatistics::nDesktopBytesRX
INT64 nDesktopBytesRX
The number of bytes in desktop packets received by the server from clients.
Definition: TeamTalk.h:1899
ServerStatistics::nMediaFileBytesTX
INT64 nMediaFileBytesTX
The number of bytes in media file packets sent from the server to clients.
Definition: TeamTalk.h:1890
ServerStatistics::nVideoCaptureBytesRX
INT64 nVideoCaptureBytesRX
The number of bytes in video packets received by the server from clients.
Definition: TeamTalk.h:1887
ServerStatistics::nMediaFileBytesRX
INT64 nMediaFileBytesRX
The number of bytes in media file packets received by the server from clients.
Definition: TeamTalk.h:1893
ServerStatistics::nFilesRx
INT64 nFilesRx
The number of bytes for file transmission received by the server.
Definition: TeamTalk.h:1909
ServerStatistics::nTotalBytesTX
INT64 nTotalBytesTX
The number of bytes sent from the server to clients.
Definition: TeamTalk.h:1872
ServerStatistics::nUsersPeak
INT32 nUsersPeak
The highest numbers of users online.
Definition: TeamTalk.h:1903
ServerStatistics::nUsersServed
INT32 nUsersServed
The number of users who have logged on to the server.
Definition: TeamTalk.h:1901
ShareWindow
A struct which describes the properties of a window which can be shared.
Definition: TeamTalk.h:5718
ShareWindow::szWindowTitle
TTCHAR szWindowTitle[TT_STRLEN]
The title of the window.
Definition: TeamTalk.h:5730
ShareWindow::nPID
INT64 nPID
The PID of the owning process.
Definition: TeamTalk.h:5847
ShareWindow::nWindowID
INT64 nWindowID
The CGWindowID.
Definition: TeamTalk.h:5835
ShareWindow::nWndY
INT32 nWndY
Y coordinate of the window relative to the Windows desktop.
Definition: TeamTalk.h:5724
ShareWindow::nWindowY
INT32 nWindowY
Y coordinate of window.
Definition: TeamTalk.h:5839
ShareWindow::nWidth
INT32 nWidth
The width in pixels of the window.
Definition: TeamTalk.h:5726
ShareWindow::nWndX
INT32 nWndX
X coordinate of the window relative to the Windows desktop.
Definition: TeamTalk.h:5722
ShareWindow::nHeight
INT32 nHeight
The height in pixels of the window.
Definition: TeamTalk.h:5728
ShareWindow::nWindowX
INT32 nWindowX
X coordinate of window.
Definition: TeamTalk.h:5837
ShareWindow::hWnd
HWND hWnd
The Windows handle of the window.
Definition: TeamTalk.h:5720
SoundDeviceEffects
Set up audio effects supported by the sound device.
Definition: TeamTalk.h:471
SoundDeviceEffects::bEnableEchoCancellation
TTBOOL bEnableEchoCancellation
Enable echo cancellation.
Definition: TeamTalk.h:520
SoundDeviceEffects::bEnableAGC
TTBOOL bEnableAGC
Enable Automatic Gain Control.
Definition: TeamTalk.h:487
SoundDeviceEffects::bEnableDenoise
TTBOOL bEnableDenoise
Enable noise suppression.
Definition: TeamTalk.h:504
SoundDevice
A struct containing the properties of a sound device for either playback or recording.
Definition: TeamTalk.h:404
SoundDevice::nMaxOutputChannels
INT32 nMaxOutputChannels
The maximum number of output channels.
Definition: TeamTalk.h:443
SoundDevice::inputSampleRates
INT32 inputSampleRates[TT_SAMPLERATES_MAX]
Supported sample rates by device for recording. A zero value terminates the list of supported sample ...
Definition: TeamTalk.h:447
SoundDevice::outputSampleRates
INT32 outputSampleRates[TT_SAMPLERATES_MAX]
Supported sample rates by device for playback. A zero value terminates the list of supported sample r...
Definition: TeamTalk.h:451
SoundDevice::szDeviceName
TTCHAR szDeviceName[TT_STRLEN]
The name of the sound device.
Definition: TeamTalk.h:414
SoundDevice::nDeviceID
INT32 nDeviceID
The ID of the sound device. Used for passing to TT_InitSoundInputDevice and TT_InitSoundOutputDevice....
Definition: TeamTalk.h:410
SoundDevice::nSoundSystem
SoundSystem nSoundSystem
The sound system used by the sound device.
Definition: TeamTalk.h:412
SoundDevice::bSupports3D
TTBOOL bSupports3D
Whether the sound device supports 3D-sound effects.
Definition: TeamTalk.h:439
SoundDevice::nDefaultSampleRate
INT32 nDefaultSampleRate
The default sample rate for the sound device.
Definition: TeamTalk.h:453
SoundDevice::nWaveDeviceID
INT32 nWaveDeviceID
A Windows specific ID to the sound device.
Definition: TeamTalk.h:436
SoundDevice::uSoundDeviceFeatures
SoundDeviceFeatures uSoundDeviceFeatures
Additional features available for this sound device. The sound device features can be used to enable ...
Definition: TeamTalk.h:459
SoundDevice::nMaxInputChannels
INT32 nMaxInputChannels
The maximum number of input channels.
Definition: TeamTalk.h:441
SoundDevice::szDeviceID
TTCHAR szDeviceID[TT_STRLEN]
An identifier uniquely identifying the sound device even when new sound devices are being added and r...
Definition: TeamTalk.h:419
SpeexCodec
Speex audio codec settings for Constant Bitrate mode (CBR).
Definition: TeamTalk.h:1057
SpeexCodec::nQuality
INT32 nQuality
A value from 1-10. As of DLL version 4.2 also 0 is supported.
Definition: TeamTalk.h:1063
SpeexCodec::nBandmode
INT32 nBandmode
Set to 0 for 8 KHz (narrow band), set to 1 for 16 KHz (wide band), set to 2 for 32 KHz (ultra-wide ba...
Definition: TeamTalk.h:1060
SpeexCodec::nTxIntervalMSec
INT32 nTxIntervalMSec
Milliseconds of audio data before each transmission.
Definition: TeamTalk.h:1073
SpeexCodec::bStereoPlayback
TTBOOL bStereoPlayback
Playback should be done in stereo. Doing so will disable 3d-positioning.
Definition: TeamTalk.h:1079
SpeexDSP
Speex DSP is used for specifying how recorded audio from a sound input device should be preprocessed ...
Definition: TeamTalk.h:1233
SpeexDSP::nGainLevel
INT32 nGainLevel
A value from 0 to 32768. Default is 8000. Value is ignored if bEnableAGC is FALSE.
Definition: TeamTalk.h:1244
SpeexDSP::nEchoSuppress
INT32 nEchoSuppress
Set maximum attenuation of the residual echo in dB (negative number). Default is -40....
Definition: TeamTalk.h:1283
SpeexDSP::nMaxIncDBSec
INT32 nMaxIncDBSec
Used so volume should not be amplified too quickly (maximal gain increase in dB/second)....
Definition: TeamTalk.h:1248
SpeexDSP::bEnableEchoCancellation
TTBOOL bEnableEchoCancellation
Enable/disable acoustic echo cancellation (AEC).
Definition: TeamTalk.h:1279
SpeexDSP::nMaxGainDB
INT32 nMaxGainDB
Ensure volume doesn't become too loud (maximal gain in dB). Default is 30. Value is ignored if bEnabl...
Definition: TeamTalk.h:1257
SpeexDSP::bEnableDenoise
TTBOOL bEnableDenoise
Whether clients who join the channel should automatically enable denoising.
Definition: TeamTalk.h:1260
SpeexDSP::nMaxNoiseSuppressDB
INT32 nMaxNoiseSuppressDB
Maximum attenuation of the noise in dB. Negative value! Default value is -30. Value is ignored if bEn...
Definition: TeamTalk.h:1264
SpeexDSP::nEchoSuppressActive
INT32 nEchoSuppressActive
Set maximum attenuation of the residual echo in dB when near end is active (negative number)....
Definition: TeamTalk.h:1287
SpeexDSP::nMaxDecDBSec
INT32 nMaxDecDBSec
Used so volume should not be attenuated too quickly (maximal gain decrease in dB/second)....
Definition: TeamTalk.h:1253
SpeexDSP::bEnableAGC
TTBOOL bEnableAGC
Whether to enable AGC with the settings specified nGainLevel, nMaxIncDBSec, nMaxDecDBSec and nMaxGain...
Definition: TeamTalk.h:1241
SpeexVBRCodec
Speex audio codec settings for Variable Bitrate mode (VBR).
Definition: TeamTalk.h:1087
SpeexVBRCodec::nQuality
INT32 nQuality
A value from 0-10. If nBitRate is non-zero it will override this value.
Definition: TeamTalk.h:1093
SpeexVBRCodec::nTxIntervalMSec
INT32 nTxIntervalMSec
Milliseconds of audio data before each transmission.
Definition: TeamTalk.h:1119
SpeexVBRCodec::bDTX
TTBOOL bDTX
Enable/disable discontinuous transmission. When enabled Speex will ignore silence,...
Definition: TeamTalk.h:1110
SpeexVBRCodec::nMaxBitRate
INT32 nMaxBitRate
The maximum bitrate at which the audio codec is allowed to output audio. Set to zero if it should be ...
Definition: TeamTalk.h:1106
SpeexVBRCodec::bStereoPlayback
TTBOOL bStereoPlayback
Playback should be done in stereo. Doing so will disable 3d-positioning.
Definition: TeamTalk.h:1125
SpeexVBRCodec::nBitRate
INT32 nBitRate
The bitrate at which the audio codec should output encoded audio data. Dividing it by 8 gives roughly...
Definition: TeamTalk.h:1102
SpeexVBRCodec::nBandmode
INT32 nBandmode
Set to 0 for 8 KHz (narrow band), set to 1 for 16 KHz (wide band), set to 2 for 32 KHz (ultra-wide ba...
Definition: TeamTalk.h:1090
TTAudioPreprocessor
Use TeamTalk's internal audio preprocessor for gain audio. Same as used for TT_SetSoundInputGainLevel...
Definition: TeamTalk.h:1293
TTAudioPreprocessor::nGainLevel
INT32 nGainLevel
Gain level between SOUND_GAIN_MIN and SOUND_GAIN_MAX. Default is SOUND_GAIN_DEFAULT (no gain).
Definition: TeamTalk.h:1297
TTAudioPreprocessor::bMuteLeftSpeaker
TTBOOL bMuteLeftSpeaker
Whether to mute left speaker in stereo playback.
Definition: TeamTalk.h:1299
TTAudioPreprocessor::bMuteRightSpeaker
TTBOOL bMuteRightSpeaker
Whether to mute right speaker in stereo playback.
Definition: TeamTalk.h:1301
TTMessage
A struct containing the properties of an event.
Definition: TeamTalk.h:3984
TTMessage::nStreamID
INT32 nStreamID
Valid if ttType is __INT32.
Definition: TeamTalk.h:4024
TTMessage::nStreamType
StreamType nStreamType
Valid if ttType is __STREAMTYPE.
Definition: TeamTalk.h:4028
TTMessage::nBytesRemain
INT32 nBytesRemain
Valid if ttType is __INT32.
Definition: TeamTalk.h:4022
TTMessage::mediafileinfo
MediaFileInfo mediafileinfo
Valid if ttType is __MEDIAFILEINFO.
Definition: TeamTalk.h:4004
TTMessage::uReserved
UINT32 uReserved
Reserved. To preserve alignment.
Definition: TeamTalk.h:3992
TTMessage::clienterrormsg
ClientErrorMsg clienterrormsg
Valid if ttType is __CLIENTERRORMSG.
Definition: TeamTalk.h:3998
TTMessage::nPayloadSize
INT32 nPayloadSize
Valid if ttType is __INT32.
Definition: TeamTalk.h:4026
TTMessage::desktopinput
DesktopInput desktopinput
Valid if ttType is __DESKTOPINPUT.
Definition: TeamTalk.h:4000
TTMessage::textmessage
TextMessage textmessage
Valid if ttType is __TEXTMESSAGE.
Definition: TeamTalk.h:4012
TTMessage::useraccount
UserAccount useraccount
Valid if ttType is __USERACCOUNT.
Definition: TeamTalk.h:4016
TTMessage::remotefile
RemoteFile remotefile
Valid if ttType is __REMOTEFILE.
Definition: TeamTalk.h:4006
TTMessage::bActive
TTBOOL bActive
Valid if ttType is __TTBOOL.
Definition: TeamTalk.h:4020
TTMessage::data
char data[1]
Definition: TeamTalk.h:4034
TTMessage::user
User user
Valid if ttType is __USER.
Definition: TeamTalk.h:4014
TTMessage::sounddevice
SoundDevice sounddevice
Valid if ttType is __SOUNDDEVICE.
Definition: TeamTalk.h:4032
TTMessage::audioinputprogress
AudioInputProgress audioinputprogress
Valid if ttType is __AUDIOINPUTPROGRESS.
Definition: TeamTalk.h:4030
TTMessage::banneduser
BannedUser banneduser
Valid if ttType is __BANNEDUSER.
Definition: TeamTalk.h:4018
TTMessage::nClientEvent
ClientEvent nClientEvent
The event's message number.
Definition: TeamTalk.h:3986
TTMessage::serverstatistics
ServerStatistics serverstatistics
Valid if ttType is __SERVERSTATISTICS.
Definition: TeamTalk.h:4010
TTMessage::filetransfer
FileTransfer filetransfer
Valid if ttType is __FILETRANSFER.
Definition: TeamTalk.h:4002
TTMessage::serverproperties
ServerProperties serverproperties
Valid if ttType is __SERVERPROPERTIES.
Definition: TeamTalk.h:4008
TTMessage::nSource
INT32 nSource
The source of the event depends on wmMsg.
Definition: TeamTalk.h:3988
TTMessage::channel
Channel channel
Valid if ttType is __CHANNEL.
Definition: TeamTalk.h:3996
TTMessage::ttType
TTType ttType
Specifies which member to access in the union.
Definition: TeamTalk.h:3990
TextMessage
A struct containing the properties of a text message sent by a user.
Definition: TeamTalk.h:2394
TextMessage::bMore
TTBOOL bMore
Whether this text message is to be merged with next text message.
Definition: TeamTalk.h:2411
TextMessage::nMsgType
TextMsgType nMsgType
The type of text message.
Definition: TeamTalk.h:2396
TextMessage::nToUserID
INT32 nToUserID
Set to zero if channel message.
Definition: TeamTalk.h:2402
TextMessage::nChannelID
INT32 nChannelID
Set to zero if nMsgType is MSGTYPE_USER or MSGTYPE_BROADCAST.
Definition: TeamTalk.h:2405
TextMessage::szMessage
TTCHAR szMessage[TT_STRLEN]
The actual text message. The message can be multi-line (include EOL).
Definition: TeamTalk.h:2408
TextMessage::szFromUsername
TTCHAR szFromUsername[TT_STRLEN]
The originators username.
Definition: TeamTalk.h:2400
TextMessage::nFromUserID
INT32 nFromUserID
Will be set automatically on outgoing message.
Definition: TeamTalk.h:2398
UserAccount
A struct containing the properties of a user account.
Definition: TeamTalk.h:2013
UserAccount::szNote
TTCHAR szNote[TT_STRLEN]
Additional notes about this user.
Definition: TeamTalk.h:2029
UserAccount::nUserData
INT32 nUserData
A user data field which can be used for additional information. The nUserData field of the User struc...
Definition: TeamTalk.h:2027
UserAccount::abusePrevent
AbusePrevention abusePrevent
Properties which can be set to prevent abuse of a server, e.g. limit number of commands issued.
Definition: TeamTalk.h:2047
UserAccount::uUserRights
UserRights uUserRights
A bitmask based on UserRight which specifies the rights the user have who logs onto the server....
Definition: TeamTalk.h:2023
UserAccount::uUserType
UserTypes uUserType
A bitmask of the type of user based on UserType.
Definition: TeamTalk.h:2019
UserAccount::szLastModified
TTCHAR szLastModified[TT_STRLEN]
Timestamp of last modification of user account. Read-only property. Date/time is converted local time...
Definition: TeamTalk.h:2050
UserAccount::szInitChannel
TTCHAR szInitChannel[TT_STRLEN]
User should (manually) join this channel after login. If an initial channel is specified in the user'...
Definition: TeamTalk.h:2034
UserAccount::autoOperatorChannels
INT32 autoOperatorChannels[TT_CHANNELS_OPERATOR_MAX]
Channels where this user will automatically become channel operator when joining. The channels must b...
Definition: TeamTalk.h:2038
UserAccount::nAudioCodecBpsLimit
INT32 nAudioCodecBpsLimit
Bandwidth restriction for audio codecs created by this user. This value will hold the highest bitrate...
Definition: TeamTalk.h:2042
UserAccount::szLastLoginTime
TTCHAR szLastLoginTime[TT_STRLEN]
Timestamp of user account's last successful login. Read-only property. Date/time is converted local t...
Definition: TeamTalk.h:2053
UserAccount::szPassword
TTCHAR szPassword[TT_STRLEN]
The account's password.
Definition: TeamTalk.h:2017
UserAccount::szUsername
TTCHAR szUsername[TT_STRLEN]
The account's username.
Definition: TeamTalk.h:2015
User
A struct containing the properties of a user.
Definition: TeamTalk.h:2197
User::szMediaStorageDir
TTCHAR szMediaStorageDir[TT_STRLEN]
Store audio received from this user to this folder.
Definition: TeamTalk.h:2262
User::uPeerSubscriptions
Subscriptions uPeerSubscriptions
A bitmask of what this user subscribes to from local client instance. Invoking TT_DoSubscribe() and T...
Definition: TeamTalk.h:2241
User::nBufferMSecVoice
INT32 nBufferMSecVoice
The size of the buffer (in msec) to hold voice content.
Definition: TeamTalk.h:2306
User::uUserType
UserTypes uUserType
The uUserType of the user's UserAccount. This property is set by the server and will not change after...
Definition: TeamTalk.h:2215
User::stereoPlaybackMediaFile
TTBOOL stereoPlaybackMediaFile[2]
Check what speaker a user is outputting to. If index 0 is TRUE then left speaker is playing....
Definition: TeamTalk.h:2302
User::uLocalSubscriptions
Subscriptions uLocalSubscriptions
A bitmask of what the local user subscribes to from this user. Invoking TT_DoSubscribe() and TT_DoUns...
Definition: TeamTalk.h:2235
User::nChannelID
INT32 nChannelID
The channel which the user is currently participating in. 0 if none. This value can change as a resul...
Definition: TeamTalk.h:2229
User::nActiveAdaptiveDelayMSec
INT32 nActiveAdaptiveDelayMSec
the currently active adaptive jitter delay for received voice streams for this user.
Definition: TeamTalk.h:2314
User::soundPositionMediaFile
float soundPositionMediaFile[3]
User's position when using 3D-sound (DirectSound option). Index 0 is x-axis, index 1 is y-axis and in...
Definition: TeamTalk.h:2292
User::szNickname
TTCHAR szNickname[TT_STRLEN]
The user's nickname. Invoking TT_DoChangeNickname() changes this value. Event CLIENTEVENT_CMD_USER_UP...
Definition: TeamTalk.h:2246
User::szIPAddress
TTCHAR szIPAddress[TT_STRLEN]
The user's IP-address. This value is set by the server.
Definition: TeamTalk.h:2217
User::nStoppedDelayVoice
INT32 nStoppedDelayVoice
The delay of when a user should no longer be considered as talking.
Definition: TeamTalk.h:2278
User::nStatusMode
INT32 nStatusMode
The user's current status mode. Invoke TT_DoChangeStatus() to change this value. Event CLIENTEVENT_CM...
Definition: TeamTalk.h:2251
User::nVolumeMediaFile
INT32 nVolumeMediaFile
The user's voice volume level. Note that it's a virtual volume which is being set since the master vo...
Definition: TeamTalk.h:2274
User::soundPositionVoice
float soundPositionVoice[3]
User's position when using 3D-sound (DirectSound option). Index 0 is x-axis, index 1 is y-axis and in...
Definition: TeamTalk.h:2287
User::stereoPlaybackVoice
TTBOOL stereoPlaybackVoice[2]
Check what speaker a user is outputting to. If index 0 is TRUE then left speaker is playing....
Definition: TeamTalk.h:2297
User::nStoppedDelayMediaFile
INT32 nStoppedDelayMediaFile
The delay of when a user should no longer be considered playing audio of a media file.
Definition: TeamTalk.h:2282
User::szUsername
TTCHAR szUsername[TT_STRLEN]
The szUsername of the user's UserAccount. A user account is created by calling TT_DoNewUserAccount()....
Definition: TeamTalk.h:2206
User::nVolumeVoice
INT32 nVolumeVoice
The user's voice volume level. Note that it's a virtual volume which is being set since the master vo...
Definition: TeamTalk.h:2268
User::uUserState
UserStates uUserState
A bitmask of the user's current state, e.g. talking, muted, etc.
Definition: TeamTalk.h:2259
User::uVersion
UINT32 uVersion
The user's client version. This property is set by the server and will not change after login....
Definition: TeamTalk.h:2223
User::nUserID
INT32 nUserID
The user's ID. A value from 1 - TT_USERID_MAX. This property is set by the server and will not change...
Definition: TeamTalk.h:2201
User::nBufferMSecMediaFile
INT32 nBufferMSecMediaFile
The size of the buffer (in msec) to hold media file content.
Definition: TeamTalk.h:2310
User::nUserData
INT32 nUserData
The nUserData of the user's UserAccount. This field can be use to denote e.g. a database ID....
Definition: TeamTalk.h:2211
User::szStatusMsg
TTCHAR szStatusMsg[TT_STRLEN]
The user's current status message. Invoke TT_DoChangeStatus() to change this value....
Definition: TeamTalk.h:2256
User::szClientName
TTCHAR szClientName[TT_STRLEN]
The name of the client application which the user is using. This is the value passed as szClientName ...
Definition: TeamTalk.h:2318
UserStatistics
Packet reception and data statistics for a user.
Definition: TeamTalk.h:2326
UserStatistics::nMediaFileAudioPacketsLost
INT64 nMediaFileAudioPacketsLost
Number of media file audio packets lost from user.
Definition: TeamTalk.h:2345
UserStatistics::nMediaFileVideoFramesRecv
INT64 nMediaFileVideoFramesRecv
Number of media file video frames received from user.
Definition: TeamTalk.h:2350
UserStatistics::nVideoCaptureFramesRecv
INT64 nVideoCaptureFramesRecv
Number of video frames received from user.
Definition: TeamTalk.h:2335
UserStatistics::nMediaFileAudioPacketsRecv
INT64 nMediaFileAudioPacketsRecv
Number of media file audio packets received from user.
Definition: TeamTalk.h:2343
UserStatistics::nMediaFileVideoPacketsRecv
INT64 nMediaFileVideoPacketsRecv
Number of media file video packets received from user. A video frame can consist of several video pac...
Definition: TeamTalk.h:2348
UserStatistics::nVideoCaptureFramesDropped
INT64 nVideoCaptureFramesDropped
Number of video frames dropped because user application didn't retrieve video frames in time.
Definition: TeamTalk.h:2341
UserStatistics::nMediaFileVideoFramesLost
INT64 nMediaFileVideoFramesLost
Media file video frames which couldn't be shown because packets were lost.
Definition: TeamTalk.h:2353
UserStatistics::nVoicePacketsLost
INT64 nVoicePacketsLost
Number of voice packets lost from user.
Definition: TeamTalk.h:2330
UserStatistics::nVoicePacketsRecv
INT64 nVoicePacketsRecv
Number of voice packets received from user.
Definition: TeamTalk.h:2328
UserStatistics::nVideoCapturePacketsRecv
INT64 nVideoCapturePacketsRecv
Number of video packets received from user. A video frame can consist of several video packets.
Definition: TeamTalk.h:2333
UserStatistics::nVideoCaptureFramesLost
INT64 nVideoCaptureFramesLost
Video frames which couldn't be shown because packets were lost.
Definition: TeamTalk.h:2338
UserStatistics::nMediaFileVideoFramesDropped
INT64 nMediaFileVideoFramesDropped
Number of media file video frames dropped because user application didn't retrieve video frames in ti...
Definition: TeamTalk.h:2356
VideoCaptureDevice
A struct containing the properties of a video capture device.
Definition: TeamTalk.h:902
VideoCaptureDevice::videoFormats
VideoFormat videoFormats[TT_VIDEOFORMATS_MAX]
The supported capture formats.
Definition: TeamTalk.h:921
VideoCaptureDevice::szCaptureAPI
TTCHAR szCaptureAPI[TT_STRLEN]
The name of the API used to capture video.
Definition: TeamTalk.h:919
VideoCaptureDevice::szDeviceName
TTCHAR szDeviceName[TT_STRLEN]
The name of the capture device.
Definition: TeamTalk.h:906
VideoCaptureDevice::nVideoFormatsCount
INT32 nVideoFormatsCount
The number of capture formats available in videoFormats array.
Definition: TeamTalk.h:924
VideoCaptureDevice::szDeviceID
TTCHAR szDeviceID[TT_STRLEN]
A string identifying the device.
Definition: TeamTalk.h:904
VideoCodec
Struct used for specifying the video codec to use.
Definition: TeamTalk.h:1522
VideoCodec::webm_vp8
WebMVP8Codec webm_vp8
Definition: TeamTalk.h:1529
VideoCodec::nCodec
Codec nCodec
Specifies member holds the codec settings. So far there is only one video codec to choose from,...
Definition: TeamTalk.h:1526
VideoFormat
A struct containing the properties of a video capture format.
Definition: TeamTalk.h:840
VideoFormat::nFPS_Numerator
INT32 nFPS_Numerator
The numerator of the video capture device's video format. Divinding nFPS_Numerator with nFPS_Denomina...
Definition: TeamTalk.h:850
VideoFormat::picFourCC
FourCC picFourCC
Picture format for capturing.
Definition: TeamTalk.h:856
VideoFormat::nFPS_Denominator
INT32 nFPS_Denominator
The denominator of the video capture device's video format. Divinding nFPS_Numerator with nFPS_Denomi...
Definition: TeamTalk.h:854
VideoFormat::nHeight
INT32 nHeight
The height in pixels of the video device supported video format.
Definition: TeamTalk.h:846
VideoFormat::nWidth
INT32 nWidth
The width in pixels of the video device supported video format.
Definition: TeamTalk.h:843
VideoFrame
A RGB32 image where the pixels can be accessed directly in an allocated frameBuffer.
Definition: TeamTalk.h:867
VideoFrame::nWidth
INT32 nWidth
The width in pixels of the image contained in frameBuffer.
Definition: TeamTalk.h:870
VideoFrame::nHeight
INT32 nHeight
The height in pixels of the image contained in imageBuffer.
Definition: TeamTalk.h:873
VideoFrame::frameBuffer
VOID * frameBuffer
A buffer allocated internally by client instance.
Definition: TeamTalk.h:886
VideoFrame::nStreamID
INT32 nStreamID
A unique identifier for the frames which are part of the same video sequence. If the stream ID change...
Definition: TeamTalk.h:879
VideoFrame::bKeyFrame
TTBOOL bKeyFrame
Whether the image acquired is a key-frame. If it is not a key-frame and there has been packet loss or...
Definition: TeamTalk.h:884
VideoFrame::nFrameBufferSize
INT32 nFrameBufferSize
The size in bytes of the buffer allocate in frameBuffer.
Definition: TeamTalk.h:889
WebMVP8Codec
WebM video codec settings.
Definition: TeamTalk.h:1427
WebMVP8Codec::nEncodeDeadline
UINT32 nEncodeDeadline
Time that should be spent on encoding a frame.
Definition: TeamTalk.h:1446
WebMVP8Codec::rc_target_bitrate
UINT32 rc_target_bitrate
Target bitrate in kbits/sec. This value must be greater than 0.
Definition: TeamTalk.h:1437
WebMVP8Codec::nRcTargetBitrate
INT32 nRcTargetBitrate
Same as rc_target_bitrate.
Definition: TeamTalk.h:1431
WebRTCAudioPreprocessor
WebRTC's audio preprocessor.
Definition: TeamTalk.h:1317
WebRTCAudioPreprocessor::nLevel
INT32 nLevel
Noise suppression level. 0 = Low, 1 = Moderate, 2 = High, 3 = VeryHigh. Default: 1.
Definition: TeamTalk.h:1346
WebRTCAudioPreprocessor::fMaxGainDB
float fMaxGainDB
Range: 0 < x < infinite. Default: 50 dB.
Definition: TeamTalk.h:1372
WebRTCAudioPreprocessor::fHeadRoomDB
float fHeadRoomDB
Range: 0 <= x < infinite. Default: 5 dB.
Definition: TeamTalk.h:1370
WebRTCAudioPreprocessor::fMaxGainChangeDBPerSecond
float fMaxGainChangeDBPerSecond
Range: 0 < x < infinite. Default: 6 dB/sec.
Definition: TeamTalk.h:1376
WebRTCAudioPreprocessor::bEnable
TTBOOL bEnable
Enable pre-amplifier. Replacement for TT_SetSoundInputGainLevel()
Definition: TeamTalk.h:1323
WebRTCAudioPreprocessor::fMaxOutputNoiseLevelDBFS
float fMaxOutputNoiseLevelDBFS
Range: -infinite < x < 0. Default: -50.
Definition: TeamTalk.h:1378
WebRTCAudioPreprocessor::gaincontroller2
struct WebRTCAudioPreprocessor::@3 gaincontroller2
Configuration of WebRTC's gain controller 2 for AGC.
WebRTCAudioPreprocessor::preamplifier
struct WebRTCAudioPreprocessor::@0 preamplifier
Configuration of WebRTC pre-amplifier.
WebRTCAudioPreprocessor::adaptivedigital
struct WebRTCAudioPreprocessor::@3::@5 adaptivedigital
Configuration for fine tuning gain level after echo cancellation and noise suppression.
WebRTCAudioPreprocessor::fFixedGainFactor
float fFixedGainFactor
Gain factor. Default: 1.
Definition: TeamTalk.h:1325
WebRTCAudioPreprocessor::noisesuppression
struct WebRTCAudioPreprocessor::@2 noisesuppression
Configuration of WebRTC's noise suppression. See also SpeexDSP.
WebRTCAudioPreprocessor::fixeddigital
struct WebRTCAudioPreprocessor::@3::@4 fixeddigital
Gain level for AGC. Only active when bEnable is true.
WebRTCAudioPreprocessor::fInitialGainDB
float fInitialGainDB
Range: 0 <= x < infinite. Default: 15 dB.
Definition: TeamTalk.h:1374
WebRTCAudioPreprocessor::echocanceller
struct WebRTCAudioPreprocessor::@1 echocanceller
Configuration of WebRTC's echo canceller. See also TT_SetSoundDeviceEffects()
WebRTCAudioPreprocessor::fGainDB
float fGainDB
Gain level in dB. Range: 0 <= x < 50. Default: 0.
Definition: TeamTalk.h:1361