|
杭州市食品安全信用
短信信息互动系统方案
一、系统概述 应系统需求的基于短信的手机短信服务系统,利用强大的移动通讯网络,实现让用户通过点播或订制方式,能够用手机安全地查询食品安全信用信息服务系统发布的信息,并能实现食品安全的实时短信报警通知相关管理人员。
系统的短信服务器可通过专线与短信网关连接,加强系统数据库的安全性。 二、系统功能设计 1、系统自动下发短信报警 短信能实现对食品销售经营中产生的预警信息及时进行群发报警。
如:将从超市等部门采集的商品信息与数据库中食品生产经营企业的信息进行比对,若有不明来源的商品,系统自动发送报警短信到通知相关人员。
向谁报警及是否报警可以通过系统提供的管理界面进行灵活配置. 同样,消费者查询商品信息时,若有违规食品,系统也可发送短信给相关人员进行报警,例如:当消费者输入商品条形码查询商品的真伪及其它有用信息时,若此食品属于违规食品,系统可以提醒消费者发送一条包含食品名称,生产厂家,购买地点与时间的短信给系统进行举报来获得一定奖励,系统接收到消费者的举报后,及时向相关部门的相关人员进行报警。
2、公众使用短信查询信息和定制短信服务系统提供使用短信的公众查询信息服务,让用户可以随时随地使用手机短信查询食品安全信用信息服务系统定期发布的的各种信息:
- 消费者,食品销售经营从业人员查询食品安全监管信息。
- 消费者,食品销售经营从业人员查询食品安全信用信息。
- 消费者,食品销售经营从业人员查询食品安全常识。
- 消费者,食品销售经营从业人员查询食品行业动态。
- 消费者,食品销售经营从业人员查询食品安全预警信息。
- 消费者,食品销售经营从业人员查询食品安全相关政策。
- 消费者,食品销售经营从业人员使用短信进行投诉。
用户可以单条发送短信到系统进行查询,也可以按照系统的提示进行信息服务定制,系统在满足下发条件的特定时间下发短信给定制的用户. 3、管理部门相关人员使用短信查询信息和定制短信服务系统为管理部门相关监管人员提供使用短信的查询信息服务,让监管人员可以随时随地使用手机短信查询各食品生产部门、食品销售、经营部门的各种信息及其它方便食品监管工作的信息。
如:监管人员需要感到某超市处理公务,却忘了某超市的地址,可以编辑发送短信:“查询地址:××超市”到系统中,系统通过解析短信文本得知,这是一条查询某生产销售部门地址的服务请求,系统首先根据发送短信的手机号码,到数据库中查询该用户是否有使用此项查询生产销售部门地址服务的权限,若有,则根据用户发送的“××超市”到数据库中进行查询并将查询结果返回给用户。
对一些敏感数据,系统在对用户手机号码进行鉴权的前提下,还可以设定查询的监管人员需要在短信中编辑输入密码。如上面的短信,可编辑为:“查询地址:××超市;密码:123456”,系统在确认密码无误后才进行“××超市”地址的查询,从而保护敏感数据不被非法获取。
三、技术实现 1、系统介绍系统主要由两大部分组成——SMSC(Short Message Service
Center)和SPAS(Service Provider Application
System)。SMSC服务系统我们不用过多考虑,它由移动公司提供实现和维护,并且技术成熟,只要做好基于SMPP协议(参见SMPP设计与实现、移动公司的短消息服务联网协议)的MO/MT信息流解析和编码接口即可。我们主要考虑SPAS部分的设计与实现。
我们应该做的SPAS部分有些什么?SPAS主要由MOMT守护服务、MOMT数据处理服务(信息登记服务、信息查询服务)、计费服务、计费统计查询、日志登记服务、日志统计查询、数据库服务组成。

SPAS结构图
考虑到系统工作效率以及日后系统扩展性和可维护性,在系统结构设计上尽量做到高内聚低偶合。
系统运行初期,由于用户数量少,信息交换量小,可以采用低成本系统运行,这样仅需要3至4台配置较高的普通PC机作为服务器:
- 1台服务器独立运行MOMT守护服务(短信网关);
- 1台服务器运行MOMT数据处理服务(业务处理服务器);
- 1台服务器运行计费服务、日志登记服务、计费分析查询系统、日志分析查询系统(管理服务器);
- 1台服务器运行数据库服务(数据库服务器)。
业务处理服务器和管理服务器可以合为一台PC机
随着系统客户数量和信息交换数量的不断增多,可以提高系统运行成本,这样需要8台普通配置的服务器及1台较高配置的PC机:
- 1台服务器独立运行MOMT守护服务;
- 1台服务器独立运行MOMT守护服务的信息登记服务;
- 1台服务器独立运行MOMT守护服务的信息查询服务;
- 1台服务器运行计费服务;
- 1台服务器运行日志登记服务;
- 1台普通PC运行计费、日志分析查询系统;
- 1台服务器运行数据库服务的信息数据库;
- 1台服务器运行数据库服务的计费数据库;
- 1台服务器运行数据库服务的日志数据库。
如果对系统效率有进一步要求,可以考虑提高服务器配置,各种MOMT数据处理服务、计费日志登记服务、数据库服务多副本运行在服务器阵列。
做好系统灾难恢复方案,以备系统灾难性事故导致系统服务暂停。本服务系统包含面向大众的服务性系统,出现停止服务现象,必将损害现有客户信心,丢失客户。而系统的设计结构又是多模块独立运行,所以要将不同系统运行期的各个服务所在服务器做备用服务,数据库服务器要双机热备。其中各个服务所在服务器备份要做到系统、网络、服务应用版本一致;数据库服务器要做到系统、网络、服务应用版本和数据内容一致,这样可以在不可预见系统灾难发生时,灵活及时地切换发生灾难部分的服务,确保系统不间断运行。
注: MO Mobile Original 移动用户发送短消息 MT
Mobile Terminal 移动用户接收短消息 SMPP Short Message
Peer to Peer 短消息点对点协议 SMG Short Message
Gateway ,SMG之间的通讯协议采用SGIP 2、MOMT守护服务MOMT守护服务是SPAS与SMSC的应用接口服务,以移动公司MOMT接口协议和SMPP协议解析和编码MOMT信息流,通过Socket(TCP/IP)与SMSC系统进行交互;通过信息交换目录与SPAS其它服务进行交互。
MOMT守护服务需要开启Socket端口监听,等待SMSC发送的MO信息流,将收到的MO信息流解析为SPAS
系统约定的信息交流格式,以文本文件形式写入系统信息交换目录,并以
SPAS系统命名规则命名,以备系统相关服务提取处理。 MOMT守护服务 
的MO处理
MOMT守护服务需要开启文件检索事件监控,如果发现SPAS信息交换目录存在SPAS约定文本文件名为要发送的MT文件,立即读入并编码,通过Socket服务发送到SMSC。这里需要指出,不同的移动公司处理发送短消息的服务不同,送出的MT有可能需要等待SMSC的发送成功或失败消息,并要根据不同结果进行处理。

MOMT守护服务的MT处理
从SPAS结构图中可以看出,MOMT守护服务在SPAS中处于交换频率很高的环节,它的效率与稳定直接影响到整个SPAS的运行质量,但它没有任何数据库服务访问要求。
MOMT守护服务在完成以上服务要求外,还要考虑以下方面:
- MOMT处理情况监视窗口,向系统管理员显示成功或失败提示;
- 灵活的系统设置,如:SMSC的SMG服务地址及端口、MOMT守护服务端口、信息交换服务目录路径等。
3、MOMT数据处理服务MOMT数据处理服务在SPAS中主要实现用户信息登记或查询等数据库服务处理、为计费服务提供计费信息、为日志登记服务提供日志信息。考虑到系统的数据库服务访问效率,将它分为MO数据处理服务和MT数据处理服务两部分。
MOMT数据处理服务读取符合SPAS中MO命名规则的文本文件,解析登记或查询信息内容或条件,做信息数据库SQL命令操作,然后将提交结果或查询结果进行信息编码,按照SPAS的MT格式和命名规则写入信息交换目录,以备MOMT守护服务处理。

MOMT数据处理服务
MOMT数据处理服务处于SPAS中间环节,数据库服务访问频繁。
MOMT数据处理服务在完成以上服务要求外,还要考虑以下方面: - MOMT数据处理情况监视窗口,向系统管理员显示成功或失败提示;
- 灵活的系统设置,如:数据库服务连接字符串、MOMT信息交换目录路径、计费服务和日志登记服务信息交换目录路径等。
4、MO数据处理服务从业务角度说,MO数据处理服务是MOMT数据处理服务的信息入口,它主要处理用户发布信息的数据库登记工作。与用户对信息的检索工作分离开,以提高系统的工作效率和可维护性。
MO数据处理服务开启MOMT信息交换目录的文件检索事件,如果发现符合SPAS约定命名的MO信息发布文本文件,立即读入并解析。
MO数据处理服务首先要对发布信息进行验证。解析后验证发布信息的SPAS约定要求,如格式、条目、信息单位长度、非法字符、时间等,并与信息非法内容关键词库进行匹配。信息验证后,如果符合要求,提交信息数据库,否则编码错误提示信息,按照SPAS的MT命名约定用文本文件形式写回MOMT信息交换目录,MOMT守护服务发送给用户。
信息验证通过提交数据库。如果提交成功,编码成功提示信息,如果提交失败,编码错误提示信息。然后将反馈信息按照SPAS的MT命名约定用文本文件形式写回MOMT信息交换目录,MOMT守护服务发送给用户。
处理完毕以上工作,将处理内容、结果编码计费和日志信息,按照SPAS的命名约定用文本文件形式,分别写入计费、日志登记信息交换目录,等待计费和日志登记服务处理。

MO数据处理服务工作流程
信息的发布有效期由用户发送发布信息短信时设定或由系统统一设定,大家商讨再定。
满足以上服务内容的同时,还要满足MOMT数据处理服务的全部功能要求。力求做到高效率、高扩展性和高可维护性。
5、MT数据处理服务从业务角度说,MO数据处理服务是MOMT数据处理服务的信息入口,那么,MT数据处理服务就是MOMT数据处理服务的信息出口了。它主要处理用户对已经发布的信息进行检索并返回结果的工作。
MO数据处理服务采用信息关键词检索方式查询用户所需要的信息。用户只需要在手机短信中输入需要信息的关键词或关键词组合,如:“安全监管信息”、“安全常识”、“行业动态”等,MO数据处理服务对信息数据库中信息的关键词进行模糊匹配操作,然后将符合匹配结果按照系统设定的返回结果条数,发送到用户手中。
采用信息关键词检索方式有以下几个方面的优势:
①、从用户角度考虑,减少了信息的复杂分类,可以使用户通过简单的短信更加容易找到需要的信息;
②、从公众服务获利角度考虑,可以提高用户的短信交换频率,提高移动公司与我们合作的信心。而我们并不会因此丢掉用户,因为我们是在有理由的提高短信交换率,模糊定位信息只有用户输入了确切的关键词,才可以得到符合自己需要的信息,如果不符合要求用户自然要重新输入他要查询信息的关键词。如:用户想查询食品安全常识,他也许第一次没有输入任何查询关键词直接发送了,系统则返回服务菜单给用户,用户为了可以定位到更加准确的信息集合,自然会按服务菜单提示输入查询关键词“食品安全常识”,然后再次发送查询短信,系统就很顺理成章的提高了短信的交换率。
③、由于短信受到信息长度限制,所以我们可以按需要对查询结果集合做有一定数量的随即抽取返回,这样也很顺理成章,用户也会理解,相反一次用户的查询却受到上百条的查询结果短消息,用户可真的要叫苦了。这样做用户即使输入了他满意的查询关键词,得到了他满意的查询信息,他为了得到更多的结果,他要多次发送查询短信,所以我们的短信交换率自然就提高了。
④、可以将用户输入的查询关键词同非法关键词库进行匹配,如果发现用户的查询条件中存在非法关键词,中断本次查询。这样可以提高系统的安全性和内容的合法性。
简单地说,我们要在为客户着想的同时提高我们系统的短信交换率。而MT数据处理服务可以做到。
MT数据处理服务开启MOMT信息交换目录的文件检索事件,如果发现符合SPAS约定命名的MO信息发布文本文件,立即读入并解析。
MO数据处理服务首先要对发布信息进行验证。解析后验证查询信息的SPAS约定要求,如果符合要求,以此为匹配条件做信息数据库匹配,然后将匹配的信息集合抽取一定数量,编码信息并按照SPAS的MT命名约定用文本文件形式写回MOMT信息交换目录,MOMT守护服务发送给用户。如果查询失败或返回0结果,要编码提示信息,并按照SPAS的MT命名约定用文本文件形式写回MOMT信息交换目录,MOMT守护服务发送给用户。
对用户定制按时或按发送条件下发的服务,按照用户定制时所输入的定制服务内容进行主动下发。
处理完毕以上工作,将处理内容、结果编码计费和日志信息,按照SPAS的计费和日志命名约定用文本文件形式,分别写入计费和日志登记信息交换目录,等待计费和日志登记服务处理。

MT数据处理服务工作流程
满足以上服务内容的同时,还要满足MOMT数据处理服务的全部功能要求。力求做到高效率、高扩展和可维护。 |