25 using System.Collections.Generic;
28 using System.Runtime.InteropServices;
251 public delegate
void UserBanned(ref
User lpBanner, ref
User lpBanee, IntPtr lpChannel);
461 : base(lpChannel, lpServerProperties)
468 base.OnChannelCreatedCallback +=
new ChannelCreatedCallback(TeamTalkSrv_OnChannelCreatedCallback);
469 base.OnChannelRemovedCallback +=
new ChannelRemovedCallback(TeamTalkSrv_OnChannelRemovedCallback);
470 base.OnChannelUpdatedCallback +=
new ChannelUpdatedCallback(TeamTalkSrv_OnChannelUpdatedCallback);
471 base.OnUserLoginCallback +=
new UserLoginCallback(TeamTalkSrv_OnUserLoginCallback);
472 base.OnUserLoggedOutCallback +=
new UserLoggedOutCallback(TeamTalkSrv_OnUserLoggedOutCallback);
473 base.OnUserLoggedInCallBack +=
new UserLoggedInCallback(TeamTalkSrv_OnUserLoggedInCallBack);
474 base.OnUserTextMessageCallback +=
new UserTextMessageCallback(TeamTalkSrv_OnUserTextMessageCallback);
475 base.OnUserAddServerBanCallback +=
new UserAddServerBanCallback(TeamTalkSrv_OnUserAddServerBanCallback);
476 base.OnUserAddServerBanIPAddressCallback +=
new UserAddServerBanIPAddressCallback(TeamTalkSrv_OnUserAddServerBanIPAddressCallback);
477 base.OnUserDeleteServerBanCallback +=
new UserDeleteServerBanCallback(TeamTalkSrv_OnUserDeleteServerBanCallback);
478 base.OnUserBannedCallback +=
new UserBannedCallback(TeamTalkSrv_OnUserBannedCallback);
479 base.OnUserConnectedCallback +=
new UserConnectedCallback(TeamTalkSrv_OnUserConnectedCallback);
480 base.OnUserDisconnectedCallback +=
new UserDisconnectedCallback(TeamTalkSrv_OnUserDisconnectedCallback);
481 base.OnUserTimedoutCallback +=
new UserTimedoutCallback(TeamTalkSrv_OnUserTimedoutCallback);
482 base.OnUserLeftChannelCallback +=
new UserLeftChannelCallback(TeamTalkSrv_OnUserLeftChannelCallback);
483 base.OnUserJoinedChannelCallback +=
new UserJoinedChannelCallback(TeamTalkSrv_OnUserJoinedChannelCallback);
484 base.OnUserKickedCallback +=
new UserKickedCallback(TeamTalkSrv_OnUserKickedCallback);
485 base.OnUserMovedCallback +=
new UserMovedCallback(TeamTalkSrv_OnUserMovedCallback);
486 base.OnUserUpdatedCallback +=
new UserUpdatedCallback(TeamTalkSrv_OnUserUpdatedCallback);
487 base.OnSaveServerConfigCallback +=
new SaveServerConfigCallback(TeamTalkSrv_OnSaveServerConfigCallback);
488 base.OnServerUpdatedCallback +=
new ServerUpdatedCallback(TeamTalkSrv_OnServerUpdatedCallback);
489 base.OnUserCreateUserAccountCallback +=
new UserCreateUserAccountCallback(TeamTalkSrv_OnUserCreateUserAccountCallback);
490 base.OnUserDeleteUserAccountCallback +=
new UserDeleteUserAccountCallback(TeamTalkSrv_OnUserDeleteUserAccountCallback);
491 base.OnFileDeletedCallback +=
new FileDeletedCallback(TeamTalkSrv_OnFileDeletedCallback);
492 base.OnFileDownloadedCallback +=
new FileDownloadedCallback(TeamTalkSrv_OnFileDownloadedCallback);
493 base.OnFileUploadedCallback +=
new FileUploadedCallback(TeamTalkSrv_OnFileUploadedCallback);
494 base.OnUserChangeNicknameCallback +=
new UserChangeNicknameCallback(TeamTalk5Srv_OnUserChangeNicknameCallback);
495 base.OnUserChangeStatusCallback +=
new UserChangeStatusCallback(TeamTalk5Srv_OnUserChangeStatusCallback);
498 void TeamTalk5Srv_OnUserChangeStatusCallback(IntPtr lpTTSInstance, IntPtr lpUserData, ref
ClientErrorMsg lpClientErrorMsg, ref
User lpUser, ref
int nNewStatusMode,
string szNewStatusMsg)
500 if(OnUserChangeStatus !=null)
502 OnUserChangeStatus(ref lpClientErrorMsg, ref lpUser, ref nNewStatusMode, szNewStatusMsg);
506 void TeamTalk5Srv_OnUserChangeNicknameCallback(IntPtr lpTTSInstance, IntPtr lpUserData, ref
ClientErrorMsg lpClientErrorMsg, ref
User lpUser,
string szNewNickname)
508 if(OnUserChangeNickname != null)
516 void TeamTalkSrv_OnFileUploadedCallback(IntPtr lpTTSInstance, IntPtr lpUserData, ref
RemoteFile lpRemoteFile, ref
User lpUser)
518 if(OnFileUploaded != null)
524 void TeamTalkSrv_OnFileDownloadedCallback(IntPtr lpTTSInstance, IntPtr lpUserData, ref
RemoteFile lpRemoteFile, ref
User lpUser)
527 if(OnFileDownloaded != null)
532 void TeamTalkSrv_OnFileDeletedCallback(IntPtr lpTTSInstance, IntPtr lpUserData, ref
RemoteFile lpRemoteFile, ref
User lpUser)
534 if(OnFileDeleted != null)
540 void TeamTalkSrv_OnUserDeleteUserAccountCallback(IntPtr lpTTSInstance, IntPtr lpUserData, ref
ClientErrorMsg lpClientErrorMsg, ref
User lpUser,
string szUsername)
543 if(OnUserDeleteUserAccount != null)
549 void TeamTalkSrv_OnUserCreateUserAccountCallback(IntPtr lpTTSInstance, IntPtr lpUserData, ref
ClientErrorMsg lpClientErrorMsg, ref
User lpUser, ref
UserAccount lpUserAccount)
551 if(OnUserCreateUserAccount != null)
557 void TeamTalkSrv_OnServerUpdatedCallback(IntPtr lpTTSInstance, IntPtr lpUserData, ref
ServerProperties lpServerProperties, ref
User lpUser)
559 if(OnServerUpdated != null)
565 void TeamTalkSrv_OnSaveServerConfigCallback(IntPtr lpTTSInstance, IntPtr lpUserData, IntPtr lpUser)
568 if (lpUser != IntPtr.Zero)
570 user = (
User)Marshal.PtrToStructure(lpUser, typeof(
User));
572 if (OnSaveServerConfig != null)
578 void TeamTalkSrv_OnUserUpdatedCallback(IntPtr lpTTSInstance, IntPtr lpUserData, ref
User lpUser)
580 if(OnUserUpdated != null)
586 void TeamTalkSrv_OnUserMovedCallback(IntPtr lpTTSInstance, IntPtr lpUserData, ref
User lpMover, ref
User lpMovee)
588 if(OnUserMoved != null)
594 void TeamTalkSrv_OnUserKickedCallback(IntPtr lpTTSInstance, IntPtr lpUserData, IntPtr lpKicker, ref
User lpKickee, IntPtr lpChannel)
597 if (lpKicker != IntPtr.Zero)
599 user = (
User)Marshal.PtrToStructure(lpKicker, typeof(
User));
602 if(lpChannel != IntPtr.Zero)
604 chan = (
Channel)Marshal.PtrToStructure(lpChannel, typeof(
Channel));
606 if(OnUserKicked != null)
612 void TeamTalkSrv_OnUserJoinedChannelCallback(IntPtr lpTTSInstance, IntPtr lpUserData, ref
User lpUser, ref
Channel lpChannel)
614 if(OnUserJoinedChannel !=null)
620 void TeamTalkSrv_OnUserLeftChannelCallback(IntPtr lpTTSInstance, IntPtr lpUserData, ref
User lpUser, ref
Channel lpChannel)
622 if(OnUserLeftChannel != null)
628 void TeamTalkSrv_OnUserTimedoutCallback(IntPtr lpTTSInstance, IntPtr lpUserData, ref
User lpUser)
630 if(OnUserTimedout != null)
636 void TeamTalkSrv_OnUserDisconnectedCallback(IntPtr lpTTSInstance, IntPtr lpUserData, ref
User lpUser)
638 if(OnUserDisconnected != null)
644 void TeamTalkSrv_OnUserConnectedCallback(IntPtr lpTTSInstance, IntPtr lpUserData, ref
User lpUser)
646 if(OnUserConnected != null)
652 void TeamTalkSrv_OnUserBannedCallback(IntPtr lpTTSInstance, IntPtr lpUserData, ref
User lpBanner, ref
User lpBanee, IntPtr lpChannel)
654 if(OnUserBanned != null)
660 void TeamTalkSrv_OnUserDeleteServerBanCallback(IntPtr lpTTSInstance, IntPtr lpUserData, ref
ClientErrorMsg lpClientErrorMsg, ref
User lpUser,
string szIPAddress)
662 if(OnUserDeleteServerBan != null)
668 void TeamTalkSrv_OnUserAddServerBanIPAddressCallback(IntPtr lpTTSInstance, IntPtr lpUserData, ref
ClientErrorMsg lpClientErrorMsg, ref
User lpBanner,
string szIPAddress)
670 if(OnUserAddServerBanIPAddress != null)
676 void TeamTalkSrv_OnUserAddServerBanCallback(IntPtr lpTTSInstance, IntPtr lpUserData, ref
ClientErrorMsg lpClientErrorMsg, ref
User lpBanner, ref
User lpBanee)
678 if(OnUserAddServerBan != null)
684 void TeamTalkSrv_OnUserTextMessageCallback(IntPtr lpTTSInstance, IntPtr lpUserData, ref
User lpUser, ref
TextMessage lpTextMessage)
686 if(OnUserTextMessage !=null)
692 void TeamTalkSrv_OnUserLoggedOutCallback(IntPtr lpTTSInstance, IntPtr lpUserData, ref
User lpUser)
694 if (OnUserLoggedOut != null)
700 void TeamTalkSrv_OnUserLoggedInCallBack(IntPtr lpTTSInstance, IntPtr lpUserData, ref
User lpUser)
702 if (OnUserLoggedIn != null)
708 void TeamTalkSrv_OnUserLoginCallback(IntPtr lpTTSInstance, IntPtr lpUserData, ref
ClientErrorMsg lpClientErrorMsg, ref
User lpUser, ref
UserAccount lpUserAccount)
710 if (OnUserLogin != null)
712 OnUserLogin(ref lpClientErrorMsg, ref lpUser, ref lpUserAccount);
716 void TeamTalkSrv_OnChannelUpdatedCallback(IntPtr lpTTSInstance, IntPtr lpUserData, ref
Channel lpChannel, IntPtr lpUser)
719 if (lpUser != IntPtr.Zero)
721 user = (
User)Marshal.PtrToStructure(lpUser, typeof(
User));
723 if (OnChannelUpdated != null)
729 void TeamTalkSrv_OnChannelRemovedCallback(IntPtr lpTTSInstance, IntPtr lpUserData, ref
Channel lpChannel, IntPtr lpUser)
732 if (lpUser != IntPtr.Zero)
734 user = (
User)Marshal.PtrToStructure(lpUser, typeof(
User));
736 if (OnChannelRemoved != null)
742 void TeamTalkSrv_OnChannelCreatedCallback(IntPtr lpTTSInstance, IntPtr lpUserData, ref
Channel lpChannel, IntPtr lpUser)
745 if (lpUser != IntPtr.Zero)
747 user = (
User)Marshal.PtrToStructure(lpUser, typeof(
User));
749 if (OnChannelCreated != null)
delegate void UserChangeStatus(ref ClientErrorMsg lpClientErrorMsg, ref User lpUser, ref int nNewStatusMode, string szNewStatusMsg)
Callback when a user is requesting to change status.
UserJoinedChannel OnUserJoinedChannel
Register using UserJoinedChannel delegate.
delegate void UserKicked(ref User lpKicker, ref User lpKickee, ref Channel lpChannel)
Callback when a user has been kicked.
Instantiate this class to start a TeamTalk server.
delegate void UserLoggedIn(ref User lpUser)
Callback when a user has logged in.
delegate void UserLeftChannel(ref User lpUser, ref Channel lpChannel)
Callback when a user has left a channel.
delegate void UserChangeNickname(ref ClientErrorMsg lpClientErrorMsg, ref User lpUser, string szNewNickname)
Callback when a user is requesting to change nickname.
delegate void UserDeleteUserAccount(ref ClientErrorMsg lpClientErrorMsg, ref User lpUser, string szUsername)
Callback when a user is requesting to delete a user account.
delegate void UserConnected(ref User lpUser)
Callback when a new user is connecting to the server.
FileDeleted OnFileDeleted
Register using FileDeleted delegate.
delegate void UserBanned(ref User lpBanner, ref User lpBanee, IntPtr lpChannel)
Callback when a user has been banned.
delegate void UserAddServerBanIPAddress(ref ClientErrorMsg lpClientErrorMsg, ref User lpBanner, string szIPAddress)
Callback when a user is requesting to ban an IP-address.
A struct containing the properties of a text message sent by a user.
UserConnected OnUserConnected
Register using UserConnected delegate.
TeamTalk5Srv(Channel lpChannel)
Instantiate TeamTalk server with a root channel.
UserMoved OnUserMoved
Register using UserMoved delegate.
delegate void UserDeleteServerBan(ref ClientErrorMsg lpClientErrorMsg, ref User lpUser, string szIPAddress)
Callback when a user is requesting to remove a ban.
delegate void UserMoved(ref User lpMover, ref User lpMovee)
Callback when a user has been moved.
delegate void FileUploaded(ref RemoteFile lpRemoteFile, ref User lpUser)
Callback when a new file has been uploaded to a channel.
ChannelRemoved OnChannelRemoved
Register using ChannelRemoved delegate.
UserChangeStatus OnUserChangeStatus
Register using UserChangeStatus delegate.
delegate void ChannelUpdated(ref Channel lpChannel, ref User lpUser)
Callback when a channel has been updated.
delegate void UserJoinedChannel(ref User lpUser, ref Channel lpChannel)
Callback when a user has joined a channel.
delegate void UserLogin(ref ClientErrorMsg lpClientErrorMsg, ref User lpUser, ref UserAccount lpUserAccount)
Callback when a user is requesting to log on to the server.
UserBanned OnUserBanned
Register using UserBanned delegate.
UserDeleteUserAccount OnUserDeleteUserAccount
Register using UserCreateUserAccount delegate.
delegate void ChannelCreated(ref Channel lpChannel, ref User lpUser)
Callback when a new channel has been created.
A struct containing the properties of a file in a BearWare.Channel.
FileDownloaded OnFileDownloaded
Register using FileDownloaded delegate.
TeamTalk5Srv(Channel lpChannel, ServerProperties lpServerProperties)
Instantiate TeamTalk server with root channel and server properties.
A struct containing the properties of a user.
delegate void FileDownloaded(ref RemoteFile lpRemoteFile, ref User lpUser)
Callback when a user has downloaded a file.
UserDeleteServerBan OnUserDeleteServerBan
Register using UserAddServerBanIPAddress delegate.
ChannelUpdated OnChannelUpdated
Register using ChannelUpdated delegate.
FileUploaded OnFileUploaded
Register using FileUploaded delegate.
delegate void SaveServerConfig(ref User lpUser)
Callback when a user has reguested to save the server configuration.
delegate void UserTextMessage(ref User lpUser, ref TextMessage lpTextMessage)
Callback when a user is sending a text message.
UserUnbanned OnUserUnbanned
Register using UserUnbanned delegate.
delegate void FileDeleted(ref RemoteFile lpRemoteFile, ref User lpUser)
Callback when a user has deleted a file.
delegate void UserAddServerBan(ref ClientErrorMsg lpClientErrorMsg, ref User lpBanner, ref User lpBanee)
Callback when a user is requesting to ban a user.
A struct containing the properties of the server's settings.
A struct containing the properties of a channel.
UserLeftChannel OnUserLeftChannel
Register using UserLeftChannel delegate.
delegate void UserUpdated(ref User lpUser)
Callback when a user's properties are being updated.
ChannelCreated OnChannelCreated
Register using ChannelCreated delegate.
UserLogin OnUserLogin
Register using UserLogin delegate.
delegate void ChannelRemoved(ref Channel lpChannel, ref User lpUser)
Callback when channel has been removed.
UserTextMessage OnUserTextMessage
Register using UserTextMessage delegate.
delegate void UserTimedout(ref User lpUser)
Callback when a user's connection has timed out.
UserAddServerBan OnUserAddServerBan
Register using UserAddServerBan delegate.
UserLoggedOut OnUserLoggedOut
Register using UserLoggedOut delegate.
UserLoggedIn OnUserLoggedIn
Register using UserLoggedIn delegate.
SaveServerConfig OnSaveServerConfig
Register using SaveServerConfig delegate.
delegate void UserUnbanned(ref User lpUnbanner, string szIPAddress)
Callback when a ban is removed.
Base class for BearWare.TeamTalk5Srv.
UserCreateUserAccount OnUserCreateUserAccount
Register using UserCreateUserAccount delegate.
UserDisconnected OnUserDisconnected
Register using UserDisconnected delegate.
UserAddServerBanIPAddress OnUserAddServerBanIPAddress
Register using UserAddServerBan delegate.
delegate void ServerUpdated(ref ServerProperties lpServerProperties, ref User lpUser)
Callback when a user has updated the server properties.
delegate void UserLoggedOut(ref User lpUser)
Callback when a user has logged out.
UserKicked OnUserKicked
Register using UserKicked delegate.
delegate void UserCreateUserAccount(ref ClientErrorMsg lpClientErrorMsg, ref User lpUser, ref UserAccount lpUserAccount)
Callback when a user is requesting to create a new user account.
UserUpdated OnUserUpdated
Register using UserUpdated delegate.
UserChangeNickname OnUserChangeNickname
Register using UserChangeNickname delegate.
TeamTalk5Srv()
Instantiate TeamTalk server. Call UpdateServer() and MakeChannel() to setup server properties and roo...
ServerUpdated OnServerUpdated
Register using ServerUpdated delegate.
A struct containing the properties of a user account.
delegate void UserDisconnected(ref User lpUser)
Callback when user has disconnected.
UserTimedout OnUserTimedout
Register using UserTimedout delegate.