77范文网 - 专业文章范例文档资料分享平台

EXCEL程序详细设计 - 图文(8)

来源:网络收集 时间:2019-03-10 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

5. 数据描述

5.1. 数据结构定义

5.1.1. 状态机相关结构

状态结构:

typedef struct t_status_treat {

int nStatusId; /* 状态编号 */

int (*nStatusSetup)(int nStatusMachineNo); /* 状态初始化的处理函数,返回是否直接跳转 */

struct t_status_treat *(*prStatusOver)(int nStatusMachineNo); /* 状态结束的处理函数,返回下一个状态 */

struct t_status_treat *prStatusTimeout; /* 状态超时的时候的下一个状态 */ long lStatusKeep; /* 状态最大持续时间,单位秒 */ } TStatusTreat;

状态表结构:

typedef struct t_status_info {

TStatusTreat *prCurrStatus; /* 指向当前状态的位置,NULL表示本记录为空 */ time_t tStatusStart; /* 状态开始时间 */ long lStatusKeep; /* 状态最大持续时间,单位秒;如果此项为0,则使用prCurrStatus所指向的TstatusTreat结构中的lStatusKeep作为状态最大持续时间。此项主要用于在运行过程中需要动态调整状态持续时间的控制,如在放音结束后等待用户按键的等待时间。 */

void *prDataInfo; /* 指向保存数据信息的位置 */ void *prCommandInfo; /* 保存命令信息,由状态程序控制空间申请和释放 */ } TStatusInfo;

5.1.2. 通道相关结构

typedef struct t_channel_info { /* 以下是基本不变的信息 */

int nUsed; /* 是否可用:0-未配置,1-用作电路,2-用作其他用途,如同步、信令等 */ int nCid; /* 系统内部的电路号 */

int nSigNodeId; /* 控制的信令网关的节点号 */ long lPeerSigCode; /* 对端信令点码 */ TResourceCode rResrc; int nSpan, nChan; /* 中继号、通道号,由信令模块维护和电路号的对应 */ long lDialInform; /* 通道信息标志,以位控制,参见下面的说明 */

/* 以下是每次呼叫过程中相关的信息 */

char sCaller[MaxPhoneNbrSize]; /* 主叫号码 */ char sCalled[MaxPhoneNbrSize]; /* 最终被叫号码 */ char sMiddle[MaxPhoneNbrSize]; /* 原始被叫号码 */ time_t tCallStart, /* 接续开始时间 */

tCallAnswer, /* 摘机时间,未接通,则该项为0 */ tCallStop; /* 挂机时间(用户或者CCM任何一方开始挂机的时间),0-未挂机 */ long lDialInform; /* 呼叫信息标志,以位控制,参见下面的说明 */

int nOtherCid; /* 该电路所对应的另一个电路,-1-没有,>=0-对方电路号 */ int nDialResult; /* 接续结果:呼入情况下为0,呼出情况下为具体呼出结果 */ int nRunResult; /* 普通命令运行结果 */

unsigned short int ushReqId; /* 保存CCM的申请号 */ } TChannelInfo;

表 5-1通道信息标志 31 30 29 28 27 …… 4 3 2 1 0 位 取值说明 0 0-对方主控,1-系统主控

表 5-2呼叫信息标志 31 30 29 28 27 …… 4 3 2 1 0 位 1 保留 ~ 31 取值说明 位 0 1 2 3 4 5 6 取值说明 1-已经占用 0-用户呼入,1-系统呼出 1-用户挂机 1-系统挂机 1-正在会议中 (位4为1才有意义)1-会议中发言状态;0-会议中单听状态 1-正在放音 位 7 8 9 10 11 12 ~ 31 取值说明 1-正在录音 退出会议 停止放音 停止录音 正在取键 保留 5.1.3. 路由控制相关结构

#define MacMaxRouteSpanSize 1024 typedef struct t_trunk_set_cfg {

int nSpanCnt; /* 此中继群下的中继个数,0表示本记录无效 */ int n1Span[MacMaxRouteSpanSize]; /* 此中继群下的中继编号 */ int nThisOffset; /* 本次分配的中继将在上述中继群中的位置 */ } TTrunkSetCfg;

#define MacMaxRouteValueSize 8 typedef struct t_route_cfg {

int nRouteCnt; /* 路由策略的值的个数,0表示本记录无效 */

int n1RouteValue[MacMaxRouteValueSize]; /* 路由策略的值,多个值为一个组合 */ int nTrunkSetOffset; /* 中继群编号,中继群组中的数组下标 */ } TRouteCfg;

5.2. 处理逻辑

先读入配置文件中的静态配置部分; 然后进入主循环。 主循环中:

先收取所有上层信息,进行处理;

然后收取所有Excel交换机的信息,进行处理; 然后进行状态超时判断,进行处理。

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库EXCEL程序详细设计 - 图文(8)在线全文阅读。

EXCEL程序详细设计 - 图文(8).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/513565.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: