文档章节

OSV3改版——消息改版(会话)

钟良
 钟良
发布于 2016/07/07 09:18
字数 1367
阅读 19
收藏 0

1、消息需求:

  • 消息以会话的形式展现;
  • (类型)会话类型包括标题、类型标识、logo;
  • (类型)有一个公共的会话类型“系统消息”;
  • (类型)开发者可以自己定义会话类型;
  • (类型)每个模块都有默认会话类型。标识用模块标识,标题用模块名,logo用模块logo;
  • (类型)类型列表展示的时候有先后顺序,并且,当前类型有会话时排在前面; 
  • (类型)开发者可以专门为某种会话类型设置列表模板;
  • (消息)开发者可以专门为某种消息类型设置消息模板;
  • (类型、消息)模板有默认,未设置时使用;

2、全部会话类型设计:    

  •     会话类型存放到文件中;
  •     公共会话类型放到./Application/Common/Conf/message_type.php;
  •     模块会话类型放到./Application/[ModelName]/Conf/message_type.php;
  •     没有message_type.php文件的,生成一个模块类型的会话;
  •     全部会话类型获取方式:get_all_message_session(),其返回结果是会话类型列表。每种类型含有name、title、logo、sort(选填,用于排序,可选值为0~1000;对于有消息的类型,sort值会增加1000从而将其排在前面)、block_tpl(选填,用于设置会话列表样式模板)。
  •     block_tpl填写的模板文件位置为./Application/[ModelName]/View/default/MessageTpl/block/
  •     block_tpl的模板文件为./Application/Common/View/default/MessageTpl/tpl/_message_block.html
  •     公共会话类型logo存放文件夹为./Public/images/message_logo/
  •     模块会话类型logo存放文件夹为./Application/[ModelName]/Static/images/message_logo/
  •     模块lago存放到文件夹./Application/[ModelName]/Static/images/中,名字为module-logo.png

3、会话消息模板设计

  •     消息模板类型存放到文件中;
  •     公共模板类型放到./Application/Common/Conf/message_type.php
  •     模块模板类型放到./Application/[ModelName]/Conf/message_type.php
  •     全部消息模板获取方式:get_message_tpl(),其返回结果是消息模板列表。每个模板含有name、title、module、tpl_name(模板文件除后缀部分)、example_content(消息内容模板)。
  •     tpl_name 公共消息模板放到./Application/Common/View/default/MessageTpl/tpl/
  •     tpl_name 模块消息模板放到./Application/[ModelName]/View/default/MessageTpl/tpl/
  •     tpl_name 默认消息模板文件为./Application/Common/View/default/MessageTpl/tpl/_message_li.html   

4、会话类型开发手册

公共会话类型开发:

  1. 首先打开文件./Application/Common/Conf/message_config.php
  2. 可以看到如下所示内容:其中session中的即为当前系统中的会话类型
  3. 在上图红框部分添加会话类型的数组信息(name、title、logo、[sort]、[block_tpl])name为''表示模块会话,用于覆盖自动生成的模块会话
  4. 将会话类型的logo放到文件夹./Public/images/message_logo/下
  5. 如果会话类型需要单独的列表模板,将列表模板文件放到文件夹./Application/Common/View/default/MessageTpl/block/下
  6. 经过上面的步骤后,就可以发送这种类型的会话了。
  7. 这时候去后台重置会话类型列表,就能看到新添加的会话类型了。
  8. 使用方法为,send_message()和send_message_without_check_self()的参数$type写为"Common_[新加类型的name]",若name为空,则为"Common"

模块会话类型开发:(模块用[module]代替)

  1. 首先打开文件./Application/[module]/Conf/message_config.php
  2. 可以看到如下所示内容:其中session中的即为当前系统中的会话类型 
  3. 在上图红框部分添加会话类型的数组信息(name、title、logo、[sort]、[block_tpl])name为''表示模块会话,用于覆盖自动生成的模块会话
  4. 将会话类型的logo放到文件夹./Application/[module]/Static/images/message_logo/
  5. 如果会话类型需要单独的列表模板,将列表模板文件放到文件夹./Application/[module]/View/default/MessageTpl/block/
  6. 经过上面的步骤后,就可以发送这种类型的会话了。
  7. 这时候去后台重置会话类型列表,就能看到新添加的会话类型了。
  8. 使用方法为,send_message()和send_message_without_check_self()的参数$type写为"[module]_[新加类型的name]",若name为空,则为"[module]"

 5、OSV3会话——消息模板开发手册

公共消息模板开发:

  1. 首先打开文件./Application/Common/Conf/message_config.php
  2. 可以看到如下所示内容:其中tpl中的即为当前系统中的消息模板
  3. 在上图红框部分添加消息模板的数组信息(name、title、module、tpl_name、example_content
  4. 将模板文件放到文件夹./Application/Common/View/default/MessageTpl/tpl/
  5. 经过上面的步骤后,就可以发送需要使用这种消息模板渲染的消息了。
  6. 这时候去后台重置消息模板列表,就能看到新添加的消息模板了。
  7. 使用方法为,send_message()和send_message_without_check_self()的参数$tpl写为"Common_[新加模板的name]",$contentexample_content的格式


模块消息模板开发:(模块用[module]代替)

  1. 首先打开文件./Application/[module]/Conf/message_config.php
  2. 可以看到如下所示内容:其中tpl中的即为当前系统中的消息模板
  3. 在上图红框部分添加消息模板的数组信息(name、title、module、tpl_name、example_content
  4. 将模板文件放到文件夹./Application/[module]/View/default/MessageTpl/tpl/
  5. 经过上面的步骤后,就可以发送需要使用这种消息模板渲染的消息了。
  6. 这时候去后台重置消息模板列表,就能看到新添加的消息模板了。
  7. 使用方法为,send_message()和send_message_without_check_self()的参数$tpl写为"Common_[新加模板的name]",$contentexample_content的格式

© 著作权归作者所有

钟良
粉丝 8
博文 97
码字总数 32920
作品 0
嘉兴
CTO(技术副总裁)
私信 提问
51CTO博客改版日记(目录) 2006年 by小废

每次翻来看,都想:是我写的啊?嗯,写得真好~(此处应有嘘声) 十年之后,博客又迎来了新一次的改版,谨以此文,辞旧迎新。 ·[原创] 博客改版日记(9.1)——喜新厌旧的情绪高涨 2006-09-01...

小废物
2018/06/29
0
0
公司网站重建的问题求教!

想对公司网站进行重构,或重建,也就是全面重做,请教几个问题—— 1 使用老域名,使用新空间,公司名称不变,产品信息等变化不大,网站全部重做,这种情况算网站改版吗?如果算,怎样避免百...

从容自在
2013/05/08
431
6
企业网站改版一般大概费用需要多少钱?公司官网改版注意什么问题和哪些事项?

互联网行业如今已经发展好些年了,越来越多的中小企业官网也已建设多年,随着互联网+的发展,早几年前的公司网站已经远远不能满足现在互联网用户的需求和体验,不能很好的宣传企业在网上的品...

wqyxsj
2018/05/28
0
0
OpenSNS V5.2.0 发布,改进消息系统,微社区支持公告

【概览】 PC端及内核改进: 本次重点改进了消息系统,增加了对全局消息的模板支持,本次更新之后开发者可以调用新的模板消息机制,模板消息机制支持对站内消息、短信、邮件三种格式的模板定义...

想天软件奕潇
2017/09/29
714
4
《IT项目管理新发展》大型公开讲座——天津站

软考,中国著名的IT考试品牌,紧跟IT时代飞速发展的步伐! 2011年全国考生超过300万,16年中级教程改版,17年高级教程改版。 17年软考列入人社部公布国家职业资格目录,形成评价软件人才体系...

光环国际-项目管理顾问
2017/11/15
3
0

没有更多内容

加载失败,请刷新页面

加载更多

3_数组

3_数组

行者终成事
35分钟前
7
0
经典系统设计面试题解析:如何设计TinyURL(二)

原文链接:https://www.educative.io/courses/grokking-the-system-design-interview/m2ygV4E81AR 编者注:本文以一道经典的系统设计面试题:《如何设计TinyURL》的参考答案和解析为例,帮助...

APEMESH
今天
7
0
使用logstash同步MySQL数据到ES

概述   在生成业务常有将MySQL数据同步到ES的需求,如果需要很高的定制化,往往需要开发同步程序用于处理数据。但没有特殊业务需求,官方提供的logstash就很有优势了。   在使用logstas...

zxiaofan666
今天
10
0
X-MSG-IM-分布式信令跟踪能力

经过一周多的鏖战, X-MSG-IM的分布式信令跟踪能力已基本具备, 特点是: 实时. 只有要RX/TX就会实时产生信令跟踪事件, 先入kafka, 再入influxdb待查. 同时提供实时sub/pub接口. 完备. 可以完整...

dev5
今天
7
0
OpenJDK之CyclicBarrier

OpenJDK8,本人看的是openJDK。以前就看过,只是经常忘记,所以记录下 图1 CyclicBarrier是Doug Lea在JDK1.5中引入的,作用就不详细描述了,主要有如下俩个方法使用: await()方法,如果当前线...

克虏伯
今天
8
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部