h模块详细设计说明书

上传人:沈*** 文档编号:46665272 上传时间:2021-12-14 格式:DOC 页数:123 大小:4.34MB
收藏 版权申诉 举报 下载
h模块详细设计说明书_第1页
第1页 / 共123页
h模块详细设计说明书_第2页
第2页 / 共123页
h模块详细设计说明书_第3页
第3页 / 共123页
资源描述:

《h模块详细设计说明书》由会员分享,可在线阅读,更多相关《h模块详细设计说明书(123页珍藏版)》请在装配图网上搜索。

1、中光通信 模块详细设计说明书 Q/ZG 94.303.105.010文件编号:MGC中H248模块详细设计说明书项目名称媒体网关控制器项目编号模块名称H248模块编号项目负责人拟制何超群日期2002-8-9审核日期批准日期武汉邮电科学研究院中光通信公司修订记录序号日期版本号描 述作 者123456目 录目 录3RS模块详细设计说明书181引言181.1目的181.2参考资料182模块总体设计182.1功能说明192.2模块结构192.3数据结构202.3.1全局控制块:RsCb202.3.2呼叫控制块:RsCallCb222.3.3网关信息:GwInfo232.3.4PEER信息: RsPee

2、rCb232.3.5RS事件:RsEvent242.3.6通道信息:ChannelInfo252.3.7媒体描述符:MediaDescSet252.3.8模式请求:ModReqSet262.3.9计费信息:ChargingInfo282.3.10通知事件:NoitfyEvnt292.3.11注册:SrvChngEvnt292.3.12消息响应:rsMsgReply302.3.13消息:MgMgcoMsg322.3.14一般配置:RsGenCfg412.3.15Ssap配置:RsSsapCfg422.3.16Usap配置:RsUpSapCfg422.3.17控制:mgMgtCntrl432.3.

3、18审计:MgMgtAudit432.3.19状态指示:mgMgtSta442.4网关及端点管理442.4.1中继网关及其端点管理442.4.2用户网关及其端点管理492.5关于PEER的创建问题502.6关于SuConnId的问题512.6.1用户网关512.6.2中继网关523RsUiRstConReq533.1输入533.2算法及处理逻辑533.3输出543.4返回543.5流程544RsUiRstRelReq544.1输入544.2算法554.3输出554.4返回554.5流程565RsUiRstNtyInd565.1输入565.2算法565.3输出575.4返回575.5流程576R

4、sUiRstModReq576.1输入576.2算法576.3输出576.4返回576.5流程587RsLiMgtMgcoTxnInd587.1输入597.2算法597.3输出597.4返回597.5流程597.5.1处理一个Txn的子过程607.5.2处理ReqTxn的子过程617.5.3处理ReplyTxn的子过程648RsLiMgtMgcoTxnReq668.1输入668.2算法668.3输出668.4返回678.5流程679RsLiMgtBndReq679.1输入679.2算法679.3输出679.4返回679.5流程6710RsLiMgtBndCfm6710.1输入6710.2算法6

5、710.3输出6710.4返回6710.5流程6811RsLiMgtCntrlReq6811.1输入6811.2算法6811.3输出6811.4返回6911.5流程6912RsLiMgtCntrlCfm6912.1输入6912.2算法6912.3输出6912.4返回6912.5流程6913RsLiMgtAuditReq6913.1输入7013.2算法7013.3输出7013.4返回7013.5流程7014RsLiMgtAuditCfm7014.1输入7014.2算法7014.3输出7014.4返回7014.5流程7015RsLiMgtStaInd7115.1输入7115.2算法7115.3输出

6、7115.4返回7115.5流程7116rsRecvAmsTermCfm7116.1输入7116.2算法7216.3输出7216.4返回7216.5流程7317rsProcNotifyInd7417.1输入7417.2算法7417.3输出7417.4返回7417.5流程7518rsDeletePeer7618.1输入7618.2算法7618.3输出7618.4返回7618.5流程7719rsSrvChgRootDelayTmrExp7719.1输入7719.2算法7719.3输出7819.4返回7819.5流程7820rsProcSrvChgIndCfm7920.1输入7920.2算法7920

7、.3输出7920.4返回7920.5流程8021rsSrvChgPrcOther8021.1输入8021.2算法8021.3输出8121.4返回8121.5流程8222rsSrvChgPrcRoot8322.1输入8322.2算法8322.3输出8322.4返回8322.5流程8323rsPeerValidChck8623.1输入8623.2算法8623.3输出8623.4返回8623.5流程8724rsCfgRs8724.1输入8724.2算法8724.3输出8724.4返回8724.5流程8825RsMiLrsCfgReq8825.1输入8825.2算法8825.3输出8825.4返回89

8、25.5流程8926rsCfgGen8926.1输入8926.2算法8926.3输出8926.4返回8926.5流程9027rsCfgSsap9027.1输入9027.2算法9027.3输出9027.4返回9027.5流程9128rsCreateTxnCb9128.1输入9128.2算法9228.3输出9228.4返回9228.5流程9229rsCreatePeerCb9329.1输入9329.2算法9329.3输出9329.4返回9329.5流程9430rsAddTerm2Cntxt9430.1输入9430.2算法9430.3输出9530.4返回9530.5流程9531rsAlocDMElm

9、t9531.1输入9531.2算法9531.3输出9631.4返回9631.5流程9632rsFillAuditDesc9632.1输入9632.2算法9632.3输出9732.4返回9732.5流程9733rsFillMediaDesc9733.1输入9733.2算法9733.3输出9833.4返回9833.5流程9934rsFillReqEvnt9934.1输入9934.2算法10034.3输出10034.4返回10034.5流程10135rsFillSigReq10235.1输入10235.2算法10235.3输出10235.4返回10235.5流程10236rsFindCntxtCb1

10、0236.1输入10236.2算法10236.3输出10236.4返回10236.5流程10337rsFreeCntxtCb10337.1输入10337.2算法10337.3输出10337.4返回10337.5流程10338rsFreeTermCb10338.1输入10338.2算法10338.3输出10338.4返回10338.5流程10339rsFreeTxnCb10339.1输入10339.2算法10439.3输出10439.4返回10440rsGetCntxtCb10440.1输入10440.2算法10440.3输出10440.4返回10440.5流程10541rsFillDMElmt

11、10541.1输入10541.2算法10541.3输出10641.4返回10641.5流程10742rsFillDMDesc10742.1输入10742.2算法10742.3输出10742.4返回10742.5流程10843rsAlocTermCb10843.1输入10843.2算法10843.3输出10843.4返回10843.5流程10844rsBuildTermKey10844.1输入10844.2算法10844.3输出10844.4返回10844.5流程10945rsBuildTknStr32Key10945.1输入10945.2算法10945.3输出10945.4返回10945.5流

12、程10946rsCpyMgcoAuditDesc10946.1输入10946.2算法10946.3输出11046.4返回11046.5流程11047rsCpyMgcoAuditReply11047.1输入11047.2算法11047.3输出11047.4返回11047.5流程11048rsCpyMgcoDigMapDesc11048.1输入11048.2算法11048.3输出11148.4返回11148.5流程11149rsCpyMgcoErrDesc11149.1输入11149.2算法11149.3输出11149.4返回11149.5流程11150rsCpyMgcoEvBufDesc1115

13、0.1输入11150.2算法11150.3输出11250.4返回11250.5流程11251rsCpyMgcoEvtOther11251.1输入11251.2算法11251.3输出11251.4返回11251.5流程11252rsCpyMgcoLocalDesc11252.1输入11252.2算法11252.3输出11352.4返回11352.5流程11353rsCpyMgcoMediaDesc11353.1输入11353.2算法11353.3输出11353.4返回11353.5流程11354rsCpyMgcoModemDesc11354.1输入11354.2算法11354.3输出11454.

14、4返回11454.5流程11455rsCpyMgcoMuxDesc11455.1输入11455.2算法11455.3输出11455.4返回11455.5流程11456rsCpyMgcoNtfyReply11456.1输入11456.2算法11456.3输出11556.4返回11556.5流程11557rsCpyMgcoNtfyReq11557.1输入11557.2算法11557.3输出11557.4返回11557.5流程11558rsCpyMgcoObsEvtDesc11558.1输入11558.2算法11558.3输出11658.4返回11658.5流程11659rsCpyMgcoPkgdN

15、ame11659.1输入11659.2算法11659.3输出11659.4返回11659.5流程11660rsCpyMgcoPkgsDesc11660.1输入11660.2算法11660.3输出11660.4返回11760.5流程11761rsCpyMgcoReqEvtDesc11761.1输入11761.2算法11761.3输出11761.4返回11761.5流程11762rsCpyMgcoSignalsDesc11762.1输入11762.2算法11762.3输出11762.4返回11762.5流程11863rsCpyMgcoStatsDesc11863.1输入11863.2算法11863

16、.3输出11863.4返回11863.5流程11864rsCpyMgcoSvcChgReply11864.1输入11864.2算法11864.3输出11864.4返回11864.5流程11865rsCpyMgcoSvcChgReq11965.1输入11965.2算法11965.3输出11965.4返回11965.5流程11966rsCpyMgcoTermId11966.1输入11966.2算法11966.3输出11966.4返回11966.5流程11967rsCpyMgcoStreamId11967.1输入11967.2算法12067.3输出12067.4返回12067.5流程120RS模块详

17、细设计说明书关键词:媒体网关控制器MGCRS(Resource Allocation and Switching Function Entity)CA(Call Agent)GCP(Gateway Control Protocol)MGT:RS与GCP之间的接口 摘 要:RS模块是GCP协议栈的上层应用部分,主要负责GCP协议栈和总控SC之间的正常工作和信息交互过程。1 引言1.1 目的1.2 参考资料【1】 软交换设备总体技术要求【2】 ITU-TH.248媒体网关控制协议【3】 TrilliumGateway Control Protocol:Service Definition【4】 T

18、rilliumMGT Interface:Service Definition【5】 Tillium Gateway Control Protocol (GCP) Sample:User Application2 模块总体设计本章描述RS模块的功能以及与SC模块的接口原语和交互过程,还RS模块内部主要的数据结构。2.1 功能说明由于Trillium公司在GCP的基础上搭建了RS层作为实际应用的一个简单样本,该层具备了基本的命令处理功能。所以本设计的侧重点在于如何在现有的基础上进行有效的扩充以满足实际应用的复杂情形。RS需要完成SC与GCP之间的互通功能,具体表现在两方面:一,接受SC的控制请求

19、,将该请求转换成GCP的原语调用,并返回调用结果;二,当有呼叫到来时,向总控发起连接请求,并能产生状态指示;2.2 模块结构RS模块在MGC软件体系中的位置如下图2-1所示:在上图中,阴影部分属于RS模块,该模块可分为如下几个模块:配置模块、呼叫处理、注册模块、绑定模块、事务处理模块、控制模块。各模块之间及模块与外部模块之间的关系如图所示,绑定模块和控制模块主要负责将来自其它模块的绑定和去绑定以及控制请求转换成GCP协议栈可识别的原语形式,同样将来自GCP的绑定、去绑定及控制证实原语转换成RS可识别的形式。在配置模块中要与这两个模块打交道。事物处理模块的处理过程相对要复杂些,事务处理模块要含盖

20、H248所有的命令及其响应,不同的命令对应不同的处理过程,但可将这些命令划分为两大类,一类是与呼叫相关的,另一类是与媒体网关注册相关的,前者对应呼叫处理模块,后者对应注册模块。呼叫处理模块负责呼叫流程的建立、释放,它从事物处理模块中提取各种命令及其响应,根据当前的呼叫状态,确定自己的下一个处理阶段,当需要与SC打交道时就进行原语转换,通知SC。同时,该模块也将从SC收到的命令进行处理,适当时打包传递给事物处理模块。2.3 数据结构下面只列出了在RS层需要添加或修改的结构定义,对于没有任何改动的结构此处没有列出,接受Trillium的定义。图或结构中红色部分代表由用户添加,不是Trillium提

21、供。2.3.1 全局控制块:RsCb RsCb的数据结构如图2-2所示:。RsCb的结构定义如下:typedef struct rsCb RsGenCfg genCfg; /*配置信息*/ RsSsapCb *sSapLst; /* SSAP 列表- */ RsPeerCb *peerLst; /* 控制网关列表 */ U16 nxtTxnId; /*下一个OgTxn Id */ U32 curNumPeer; /*当前Peer的个数*/ U32 curIcTxns; /*当前IcTxn数目*/ U32 curOgTxns; /*当前OgTxn数目*/ TskInit init; /* 初始化

22、信息*/ CmTqCp rsTqCp; /*定时处理*/ CmTqType rsTqRSTQNUMENT;/*定时队列*/ RsUpSapCb *upSapLst; /* Upper SAP列表*/ CmHashListCp callCbLst; /*呼叫控制列表*/ GwInfo *gwLst; /*控制网关列表*/ UConnId nxtSuConnId; /*下一个连接号 */RsCb;2.3.2 呼叫控制块:RsCallCb 为了记录与一路呼叫相关的信息,在全局变量rsCb中定义一哈希表如下:CmHashListCp callCbLst;其中哈希表的每个Entry的结构如下:结构Cal

23、lCb定义: typedef struct rsCallCb CmHashListEnt phytermLstEnt; /* Hash list entry */ CmHashListCp *phytermhlLstCp; /*PhisicalTerm hash list */ CmHashListEnt callcbLstEnt; /* Hash list entry */ CmHashListCp *hlLstCp; /* CallCb hash list */U8 peerId; /*该路呼叫所归属的网关ID*/U32 suConnId;/*SC的连接号*/U32 spConnId; /

24、*RS的连接号*/MgMgcoTermId termId; /*端点Id*/U8 bPendingMsg; /*针对RelReq*/TmrCfg tmr; /*定时,待定*/RsCallCb;2.3.3 网关信息:GwInfo保存MGC所管辖的每个媒体网关的基本配置信息,该变量可在RS模块初始化时通过读配置文件填充。该变量在rsCb中定义,定义如下:GwInfo *gwLst;结构GwInfo 定义如下:typedef struct gateWayInfoU8 midStrGW_NAME_LENGTH; /*媒体网关识别ID*/U8 peerType; /*是主MG还是备份MG*/U8 mat

25、edmgNameGW_NAME_LENGTH; /*替换MG的名字*/ GwInfo;其中:网关标志最大长度:#define GW_NAME_LENGTH 102.3.4 PEER信息: RsPeerCb 该结构保存了处于激活状态的媒体网关的部分信息,出于应用需求,在原有的RsPeerCb结构中增加部分变量(红色标示)。定义如下:typedef struct rsPeerCb U8 peertype; /*主MG还是备份MG */ RsPeerCb* matedmg; /*替换MG*/U8 midStrGW_NAME_LENGTH; /*网关名称*/Bool bRegisted; /*网关是否

26、注册*/U8 gwIndex; /*本网关在gw Lst中的索引*/ CmHashListCp phyTermLst; /*为用户网关时端点控制列表*/RsSsapCb*sSapCb;;CmHashListCpogTxnLst;CmHashListCpicTxnLst; CmHashListCpcntxtCbLst; CmHashListCp suConnIdLst;U32 suConnId;;MgMgcoLocalDesc *lcl;MgMgcoLocalDesc *rmt;RsPeerCb;当一个MG向MGC注册时,RS会根据该网关的MID标志创建一个相应的RsPeeCb,并设置相应的标志

27、位。但此时的type、termCbLst变量必须根据全局变量gwInfo填充。GwInfo的获得方法待定。 2.3.5 RS事件:RsEventtypedef struct rsEvent CmMemListCp memCp; TknPres pres; ChannelInfochnlInfo;TknU8 type; /*事件类型*/ Unio ChargingInfochrgInfo; ModReqSet modReq; NoitfyEvnt ntfyEvnt;SrvChngEvnt srvChngEvnt; u;RsEvent;其中type的 定义有 :#define CHARGING_I

28、NFO 0#define MOD_REQ 1#define NOTIFY_EVENT 2#define SERVICE_CHANGE 32.3.6 通道信息:ChannelInfotypedef struct channelInfo TknPres pres; TknStrOSXL midStr; /*网关信息*/ MgMgcoTermIdtermId; /*端点信息*/ ChannelInfo;2.3.7 媒体描述符:MediaDescSet typedef struct media TknPres pres; TknU8 type; Port port; TknU8 numComp; Tk

29、nU8 *fmtLst;Media;typedef struct mediaDesc TknPres pres; CmTptAddr rtpIpAddr; TknU8 numComp; Media *mediaList; MediaDesc;typedef struct mediaDescSet TknPres pres; TknU8 numComp; MediaDesc *meddescr; MediaDescSet;其中:媒体类型:#define MEDIA_TYPE_AUDIO 0其余待定。2.3.8 模式请求:ModReqSettypedef struct localControl T

30、knPres pres; TknU8 modType;LocalControl其中type的定义如下:#define SEND_RECIVE 0#define RECIVE_NOLY 1typedef struct stream TknPres pres; LocalControl controlMod; /*收发模式*/ MediaDescSet mediaSet; /*媒体集*/Stream;typedef struct digitmap TknPres pres; TknU8 number; TknU8 *digitStr; DigitMap;typedef struct siganlP

31、ara TknPres pres;TknU8 ToneId; /*语音ID*/SignalPara;typedef struct signalTknnPres pres; TknU8 signalType; /*放音号*/ SignalPara para; /*音信号参数 */Signal;其中signalType的定义如下:#define SIGNAL_DIAL_TONE 0 /*拨号音*/#define SIGNAL_RING_TONE 1 /*振铃音*/#define SIGNAL_RING_BACK 2 /*回铃音*/#define SIGNAL_IVR_TONE 3 /*IVR语音*

32、/typedef struct signalSetTknPres prs;TknU8 num;Signal *signal;SignalSet;typdef struct evntSetTknU8 num;U8 *evntType;typedef struct modReqSetTknnPres pres; Stream stream; /*有关媒体流的信息*/ SignalSet signalSet; /*音信号*/ EventSet evntSet; /*检测事件*/ DigitMap dmp; /*数字映象*/ModReqSet;2.3.9 计费信息:ChargingInfo typed

33、ef struct statistics TknPres pres; TknU8 type; /*统计数据类型*/ TknU8 val;/*统计值*/Statistics;typedef struct chargingInfo TknPres pres; TknU8numComp; /*统计数据的种类*/ Statistics *stat; /*统计列表*/ChargingInfo;其中type定义如下:#define RTP_PACKETS_SEND 0 /*发送包的个数*/#define RTP_PACKETS_RECEIVE 1 /*接收包的个数*/#define RTP_PACKETS

34、_LOST 2 /*丢失包的个数*/#define RTP_INTER_JITTER 3 /*内部阻塞程度*/#define RTP_PROPAGATION_DELAY 4 /*传播时延*/#define NT_DURATION 5/*待定*/#define NT_OCTETS_SENT 6 /*发送的字节数*/#define NT_OCTETS_RECEIVE 7 /*接收的字节数*/2.3.10 通知事件:NoitfyEvnt 该参数用于248模块通知SC检测到的事件及用户拨号。typedef struct evntParaTknPres pres; TknU8 digits20; /*用

35、户拨号*/EvntPara;typedef struct notifyEvntTknPres pres; TknU8 evntType;EvntPara para; NoitfyEvnt;其中evntType的定义如下:#define EVNT_OFF_HOOK 0#define EVNT_ON_HOOK 1#define EVNT_FLAH_HOOK 2#define EVNT_DIGIT_COMPLETE 32.3.11 注册:SrvChngEvnttypedef struct srvChngEvntTknPres pres;TknU8 termType; TknU8 evntType;S

36、rvChngEvnt;其中termType定义如下:#define ROOT 0 /*网关注册*/#define OTHER 1 /*端点注册*/其中evntType定义如下:#define OUT_SERVICE 0 /*网关或端点退出服务*/#define IN_SERVICE 1/*网关或端点恢复服务*/2.3.12 消息响应:rsMsgReply rsMsgReply用于当进入的Message是Req类型。一个Msg中可以携带一个或多个Transaction请求;每个Transaction请求可以携带一个或多个Action;每Action中可以携带一个或多个Command;一个Comm

37、and又可以同时作用与一个或多个Termination。为了方便、正确回复进入的请求消息,可以将请求消息中与具体业务无关的部分保存在rsMsgReply中,而将与业务有关的信息提取出来交给业务处理模块处理。当业务处理模块处理完返回结果后,则根据rsMsgReply保存的信息将该处理结果包装成与进入的Req消息相一致的Reply消息,发送给GCP层。struct rsMsgReply CmMemListCp *memCp; U8 numTxn; /*需要应答的Txn的个数*/ U8 numCmdReq; /*需要应答的命令个数*/ U8 numCmdReply; /*实际应答的命令个数*/ Rs

38、TxnReply txnReplyRS_MAX_TXN_PER_MSG; /*对每个Txn的响应*/ U8 errCode; CmTimer timersMAXRSTIMER; ;2.3.12.1 RsTxnReply的结构该结构用于保存一个Txn的信息typedef struct rsTxnReply RsTxnCb *txnCb; /*保存分配给一个IcTxn Cb的指针*/ U8 txnIdx; /*当前的Txn在rsMsgReply中Txn数组中的索引*/ Bool txnReplyFlg;/*Txn是否需要应答*/ U8 numAl; /*一个IcTxn中Action数目相等*/ R

39、sAlReply *alReply; /*ActionReply的数组*/ U8 errCode; RsTxnReply;2.3.12.2 RsAlReply的结构该结构保存一个Context的信息typedef struct rsAlReply U8 alIdx;/*在 rsTxnReply中alReply数组中的索引*/ U8 cntxtType;/* Context类型*/ U32 cntxtId;/*Context Id*/ Bool cntxtAlocFlg;/* */ Bool alReplyFlg;/* Context是否需要应答*/ U8 numCmd;/* CommandRe

40、ply数目*/ RsCmdReply *cmdReply;/*命令数组*/ U8 errCode; RsAlReply;2.3.12.3 RsCmdReply的结构typedef struct rsCmdReply U8 cmdIdx;/*在RsCmdReply数组中的下标*/U8 cmdType;/*Command类型*/Bool cmdReplyFlg;/* Command是否需要响应*/U32 numTerm;/*作用的Termination数目*/RsTermCb *termCbRS_MAX_TERM_PER_CMD;/*作用的Termination数组*/U8 errCode; Rs

41、CmdReply;2.3.13 消息:MgMgcoMsg RS使用MgMgcoMsg结构向GCP发出事务请求或事务响应;同样,GCP也使用MgMgcoMsg结构指示事务请求或事务响应。typedef struct mgMgcoMsgCmMemListCpmemCp;TknPrespres;MgMgcoAuthHdrah;/* 鉴权头,目前不用*/MgMgcoVersionver;/* 版本号*/TknStrOSXLmid;/* 远端的MID信息*/MgMgcoMsgBodybody;/* 消息体*/MgPeerInfolcl;/* 远端的Peer信息*/ MgMgcoMsg;2.3.13.1

42、MgMgcoMsgBodytypedef struct mgMgcoMsgBodyTknU8type;/* 消息类型:错误或是TxnLst*/unionMgMgcoErrDescerr;/* 错误信息描述*/MgMgcoTxnLsttl;/* 事务列表信息*/ u; MgMgcoMsgBody;其中MgMgcoTxnLst的定义如下:typedef struct mgMgcoTxnLstTknU16num;/* 列表中事务的数目*/MgMgcoTxn*txns;/* 事务列表*/ MgMgcoTxnLst;2.3.13.2 MgMgcoTxntypedef struct mgMgcoTxnTk

43、nU8type;/* 事务类型:req、reply、pend还是ack*/unionMgMgcoTxnReqreq;/*事务请求结构MgMgcoTxnReplyreply;/* 事务响应结构*/MgMgcoTxnPendpend;/* 临时响应结构*/MgMgcoTxnRspAckrspAck;/* 响应确认结构 */ u;MgLclErrmgLclErr;/* 本地错误,错误来自于本地GCP*/TknU8dupInfo;/* 是否是重复的Transaction*/ MgMgcoTxn;根据GCP层的SSAP配置,事务的临时响应、事务的超时重发都由GCP层管理,因此MgMgcoTxnPend和

44、MgMgcoTxnRspAck结构不会出现在MGT接口。在GCP层的General配置中,配置了遇到重复的事务,GCP不向RS指示,因此dupInfo在RS中不作判断。2.3.13.3 MgMgcoTxnReqtypedef struct mgMgcoTxnReqTknPrespres;/*Transactoin是否存在*/MgMgcoTransIdtransId;/* TransactionId*/MgMgcoActionLstal;/* Transaction中包括的Action列表信息*/ MgMgcoTxnReq;其中MgMgcoActionLst的结构如下:typedef struc

45、t mgMgcoActionLstTknU16num;/* Action数目*/MgMgcoActionReq*actns;/* Action结构*/ MgMgcoActionLst;2.3.13.3.1 MgMgcoActionReqtypedef struct mgMgcoActionReqMgMgcoContextIdcxtId;/* Action作用的ContextId*/TknPrespres;/* 下面的项目是否有效*/MgMgcoContextPropscxtProps;/*Context的属性*/MgMgcoContextAuditcxtAud;/* Context需要的审计*

46、/MgMgcoCmdReqLstcl;/* Action中Command的列表信息*/ MgMgcoActionReq;其中MgMgcoCmdReqLst的结构如下:typedef struct mgMgcoCmdReqLstTknU16num;/* 命令数目*/MgMgcoCommandReq*cmds;/* 命令列表*/ MgMgcoCmdReqLst;2.3.13.3.2 MgMgcoCommandReqtypedef struct mgMgcoCommandReq TknPrespres;TknPresopt;/* 该命令是否是可选命令*/TknPreswild;/* 是否作用于通配符

47、TerminationId*/MgMgcoCmdcmd;/* 命令结构 */ MgMgcoCommandReq;2.3.13.3.3 MgMgcoCmdtypedef struct mgMgcoCmdTknU8type; /* 命令类型*/unionMgMgcoAmmReqadd;/*Add命令结构*/MgMgcoAmmReqmove; /* Move命令结构*/MgMgcoAmmReqmod; /* Modify命令结构*/MgMgcoSubAudReqsub; /* Subtract命令结构*/MgMgcoSubAudReqacap; /* AuditValue命令结构*/MgMgcoSu

48、bAudReqaval; /*AuditCapability命令结构*/MgMgcoNtfyReqntfy; /* Notify命令结构*/MgMgcoSvcChgReqsvc; /*ServiceChange命令结构*/ u; MgMgcoCmd;MgMgcoCmd结构的联合中,只详细介绍Add命令的结构,Move和Modify命令与Add共用结构,其他命令的结构也大致相似。2.3.13.3.4 MgMgcoAmmReqtypedef struct mgMgcoAmmReqTknPrespres;/* 是否有效*/MgMgcoTermIdtermId;/* 命令作用的TerminationI

49、d*/MgMgcoAmmDescLstdl;/*Add命令的描述符列表信息*/ MgMgcoAmmReq;Add命令的描述符列表信息的结构如下:typedef struct mgMgcoAmmDescLstTknU16num;/* 描述符数目*/MgMgcoAmmDesc*descs;/* 描述符列表*/ MgMgcoAmmDescLst;2.3.13.3.5 MgMgcoAmmDesctypedef struct mgMgcoAmmDescTknU8type; /* 描述符类型*/unionMgMgcoMediaDescmedia;/* 媒体描述符,最重要的一个描述符,描述了Terminat

50、ion的模式、地址信息、编码方式等信息*/MgMgcoModemDescmodem;/* 现在不用*/MgMgcoMuxDescmux;/* 多媒体描述符,现在不用*/MgMgcoReqEvtDescevts;/* 描述需要检测的事件*/MgMgcoEvBufDescevBuf;/* 描述已经检测到的事件*/MgMgcoSignalsDescsig;/* 描述需要发出的信号*/MgMgcoDigMapDescdm;/*DigitMap,现在不用*/MgMgcoAuditDescaudit;/* 审计描述符*/ u; MgMgcoAmmDesc;H.248协议规定了许多描述符,对于每一种描述符,

51、Trillium都提供了访问的数据结构。2.3.13.4 MgMgcoTxnReplytypedef struct mgMgcoTxnReplyTknPrespres;MgMgcoTransIdtransId;/* 事务Id*/TknPresimmAck;/* 响应是否需要确认*/TknU8type;/* 响应类型*/unionMgMgcoErrDescerr;/* 错误描述符*/MgMgcoActnReplyLstarl;/* 响应Action列表信息*/ u; MgMgcoTxnReply;响应Action列表信息的结构MgMgcoActnReplyLst如下:typedef struct mgMgcoActnReplyLstTknU16num;/* ReplyAction的数目*/ MgMgcoActnReply*repl;/* 响应Action列表*/ MgMgcoActnReplyLst;2.3.13.4.1 MgMgcoActnReplytypedef struct mgMgcoActnReplyTknPrespres;MgMgcoContextIdcxtId;/* 作用的ContextId*/TknU8t

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!