General info | Getting started | Samples | Components reference | FAQ | Solutions

Components reference


    vcproConferenceServerX

Designed to provide multi-user voice and text chat for up to a number of clients simultaneously and join the connected clients into the chatting groups (voice chat rooms).

While IpClient, IpServer and MediaGate components allow peer-to-peer or one-to-many audio conversation only, the ConferenceServer component provides an ability for more than two participants to talk with each other in real time.

Set Proto and Port properties to specify the socket parameters. Set Active to true to initiate the server.

Use the AddRoom(name, password) method to add a voice chat room.

We recommend you to use GSM/8000/16 bit/mono or GSM/44100/16 bit/mono audio quality settings, but you can experiment. Client's audio quality settings must be similar as ConferenceServer's ones.

Implements
IvcproConferenceServerXdefault 
IvcproConferenceServerEventsdefaultsource

IvcproConferenceServerEvents (IDispatch)
Can be implemeted by client to hook events
Methods
void OnAcceptClient(long ConnId, bool* accept)Fires when server accepts new client connection. Set the accept parameter to True to accept connection. Call GetClientParam method to receive client parameters, such as ip-address, port number, etc.
void OnClientConnect(long ConnId)Fires when new client connects to server
void OnClientDisconnect(long ConnId)Fires when client disconnects from server
void OnReceiveText(long ConnId, BSTR Text)Fires when component receives a text from remote side.

IvcproConferenceServerX (IDispatch)
Dispatch interface for vcproConferenceServerX component
Methods
void AddRoom(BSTR name, BSTR password)Adds a new voice chat room with the specified room name and password
void DeleteRoom(BSTR name)Deletes a voice chat room with the specified room name
void DisconnectClient(long ConnId)Disconnects client from server using client connection ID
long GetClientConnId(long ClientIndex)Returns ClientId for given index. ClientIndex may be from 0 to ClientCount - 1
BSTR GetClientParam(long ConnId, vcClientParam ParamType)Returns client parameter such as ip-address, port number etc. using client connection ID and param type
BSTR GetRoomName(long RoomIndex)Returns a room name by index (0..RoomCount - 1)
long GetRoomClientCount(long RoomIndex)Returns a room client count by room index (0..RoomCount - 1)
void SendText(long ConnId, BSTR text)Sends text message to client indicated by ConnId parameter over network. If component is in client mode, ConnId parameter is ignored
Properties
bool ActiveSet to true to activate (open) the component. All other properties should be set to proper values before activation. Set to false to deactivate (close) the component
BSTR BindToSpecifies the IP address the socket should bind to. Default '0.0.0.0' means that the socket should bind to the first available network interface.
long ClientCountReturns current number of clients connected
long FormatTagSpecifies audio format tag for the wave device
long MaxClientsSpecifies maximum number of clients that can connect to server. "-1" value means no limit, "0" value means no clients
long PcmBitsPerSampleSpecifies number of bits per sample for wave device
long PcmNumChannelsSpecifies number of channels per sample for wave device
long PcmSamplesPerSecSpecifies number of samples per second for wave device
BSTR PortSpecifies port number for the client/server TCP/IP socket
unaProtoType ProtoSpecifies Proto for the TCP/IP socket (TCP or UDP)
bool RemoveEmptyRoomsWhen set to True causes ConferenceServer to automatically delete a room when the corresponding connected client count becomes = 0
long RoomCountReturns voice chat room count
bool SyncEventsSpecifies whether events calls synchronized through main thread


See also...

Base interfaces, vcproWaveInDeviceX, vcproWaveOutDeviceX, vcproWaveCodecDeviceX, vcproWaveRiffX, vcproWaveMixerX, vcproWaveResamplerX, vcproWaveMultiBandSplitterX, vcproEqualizerX, vcproIpServerX, vcproIpClientX, vcproIpBroadcastServerX, vcproIpBroadcastClientX, vcproMediaGateX, vcproVolumeControlX, vcproDisplayBandsX


VCX Library 3.0
Copyright © 2002-2008 Lake of Soft, Ltd
All rights reserved.