一种在线浏览和下载用户群组通讯录的方法和系统\n技术领域\n[0001] 本发明涉及互联网技术,特别是指一种通过互联网在线浏览和下载用户群组通讯录的方法和系统。\n背景技术\n[0002] 随着互联网应用的深入,用户群组通讯录的作用越来越大,比如:企业通信录保存着企业的大量通讯信息,在当今这个信息的时代,为了协同工作,企业内的员工需要时刻沟通了解企业内的员工信息。目前,企业员工查询企业通讯录不外乎下面几种:员工自己记录其他员工的所有信息,包括固定电话、移动电话、电子邮件等;或者通过公司的内部网络查询公司的企业通讯录,获取自己需要的信息;或者通过其他员工查询得知。然而,企业成员总是在动态变化中,人员变动或联系方式变更经常发生,因此企业的通讯录总是需要不断更新。如果每个人要在本地存储所有的通讯信息,并且保持通讯录信息的准确、完整,则不可避免地需要频繁的对通信录信息进行维护更新,不仅费时费力,还可能信息不准确。\n[0003] 此外,MSN联系人是现有网络上较为成熟的通讯录服务,其向电子邮件服务(hotmail)、即时通讯软件(MSN messenger)、个人博客服务(spaces.live.com)等提供联系人通讯录服务。用户可通过电子邮件界面、即时通讯软件等媒介管理和维护联系人信息,用户修改和添加的联系人信息会与服务端存储的信息做同步,以便用户在改变环境或网络接入地点后,仍然能够得到最新的联系人信息。但是MSN联系人是面向个人用户的通讯录服务,需要个人进行维护,而且牵涉到个人隐私的相关的考虑,不适合共享信息供组织成员访问。此外,MSN联系人技术上比较封闭,其只向微软的相关产品提供服务,没有对外的开发接口,阻碍了第三方利用该服务进行业务的扩展。\n[0004] 这些情况都使得如何高效的使用用户群组通讯录成为一个急待解决的问题。\n发明内容\n[0005] 有鉴于此,本发明的目的在于提出一种在线浏览和下载用户群组通讯录的方法和系统,向互联网用户提供简单、高效地在线用户群组通讯录浏览、下载功能服务。\n[0006] 基于上述目的本发明提供的一种在线浏览和下载用户群组通讯录的方法,在网络中设置数据库服务器、业务服务器和Http服务器,在数据库服务器中存储用户群组通讯录;\n[0007] 并包括步骤:\n[0008] A、客户端将用户账户和密码发送至业务服务器;\n[0009] B、业务服务器将接收到的账户和密码传送到用户身份验证服务器;\n[0010] C、用户身份验证服务器对用户身份进行鉴权,若成功,则生成加密的登录票据并送至业务服务器;\n[0011] D、业务服务器将接收到登录票据以及Http服务器的请求地址发送到客户端;\n[0012] E、客户端根据接收到的Http服务器的请求地址向Http服务器发送Http下载请求;\n[0013] F、Http服务器对接收到的请求消息解析得到消息结构体并进行初步准确性验证,若验证通过则将该消息结构体转发给业务服务器;\n[0014] G、业务服务器将所述消息结构体中的用户账户和登录票据传送到用户身份验证服务器;\n[0015] H、用户身份验证服务器对登录票据进行解密并提取其中的信息进行比对,若比对后验证通过,向数据库服务器查询请求的用户群组通讯录信息,将查询结果组成响应消息结构体发送至Http服务器;\n[0016] I、Http服务器将所述响应消息结构体装载在Http数据包中发送给客户端。\n[0017] 可选的,该方法步骤C进一步包括:\n[0018] C1、用户身份验证服务器搜索内部存储的用户账户和密码数据列表,对收到的账户和密码进行验证鉴权;\n[0019] C2、若验证鉴权通过,用户身份验证服务器在该用户对应的数据记录条目上设置该用户已经登录成功的信号量,并生成一个加密的登录票据,并向业务服务器返回用户登录成功的响应以及所生成的登录票据。\n[0020] 可选的,该方法所述下载请求包括根节点RequestData和节点EabRequest,其中根节点RequestData包括字段:TransactionID、RequestTime、ServiceType、Ticket,并且节点EabRequest包括:RequestMode、Accounts、RequestMode、Accounts、VersionTime、DepartmentID;\n[0021] 步骤F所述Http服务器对接收到的请求消息解析得到消息结构体并进行初步准确性验证进一步包括:\n[0022] 验证根节点RequestData中的字段ServiceType是否指定了用户群组通讯录服务,字段Ticket是否为空;\n[0023] 验证节点EabRequest中的字段RequestMode的取值是否为三个预定设置值之一,字段Accounts中的用户账户是否满足规定的格式;\n[0024] 若验证通过,则将该消息结构体转发给业务服务器处理;否则,则向客户端返回数据格式错误的提示信息。\n[0025] 可选的,该方法步骤E所述下载请求的方式包括以下之一:全量下载、增量下载、实时下载;\n[0026] 步骤H所述对数据库服务器进行查询,将查询结果组成响应消息结构体发送至Http服务器进一步包括:若请求实时下载,从字段Accounts提取用户群组域名字符串,根据该域名字符串在用户群组信息数据表中查询用户群组ID,将用户群组ID和字段DepartmentID代表的聚焦部门ID作为参数,在数据库服务器中查询当前聚焦部门下属的子部门和下属职员,组成响应消息结构体,返回给Http服务器;\n[0027] 若请求全量下载,从字段Accounts提取用户群组域名字符串,根据该域名字符串在用户群组信息数据表中查询用户群组ID,将用户群组ID作为参数,在数据库服务器中查询属于用户群组的所有部门、联系人、部门-联系人关系数据,组成响应消息结构体,返回给Http服务器;\n[0028] 若请求增量下载,从字段Accounts提取用户群组域名字符串,然后根据该域名字符串在用户群组信息数据表中查询用户群组ID,查询用户群组通讯录的版本时间,与请求消息结构体中字段VersionTime的数值比较,若相同,则返回空的响应消息结构体给Http服务器,若不相同,则将用户群组ID和字段VersionTime的取值作为参数,在数据库服务器中查询更新时间晚于VersionTime的所有部门、联系人、部门-联系人关系数据,组成响应消息结构体,返回给Http服务器。\n[0029] 可选的,该方法步骤I所述Http数据包中包括以下字段:\n[0030] TransactionID为业务ID,与请求消息中TransactionID的相对应;\n[0031] ResponseTime为响应时间,格式为“yyyy-mm-dd hh:mm:ss”。\n[0032] StatusCode为响应消息状态值,表示该操作是否成功;\n[0033] ReturnMessage为返回提示信息。\n[0034] 可选的,该方法所述数据库服务器中存储用户群组通讯录由用户群组管理员通过业务服务器进行统一更新。\n[0035] 可选的,该方法还包括用户群组通讯录更新过程:管理员在管理页面输入要更新的信息,并将更新的内容消息实体发送到业务服务器,业务服务器将更新内容写入数据库服务器中的部门数据表、联系人数据表、部门-联系人关系数据表中相应的字段中;\n[0036] 或者当用户自身通讯地址发生变化时,通过客户端向业务服务器发送请求,由业务服务器将更新内容写入数据库服务器中的部门数据表、联系人数据表、部门-联系人关系数据表中相应的字段中。\n[0037] 基于上述目的,本发明还提供了一种实现在线浏览和下载用户群组通讯录的系统,包括数据库服务器、业务服务器、Http服务器与用户身份验证服务器,所述数据库服务器,设置于网络中,用于存储用户群组通讯录数据;\n[0038] A、客户端将用户账户和密码发送至业务服务器;\n[0039] B、业务服务器将接收到的账户和密码传送到用户身份验证服务器;\n[0040] C、用户身份验证服务器对用户身份进行鉴权,若成功,则生成加密的登录票据并送至业务服务器;\n[0041] D、业务服务器将接收到登录票据以及Http服务器的请求地址发送到客户端;\n[0042] E、客户端根据接收到的Http服务器的请求地址向Http服务器发送Http下载请求;\n[0043] F、Http服务器对接收到的请求消息解析得到消息结构体并进行初步准确性验证,若验证通过则将该消息结构体转发给业务服务器;\n[0044] G、业务服务器将所述消息结构体中的用户账户和登录票据传送到用户身份验证服务器;\n[0045] H、用户身份验证服务器对登录票据进行解密并提取其中的信息进行比对,若比对后验证通过,向数据库服务器查询请求的用户群组通讯录信息,将查询结果组成响应消息结构体发送至Http服务器;\n[0046] I、Http服务器将所述响应消息结构体装载在Http数据包中发送给客户端。\n[0047] 可选的,用户身份验证服务器对用户身份进行鉴权时,具体搜索内部存储的用户账户和密码数据列表,对收到的账户和密码进行验证鉴权;若验证鉴权通过,在该用户对应的数据记录条目上设置该用户已经登录成功的信号量,并生成一个加密的登录票据,并向业务服务器返回用户登录成功的响应以及所生成的登录票据。\n[0048] 可选的,该系统中数据库服务器采用的数据库类型为关系数据库。\n[0049] 可选的,该系统所述业务服务器根据客户端的不同定制,提供的下载方式包括:全量下载、增量下载和实时下载;\n[0050] 所述下载请求包括根节点RequestData和节点EabRequest,其中根节点RequestData包括字段:TransactionID、RequestTime、ServiceType、Ticket,并 且节点 EabRequest 包 括:RequestMode、Accounts、RequestMode、Accounts、VersionTime、DepartmentID;\n[0051] 实时下载,用于从字段Accounts提取用户群组域名字符串,根据该域名字符串在用户群组信息数据表中查询用户群组ID,将用户群组ID和字段DepartmentID代表的聚焦部门ID作为参数,在数据库服务器中查询当前聚焦部门下属的子部门和下属职员,组成响应消息结构体,返回给Http服务器;\n[0052] 全量下载,用于从字段Accounts提取用户群组域名字符串,根据该域名字符串在用户群组信息数据表中查询用户群组ID,将用户群组ID作为参数,在数据库服务器中查询属于用户群组的所有部门、联系人、部门-联系人关系数据,组成响应消息结构体,返回给Http服务器;\n[0053] 增量下载,用于从字段Accounts提取用户群组域名字符串,然后根据该域名字符串在用户群组信息数据表中查询用户群组ID,查询用户群组通讯录的版本时间,与请求消息结构体中字段VersionTime的数值比较,若相同,则返回空的响应消息结构体给Http服务器,若不相同,则将用户群组ID和字段VersionTime的取值作为参数,在数据库服务器中查询更新时间晚于VersionTime的所有部门、联系人、部门-联系人关系数据,组成响应消息结构体,返回给Http服务器。\n[0054] 可选的,该系统所述业务服务器还用于提供添加用户群组、激活/注销用户群组、修改用户群组权限的业务功能;为用户群组管理员提供了本用户群组的维护管理功能,修改用户信息和用户权限。\n[0055] 从上面所述可以看出,本发明提供的在线浏览和下载用户群组通讯录的方法和系统,能够简单、高效地向互联网用户提供在线用户群组通讯录浏览、下载功能的服务。对于企业来讲,提供了新的面向企业用户的信息服务——企业通讯录,通过制定统一的接口和规范,能够向其他的业务功能提供企业通讯录服务,且提供了企业管理员自助管理的功能。\n通过该服务,用户可将包含企业联系人信息的企业通讯录交由在线服务提供商托管,用户在需要时,可以通过Http请求来获得通讯录中的联系人信息,企业通讯录服务可为用户的相关业务功能提供服务,如公司号码簿、客户端联系人列表等。\n附图说明\n[0056] 图1为本发明实施例在线浏览和下载企业通讯录的系统示意图;\n[0057] 图2为本发明实施例数据库服务器的数据库关系表示意图;\n[0058] 图3为本发明实施例在线浏览和下载企业通讯录的方法流程示意图。\n具体实施方式\n[0059] 为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。\n[0060] 为实现所述目的,本发明提出了一种在线浏览和下载用户群组通讯录的方法,该方法包括:\n[0061] A、客户端将用户账户和密码发送至业务服务器;\n[0062] B、业务服务器将接收到的账户和密码传送到验证服务器;\n[0063] C、验证服务器对根据接收到的账户和密码对用户身份进行鉴权,若成功,则生成加密的登录票据并送至业务服务器;\n[0064] D、业务服务器将接收到登录票据以及用户群组通讯录Http服务器的请求地址发送到客户端;\n[0065] E、客户端根据接收到的用户群组通讯录Http服务器的请求地址向Http服务器发送Http下载请求;\n[0066] F、Http服务器对接收到的Http下载请求消息解析得到消息结构体并进行初步准确性验证器;\n[0067] G、用户群组通讯录业务服务器将请求消息结构体中的用户账户和登录票据传送到用户身份验证服务器;\n[0068] H、用户身份验证服务器对登录票据进行解密,并提取其中的信息进行比对,对数据库服务器进行查询,将查询结果组成响应消息结构体并将其送至Http服务器;\n[0069] I、Http服务器将响应消息结构体装载在Http数据包中并通过网络发送给客户端。\n[0070] 其中,步骤C进一步包括:\n[0071] C1、验证服务器搜索内部存储的用户账户和密码数据列表,对传入的账户和密码进行验证鉴权;\n[0072] C2、若验证鉴权通过,验证服务器在该用户对应的数据记录条目上设置该用户已经登录成功的信号量,并且同时验证服务器生成一个加密的登录票据,并向业务服务器返回用户登录成功的响应以及所生成的登录票据。\n[0073] 所述下载请求包括全量、增量、实时三种方式。\n[0074] 所述下载请求包括根结点RequestData和节点EabRequest,其中根结点RequestData包括字段:TransactionID、RequestTime、ServiceType、Ticket,并 且节点 EabRequest 包 括:RequestMode、Accounts、RequestMode、Accounts、VersionTime、DepartmentID。\n[0075] 步骤F进一步包括:F1、验证根结点RequestData中的字段ServiceType是否指定了用户群组通讯录服务,字段Ticket是否为空;F2、验证节点EabRequest中的字段RequestMode的取值是否为三个预定设置值之一,字段Accounts中的用户账户是否满足规定的格式;对于增量下载,还需要验证字段VersionTime是否符合规定的时间格式;对于实时下载,需要验证字段DepartmentID是否为有效的部门ID格式;F3、若验证通过,则将该消息结构体转发给用户群组通讯录业务服务器处理;否则,则向客户端返回数据格式错误的提示信息。\n[0076] 步骤F进一步包括实时下载,用于从字段Accounts提取用户群组域名字符串,然后根据该域名字符串在用户群组信息数据表中查询用户群组ID,将用户群组ID和字段DepartmentID代表的聚焦部门ID作为参数,在相应关系数据表中查询当前聚焦部门下属的子部门和下属职员,组成响应消息结构体,返回给Http服务器。\n[0077] 步骤F进一步包括全量下载,用于从字段Accounts提取用户群组域名字符串,然后根据该域名字符串在用户群组信息数据表中查询用户群组ID,将用户群组ID作为参数,在相应关系数据表中查询属于用户群组的所有部门、联系人、部门-联系人关系数据,组成响应消息结构体,返回给Http服务器。\n[0078] 步骤F进一步包括增量下载,用于从字段Accounts提取用户群组域名字符串,然后根据该域名字符串在用户群组信息数据表中查询用户群组ID,查询用户群组通讯录的版本时间,与请求消息结构体中字段VersionTime的数值比较,若相同,则返回空的响应消息结构体给Http服务器,若不相同,则说明在客户端上一次登录后,数据库服务器中的用户群组通讯录有过更新,因此将用户群组ID和字段VersionTime的取值作为参数,在相应关系数据表中查询更新时间晚于VersionTime的所有部门、联系人、部门-联系人关系数据,组成响应消息结构体,返回给Http服务器。其中,用户群组通讯录更新过程如下:管理员在管理页面输入要更新的信息,并将更新的内容消息实体发送到业务服务器,将业务服务器当前的系统时间当作VersionTime,将更新内容写入数据库服务器中的部门数据表、联系人数据表、部门-联系人关系数据表中相应的字段中。另外,也可以当用户自身通讯地址发生变化时,通过客户端向业务服务器发送请求,由业务服务器更改数据库服务器中的部门数据表、联系人数据表、部门-联系人关系数据表中相应的字段。\n[0079] 下面结合附图和具体实施方式对本发明进行详细描述。\n[0080] 首先,参考图1所示,以在线浏览和下载企业通讯录为例,对本发明系统进行详细的说明。\n[0081] 如图1所示,该系统包括:数据库服务器101、业务服务器102、用户身份验证服务器103、以及Http服务器104。\n[0082] 整个系统中采用了三种接口形式,分别是Http(超文本传输协议)、Remoting(远程)、DAAB(Data Access Application Block)。其中Http主要是Http服务器104向客户端(包括:公司A、B、C以及其他用户和用户群组的管理员等)提供服务的接口形式,Remoting主要是业务服务器102与Http服务器104和用户身份验证服务器103连接通信的接口形式,DAAB主要是业务服务器102访问数据库服务器101的接口形式。\n[0083] 数据库服务器101存储企业通讯录相关数据,其中联系人信息以关系数据库的形式存储,向业务服务器102提供查询、增加、删除、修改的功能。数据库服务器101采用的数据库类型为关系数据库。包含联系人、部门、联系人-部门关系、企业等数据表,各数据表之间的关系如图2所示。联系人(Contact)、部门(Department)、联系人-部门关系(BelongToRelation)三个数据表都以CompanyID为外键与企业数据表(Company)相关联,这样可以区分用户所属的企业。此外,优选地是,在企业数据表中,可以建立虚拟企业,并与实际的多个企业进行关联,构成企业联盟,实现企业通讯录的共享。\n[0084] 业务服务器102完成企业通讯录的主要操作业务,其根据服务的对象不同,分为两大功能:一、向用户提供查询、下载企业通讯录信息的服务;二、向企业管理员和系统管理员提供维护企业通讯录的服务。\n[0085] 面向用户时,主要提供了企业通讯录的下载功能。根据客户端的不同定制,提供三种下载方式:全量下载、增量下载和实时下载。\n[0086] 全量下载是针对用户首次请求下载通讯录信息,并要求保存到本地时采用的下载方式;增量下载的应用场景是用户本地已经有较早版本的企业通讯录,且再次请求下载通讯录,业务服务器102则只将自较早版本至当前版本的修改记录发送给用户;实时下载的应用场景是用户不选择本地保存,只是实时的查询当前聚焦的部门,业务服务器102将该部门下属的子部门信息和联系人信息发送给用户。整个流程为:业务服务器102接收到Remoting接口传送来的请求消息,首先将消息中的用户账户等信息以一定的格式发送至用户身份验证服务器103进行验证,若验证通过,再根据请求消息中的通讯录下载方式,通过DAAB调用数据库服务器101获得数据,最后将返回的数据返回给用户。\n[0087] 业务服务器102面向企业管理员和系统管理员时,主要提供企业通讯录的维护管理功能。业务服务器102为系统管理员提供了添加企业、激活/注销企业、修改企业权限等业务功能;为企业管理员提供了本企业的维护管理功能,包括增加、激活、删除用户,修改用户信息和用户权限等。\n[0088] 用户身份验证服务器103提供验证用户身份的接口。当前比较成熟的用户身份验证服务器103一般具有单点登录功能(SSO,Single Sign-On),其往往为很多业务功能提供统一的用户身份验证服务。企业通讯录作为其中的一个业务功能,可以很方便的嵌入到其他业务功能中去,向其他业务功能提供企业通讯录服务。\n[0089] Http服务器104将内部的业务功能通过Http方式向用户和管理员开放。用户通过向该服务器104递交Http请求来下载企业通讯录信息;管理员则通过相应的管理页面来维护企业通讯录。其中,制订了统一的用户请求消息格式,只要用户的请求符合该格式,其请求消息就能够被正常受理。\n[0090] 接下来,参考图3,对本发明实施例的在线浏览和下载企业通讯录的方法进行详细的说明。\n[0091] 如图3所示,根据本实施例的方法包括步骤:\n[0092] 步骤301,用户在客户端输入用户账户和密码。\n[0093] 其中用户账户格式可以为username@domainName.com,其中username为用户名,domainName.com为企业域名,通过企业域名可以得知用户要访问那个企业通信录。\n[0094] 步骤302,客户端将用户所输入的账户和密码组合为登录请求并发送至业务服务器。\n[0095] 步骤303,业务服务器将接收到的账户和密码传送到验证服务器。\n[0096] 步骤304,验证服务器对用户身份进行鉴权。\n[0097] 具体地说,验证服务器搜索内部存储的用户账户和密码数据列表,对传入的账户和密码进行验证鉴权。\n[0098] 若验证鉴权通过,验证服务器在该用户对应的数据记录条目上设置该用户已经登录成功的信号量,并且同时验证服务器生成一个加密的登录票据,其中该登录票据中包括了用户账户和登录时间的字符串组合,并且向业务服务器返回用户登录成功的响应以及所生成的登录票据。\n[0099] 若验证鉴权失败,则验证服务器通过业务服务器将登录失败提示信息转发给客户端,流程结束。\n[0100] 步骤305,在验证鉴权成功的情况下,业务服务器接收从验证服务器返回的登录票据和用户登录成功响应,通知客户端登录成功,同时向客户端发送验证服务器生成的登录票据以及Http服务器的请求地址。\n[0101] 步骤306,客户端根据业务服务器返回的Http服务器的请求地址,向Http服务器发送Http下载请求。\n[0102] 该下载请求包括全量、增量、实时三种方式。该下载请求具体包括根节点RequestData和节点EabRequest。其中根节点RequestData包括字段:TransactionID、RequestTime、ServiceType、Ticket,并且节点EabRequest包括:RequestMode、Accounts、RequestMode、Accounts、VersionTime、DepartmentID。其中:\n[0103] TransactionID:业务ID,用来标示当前请求,取值为Guid,全局唯一。\n[0104] RequestTime:请求发起时间。格式为“yyyy-mm-dd hh:mm:ss”。\n[0105] ServiceType:服务类型。此处指定为企业通讯录服务。\n[0106] Ticket:加密的登录票据。取值为一随即字符串。\n[0107] RequestMode:企业通讯录下载模式。取值范围为101、201、202,分别代表实时、全量、增量三种下载模式。对于本领域普通技术人员来说,取值范围并不局限于此,采用其他方式也可。\n[0108] Accounts:用户账户。\n[0109] VersionTime:企业通讯录的版本时间。格式为“yyyy-mm-ddhh:mm:ss”。\n[0110] DepartmentID:当前聚焦的部门ID。\n[0111] 步骤307,Http服务器接收到Http下载请求后,对该请求消息解析,得到消息结构体,并进行初步准确性验证。\n[0112] 具体地说,首先验证根节点RequestData中的字段ServiceType是否指定了企业通讯录服务,字段Ticket是否为空;\n[0113] 然后验证节点EabRequest中的字段RequestMode的取值是否为101、201、202中之一,字段Accounts中的用户账户是否满足规定的格式;\n[0114] 对于增量下载,还需要验证字段VersionTime是否符合规定的时间格式;\n[0115] 对于实时下载,需要验证字段DepartmentID是否为有效的部门ID格式。\n[0116] 若验证通过,则将该消息结构体通过Remoting接口转发给业务服务器处理;否则,则向客户端返回数据格式错误的提示信息。\n[0117] 步骤308,业务服务器接收到Http服务器转发来的请求消息结构体后,通过Remoting接口将请求消息结构体中的用户账户和登录票据Ticket传送到用户身份验证服务器。\n[0118] 步骤309,用户身份验证服务器接收传入的用户账户和加密的登录票据,并对登录票据进行解密,提取其中的信息后,与验证服务器上用户账户相对应的信息进行比对,判断用户是否登录,登录是否超时等。\n[0119] 通过比对,若验证不通过,则向Http服务器返回false的布尔值,相应的,Http服务器向客户端返回未授权的错误提示信息。\n[0120] 若验证通过,则根据请求消息结构体中字段RequestMode的不同取值(101:实时下载、201:全量下载、202:增量下载),调用不同的接口方法,对数据库服务器进行查询,将查询结果组成响应消息结构体发送至Http服务器。具体操作如下所述:\n[0121] (1)实时下载\n[0122] 首先,从字段Accounts提取企业域名字符串,然后根据该域名字符串在验证服务器内的企业信息数据表中查询企业ID,若域名字符串对应的企业不存在,则返回数据不存在的错误提示信息结构体;否则,将企业ID和字段DepartmentID代表的聚焦部门ID作为参数,在数据库服务器中的部门数据表、联系人数据表、部门-联系人关系数据表中查询当前聚焦部门下属的子部门和下属职员,组成响应消息结构体,返回给Http服务器。\n[0123] (2)全量下载\n[0124] 首先,从字段Accounts提取企业域名字符串,然后根据该域名字符串在验证服务器内的企业信息数据表中查询企业ID,若域名字符串对应的企业不存在,则向Http服务器返回数据不存在的错误提示信息结构体;否则,将企业ID作为参数,在数据库服务器中的部门数据表、联系人数据表、部门-联系人关系数据表中查询属于企业的所有部门、联系人、部门-联系人关系数据,组成响应消息结构体,返回给Http服务器。\n[0125] (3)增量下载\n[0126] 首先,从字段Accounts提取企业域名字符串,然后根据该域名字符串在验证服务器内的企业信息数据表中查询企业ID,若域名字符串对应的企业不存在,则向Http服务器返回数据不存在的错误提示信息结构体;否则,查询企业通讯录的版本时间,与请求消息结构体中字段VersionTime的数值比较,若相同,则返回空的响应消息结构体给Http服务器。\n若不相同,则说明在客户端上一次登录后,数据库服务器中的企业通讯录有过更新,因此将企业ID和字段VersionTime的取值作为参数,在数据库服务器中的部门数据表、联系人数据表、部门-联系人关系数据表中查询更新时间晚于VersionTime的所有部门、联系人、部门-联系人关系数据,组成响应消息结构体,返回给Http服务器。\n[0127] 步骤310,Http服务器接收到业务服务器返回的响应消息结构体,这种响应消息结构体有两种可能:一种是带有实际数据的消息结构体;一种是带有错误提示的消息结构体。但在Http服务器不区分这两类消息结构体,其主要任务是将响应消息结构体转化为装载在Http响应数据包中的字符串,主要包括以下字段:\n[0128] TransactionID:业务ID,与请求消息中TransactionID的相对应。\n[0129] ResponseTime:响应时间,格式为“yyyy-mm-dd hh:mm:ss”。\n[0130] StatusCode:响应消息状态值,表示该操作是否成功;\n[0131] ReturnMessage:返回提示信息。\n[0132] 也就是说,Http服务器将所接收到的响应消息结构体装载在Http数据包中,通过网络发送给提出请求的客户端。\n[0133] 至此,一次请求的过程就完成了。\n[0134] 通过上述描述可知,本发明提供了一种新的面向企业用户的信息服务——企业通讯录,通过制定统一的接口和规范,能够向其他的业务功能提供企业通讯录服务,且提供了企业管理员自助管理的功能。\n[0135] 本公开可以采用完全硬件的实施例、完全软件的实施例或包括硬件和软件元件两者的实施例的形式。在优选实施例中,本公开可以用软件来实施,其可以包括但不局限于固件、驻留软件、微码等等。\n[0136] 以上所述的具体实施例仅为本发明的具体实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
法律信息
- 2012-06-27
- 2009-12-02
- 2009-10-07
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2004-12-29
|
2004-01-16
| | |
2
| |
2005-01-12
|
2004-04-02
| | |
3
| |
2006-12-13
|
2005-06-10
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |