客户端系统

2024-05-14

客户端系统(精选十篇)

客户端系统 篇1

随着智能手机等移动终端的普及,越来越多的人喜欢用手机上网,这样可以跨越时间、地点的限制。据统计,我国当今手机网民已经突破5亿,越来越多的网民通过移动终端来获取新闻资讯,如果没有针对移动终端的专用网站或者专门为移动终端设计的新闻页面,势必给网民带来很多的不便。为了给移动终端用户更好的使用体验,嘉兴日报报业传媒集团自主设计、开发了新闻系统移动客户端,自动分析、抓取嘉兴在线新闻网站中多个栏目下的新闻页面,保留新闻内容,下载新闻图片并自动生成小图、中图,去除广告等冗余信息,自动生成适合在移动终端查看的Web页面文件。

2 移动客户端现状与发展趋势

智能手机的发展主要是从2009年到现在,未来也会进一步发展。智能手机的用户群已经历了创新者和早期采用者两个阶段,智能手机全球比例接近60%,目前正处在早期大众阶段。一个新产品类型从诞生到消亡,与用户使用规模是密切相关的,苹果和三星在用户定位上存在差别,获得利润的方式和时间阶段也不同。

中国的智能手机操作系统市场也在发生着变化。根据最新的移动通信消费者指数所描述的信息,到今年5月,安卓在中国大部分智能手机市场占有率达到了56%,由此可以看出中国智能手机操作系统的市场占有率发生了巨大变化。目前随着苹果5和苹果5s手机的流行,苹果IOS系统与安卓系统瓜分中国智能手机操作系统市场。

传统的适用于PC的网页,在移动终端上浏览起来内容太过繁杂,不仅包括了新闻,还包含了广告等冗余元素,使得本来就不是很大的屏幕要显示很多的内容,浏览起来很不方便;导致移动终端在访问时消耗了太多的流量。

3 开发内容与关键技术

3.1 页面分析、抓取系统

WAP页面自动生成系统,自动分析、抓取嘉兴在线新闻网站中多个栏目下的新闻页面,保留新闻内容,下载新闻图片,去除广告等冗余信息,自动增量生成适合在移动终端查看的Web页面文件。该系统由3个主要文件组成:主程序(parserCnjxol_WeiXin.exe)+两个配置文件(parserCnjx ol_WeiXin.exe.config、newsgroupconfig.xml)。主程序需要两个配置文件提供足够的信息才能完成数据的抓取。parserCnjx ol_WeiXin.exe.config文件中设置了两次抓取的间隔时间、小图中图的尺寸信息以及生成的html文件中图片的宽度信息等。newsgroupconfig.xml文件中配置了需要抓取的新闻栏目信息。由于系统采用外部配置文件的方式对需要抓取的新闻栏目信息进行设置,这大大增加了程序的灵活性。有了上述两个配置文件的紧密配合,主程序就可以自动地、在没有人工干预的情况下抓取新闻数据了。

主程序从newsgroupconfig.xml文件中读取一个新闻栏目的信息,包括栏目URL地址、采集新闻的数量等信息,接下来对这个栏目下的新闻数据进行抓取。嘉兴在线每个新闻栏目都有一个对应的新闻列表页面,主要是根据这个页面中的内容进行分析、抓取并生成WAP页面文件。每个栏目在抓取成功后会自动生成一个新闻列表xml文件。为了尽量节约系统的资源,避免重复下载图片等数据,实现了新闻数据的增量抓取。每次抓取时先将新闻列表xml文件中的内容读取出来备用,然后将新闻列表页的源文件保存在一个字符串变量中,接下来使用正则表达式进行精确匹配,取得需要的新闻标题、URL地址、日期等信息,将新取得的新闻URL地址与事先读取的新闻列表中的新闻URL进行比较。比较会有两种结果,一种新闻列表中有相同的记录,一种则相反没有相同的记录。如果有相同的记录,则证明这条新闻已经抓取过,直接使用新闻列表中记录的信息;如果没有相同的记录,则证明这是一条没有抓取过的新闻,要对新闻页面进行分析,取得新闻内容,下载新闻图片并生成小图、中图,最终生成新闻WAP页面文件,并将这些信息保存在新闻列表xml文件中。每次抓取完成时,系统都会自动清除过期的数据。所有上述工作都是系统定时自动完成的,无须人工干预,极大地节省了人力成本。

3.2 移动平台展示系统

页面分析、抓取系统生成的xml文件和jpg图片文件需要通过移动平台展示系统显示给手机终端用户(如图1所示)。程序使用Repeater控件对xml文件中的新闻列表进行顺序读取,直至最后一条结束。Repeater控件是一个数据绑定容器控件,用于生成各个子项的列表,这些子项的显示方式可以完全由编程者自己编写。当控件所在页面运行时,该控件根据数据源中数据行的数量重复模板中所定义的数据显示格式,编程者可以完全把握数据的显示布局,如使用div元素、ul元素等。

如果是图片新闻,显示大图,点击进入新闻内容详细页面。如果新闻内容中有图片,显示第一张图片的小图、新闻标题和稿件日期,点击进入新闻内容详细页面。如果新闻内容中没有图片,只显示新闻标题和稿件日期,点击进入新闻内容详细页面。

为了提高移动平台展示系统的安全性,程序中对xml文件的来源地址进行判断。只有www.cnjxol.com网站下的xml文件才能正常运行浏览。

部分程序代码如下:

4 结语

嘉兴在线新闻系统移动客户端通过自动分析、抓取网站中多个栏目下的新闻页面,提高了新闻页面的访问速度和安全性。并且无须人工干预,极大地节省了人力成本。接下来我们准备在这个系统中增加天气预报、车票预订、股票查询、抽奖等便民服务栏目,使嘉兴在线移动客户端更具有吸引力。

摘要:随着智能手机等移动终端的普及,越来越多的人喜欢用手机上网,这样可以跨越时间、地点的限制。为了给移动终端用户更好的使用体验,嘉兴日报报业传媒集团自主设计、开发了新闻系统移动客户端,自动分析、抓取嘉兴在线新闻网站中多个栏目下的新闻页面,保留新闻内容,下载新闻图片并自动生成小图、中图,去除广告等冗余信息,自动生成适合在移动终端查看的Web页面文件。苹果系统和安卓系统智能手机直接快速高效地浏览嘉兴在线网站的新闻资讯。

关键词:嘉兴在线,自动采集,移动终端

参考文献

[1]官建文,王棋.移动客户端:平面媒体转型再造的新机遇[J].新闻战线,2011,(09).

[2]竹子俊.智能手机市场再掀波澜[J].中国对外贸易,2013,(9).

[3]安华萍,贾宗璞.3G移动网络的安全问题[J].科学技术与工程,2005,(6).

客户端系统 篇2

一、通知系统定义

通知系统,顾名思义即通知信息的传达处理系统。目的是为了让用户获得需要得到的消息及提醒并进行处理。

这里的“需要得到”有两层意思: 1、用户彼此互动触发的信息流(留言、评论或者回复、私信等) 2、网站希望用户了解关注的信息(系统公告等)

通知系统设计的原则可简单的归纳为: 1、消息传播效率最高(获取、处理、信息传达、用户反馈等效率) 2、避免产生骚扰(噪音、频繁提示)

二、通知分类

不用的平台和产品本身由于对业务的需求不一样,种类也是有区别的。

大致可分为以下几种:

三、通知逻辑实现机制

通知的逻辑精简后如下:

现对这几个环节分开说明:

(一)通知合并

通知在推送之前需要进行汇总合并,目的在于提高消息传播处理效率;减少骚扰,降低噪音;平衡服务器压力。

1)合并周期:

固定时间内的消息全部汇总(24小时内/30天等);

无固定时间(只要未处理/未读即汇总)

当然一般都组合着用:合并24小时内未处理消息

2)分类合并

同种类进行合并(如n条留言合并为1条)

同一发起人合并(如张三给你发来的n条私信)

同一时间周期合并(如24小时共收到n条评论)

(二)通知分发

通知按照规则汇总完成后,系统将其通过通知管道推送到用户,以便用户处理。

1)分发方式

分发方式与Feed系统类似,多采用Push方式,即在指定时间内主动推送给用户。部分特定类型需要用户请求(Pull)拉取未读消息。

目前大部分通知优先推送未处理通知合并后的总数,已提醒用户已有新消息需要处理。用户点击数字后再去服务端请求具体的消息内容。此种方式综合考虑了成本、压力和体验。当然,某些极端情况下需要进行优化处理:如未读消息超过1000,用户请求时先推送前50条或者放入cache中等。技术童鞋会有各种手段,这里不做详述。

2)分发频率(时间)

分发时间主要根据消息的优先级来做区隔:

3)分发管道

分发管道即消息通知的具体推送渠道,根据业务类型可以分为:Web、App、短信、邮件等。

(三)用户处理

根据前文提到的分发方式,对于通知的处理在逻辑上可以分为两层:通知状态的处理和通知内容的处理。

1)状态的处理狭义的理解即为是否已读(已处理)。

通常初始数字即为系统推送过来的未读总量,用户点击数字进入相关功能列表查阅后,读取的动作完成,未读数字相应减少。

有几种情况需要变通处理:

若用户未读信息较多(m=100),但第一页列表只能显示(n=10)条的话,那未读数字即为m-n=90;

某些产品会将点击等同于已读。即用户只要点击无论是否打开列表查看均认为已读。

这样的处理一般用于重要级别较低的消息。点击即已读可有效降低骚扰。

某些重要级别较高的消息已处理状态可以定义为用户进行相关操作后才为已处理,而非查阅。

如用户进行评论、回复、点击忽略或点击删除等动作时才认为已处理,

2)内容的处理狭义的理解即为用户是否操作。

根据不同消息的种类和业务的需要,操作可分为:

处理:用户必须点击功能链接进行处理。如:你的密码过于简单,点此进行修改;

回复:如回复私信,对评论进行回复;

确认:对消息做出确认的反馈,如某些系统提示可设置”我已知道,不再提示”的选项;

忽略:用户进行忽略操作或不进行任何操作;

删除:用户删除本消息。

3)消息处理后的状态需要统一。

消息需要标记是否已处理的状态,且状态在不同的终端是打通的。

如:用户在客户端对消息进行了查看,在web站点本消息应自动标记为已读状态。

(四)通知回收

回收主要针对用户已处理消息的操作。

用户之间触发的消息一般需要留档保存。

如评论/回复/留言/私信等。产品可提供选项询问用户是否超过一定周期自动清理。

在部分产品中,还需要考虑功能的优先级。

如解除好友关系或加入黑名单后自动将删除双方的私信记录。

系统触发的消息一般设置一定的回收删除时间。

如系统提醒、通知、公告等。过期后自动在产品里删除。物理上可以设置是否备份。

过期但用户未处理消息(用户长时间未登录但收到他人的回复)可以根据业务需求来处理。

如未读的私信/评论/回复永久保留等。重要未读消息可尝试二次推送或使用其他途径(邮箱、APP、短信等)通知。

四、通知的交互方式(已读未读)

注:具体的交互需要考虑本身业务特点和目标需求。特定业务可能需要强调,某些业务又需要考虑骚扰,故抛开具体情境本身谈交互是无耻的。

这里只针对一般的社区网站,描述一下个人所喜欢的交互方式。

1、新消息到达时提醒交互

当新消息到达时,可以使用以下提醒方式

标题闪动

声音提醒 新消息到达后自动触发声音

气泡+数字

新消息浮层

标示提示

弹窗 

2、消息处理

目前消息多采用当前触发、即时处理类似“所见即所得”的交互方式。  采用此方式的原有主要有: 1、消息通知位于全局导航,访问任何频道时都可保证及时收到新消息; 2、消息在浮层中处理完毕后,用户可继续进行之前的操作,不至于造成打扰; 3、因导航面积有限,需对消息种类进行统一整理和规划;(Facebook的分类为好友请求、私信、通知。) 4、提供历史记录(更多、全部消息)的入口(二级页面) 5、标记已读未读状态,处理好消息提醒数字的关系  五、防骚扰(打扰) 因消息本身业务性质,过多无用通知势必会造成噪音,打扰到用户。因此合理设置消息的通知频率和渠道,以防早上体验和效率上的损失。 1、提供通知频率和渠道的管理功能 如常见的邮件退订管理,消息通知类型管理。 

Facebook通知设置 编号 通知渠道 通知类型 1 在facebook(web) 你参与的动态 2 电子邮件(email) 挚友的动态 3 推送通知(app) 标签 4 短信通知(message) 群组动态 5 应用请求和动态 备注:通知渠道和通知类型可以结合在一起综合使用。 2、增加屏蔽功能 消息屏蔽功能在业务上应该属于第一条中通知类型管理,当业务模块较多且之前关联分散时,或者开放平台功能接入的第三方应用通知时,可使用屏蔽功能。  

3、结合权限体系 1、功能隐私设置 使用隐私设置界定具体的接收权限、范围等  2、结合黑名单功能 使用黑名单可屏蔽指定用户或关键词的具体消息通知。 

六、其他

1、消息拉回: 当用户长时间不登陆或对消息不处理时,可使用其他渠道推送通知,已达到拉回的目的。 标号 1 触发条件 1)用户长时间不登陆 2 2)长时间不处理消息 3 3)主要通知方式失效(被屏蔽或堵塞) 3 4)存在次要的通知方式 4 通知渠道 1)web 5 2)Email 6 3)短信 7 4)APP 8 备注 1)同步已读未读状态 9 2)拉回进行相关引导 10 3)控制频率和方式,防止造成骚扰

客户关系管理系统 篇3

从企业的长远利益出发,企业应保持并发展与客户的长期关系。双方越是相互了解和信任,交易越是容易实现,并可节约交易成本和时间,由过去逐次逐项的谈判交易发展成为例行的程序化交易。所有的企业都需要管理好自己的客户关系。随着CRM系统的推出,一种全新的“CRM营销”理念正逐渐形成。客户被作为一种宝贵的资源纳入到企业的经营发展中来了。

[关键词] 客户 管理

一、系统背景

市场经济的本质是竞争,作为新经济代表的互联网行业,实际上和传统经济一样,归根结底是服务的竞争,企业要想在瞬息万变的市场环境中立于不败之地必须依托现代化的管理思想和管理手段,有效地对企业的内部资源和外部资源进行整合,如今,先进的电脑网络和管理软件在企业的内部资源整合和外部资源的整合中都已经能大显身手,它们不仅改变了企业的管理和运营模式,也直接地影响到了企业竞争能力。

如果说在国内方兴未艾的ERP软件帮助企业理顺了内部的管理流程,为企业的发展打好了基础,那么CRM(Customer.Re1ationship.Management)的出现才真正使企业可全面观察其外部的客户资源,使企业的管理全面走向信息化,CRM可视为ERP发展的一个延伸,其共性突出地表现在供应链资源的管理上,ERP利用供应商那一端的资源,而CRM所实现的转变是更注重客户端的资源。CRM致力于提高客户满意空。回头率和客户忠诚,体现对客户的关怀。

二、C#技术介绍

C#语言自C/C++演变而来。但是,它现代、简单、完全面向对象和类型安全。如果您是C/C++程序员,学习曲线将会很平坦。许多C#语句直接借用您所喜爱的语言,包括表达式和操作符。假如不仔细看,简直会把它当成C++。关于C#最重要的一点:它是现代的编程语言。它简化和现代化了C++在类、名字空间、方法重载和异常处理等领域。屏弃了C++的复杂性,使它更易用、更少出错。对C#的易用有贡献的是减少了C++的一些特性,不再有宏、模板和多重继承。特别对企业开发者来说,上述功能只会产生更多的麻烦而不是效益。使编程更方便的新功能是严格的类型安全、版本控制、垃圾收集(garbage collect)等等。所有的这些功能的目标都是瞄准了开发面向组件的软件。

三、可行性分析

客户信息管理系统是一个服务性单位不可缺少的部分,它的内容对于单位的决策者和管理者来说都至关重要,所以客户信息管理系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理文件档案,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。

随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,使用计算机对客户信息进行管理,具有着手工管理所无法比拟的优点.例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高客户信息管理的效率,也是一个单位的科学化、正规化管理,与世界接轨的重要条件。因此,开发这样一套管理软件成为很有必要的事情。

四、系统设计

1.总体设计

(1)市场需求分析

现行的CRM软件还处于起步阶段,功能模块结构不尽相同,但是其基本的需求是一样的,其主要技术需求应包括四个方面。

①信息分析能力。CRM有大量客户和潜在客户的信息,企业应该充分的利用这些信息进行分析,使得决策者掌握的信息更加完全,从而能及时的作出决策。良好的商业情报是企业成功的一半。

②對客户互动渠道进行集成的能力。对多渠道进行集成与CRM解决方案的功能部件的集成是同等重要的。不管客户是与企业联系还是与销售人员联系,于客户互动都应该是无缝的、统一的、高效的。同一的渠道还能带来内部效益的提高。

③建设集中的信息仓库的能力。采用集中化的信息、实时的客户信息,可使各业务部门和功能模块间的信息能统一起来。

④对工作流进行集成的能力。工作量是指把相关文档和工作规则自动化安排给负责特定业务流程中特定步骤的人。CRM解决方案应具有较强的功能,为跨部门工作提供支持,使这些工作能动态的、无缝的集成。

(2)开发设计思想

①系统设计要遵循标准化、通用化、模块化的原则。

②系统应具有良好的安全保密性和较高的可靠性。

③操作方便,人机界面友好。

④代码具有良好的可读性,方便以后修改和功能扩充。

系统的设计思路是把整个系统按照实现模块进行分解,利用C#.NET进行编程根据其具体要求可以确定系统的基本功能模块。在整个客户管理系统中我主要负责事物计划,出差管理,客户信息,行政地区。

2.详细设计

(1)系统功能模块的划分如图

(2)系统部分功能模块的介绍

本系统需要完成的功能主要有以下几点:

出差计划与实施:基本信息包括出差人姓名,出差人编号,出差目的地,出差主题,出差计划内容,出差记录明细,执行时间与返回时间,出差计划的相关计划,出差记录列表等。出差计划与实施版块主要的作用是用与管理公司人员外出访问客户的。其中包括详细的出差计划内容,出差记录列表,和出差的相关事务列表。

报销单管理:基本信息包括报销单组列表,报销人姓名,报销金额,报销方式,报销单创建人等。该版块的主要作用是对公司人员在出差过程的相关业务开销和旅途开销进行统一的核对与管理,其中具体有员工自己填写的报销单组列表,其中包括相关的发票具体内容和其所对应的项目花费,在由员工提交报销单后由管理员用户对报销单进行审核,通过则给与相关的花费报销,不通过则不给与报销。

行政地区管理:基本信息包括行政级别,地名,地区名称,简称,备注等等。在本版快能查看到事物计划,出差计划,客户关系等相关内容。这个功能模块主要是对公司所涉及到的行政地区进行统一的管理与查询。主要侧重在查询方面。

事务计划及实施:在该版块可以看见事务的详细列表,可以查看详细的事务内容,包括事务主题,事务编号,事务类别。联系人,联系人电话,事务计划内容等等。该模块主要的用处是预先计划事务,制定事务。

五、国内外的现状

在当今诸多企业中有很多存在一个这样的问题,如何把分散在全国乃至全球的客户进行一个规范化管理,并且进行定期的对各个客户的访问,保持与客户的互动。在对客户的访问问题中又存在着企业员工出差访问的经费问题,包括住宿费用,车费,用餐费等,还有具体的访问时间问题等一系列的问题。这个如果处理不当,不单单会浪费大量的资金,而且也达不到公司计划的预计效果。竞争的压力越来越大。在产品质量、供货及时性等方面,很多企业已经没有多少潜力可挖。而上面的问题的改善将大大有利于企业竞争力的提高,有利于企业赢得新客户、保留老客户和提高客户利润贡献度。很多企业,特别是那些已经有了相当的管理基础和信息基础的企业来说,现在,这个时间已经来临了。随着网络经济的迅猛发展,人们的需求越来越个性化、多样化,而要求顾客长期忠诚于一个产品已不太现实。因此,对于最终客户需求的准确把握,特别是对需求变动的快速反应能力,已经成为提高企业竞争力的核心内容。

六、应对的解决方案

经过二十多年的发展,市场经济的观念已经深入人心。90年代末,随着全球经济一体化和知识经济的发展,客户个性化需求特征愈来愈明显,只有真正了解市场需要,最大满足客户需求的产品才能实现竞争优势。企业“以产品为中心”的模式向“以市场为中心”,“以客户为中心”的模式转移。正确、快速地处理与客户之间的沟通成为企业利润的主要源泉。企业管理的视觉从“内视型”向“外视型”转变。企业转换自己的视角“外向型”地整合内外部资源,从而提高企业的核心竞争力。此时产生了客户关系管理。客户信息是客户关系管理的基础。数据仓库、商业智能、知识发现等技术的发展,使得收集、整理、加工和利用客户信息的质量大大提高。

七、客户管理系统的发展前景

随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。管理信息系统是一个不断发展的新型学科,企业要生存要发展,要高效率地把企业活动有机地组织起来,就必须加强企业管理,即加强对企业内部的各种资源(人、财、物等)的有效管理,建立与自身特点相适应的管理信息系统。实际上,正如所有的“新”管理理论一样,客户关系管理绝不是什么新概念。它只是在新形势下获得了新内涵。你家门口的小吃店的老板会努力记住你喜欢吃辣这种信息,当你要一份炒面时,他会征询你的意见,要不要加辣椒。但如果你到一个大型的快餐店(譬如,这家店有300个座位)时,就不会得到这种待遇了,即使你每天都去一次。为什么呢?最重要的原因是,如果要识别每个客户,快餐店要搜集和处理的客户信息量是小吃店的n倍,超出了企业的信息搜集和处理能力。而信息技术的发展使得这种信息应用成为可能。在可以预期的将来,我國企业的通讯成本将会降低。这将推动互联网、电话的发展,进而推动呼叫中心的发展。网络和电话的结合,使得企业以统一的平台面对客户术上已逐步成熟。

八、结束语

进行客户关系管理能充分利用顾客资源,通过客户交流。建立客户档案和与客户合作等,可以从中获得大量针对性强、内容具体、有价值的市场信息,包括有关产品特性和性能。销售渠道、需求变动、潜在用户等,可以将其作为企业各种经营决策的重要依据。

参考文献:

[1]张青郭亚萍:C#编程思想与实践[M].北京:金工业出版社,2002

[2]王少锋:面向对象技术UML教程[M].北京:清华大学出版社,2OO4

[3]张海藩:软件工程导论(第3版)[M].北京:清华大学出版社,2002

[4]高艳秋:企业营销信息系统的研究[J].微型电脑应用,2002(9):30~32;50

[5]刘宏:集成化营销管理信息系统研究与没tt-[J].河北工业大学学报,2000(4):1O1~104

[6]周庆:基于C/S和B/S模式的远程销售信息管理系统的设计与实现[J].计算机应用研究.2002(5):97~100

[7]赵连军:基于CRM的企业销售管理信息系统[J].计算机应用研究,2004(7):153~154:164

HIS系统客户端软件自动更新实现 篇4

HIS系统在我院经历了近十年的建设, 已经建成覆盖医疗、经济、后勤、办公等方面的成熟网络, 客户端数量达到了千台以上, 医院各项业务开展需要信息系统的可靠运行作保障, 如何确保信息系统安全、高效、平稳运行成为医院信息科的核心工作, 而系统客户端的维护工作也成为信息科最繁重的工作之一。

HIS系统客户端软件基本上采用的是客户端/服务器 (client/server, C/S) 模式, C/S模式的软件与B/S模式软件相比较, 在更新升级方面明显存在不方便的特点。因为, 当软件需要更新时, 则需要专人到各个客户端去更新, 如果客户端不集中的话就相当费事, 不仅增加了维护难度和维护工作量, 而且降低了系统运行效率, 滞后了我院信息化的发展。所以, 解决C/S模式下HIS系统客户端软件的升级更新问题迫在眉睫。针对这一问题, 在C/S模式的HIS系统客户端软件中增加自动更新的功能, 这在强调速度和效率的今天显得尤为重要。

1设计思路

客户端软件在登录时自动获取ORACLE服务器上的相关HIS子系统文件信息列表, 包括文件名称、文件版本号、文件内容, 然后取出该文件版本号与本地客户端配置文件中版本号进行比较, 通过版本号判断文件是否需要升级更新, 如需要则自动下载升级更新文件至客户端程序中, 使客户端程序文件保持与服务器上新版本软件保持一致, 从而达到升级更新的目的。

本系统具有以下主要特点: (1) 客户端自动更新采用程序升级更新方式, 避免单独建立文件服务器, 有效的防止了病毒的入侵, 且配置简单, 使用方便, 升级更新过程自动完成; (2) 采用强制升级更新方式, 在主程序运行前就开始运行智能客户端程序, 确保了客户端软件版本最新; (3) 智能客户端升级完毕后, 将自动关闭, 不占用机器CPU时间和内存, 不影响HIS系统的运行效率。

2 应用软件同步更新实现

2.1 服务器上建立更新表在服务器端建立表

appversion (app_name varchar2 (20) ,

version number (3, 2) ,

notes varchar2 (60) ,

) ;

filegeneration (appname varchar2 (20) ,

filename varchar2 (20) ,

filedata blob,

) ;

2.2 配置文件修改

配置文件中增加相应的配置参数, Version代表新版本软件版本号。

[Version]

Version =3

2.3 主程序修改

在主程序中Open () 事件中增加以下语句

Integer lirtn

String lslocalinifile //INI文件

String lsLocalVersion, lsServerVersion //版本

String lsNotes //更新说明

appinfo.sysname =“outpdoct”//应用程序名

appinfo.ininame =“outpdoct.ini”//应用程序本地配置文件名

appinfo.copyright =“版权所有:解放军×××医院//版权信息

//取本地版本号

lslocalinifile = appinfo.ininame

lsLocalVersion = ProfileString (lslocalinifile, ‘Options’, ‘Version’, ”)

//取服务器版本号、更新说明

Select version, notes

into:lsServerVersion, lsNotes

from appversion

where appname=:appinfo.sysname

//版本比较

IF lsServerVersion > lsLocalVersion Then

lirtn = MessageBox (‘提示信息’, ‘服务器存在新的版本软件, 说明如下:~r~n“’ + &

lsNotes + ‘”~r~n’+‘是否更新软件?’, Exclamation!, YesNo! , 1 )

IF li_rtn = 2 Then //客户取消更新

goto i

Else //更新软件, 从服务器拷贝

Run (“update.exe outpdoct”)

Halt

End IF

Else

END IF

2.4 UPDATE更新模块和文件上传模块

为了增加程序的通用性, UPDATE更新模块设计采用编译成带参数入口运行模式, 在程序中只需用RUN () 函数调用即可, 调用模式为:

Run (“update.exe outpdoct”)

文件上传模块的主要功能是把新版本软件所要更新的文件以二进制形式保存到数据库中。

3 实现的应用价值

客户端系统 篇5

一、设置:

1)左侧结构框→系统管理→用户管理→用户权限(使用本系统默认设置,请勿

变动)

2)用户管理→密码修改→新密码→确认新密码→确定。

二、常规操作:

1)疫苗登记:左侧结构框→日常接种→导航栏→疫苗登记→新增→运转日期→温度→疫苗名称(下拉选项)→批号→厂家(下拉选项)→人份数→使用量(录入第二行时用Enter回车键)→保存→关闭。

2)建卡:导航栏→接种登记→建卡(在本辖区建卡,县一院出生的首针乙肝、卡介苗不建卡)→填写完成→确定(儿童编码自动产生)

3)数据备份:工具栏→数据维护→系统数据备份→欲备份文件路径(默认在D盘请勿变动)→确定→查找→我的电脑→D盘→cybermax→jhmy→backup→(查找到备份当前日期文件包)。

4)数据恢复:工具栏→数据维护→系统数据恢复→输入密码→确定→询问→是→(选中所需恢复文件,最近的备份文件)→选中→确定→恢复完毕。

三、日常操作:

1)已建卡儿童录入:导航栏→接种登记→查询→查询儿童姓名)→B返回→手工→手工录入方式→手工录入儿童疫苗接种→接种疫苗→地点→标记→批号→生产企业→医师→部位(同一时间不能在一个部位接种两次)→确定。

2)修改:接种登记→切换儿童资料→修改→保存→数据上传→上传(再次上传将替换掉前次上传的文件)。

3)文件上传国家数据库:导航栏→数据上传→上传(配置内容不可变动)。

4)查询:导航栏→接种登记→查询→重复条件设置→确定→查询。

解析电力客户服务系统的运营管理 篇6

【关键词】电力客户服务系统;运营;管理;考核

电力产业供大于求,行业竞争极其激烈,如何在激烈的市场竞争中求得发展,是电力企业一直关注的话题。硬件建设到软件建设双管齐下方能走稳走远。企业生产设备过硬是基础,是纵向发展的基本保障;人才和客户是企业横向壮大的资源,如何留住人才,如何发展人脉是关键,人才需要平台,人脉需要网络在一起,电力客户服务系统的开发和运营尤为重要,它为专业人才完善系统的及时的体统信息数据,它是客户联系企业解决问题的方便平台。快捷、易用、精准、科学的客户对服务的基本要求,电力客户服务系统的应用展现了企业的社会形象,完备的电力客户服务系统是电力企业品质值得信赖的重要标志,良好的员工素质是企业优良企业文化的展现。因此,规范服务标准,强化服务理念,提高服务质量势在必行。

1.电力客户服务系统的建设的必然性

从电力产业纵向发展角度看,是走向国际化、是在供电市场长足发展的需要;从电力产业横向发展角度看,是加强客户联系、改善客户关系、稳固客户源、开发新客户、提高同行竞争力的需要。

2.电力客户服务系统建设的基础和原则

基础是:客户服务信息系统的有效集成,以及电力信息网和通信的畅通。

原则是:“统一领导、统一规划、统一标准、统一功能”。

目标是:信息传递网络化、业务应用集成化,服务功能全面化,处理流程规范化。

要求是:积极稳妥,追求实效。

3.电力客户服务系统的信息管理

内容是:收集信息、分析信息,对信息进行整合;通过信息整合发现存在的问题、及时反馈、及时处理,提升服务水平,完善客户服务系统。要求是:收集信息准确、同类信息及时更新并存档。目的是:利于解决问题,维护企业信誉,提升服务品质。

4.电力客户服务系统业务规范

工作流程:受理业务-填写工单-答疑解惑。

注意事项:(1)受理业务时,态度要谦和,语气要平缓;遇到业务范围外的问题,要及时生成工单服务指令,发往相关部门,并在指定的期限内解决,并将处理结果或意见详细填写在工单上,客服人员依据工单答复客户,如果不能在限定的时间内解决,要及时告知客户并解释未能处理的缘由。

(2)及时更新数据,为客户提供准确的用电消耗、电价标准、停电预告和电力法则等相关信息,保证客户的知情权。

5.电力客户服务系统的运行管理

5.1网站运行管理

要在网站上发布相关的电力业务并及时更新,对网站上的信息要做到及时筛选和审查,网站的界面也应简洁,以便客户查找相关资料。网站应建设相关的投诉与业务问题反馈专栏,并与银行对接以升级网上支付业务。

5.2客户服务热线管理

(1)要加开服务热线,预防因为接入电话太多而造成的占线,使客户的业务得不到及时处理。根据不同的时段及时调整人员,不能出现服务热线闲置的状况,对这种状况要进行相应的处罚。

(2)接线人员上岗前要进行普通话、电力相关知识的培训并进行考核,考核通过后方能上岗。上岗时要统一着装并佩戴好工牌,体现企业形象。

(3)当业务出现问题时要实行问责制。接线员与客户的对话要全程录音,以保证、监督接线员的服务质量。

(4)要进行交接班的管理。首先交班人员未解决的问题要与接班人员做好交接,催办并加注处理意见,接班人员要予以核实,确保问题在期限内解决。其次,值班長要对值班中所处理的业务进行认真的记录与汇总,重要的工单要及时上交给上级进行处理。交接班工作中最重要的就是对之前业务进行再次汇总与分析,以确保业务处理得完善无遗漏。

6.电力客户服务系统的团队管理

团队是由员工和管理层组成的一个共同体,该共同体合理利用每一个成员的知识和技能协同工作,解决问题,达到共同的目标。因此,建立一个团结高效的团队,对电力客户服务系统的优化提升具有重要作用。

6.1提高电力客户服务人员的素质

在提高客服人员的素质方面,要做好定期的教育和培训,但培训不能只强调效率,还要兼顾到员工的学习与发展等多个层面。规范员工的服务态度和服务水平,要抽出时间进行考核并与工资挂钩,客服人员要学会营造友好的沟通氛围,语气平和且要有耐心,认真聆听客户的诉求并引导或帮助其解决问题。总之,要在不同的发展阶段及时对服务人员进行培训,加强其服务意识,提高其服务质量。

6.2建立高效的服务团队

如何才能建立一个高效的团队呢?团结合作是关键。首先在招聘员工时不仅要把重点放在招聘者的专业素养上,还要考察其团结协作的能力,是否能团结其他员工一起解决问题;其次,要有意识地培养员工的合作意识和相互信任,如专门组织团队活动让大家共同参与;然后,要缩小等级差别,让员工觉得彼此都是平等的,这样更利于员工发挥才能,促进高效团队的建设最后,管理者要管理、监督、指导客户服务的调度运行工作,负责客户服务调度中心对外规范化服务,协调本部门与其他部门的工作,保证工作渠道的畅通。

7.电力系统的考核

考核和监督有助于大家发现问题和不足,及时改正缺陷,同时也有利于激发大家工作的动力。电力系统的考核对象主要有员工、网络和接线系统。

7.1对员工的考核

(1)对员工电力知识水平和处理问题能力的考核。主要是考察员工的专业能力是否过硬,通过卷面的形式在每年年尾进行考核,对于不合格的员工要督促其提升专业知识水平,连续不合格的考生要进行相应的处罚。

(2)对员工实践经验的考核。主要是通过实际操作来完成的,考察的是员工实际处理问题的能力。考察标准可与平时的业绩挂钩,以提高员工对每天业务状况的重视程度。

(3)对管理人员的考核。管理人员是一个团队的核心,对管理人员的考核主要是为了考察其协调团队工作和对员工工作的安排及调度能力。考核内容也分实践和卷面2个方面,对于考核不过关的管理人员应要求其加强能力和知识的培训,长期不合格则由其他通过考核的人员担任其职务。对员工和管理人员的考核是为了让服务人员不断提高自身的能力,以适应不同时期的需要。

7.2对网络和接线系统的考核

对网络和接线系统的考核主要是为了找出技术上的漏洞,由专业人员定期对网络和接线系统进行检查,找出其中的缺陷和不完善的地方,对这些问题加以汇总,然后由相关的工作小组对问题加以分析和研究,并找出合适的解决办法。应将这一过程仔细记录下来,便于以后出现问题时找出问题之间的联系,这样可以进一步降低问题发生的几率,使电力系统更加完善和便捷,并提高客户的满意度,树立更加良好的企业形象。

8.结语

电力客户服务系统的应用,实时联系了客户和企业,为客户提供7×24小时电力服务,有利地促进了供电企业的“扩供促销”活动,真正实现了“快捷、易用、专业、优质”的客户服务。就电力客户服务系统自身而言,它是一个基于现代管理科学、通信技术、计算机技术的综合管理系统。它的发展和强大依赖于大家齐心协力共同推进服务质量和水平的提升。关键是要运用先进技术,所以我们要向国际先进技术看齐,并结合自身的实际情况对他国技术予以改进。

【参考文献】

[1]陈强.电力客户服务保障体系的建设探析[J].中华民居(下旬刊),2013(277).

客户端系统 篇7

在2G时代,手机主要用来通话和进行短信交流,但是在3G时代却完全不同,手机终端不再只是用来通话和收发信息,也不仅仅是上网,而是用手机终端完成各种应用。新一代移动终端用户对应用软件的多样性、易用性等方面提出了更高的要求,人们不仅期望所用的软件拥有强大的功能,更期望应用软件尽可能为他们提供一个轻松、愉快的操作环境。

随着3G应用的不断开发和推广,智能手机的不断普及和计算能力的提高,手机应用软件的更新、升级将会变得越来越简单。用户需要更加个性化的优质多媒体数据服务,希望能够随时、随地利用3G网络进行办公、游戏娱乐、欣赏影视节目、收听和下载音乐,开展基于手机的金融活动,如电子钱包、在线支付、在线贸易等。那么,如何满足用户不断增长的应用需求和期望,提高手机应用的效率,无疑将成为市场竞争的关键。手机客户端发布管理系统就是一个用于管理手机应用上传和下载的系统,目前已经成为手机应用开发的一个重要组成部分。

国外最为成功的手机应用软件发布管理系统当数苹果的AppStore。据苹果公司介绍,截至2010年7月15日,AppStore中各种应用程序的累计下载次数已突破15亿次[2],这得益于苹果革命性的互动体验和越来越普及的3G上网服务,i Phone(包括i Phone玩家论坛)成了最接近电脑的掌上互联设备。但是,作为拥有几万应用软件的系统,在AppStore上发布收费软件不是一件容易的事情。除了不能发布一些非法应用外,也无法发布一些诸如高性能多媒体播放器等冲击到i Phone自有功能的应用程序。从注册流程上来说,审查也较为严格。

在国内,中国移动等三大运营商纷纷开始建设手机应用软件发布管理系统。移动的Mobile Market己经正式推向市场,现在正处于市场前期的起步阶段。中国电信也推出了隶属天翼品牌的“天翼空间应用商城”的公测版。联通以上海分公司为基地加快了Wb Store(沃商城)建设。

本文针对金融和证券市场需求,重点分析了手机应用客户端发布管理系统的需求,给出了系统设计。我们将系统划分为前台和后台模块,前台模块面向手机用户,主要提供信息检索功能;后台模块面向系统管理员,提供检索、信息添加、修改和删除功能,还提供系统配置和操作日志功能。系统基于Java语言开发,采用了Struts框架、XML、Freemarker模板引擎、EXTJS框架等技术。

1 系统需求

对于面向金融和证券市场的IT公司,开发证券软件是其重要任务。目前,国内一些公司研发的“移动终端统一金融服务平台”已经构建成形,并在其基础上开发了多款手机软件。这些基于各种主流手机平台的炒股软件,极大地方便了股民。然而,能否安全、快速、有效地获取手机所需的客户端软件,日益成为手机炒股用户关注的重要课题。因此,构建手机应用客户端的下载管理与发布平台,显得尢为重要。WAP和WEB是用户下载安装手机客户端软件的基本手段,如何快速地构建WAP和WEB下载平台,并且能够集成到采用不同技术开发的企业门户网站中,是手机应用客户端发布管理平台的重要目标。另外,手机品牌、机型、操作系统平台多种多样,各种型号手机适用的客户端软件也不同,如何管理手机应用客户端与手机品牌、机型、操作系统平台的对应关系,如何根据手机的具体型号快速检索对应的手机客户端软件,是系统设计的关键。

因篇幅限制,本文仅给出了系统在手机品牌管理方面的需求,见表一。

2 系统设计

根据系统用户的类型,我们将手机应用客户端发布管理系统划分为两部分:前台模块用户和后台模块用户。前台模块旨在面向手机客户应用,满足用户快速检索其适用的客户端软件,用户通过前台模块,可以方便、快速、高效地检索其需要的客户端软件。所以前台模块必须提供人性化的服务,以满足用户的需要。后台模块是面向系统的管理员,用于维护系统数据及信息配置,包括手机品牌管理、手机机型管理、手机平台管理和客户端管理,不仅要提供各种查询功能,还要提供对数据的修改操作。另外,日志模块和系统配置模块也必不可少。系统结构图如图一所示:

表二为系统中涉及客服端应用管理的数据表,这些数据反映了手机客户端发布管理的主要目标,是手机客户端发布管理系统的核心功能。

3 系统实现

3.1 前台模块类

前台模块所面对的是手机用户,用户可以通过前台模块方便、快捷、高效地检索其所需要的手机客户端软件。因此,如何提供基于手机品牌、手机型号、手机平台和手机客户端进行各种检索功能是本模块的关键。类的设计基于MVC设计模式。Record类为域模型的基类,其四个子类分别为:Brand、Type、Platform、Client,以此表示手机品牌、手机型号、手机平台和手机客户端。为了加快前台模块的索引速度,专门针对数据设计了索引。Index为索引的总接口,其实现类有两个:SingIndex和UnionIndex。SingleIndex表示根据单个字段值进行索引,UnionIndex表示联合索引,目前系统没有提供联合索引功能,该类在这里出现,是为了今后系统的扩展。Table类表示数据表,其实在这里用来模拟数据库表,以此提供SqlUtil类,通过该类,可以执行如:select from table where…之类的SQL查询,封装了查询功能,使用更方便。DownloadManager类是关键,该类的设计运用了单例模式,在项目启动时,会创建它的实例,它首先会读取XMl文件,将数据加载到内存,另外,还提供了针对手机品牌、手机平台、手机型号、手机客户端的各种检索功能。WteAction是一个Servlet,它依赖DownloadManager类,为表现层Freemarker模板引擎提供服务。WteAction充当了控制器层。

该模块中的关键部分是索引的设计,索引提高了系统的检索速度。在DataManager类初始化时,首先读取XML文件,获取数据信息并封装在Table类中。同时,根据制定的字段,建立索引。Table类中有两个成员:Index和RecordSet。Index包含了索引及对应的数据,RecordSet包含了所有的信息。当在进行信息检索时,首先查看指定字段是否建立了索引,如果索引存在,则直接在Table中的Index对象中取得数据,否则在RecordSet查询。

3.2 后台模块类

后台模块所面向的用户是系统管理员。需要完成的功能:手机品牌管理、手机型号管理、手机平台管理、手机客户端管理、日志模块和系统配置模块。

后台模块类的设计也是基于XMV设计模式,并且复用了DownloadManager类。DAO是模型层,DAO是总的接口,子接口为XMLDAO和DBDAO。DBDAO目前在系统中没有使用,是为了以后系统做扩展。XMLDAO接口定义了以XML为数据库的一系列操作。Log接口是日志模块的总接口,其子接口为DBLog和XMLlog,同样,DBLog在系统中目前没有使用,是为了以后系统的扩展而定义。XMLLog定义了以XML文件作为日志记录载体时的一些操作。在本系统中,日志功能的目的是记录管理员对系统信息进行增、删、改操作信息,所以在这里使用了Java的动态代理。ProxyHandler是动态代理的实现类,当管理员执行了增、删、改操作后,将会自动调用日志功能。DAOFactory是一个DAO的工厂类,它运用了设计模式中的简单工厂模式,目的是为上层Service层服务,当Service需要DAO的实现类时,是通过该工厂获取的。值得注意的是,DAOFactory提供的并不是DAO的实现类本身,而是DAO的代理类。Service层封装了后台模块所需要的所有功能,它给上层提供服务。图二为手机品牌添加操作页面。

4 结束语

本文开发的手机客户端发布管理系统已经投入运行,基本实现了设计目标。一个高效的手机客户端发布管理系统主要依赖良好的设计,关键是对于不同手机品牌、机型、操作系统平台提供有效的信息检索,尤其通过引入索引,获得了快速的数据查询。另外,为了使系统具有良好的可扩展性,在设计模式上需要合理选择,如代理模式、工厂模式、单例模式的灵活运用,能使系统获得较好的可扩展性。

参考文献

[1](美)Bruce Eckel.Thinking in Java[M].北京:机械工业出版社,2007.

[2]许翠萍.备战手机应用商店[J].通讯世界,2009,3(175):67-81.

[3]刘晓华,张健,周慧贞.JSP应用开发详解[M].北京:电子工业出版社,2007.

[4]花向东,李阳,李慧.基于MVC模式的Struts框架的研究[J].信息技术,2005(,29).

[5]毕庆红.Struts in action中文版[M].北京:人民邮电出版社,2008.

客户端系统 篇8

Android是Google推出的一个基于Linux操作系统,包含底层框架,中间件和开发环境的一套平台系统。它支持流行的组件式程序设计,具有针对性移动设备的Dalvik虚拟机。浏览器核心是基于开源的WebKit引擎,对基于HTML的各种语言具有良好的支持。图像引擎使用基于openGLES1.0的三维图形库[1,2]。本文的研究目的就是基于Android平台,提出一种能为多种移动客户端提供即时通信服务系统的客户端解决方案。

1 系统开发环境

Android的应用开发使用Java语言环境下Android应用开发工具和API接口[3],包括支持各种分辨率的设备模拟器、调试工具、内存及性能分析图表和Eclipse集成开发环境插件在内的方便快捷的开发环境。

2 客户端设计

系统客户端主要实现与服务器端进行通信,向服务器发送和接收相应的请求,完成即时通信的过程。开发的客户端基于Jabber协议[4],可以实现用户注册和登录、即时消息处理、好友的分组管理、在线状态的监视等功能。

2.1 客户端设计结构

系统客户端,采用MVC模式来进行构建,MVC模式中应用系统被分成3个部分:模型(Model)、视图(View)和控制器(Controller)[5]。View向用户展示模型的状态以及控制信息,Controller作为控制器,负责View和Model之间的流程控制,客户端MVC结构如图1所示。采用MVC模式架构进行设计[6,7],可以将视图层与逻辑代码以及数据模型层进行分离,实现系统的松散耦合,便于系统的维护和代码的重用。同时,在Android中,视图层可以通过定义XML文件的方式来设计用户界面,在数据模型层提供了Content Provider类来屏蔽底层具体的存储设备细节,从而使应用系统具有良好的数据迁移性。

2.2 应用模块框架

Android中用户界面允许采用定义XML文件或编写代码建立。通过定义XML文件来设计用户界面便于代码理解和重用,效率较高。故系统选用定义XML文件来实现客户端的用户界面。Android应用程序与用户打交道的基本功能单位是活动(Activity),它通过调用方法setContentView()加载视图资源显示[8]。运行于后台的应用程序可以通过Service来进行设计,通过Binder机制,与相关的活动绑定在一起,系统应用模块架构如图2所示。

2.3 数据存储

客户端采用Android平台自身所带的SQLite数据库来存储用户信息以及即时通信聊天信息,使用文件存储设备SDeard来存储图片和音乐。使用contentProvider将SQLite资料库系统封装起来,让应用程序直接使用能够屏蔽数据库差异性,提供一致界面的content Provider所提供的界面函数。

2.4 实现主要功能

系统客户端主要实现以下功能:

(1) 注册用户:填写相关的个人信息进行注册,向服务器提交后服务器返回相应的信息;

(2) 系统设置:对系统的一些选项进行相应的设置;

(3) 用户设置:对用户基本信息和一些Jabber选项进行设置;

(4) 登录和注销:选择相应的服务,输入用户名和密码,登录即时通信系统,或注销用户,退出本系统;

(5) 分组管理:可以创建新的分组,对分组信息进行修改或删除;

(6) 好友管理:可以添加好友至某个分组,修改好友的备注信息,删除好友;

(7) 好友信息:登录后,可以按照分组查看所有好友的信息;

(8) 信息发送:登录后可给某位好友发送信息,如果好友离线,信息暂存于服务器中,待其上线后接收;

(9) 信息接收:接收好友发送过来的信息,并显示;

(10) 查看聊天记录:可查看与某位好友的聊天记录。

3 主要模块设计

系统的即时通信采用XMPP协议,XMPP是基于XML的协议。在系统的即时通信过程中,通信信息都是以XML语句进行传输的,而具体的消息内容则嵌入在XML元素中[9,10]。系统主要包括解析、加密、即时通信、图片传输、音乐播放、图片浏览等模块,各模块设计如下:

(1) 解析模块。系统采用Android平台上提供的org.xmlpull.vl解析包对XML消息进行解析。XMPP协议中的XML语句是一种树型结构,解析XMPP协议的过程即对树的遍历,节点的名字就是属性的名字,节点的值就是属性的值。在解析中,只对主要消息元素进行解析,主要解析XMPP协议的3个顶层元素<message/>、<Presence/>和<iq/>所包含的内容以及包含错误信息的元素<error/>。解析完后,封装,供应用模块进行调用;

(2) 加密模块。加密模块对发送和接收的消息进行加解密,以确保通讯数据的安全。该加密机制是分两步完成的,首先将二进制码转换成BASE64码。在转换成BASE64码之后,再进行加密,加密算法由各网络实体建立会话时通过TLS协商。

(3) 即时通信模块。客户端通过GPRS无线网络采用TCP协议连接到Openfire服务器,通过服务器作为即时通信平台,实现客户端与客户端之间即时通信。为了解决TCP在连接服务器的过程中,等待服务器响应时间过长,易造成程序暂停,系统假死现象。在与服务器的通信过程中采取了多线程的方式,使用3个线程,分别负责消息发送、接收和心跳信息的发送。

(4) 图片传输。从文件系统中读入图片后,将图片转换成“.png”的格式,写入到字节输出流中。由于图片信息相对于通信文本信息要大很多,因此采用分组传输的方式,对字节数组进行分组,加密后,分别嵌入到XML语句中进行传输。接收图片时,将收到的各个子字符串转换为字节数组并进行解密,最后进行组合,还原成原来的图片,供用户浏览。

(5) 音乐播放。音乐播放通过调用MediaPlayer实现的。Android的Media Player包含了Audio和Video的播放功能。MediaPlayer在底层上是基于OpenCore(PaeketVideo)的库实现的,为了构建一个MediaPlayer程序,上层还包含基于Android基本库中的Binder机制的进程间通讯等内容。

(6) 图片浏览。图片浏览主要用android. Graphics类包实现,这个类包提供了如画布、点和矩形等底层图形工具,可直接的在屏幕上进行绘制。从文件系统中把所需要的图片读入到内存中,转化成“.png”的图片格式,然后在不同的用户界面中,使图片以不同的形式显示。

4 结 语

近年来,Android系统由于其开源性、易开发性得到广泛的应用。移动通信的即时通信服务把手机的短信和手机移动互联网完美地结合起来,用户通过移动设备终端,能便捷地与他人进行实时信息交流。利用本设计方案,可以实现在Android操作系统上完成即时通信系统客户端的开发,具有较大的发展、应用空间。

参考文献

[1]赵远萍.即时通信系统拓扑建模及消息传播模型研究[D].北京:北京邮电大学,2010.

[2]CHATTERJEE S,ABHICHANDANI T,LI Hai-qing,etal.Instant Messaging and Presence Technologies for CollegeCampuses[J].IEEE Network,2005,19(3):22-33.

[3]于少山,卡米力,毛依丁.基于XML的即时通信系统的研究与实现[J].重庆邮电大学学报,2007(6):59-61.

[4]ED P Saint-Andre.RFC3921,Extensible messaging andpresence protocol(XMPP):instant messaging and presence[S].[S.l.].IETF,2004.

[5]田森.用Android开发手机应用[J].程序员,2008(1):25-27.

[6]姚昱?,刘卫国.Android的架构与应用开发研究[J].计算机系统应用,2008(11):110-112.

[7]罗伟.基于Android平台的即时通讯系统的研究与实现[D].长沙:湖南师范大学,2009.

[8]WHITEHEAD Jim.Streaming XML with Jabber/XMPP[R].USA:IEEE Computer Society,2005.

[9]SAINT-ANDRE Peter.Streaming XML with Jabber/XMPP[R].USA:IEEE Computer Society,2006.

[10]冯亚军,宋子林.基于XMPP协议的即时通信系统[J].军事通信技术,2005(12):57-59.

[11]李聪玲.液氧/煤油发动机试验控制系统软件架构与设计[J].火箭推进,2009,35(2):46-53.

客户端系统 篇9

关键词:智能客户端,设备检修,信息系统

随着企业设备规模的日益扩大和维修费用的增长, 制造企业对设备的维修管理越来越重视。设备维修管理系统的应用对降低维修成本、提高维修效率、促进企业发展、提高企业竞争力有重要作用。本文针对传统C/S和B/S模式设备检修管理系统的不足, 以移动智能客户端技术为基础设计并实现一个设备检修信息系统, 设备检修人员手持移动设备能在移动状态下随时收集设备运行、检查、维修信息, 并能在在线和离线两种情况下工作, 满足移动工作的实际需要。

一、移动智能客户端技术

客户端技术始于二十世纪九十年代的C/S (客户端/服务器、即胖客户端) 模式, 它将应用程序将应用程序处理分成两部分, 一部分由用户的桌面计算机执行, 另一部分由一个集中的服务器执行。它采用图形用户界面, 可以充分利用本地硬件资源以及客户端操作系统平台的功能, 客户端的数据处理能力比较强, 界面响应快。存在的不足之处是客户端应用程序部署起来困难而且成本较高。九十年代中期, 出现的B/S (浏览器/服务器, 即瘦客户端) 应用程序是基于浏览器的应用程序, 也就是Web应用程序。其不足之处在于浏览器要与网络相连才能访问应用程序, 如果网络断开了, 需要重新输入数据。故应用程序的业务逻辑状态大部分都在服务器上, 瘦客户端在进行操作时要频繁地向服务器发送数据请求, 等服务器响应并处理完毕后将数据返回给客户端, 用户才能继续使用此应用程序, 其客户端的数据处理能力不如C/S应用程序。

智能客户端 (Smart Client) 是一个连接到互联网的设备, 它允许用户的本地应用程序通过Web服务和服务器应用程序交互, 从而将胖客户端应用程序和瘦客户端应用程序的优点很好地结合在一起。它克服了胖客户端应用程序难发布、难部署问题以及瘦客户端过分依赖网络、用户体验不佳的问题, 结合了胖客户端开发容易、响应速度快、用户体验佳和瘦客户端易发布、易管理的优点。它支持在线和离线工作, 不仅能在连接网络的情况下工作, 在断开网络时能利用本地缓存进行操作和处理;不仅支持桌面解决方案, 还支持移动解决方案, 支持偶尔连接, 提供智能安装和更新。

本系统要求在线和离线两种网络连接状态下都能完成数据的处理工作, 经过对系统本身需求分析和软件架构的特点分析, 决定采用面向服务智能客户端的软件架构。

二、系统的总体架构与功能设计

根据系统需求分析, 系统设计目标为建立一个基于移动手持设备的设备检修信息系统, 通过手持设备录入设备的运转和检修信息, 实现查询、数据录入、信息传递和管理的电子化。工作人员到现场检修设备时可以在移动状态下, 手持移动设备, 查询相关资料、记录检查结果和维修情况、记录设备运行情况、上传数据、进行信息传递等工作, 并可通过网络查看设备的维修规程、教程以及设备相关技术档案等。从而提高工作效率和工作质量, 减少工作人员的工作量, 实现设备检修管理的信息化。

基于以上分析设计的设备检修信息系统分为两大部分:前端信息采集分系统和后台服务器管理分系统。前端采集系统和后台服务器分系统依托网络进行数据的传递, 从而有机地整合为一个整体。系统结构图1所示。

图1中前端信息采集分系统主要包括数据采集模块、数据存储管理模块、文档查阅模块、网络通讯与数据传输模块等。该分系统主要完成数据采集, 数据存储, 以及通过网络通讯与数据传输模块与服务器进行数据交换, 从而将设备检查与维修要求下载到本地, 并将设备运转情况、检修信息传送到服务器。

后台服务器管理分系统主要包括设备检修基本信息管理模块、检修任务管理模块、维修信息管理模块, 设备文档管理模块, 网络通讯与数据传输模块、系统设置模块。

系统的网络结构采用有线局域网络与无线局域网络相结合的方案, 如图2所示。利用现有的已布局到车间的有线局域网络, 在车间内部使用无线局域网络进行通讯。由于车间范围广以及移动网络的不稳定性, 无线网络不能覆盖整个车间内的空间, 在许多情况下不可能无时无刻都依赖或存在着网络, 要求移动设备具有一定的离线处理能力以及离线和在线的无缝切换能力。即系统在无法联网的情况下仍可以在移动状态时收集和整合数据将数据存储后移动到无线网络信号好的地方后与服务器连接, 完成数据的传输。

系统的基本工作原理是先把现场环境和网络环境布置好, 在有网络情况下, 设备检修人员手持移动设备到车间现场进行检修和维护工作, 利用客户端系统采集数据信息, 并通过网络实时便捷提交到后台服务器。在无网络或网络连接不好时, 切换到离线工作模式, 采集数据并缓存到本地, 待到有网络时将数据同步到后台服务器中。

三、系统的开发环境及关键技术实现

1. 系统开发环境

服务器端的设计包括数据库设计、Web服务设计实现以及服务器端应用程序设计与实现。因此服务器端开发环境和开发工具如下:

(1) Windows 2000/XP或更高版本; (2) VS.NET 2005; (3) Microsoft.NET框架1.0或以上; (4) IIS 5.0或以上; (5) SQL Server 2000。

客户端的目标环境是Pocket PC, 先利用.NET中自带的智能设备项目来开发基于Pocket PC设备模拟器的前端数据采集分系统, 然后再部署到真正的设备上。模拟器的同步需要用到Microsoft Active Sync, 脱机工作时数据缓存处理所用的数据库为移动数据库SQL Server CE。因此客户端的开发环境和开发工具如下:

(1) Windows 2000/XP或更高版本; (2) Microsoft.NET压缩框架2.0或以上; (3) VS.NET 2005; (4) Microsoft SQL Server CE 2.0版本; (5) Microsoft Active Sync 4.5。

2. 系统的安全验证设计

用户登录系统进行身份验证, 把用户名和密码传递给身份验证Web服务, 身份验证Web服务再通过数据库存储过程访问数据库中用户名和密码记录来验证身份。用户名和密码正确, 验证成功。身份验证成功后Web服务会向客户端返回一个加密票, 该加密票会缓存在服务器中。

然后, 当客户端用户有数据请求时, 就将请求数据和加密票一起提交给数据Web Service, 数据Web Service先验证加密票是否有效, 如有效则通过数据库存储过程检索数据库以获取用户请求的数据, 然后把数据发送回客户端。

在该系统中都是通过Web服务访问数据库, 为了保证安全性, Web Service又是通过存储过程访问数据库中的数据。使用数据Web Service来完成数据库的检索和更新, 可以有效地实现程序模块间的松散耦合, 保证只有经过身份验证的客户端用户才能查询数据库中的敏感数据。其体系架构如图3所示。

3. 在线与离线工作模式及其切换的设计与实现

智能客户端一个显著的特点就是可以在离线状态下工作, 进行数据的处理操作。系统有在线和离线两种工作模式, 这两种工作模式间可自动转换或手动转换。自动转换就是当应用程序处于在线工作状态的时候, 如果此时检测到网络连接不好或不可用时, 应用程序自动被切换到离线工作模式, 等网络连接通畅后再切换回在线状态。手动转换就是用户强制转换工作模式。当应用程序处于在线工作状态时, 通过手动转换强制应用程序离线工作。而当应用程序处于离线工作状态时, 在网络连接正常的前提下可手动转换为在线工作模式。客户端系统启动时工作模式的确定流程如图4所示。具体的过程为:

(1) 首先判断是否有缓存文件, 再根据判断结果得知上次运行结束时的工作模式。 (2) 用户登录的方式。若是以离线模式启动就通过缓存数据进行身份认证, 如果是以在线模式启动, 则通过数据Web服务进行验证。登录成功后保存用户信息。 (3) 如果不存在缓存文件, 应用程序就通过服务器进行初始化。

应用程序从在线切换到离线时, 开始仅仅是系统窗体右下角的工作状态变为离线工作模式, 系统业务逻辑没有变。主界面出现“下载数据”和“同步数据”按钮。此时需要指定对哪些项目进行离线操作, 把这些项目的相关基础数据下载到本地数据库中, 这时应用程序要同时与Web服务和客户端本地数据库进行交互。在客户端本地动态创建数据库和数据表来存储这些数据信息, 另外还创建一个用来存储发生更改数据的信息表。下载完成后, 待系统真正处于离线工作状态时, 在客户端本地对数据进行添加、删除、查询、更改操作, 对数据的更改都缓存在本地数据库中。

应用程序处于离线状态下, 不与Web服务和数据库服务器交互, 用户对数据的操作都是缓存在本地的。当切换到在线模式的时候, 客户端应用程序通过调用Web服务来实现数据的更新和合并。系统由离线模式切换到在线模式的工作流程图如图5所示。

当应用程序由离线切换到在线工作模式时, 首先检查能否连接到网络, 如果无法联机运行, 系统仍处于离线状态工作;若能连接到网络联机运行, 客户端应用程序就与Web服务器交互, 将在脱机状态时发生更改的本地数据以数据集的形式提交给W e b服务同步到远程数据库中。在数据同步的过程中检测是否会引起并发产生冲突数据问题, 若检测到有冲突数据, 就采用开放式并发处理方式让用户来选择如何处理冲突数据, 然后与数据库同步, 系统处于在线模式运行;如果不需要处理冲突数据, 则直接转换到在线模式运行。

四、小结

本文基于移动智能图5系统由离线切换到在线工作的流程图客户端技术, 结合W e bService和数据库技术完成了一个设备检修信息系统的设计, 实现了在车间无线网络不稳定环境下不间断进行设备检修信息录入处理, 在线离线切换, 信息查询, 登录安全验证等功能, 取得了良好的实用效果。

参考文献

[1]王宏睿王志龙祝金国:制药设备维修管理系统的研究与开发[J].机械设计与制造, 2009 (7)

客户端系统 篇10

关键词:EXT,JavaScript,Ajax

随着互联网在国内外的深入发展, 越来越多的软件从传统客户端/服务器的结构转向了以浏览器为主的Web应用程序。Web应用程序没有用户界面组件, 只有图片文件和超文本标识语言。开发者需要利用本身就不太丰富的元素来编写一个友好的Web应用程序界面, 这是一件很有挑战性的事。

幸运的是目前有许多富客户端应用框架, 而且它们在一定程度上是开源的, 比如:ExtJS。在引入了它之后, 就有了一套完整的组件可用, 就像在使用VC的控件一样, 用户界面是一个一个做好的组件, 可以直接使用。开发人员不用再面对Javascript, CSS, HTML这些基本元素, 只需根据需要部署组件即可。不仅如此, ExtJS的组件还可以进行扩展, 类似面向对象编程的继承一样, 最大限度的满足用户的特殊需求。

1 EXT概述

ExtJS简称EXT, 是用JS编写的一个非常优秀的AJAX框架, 它与具体的服务器端技术无关, 被用来开发具有绚丽外观的Web应用程序的表现层。EXT所开发的丰富多彩的界面不但吸引了许多技术人员的关注, 同时也吸引了众多的客户, 它似乎一夜之间就迅速流行开来。对于开发MIS类型的系统而言, EXT有非常大的优势。

当我们第一次使用EXT时, 就被它深深地吸引住了。对于我们这些没有美术功底的人来说, EXT为我们解决了一大难题, 首先它天生拥有炫丽的外表。其次, 直接用Javascript极难实现的功能, EXT都能帮你解决, 比如树形结构, 拖拽, 表格, 分页, 布局等控件能节省大量的时间和精力, 这些都坚定了我们在运行管理系统中使用EXT的决心。

当前EXT依然在不断向前发展, 国内的EXT开发者也越来越多, 这些都说明了RIA的活力和前景, 无论是最终客户还是开发者都期待在B/S结构中获得更加灵活而又强大的功能。ExtJS的体系结构如图1所示。

2 运管系统中的具体应用

随着我国国民经济的发展, 航空业得到了迅速发展, 飞行班次和密度迅速增加。空中交通管理在航空运输系统中肩负着保证空中交通安全、监督飞行活动、维护飞行秩序的重要职责。管理空域, 负责制定飞行程序和规则, 提供航行情报服务、航空气象服务、通信导航服务、空中交通管制, 保障航空运输的高效、顺畅和安全, 是一个集信息化技术、计算机技术、自动化技术、电子技术等科学和人员人为因素于一体的复杂系统。

新疆民航通信网络有限责任公司开发的“新疆空管运行管理系统”包括了非常多的先进技术, 系统基于Java EE平台, 利用遥感与GIS技术对作业区、地物点、空域、地形数据、航路等进行数字化处理, 为了提高用户体验使用了先进的富客户端技术, 为了提高系统的实时性使用了B/S系统推送技术。

上面的每一个名词都能写成一本专业书籍, 由于篇幅限制, 该文不能一一介绍, 该文重点论述“新疆空管运行管理系统”中使用的富客户端技术 (RIA) ExtJS。

下面通过ExtJS在运管系统中的具体应用来阐述ExtJS在事件响应、异步通信和数据存储等几个方面的应用特点。

3 运管系统中ExtJS的数据存储

如果要在组件中显示想要的数据, 首先要准备好数据。然后我们先来认识一下store, store可以理解为数据存储器, 可以把它理解为提供缓存功能的小型数据表, EXT中的控件一般直接与Store打交道, 从store中获取需要显示的数据, 一个Store可以包含一个或者多个Record, 数据存放于Store中, 通过控件的store属性来设置表格中将要显示的内容, 之后调用store的reload或load方法来加载数据。

Record对象, 全称为Ext.data.Record, 它是一个内部数据类型对象, Ext.data.Store对象是它的基本组成部分。我们把Ext.data.Store对象比做是一个二维表格, 那它的每一行就相当是一个Ext.data.Record对象的实例。Ext.data.Record对象的主要作用就是保存一个对象实例的数据, 并且当对象内部数据发生改变时记录修改的内容, 其次对修改之前的原始值也是可以保留的。

数据代理DataProxy, 可以理解为数据源, 下面再来认识一个对象DataProxy, DataProxy是数据代理对象, 它的作用是把数据交给DataReader对象进行解析。数据代理父类由DataProxy对象来定义。MemoryProxy对象能从JS OBJECT中获得数据, 可以方便的把JSON, XML和JSON和数组中的数据交给它处理。HttpProxy对象根据http协议通过异步通信的方式去后台服务器读取数据, 构造这个对象的实例时需要设置地址参数。这里所说的地址其实就是任何一个合法的网络地址, 这样httpProxy对象才知道到哪里读取数据。ScriptTagProxy是对httpProxy对象的扩展, 在httpProxy对象的基础上, 从跨域服务器中获取数据。

DataReader是一个解析数据的工具, 它的工作是把从后台程序或者本地内存等数据源头中获得的混乱数据转换成可以在EXT中的记录集Record对象中存放的有序数据, 同时存储到Store对象里面的数组记录集中。Ext.data.DataReader定义了解析数据的超类, 其他具体的数据分析器都是继承自该类, ExtJS中提供了读取JSON数据, 二维数组及XML格式文档的三种解析数据的工具, 分别用于把本地内存中的JSON格式数据, 二级数组及XML格式数据信息解析成Record记录集。

下面给出空管运行管理系统中创建Ext.data.Store对象的样例代码:

在上面这段代码中, HttpProxy对象从xxx.jsp中读取JSON格式的数据, 然后通过数据分析器jsonReader的解析转换成之前已经声明好了的记录集re对象Record。而在record对象中定义了三个字段, 这三个字段都为字符串类型, 分别是用来存储用户的性别, 地址和姓名信息。调用已经创建好了的Store的load () 方法加载数据后, 就可以操作其中存储的数据了。

3Ext组件在民航运行管理系统中的使用

当前, 我们已经使用Ext.data.Store对象把需要的数据准备完毕, 之后为了把它们显示出来, 还要创建一个ExtJS的组件。ExtJS的组件通过new关键词来创建, 例如在运行管理系统中需要创建一个组件, 那么需要在程序中加入如下代码:

每个组件的构造函数中都包含一个或者多个对象, 这些对象是在创建组件时提供组件所需要的配置属性及参数值, 组件自身通过构造函数中的参数值和属性值来构造并初始化组件对象。代码中的dataStore就是一个store对象, 它用于数据存储。

任何一个ExtJS组件都继承了父类中配置的属性, 同时根据每个组件对象的具体需要扩展各自特有的属性, 可以通过覆盖从基类继承来的属性来对组件进行功能扩展。在下载的EXT源码文档中, 对每个ExtJS组件的配置属性已有详细的说明, 这里不在详述。

4 运行管理系统中EXT的事件处理方式

在传统的Javascript中, 事件处理是必须要经常进行的一件繁琐的事。这些常常很难顺利进行, 而且工作繁多, 因为我们面对着许多不同的浏览器标准。而这类问题在使用ExtJS时就可以被忽略。

事件处理机制是ExtJS响应用户的动作, 监控控件的状态与后台进行交互的方式, 它用户一整套完善的事件处理机制。Ext EventManager对象统一管理者所有响应事件, 浏览器事件对象event与其相对应, Ext.EventObject事件对象由ExtJS定义。Ext.util Observable类用来对事件处理提供支持, 由该类扩展的对象或组件都支持向对象中添加事件处理函数及响应函数的功能。下面代码是为运行管理系统中一个组件面板gridMianBan增加的一个监听器:

以上代码的效果是, 只要用户用鼠标单击表格, 就会调用绑定的事件处理函数执行函数体内的代码, 这里的含有是将gridMianBan表格中被选中的gName字段的内容赋值给变量g Name。

5 运行管理系统中的AJAX实现

为了显示少量的新数据而刷新整个网页, 显然不是一个好的选择, 因此运用ajax技术刷新网页的局部内容也就成为理所当然的选择。为了在运行管理系统中实现ajax, 需要在每个组件的事件处理函数中加入如下代码:

上面这段代码通过调用Ext.Ajax对象的request方法, 执行增加一条rvr数据的操作, 如果增加成功则重新载入数据, 如果增加失败将给用户显示失败的提示信息。JSON对象是这个函数的参数, 下面列举一些常用的参数说明:

url参数:表示ajax要访问的主机地址。

Method参数:只能为GET或者POST

Params参数:此ajax请求将要传递的参数

Success参数:表示ajax响应成功后要调用的函数, 或叫回调函数

Failure参数:表示ajax响应失败后要调用的函数

上面Failure所说的响应失败是指web服务器响应的语法性的错误, 不是指逻辑性或业务性的失败, 这里是一个非常容易误解的地方。

其次, 为了使配置的方式更简洁, 运行管理系统中的ajax实现还使用了Ext.data.Connection对象, 它定义了Ext.lib.Ajax对象, 并且提供了简洁配置Ajax的常用方式, 通过Ext.lib.Ajax对象在底层实现与服务器的异步调用。

需要注意的是, Ext.data.Connection必须先创建实例对象后才能使用, 这是因为要给Ext.data里面的各种不同代理对象提供Ajax功能, 实现分别的管理。

6 结论

从ExtJS在运行管理系统的应用中我们可以深刻地体会到, ExtJS给用户带来的不仅仅是丰富多彩的客户端体验, 同时又解决了跨浏览器平台编程这样棘手的问题。通过对ajax进行了完美的封装和完善的数据处理功能, 使得EXT跻身于优秀的Ajax框架的行列, 并非常有希望成为前端程序开发的主流工具之一。促进互联网向着更加健壮, 更加丰富多彩的方向发展。

参考文献

[1]徐会生, 何启伟, 康爱媛.深入浅出EXTJS[M].北京:人民邮电出版社, 2009:28-66.

上一篇:多支点探究语文教学下一篇:个性翅膀