1、本源码下载地址:htp:/ #define APPLY_CONNECT_SUCCEDED 1001 / /* cmd, id,string / user name */ #define NM_AGRE_ATTEND 1003 #define APPLY_FAILURE_CONNECT 1004 #define NM_USER_UPDATE 1005 /Send to User for status update typedef struct WORD lid BYTE spk_style/* 0=不发言 1=第一发言人 2=第二发 3=第三发言人 4=四发言人 5=申请发言*/ BYTE in
2、join/* 0=不在会议中 1=在会议中*/ BYTE ctl_style/* 0=不控制 1=在 2=申请控制 */ CLIENT_STATUS /* cmd, id, */ #define MSG_SERVER_MODE 1006 /* 在主席加入后发送服务器的自动或手动模式给主席。 com_style IDservermode 1 automatic 0 manual */ #define NM_MODE_CHANGE 1007 /* 主席更新会议模式时给服务器发送NM_MODE_CHANGE命令com_style IDServerMode */ /2.申请发言 #define MSG
3、_SPEAKING_APLY 1008 /* 客户端给服务器发送MS_SPEAKING_APPLY命令 com_style clientID */ /6.客户端自己停止发言 #define MSG_STOP_SPEAKING 1010 /* com_style clientID */ /5.主席停止某人的发言 #define MSG_STOP_MIC 1011 /* 主席给服务器发送MSG_STOP_MIC命令 com_style destID */ /* 服务器收到MSG_STOP_SPEAKING命令 修改发言状态,给destID发送NM_STOP_MIC命令 客户端收到NM_STOP_M
4、IC命令就停止发送音频数据。 m_bActiveOrNot = TRUE */ #define MSG_CANCEL_SPEAKING_APPLY 1012 /*服务器收到MS_SPEAKING_APPLY命令 if clientID = 0 直接修改状态,并给主席发送NM_AGRE_MIC命令*/ /#define NM_AGRE_MIC 1013 /* com_style destID */ /*if !ServerMode 修改客户的申请状态 if ServerMode & curMics MaxMics 设置发言状态,并给clientID发送NM_AGRE_MIC命令*/ /3.主席同
5、意发言 #define NM_AGRE_MIC 1013 /* 主席同意某一个申请发言中的人发言时给服务器发送NM_AGRE_MIC 服务器收到后修改发言状态,并转发给相应的用户。*/ /1.取消加入申请#define MSG_CANCEL_ATTEND 1014 /* 客户在主席同意前取消加入申请。 com_style clientID */ #define NM_CLOSE_CHANNEL 1016 /* 主席收到后,发送NM_CLOSE_CHANEL命令(原来的ON_CLOSE_CHANNEL) com_style destID 异常退出的用户ID */ #define NM_TERM_
6、RECEIVE_CAP 1017 /* 客户端更新接收状态时发送给服务器的命令 com_style SourceID bVideoReceive bAudioReceive bChatReceive bBWReceive dwMinVideoBW */ #define NM_FILETRANSFER_END 1019 #define SG_FILE_TRANSFER 1020 #define NM_FILETRANSFER_CANCEL 1022 #define N_CLIENT_EXCEPT 1025 /* 异常退出时,服务器给主席发送 NM_CLIENT_EXCEPT 命令(原来的NM_D
7、ISCONNECT) com_style destID 异常退出的用户ID */ #define MSG_USER_TABLE 1026 #define MSG_RECV_SERVER_TYPE 2000 #define SG_RECV_MIX_TYPE 2002 typedef struct /WORD wId CLIENT_STATUS status char szName1 / name USERS_TABLE /* cmd, id, / self id MSG_USER_TABLE. */ #define MSG_TERM_RECEIVE_CAP 1027 /* 服务器有发送或接收状态
8、变化时给客户发送MSG_TERM_RECEIVE_CAP命令com_style SourceID bVideoReceive bAudioReceive bChatReceive bBWReceive dwMinVideoBW */ #define NM_CANCEL_ATTEND 1028 /* 服务器收到客户端的取消加入申请,给主席发送NM_CANCEL_ATEND命令 com_style clientID 主席接收到NM_CANCEL_ATTEND命令,给服务器发送NM_CLOSE_CHANNEL命令,服务器接收 到后才真正删除一个通道。 */ /4. 主席不同意发言 #define N
9、M_DISAGRE_MIC 1029 /*主席不同意某一个申请发言中的人发言时给服务器发送NM_DISAGRE_MIC 服务器收到后修改发言状态,并转发给相应的用户。*/ #define ON_CONNECT_COM 1031 /* timercmd_style id */ /服务器收到MSG_STOP_MIC命令 修改发言状态,给destID发送NM_STOP_MIC命令 #define N_STOP_MIC 1032 /* com_style destID */ /*客户端收到NM_STOP_MIC命令就停止发送音频数据。 m_bActiveOrNot = TRUE*/ #define N
10、M_FILE_TRANSFER_FAIL 1034 #define N_FILETRANSFER_F 1035 #define NM_FILETRANSFER_T 1036 #define N_FILE_TRANSFER 1037 #define MSG_WB_CREATE 1038 / #define N_WB_CREATE 1039 #define NM_WB_CREATE_FAIL 1040 #define SG_WB_CHANGE 1041 #define NM_WB_CHANGE 1042 #define SG_WB_CHANGE_OK 1043#define MSG_WB_CHAN
11、GE_FAIL 1044 #define N_WB_CHANGE_SUCES 1045 #define MSG_WB_CLOSE 1048 / #define N_WB_CLOSE 1049 #define MSG_DROP_USER 1052/请出会议 #define N_DROP_USER 1053 #define NM_CONNECT_ER 1054 #define MSG_WEB_CHANGE 1056 #define N_EB_CHANGE 1057 #define MSG_WB_WANTCHANGE 1058 #define N_WB_WANTCHANGE 1059 #define
12、 MSG_FILE_UPLOAD 1060 #define N_FILE_DOWNLOAD 1061 /*用户端要求看某一个用户的视频,向服务器发送*/ #define MSG_APPLY_VIDEO 1065 /* com_style client_LID /由服务器产生的唯一表示参加会议者的数字 */ #define NM_APLY_VIDEO 1066 /* com_style client_LID bHasVideo/TRUE=有视频,FALSE=没有视频信息 */ /*用户端停止看某一用户的视频,向服务器发送*/ #define MSG_STOP_VIDEO 1067 /* com_
13、style client_LID / 由服务器产生的唯一表示参加会议者的数字 */ /*用户端申请控制(包括文档,浏览器,白版),向服务器发送*/ #define MSG_APPLY_CTL 1068 /* com_style */ /*用户端申请控制(包括文档,浏览器,白版),向服务器发送*/ #define NM_AGRE_CTL 1069 /* com_style */ /*用户端停止控制(包括文档,浏览器,白版),向服务器发送*/ #define MSG_STOP_CTL 1072/* com_style client_LID /由服务器产生的唯一表示参加会议者的数字 */ /*服务器
14、收到用户停止控制(包括文档,浏览器,白版),向用户端返回通知*/ #define NM_AGRE_STOP_CTL 1073 /* com_style */ /*用户端停止看某一用户的视频,向服务器发送*/ #define NM_STOP_VIDEO 1076 /* com_style client_LID /由服务器产生的唯一表示参加会议者的数字 */ /*获得控制权的用户,向服务器通知控制TAB的位置*/ #define MSG_SET_CTL_TAB 1079 /* com_style client_LID BYTE tabNum /* 0 白板 1 文档共享 2 协同浏览 3 保留*/
15、 /*服务器获得控制TAB的位置信息后,通知每个用户*/ #define NM_SET_CTL_TAB 1080 /* com_style client_LID BYTE tabNum /* 0 白板 1 文档共享 2 协同浏览 3 保留*/ /*服务器获得控制TAB的位置信息后,通知每个用户*/ #define CHAIR_STOP_CTL 1082 /* com_style client_LID/被停止的用户lid */ /*服务器获得控制TAB的位置信息后,通知每个用户*/ #define CHAIR_AGRE_CTL 1083 /* com_style client_LID/被同意的用
16、户的lid */ /*非网络协议,CMainFrame 将此消息发给CRightPanel,提供lid 用户的info*/#define ONE_VIDEO_INFO 1085 #define MSG_WB_CREATE_2 1090 / #define N_WB_CREATE_2 1091 #define NM_WB_CREATE_FAIL_2 1092 #define MSG_WB_CHANGE_2 1093 #define NM_WB_CHANGE_2 1094 #define SG_WB_CHANGE_OK_2 1095 #define MSG_WB_CHANGE_FAIL_2 109
17、6 #define N_WB_CHANGE_SUCCESS_2 1097 #define NM_WB_CHANGE_TIMEOUT_2 1098 #define SG_WB_CLOSE_2 1099 #define NM_WB_CLOSE_2 1100 #define SG_WB_WANTCHANGE_2 1101 #define NM_WB_WANTCHANGE_2 1102 /*获得控制权的用户将目前控制的相对位置统治服务器*/ #define MSG_SHAREDOC_CUR_POS 1200 /* com_style clientID posx(WORD 110000)/归一化的x位置
18、 posy(WORD 1_10000)/ y */ /*服务器将目前控制的相对位置统治每个用户*/ #define NM_SHAREDOC_CUR_POS 1201 /* com_style clientID posx(WORD 1100)/归一化的x位置 posy(WORD 1_100)/ y位置 */ /add by Robert Tian 2002 4 3 /Purpose: 添加文件共享的自定义消息 /通知服务器某个消息已经完成 #define MSG_NOTIFY_DOWNLOAD_DONE 1320 /服务器返回某个用户接收到消息的信息 #define NM_USER_DOWNLO
19、AD_DONE 1321 #define NM_SERVER_TIMEOUT 1330/add by liy 2002.04.19 for clas over #define N_SERVER_OUT 1331 /time to be out /add end #define MSG_START_RECORD 1336 #define SG_END_RECORD 1337 #define MSG_RECORD_FOLDER 1338/add by Robert tian 2002 8 15 /通知服务器是否需要进行拆包 #define MSG_APART_PACKAGE 1340 /add e
20、nd AudioLib, G711, G723,RFACodes 是音频库 AdaptationLayer1 : Tcp 协议处理,包括信令、文字信息 AdaptationLayer2 : 音频数据 AdaptationLayer3 : 视频数处理 其中他们有一下共同点 IndicationMUX2AL() :处理接收的数据,进行数据解包工作 m_AL_DATA_request): 数据的发送数据打包工作 Bitmap : 数据共享的图形处理 CaudioClient : 音频设备、录制、播放 CchannelManager : 管理各种数据信道处理 CchatChannel : 文字聊天信道
21、 CchatCVtFmt : 协议栈 CchatDlg : 文字聊天界面 CchatView : 主界面的文字聊天界面 CConfSeting : 会议设置界面 CconnectionSocket : TCP 连接对象 CctlView : CCtrl: 信林处理 CctrlChannel: 控制数据通道 CctrlPanel: 控制界面 CdlgButton: 自定义按钮 CdocPriint : 文档打印 CDShowCapture : 视频采集 CfileCtrl: 文件列表 CfileTransDlg: 文件传输界面 CFPSMon: 视频信息 CinfoWnd: 信息界面 CIPFi
22、lter: 视频信息和过滤 CIPInfo: CleftPanel: ClogicalChannel: 数据通道 CLOgin: 登陆模块对象 CLOginEvents: CmediaFrame: 视频帧对象 CmetaFile: 共享文档对 CMIxerBase: 音频库的象 CmixerFader: CmacSliderCtrl: CmoniloerLoader: 获取音视频设备对象CmyEdit: 自定义编辑框 CnetWorkManager: 网络连接对象 ConeUser: 用户状态 CoptionDlg: 设置对话框 CpstDoc: 共享文档对象 CpstDownLoad: 下载
23、对象 CpstFile: 文档页对象 CPStUpload: 文件上载线程 CrealTimeSocket: UDP 连接 CrightPanel: 视频界面 CsharedBrowser: 协同浏览对象 CshareDoc: 共享的文档对象 CshareDocChannel: 共享数据通道 CshareDocView: 界面 CsocketThread: 网络线程 CsocketWin: 络线消息处理 CUIDialog: 用户自定义对话框 CuserManager: 用户列表管理 CuserPannel: 界面 CV2MsgDlg: 自定义消息框 CvideoRePack: 处理视频数据乱
24、续 CwbDataChanel: 百伴通道 CwbEdit: 百伴数据对象 CimageObject: CwbElipse: CwbGraphic: CWBImage: CWBLine: CWBLineatwil: CWBPolyLine: CWBPopupMenu: CWBRectangle: CWBText : CWBTransferLine: CWBTwoPtGraphic CWBView : 百板界面 H223Clas: MultiplexEntry :标志数据通道的状态 MultiplexLayer :网络据协议处理 MUX_PDU :域网络成打交道接收和发送数据 OneUserEx : 用户状态对象 OneUserList : 用户列表