UMX消息和待办事宜类型之间的转换方式
UMX消息是供应宝系统通信单元,每种消息由(消息域,消息类型,消息ID)识别。
功能通过UMX消息交互序列实现。
一种UMX消息可用来实现不同的功能。UMX消息和功能没有一一对应关系。
待办事宜是一种应用功能,支持分类。
待办事宜可以是:
.一个转发的消息
.一个关联记录(如一张待处理单据,一份待阅读公告).
使用说明:
.一种消息只会生成一种待办事宜
.应用插件可以根据消息的内容决定生成的待办事宜类型和提示信息
///< 待办事宜转换器接口
class ITodoCvt{
public:
virtual int Add(CQQ_MSGTYPE msgtype,CQQ_MSGID msgid,TodoCvtFunc fp,CQQ_DOMAIN domain=0) = 0; ///< 增加一种消息映射
virtual int Remove(CQQ_MSGTYPE msgtype,CQQ_MSGID msgid,CQQ_DOMAIN domain=0) = 0; ///< 删除一种消息映射
};
应用示例
int TodoCvt(CMsg *msg,CSEMQTodoItem *tdi) {
::MSGTYPE msgtype = msg->GetMsgType();
::MSGID msgid = msg->GetMsgID();
CQQ_DOMAIN domain = msg->GetDomain();
if (msgtype==MT_INDICATION&&msgid==1103&&domain==0) { ///< 离线消息
tdi->todo_rootclass_ = WP_TODOTYPE_OFFMSG;
}
else if (msgtype==MT_INDICATION&&msgid==1231&&domain==0) { ///< 公告
const char *szTitle = msg->GetParam("Notice_title"); ///< 公告只能以机构名义发布
const char *szOrgID = msg->GetParam("Pub_orgid");
const char *szOrgName = msg->GetParam("Pub_OrgName");
tdi->todo_title_ = LogMsg("您接收到了一条来自%s(%s)的公告,%s",szOrgName,szOrgID,szTitle);
tdi->todo_rootclass_ = WP_TODOTYPE_NOTICE;
}
return 0;
}
int CBBoxPlugin::Prepare() {
parent::Prepare();
...
///< 为需要生成待办事宜的消息指定转换函数
TODO_CVT::instance()->Add(MT_INDICATION,1103,TodoCvt); ///< 离线消息转待办事宜
TODO_CVT::instance()->Add(MT_INDICATION,1231,TodoCvt); ///< 公告通知转待办事宜
...
return 0;
}
UMX消息和待办事宜类型之间的转换方式相关推荐
- 自学Python第二十二天- Django框架(三) AJAX、文件上传、POST 请求类型之间的转换、多APP开发、iframe、验证码、分页器、类视图、中间件、信号、日志、缓存、celery异步
Django官方文档 django 使用 AJAX django 项目中也可以使用 ajax 技术 前端 前端和其他 web 框架一样,需要注意的是,django 接收 POST 请求时,需要 csr ...
- strconv---用来基本类型之间的转换
strconv---用来基本类型之间的转换 字符串转int:Atoi(s string)(i int,err error) int转字符串: Itoa(i int)string string转换为对应 ...
- mysql time类型转换_mysql8 参考手册--Date日期和Time时间类型之间的转换
在某种程度上,您可以将值从一种时间类型转换为另一种时间类型.但是,价值可能会有所变化或信息丢失.在所有情况下,时间类型之间的转换都取决于结果类型的有效值范围.例如,尽管 DATE, DATETIME和 ...
- c语言 字符转int型,C语言—类型之间的转换
原标题:C语言-类型之间的转换 当混合不同类型的数据进行计算时,便会发生类型转换. 当不同类型的数据进行计算时,应首先将操作数转换成相同的数据类型,然后再进行计算. 类型转换有两种形式,即隐式类型转换 ...
- pythonDay5-基本语法-中文编码-多行语句连接-输入输出-个人名片制作-类型之间的转换-判断用户的年龄
python项目-Day5 pycharm快捷键 复制当前行ctrl+D 删除当前行ctrl+x 注释当前行ctrl+/ 多行注释"' "' 单行注释# 另起一行shift+ent ...
- javaScript基本数据类型与类型之间的转换
1.number类型(数值类型) number类型又分为整数类型(int),浮点型(float). 整数类型就是整数比如:1 ,30,90等 浮点数就是有小数的数比如:0.1,9.99,5.55555 ...
- java类型之间的转换_JAVA基本数据类型及之间的转换
一.数据类型 1.布尔型(boolean) :true/false,不可以以0或非0的数字代替:不能进行数据之间的转换. 2.整数类型 ** 整型默认为int型,而long类型表示的范围要超出int表 ...
- long(Long)与int(Integer)四种类型之间互相转换的方法分享
最近开发的项目,里面的金额比较大,经常有long型 ,int型,那么他们之间怎么转换呢? 下文笔者将一一道来,如下所示: 一.将long型转化为int型,此处的long型是基础类型: long a = ...
- 26.JavaScript对象和基础类型之间的转换、hint、Symbol.toPrimitive、toString、valueOf
文章目录 对象-基础类型转换 写在前面 对象类型转换规则 对象类型转换的结果 Hint String Number Default 转换需要的三个对象方法 Symbol.toPrimitive() t ...
最新文章
- react的安装使用
- pycharm 波浪线报绿 Typo: In word 'xxxx'(绿色波浪线)
- 三十三、自从我会了Python中的PIL,发现了其实超级简单
- ES10 可以使用几个新特性
- 用了都说好的SCI在线绘图工具来了~~~~~~~
- 软件中打开其他软件的方式
- html堆叠柱状图脚本,Highcharts 堆叠组柱形图
- radvd移植到arm交叉编译问题解决
- String、StringBuilder、StringBuffer 区别
- Ext.Net动态创建按钮-动态添加事件
- Red5边源服务器集群部署
- 银监计算机类 考试题库,银监会(计算机类)笔试资料-微观经济学试题库 .doc...
- 4.4 Hibernate高级功能
- WeCode在线少儿编程|为什么我们选择代码编程
- 16进制 颜色透明度
- 恩典时代集团与深圳植慧科技产业签署合作备忘录
- 7-11 特立独行的幸福 (25分)
- 假装写在了开头qwq
- python 采用to_csv保存数据不覆盖原有数据到文件中
- day07 c++复习 核心编程02 核心内容(1、友元 2、3、继承 )
热门文章
- 网络中的数据传输模式有哪些-镭速
- java提示OLE错误,java – 如何解决JXL错误:jxl.read.biff.BiffException:无法识别OLE流...
- S=S1 S2...Sn是一个长度为N的字符串,存放在一个数组中,编程将S改造之后输出:
- n 阶贝塞尔曲线计算公式实现
- onlyoffice docs 社区版部署(windows版)--使用于onlyoffice二次开发
- 阿里云与Intel开启“TOP游戏”云生态培育计划,共建精品游戏生态
- 全球26个主流视频网站全搞定,都可以用这个神器下载原版高清视频!
- 统计系列(三)利用Python进行参数估计
- Python统计学之样本和总体的关系
- 2021-2027全球与中国热成型塑料容器市场现状及未来发展趋势