基于微博开放平台的图书馆社会网络服务整合模式

2013-09-29 01:59林泽斐福建师范大学社会发展学院福州350013
数字图书馆论坛 2013年8期
关键词:网络服务开放平台调用

□ 林泽斐 / 福建师范大学社会发展学院 福州 350013

基于微博开放平台的图书馆社会网络服务整合模式

□ 林泽斐 / 福建师范大学社会发展学院 福州 350013

文章调查了图书馆界利用微博开展读者服务的现状,分析了图书馆利用微博开放平台开展社会网络服务的可行性,并以腾讯微博开放平台为例提出了以图书馆为中心、以地理区域为中心和以文献资源为中心三种社会网络服务整合模式。

微博,图书馆,开放平台,社会网络服务

1 图书馆界微博应用模式现状

微博(Microblogging)是一种以简短文本(通常少于140字)为基本信息传播单元的博客(Blog)服务形式。微博服务自2006年7月由Twitter率先推出以来,在传媒、政治、科技和公益等领域得到了普遍应用。2008年,微博应用在我国开始出现,此后用户数量呈不断增长趋势,尤其在新浪、腾讯、搜狐与网易四大门户网站相继推出微博服务后,微博应用的用户渗透率迅速提高。截至2012年12月底,中国微博市场用户规模达3.09亿,占中国网络用户比重达54.7%[1],且微博用户群体与高校学生、知识分子等图书馆主要读者群具有较大程度的重合。

自Library 2.0理念被引入图书情报界后,国内外图书馆领域不乏采用博客、维基及社会化书签等Web 2.0技术加强用户体验的实例。微博作为近年来具有代表性的Web 2.0应用模式之一,秉承了强交互性、去中心化、体系开放等Web 2.0的基本特性,这使部分具有前沿理念的图书馆很自然地将其作为重要的读者服务渠道。据笔者调查,包括美国国会图书馆、纽约公立图书馆、不列颠图书馆、哈佛大学图书馆在内的世界大型图书馆均在Twitter中开设有官方账户,其中关注用户(Followers)数最多的美国国会图书馆截至2013年2月已拥有超过47万名关注用户。我国图书馆界开展微博应用的时间较晚(重庆大学图书馆与厦门大学图书馆于2009年11月始在新浪微博率先开通官方账户),但近两年来图书馆微博应用增速较快。据统计,截至2011年8月,国内用户活跃度最高的新浪微博平台共有实名认证的图书馆微博账号117个,其中关注用户数最多的北京市东城区图书馆共拥有超过2.7万名关注用户[2]。

从服务形式方面看,目前我国图书馆界的微博应用主要可分为三种类型:

(1)信息公告类。即利用微博发布图书馆的最新活动通知及读者服务公告事项。

(2)资源推介类。即通过微博提供馆内数据库资源、新进特色文献,或以转发微博的方式向读者推介第三方微博信息。此类微博应用常以短网址(URL shortening)形式附带有图书馆网站对应资源的链接,以弥补单条微博承载信息量有限的缺陷。

(3)参考咨询类。即利用微博的交互特性,由用户向图书馆官方账户发送信息(如馆内资源利用咨询、对图书馆工作的意见等),再由图书馆以公开或私信的方式回复。

可以看出,上述微博服务模式与传统的图书馆Web站点相比,尽管在信息传播方式上具有特色,但其实质内容与图书馆网站中“服务公告”、“馆藏推荐”和“参考咨询”等栏目具有雷同之处,未能充分利用微博的社交特性开展个性化服务。同时,微博平台与图书馆Web站点的相互独立也带来了图书馆在信息交互方面的“信息孤岛”问题——两类读者服务渠道无法实现信息共享,在一定程度上加大了人工维护成本;对于读者而言也往往具有平台割裂感,不利于形成“一站式”的用户体验。

2 微博开放平台应用于图书馆社会网络服务的可行性分析

社会网络服务(Social Networking Services ,SNS)是一种旨在帮助人们建立社会性网络的互联网应用,是真实社会关系向网络虚拟关系的延伸[3]。目前,已有部分图书馆尝试在原有图书馆管理系统基础上提供社会网络服务,如重庆大学图书馆利用SNS理论构建了Lib 2.0知识服务社区“个人书斋”,为读者提供文献收藏、文献互助、文献交换、迷你博客和读书笔记等知识服务功能[4]。然而,当前图书馆所提供的社会网络应用多独立于读者日常使用的社会网络平台,无法与现有成熟的社会网络关系链资源进行对接整合。而以微博开放平台为代表的社会网络开放平台的出现,则为图书馆利用外部资源开展社会网络服务提供了可能。

开放平台(Open Platform)指的是软件系统将其应用程序接口(Application Program Interface,API)公开,从而在不改变现有系统源码的情况下通过外部程序实现系统功能的扩展。在互联网环境中,特别是近年来在Web 2.0理念的影响下,大量网站将其功能模块封装为开放接口(Open API),再由第三方网站采用指定授权机制调用这些Open API,实现网站的功能扩展。国内部分图书馆(如厦门大学图书馆、上海图书馆)已开始采用豆瓣图书API、Google Books Search API增强其OPAC的读者体验。

目前,主流微博服务提供商均提供了基于REST架构的开放接口。经笔者统计,截至2013年2月,国内主要微博服务提供商所开放的API类型可列表如表1。

由上表可知,国内主要微博服务提供商均提供有用户鉴权、微博读写、用户个人资料读取、好友关系链维护、私信收发、收藏管理及微博搜索等基本服务的接口。基于这些基本服务接口,图书馆可实现包括跨平台单点登陆、用户关系数据读写、社会化书评信息发布等社会化服务。此外,图书馆也可利用新浪微博与腾讯微博两大国内市场占有率较高的微博服务提供商所提供的LBS位置服务、热度趋势读取等接口,实现基于地理位置的社交服务、热点微博和好友推荐等个性化社会网络集成服务。

表1 信息素养总体情况的描述统计分析表

需要注意的是,为保障开放平台的良性发展,国内各微博开放平台所提供的开放接口均具有一定的调用限制,即第三方应用在调用开放接口的过程中,不应超过平台所规定的调用频度。当前国内各微博开放平台的调用限制可分为应用限制、服务器IP限制、用户限制三种类型,其中应用限制规定了每个第三方应用在一定时间段的最大总调用数;IP限制规定了第三方应用的每台服务器在一定时间段的最大总调用数;用户限制规定了第三方应用在读写用户微博时,一定时间段内单个用户最大调用数。同时,微博开放平台的调用限制通常还具有级别维度,即将第三方应用分为多个级别,不同级别的应用具有不同的调用限制。如新浪微博开放平台规定,根据开放接口调用方的级别(处于测试阶段的应用、经过审核的应用或认定为合作伙伴的应用)不同,单台服务器IP的请求次数限制从1000次/小时至40000次/小时不等[5]。腾讯微博则规定根据开放接口调用方的级别不同,每个第三方应用的API总调用次数从1000次/小时至7.5亿次/小时不等[6]。从主要微博平台提供商当前已公布的调用限制条件来看,经过审核的普通第三方应用限制足以满足大中型图书馆的使用需求。此外,图书馆还可通过申请成为微博开放平台合作伙伴等方式,进一步提高开放接口的调用上限,保证整合平台的稳定性。

3 图书馆集成微博社会网络服务的模式及实现

通过利用当前国内主流微博开放平台所提供的接口,图书馆可在采用OAuth协议进行用户鉴权的基础上提供以图书馆为中心、以地理区域为中心和以文献资源为中心三种无缝化的社会网络整合服务形式。

3.1 基于OAuth协议的用户鉴权

将微博开放平台提供的开放接口应用于图书馆社会网络服务的前提为获得业务接口的使用授权。当前各微博开放平台普遍采用基于OAuth 2.0协议的授权接口。OAuth协议是2007年由Blaine Cook、Chris Messina等人所提出一种基于Web的登录验证标准,其特点在于能够在开放接口的调用方不触及用户的敏感帐号信息的前提下获得操作用户资源的授权,并可防止在传输过程中被恶意者通过截包分析方式获取用户帐号与密码[7]。基于OAuth的用户鉴权除了可为图书馆整合社会网络服务提供支撑,也同步实现了图书馆系统的跨平台单点登陆,即通过绑定图书馆借阅账号与微博平台账号,避免了读者在不同应用场景下记忆不同账号和密码,提升了读者的用户体验。

本文以腾讯微博作为微博开放平台提供商为例,描述图书馆实现用户鉴权的流程:

(1)图书馆在微博开放平台(如open.t.qq.com)注册第三方网页应用,并获得由开放平台分配的App key和App Secret,用于在调用接口的过程中证明图书馆身份的合法性。

(2)在读者登陆界面将用户链接至腾讯微博OAuth认证接口URL,如https://open.t.qq.com/cgibin/oauth2/authorize?client_id=APP_KEY&respons e_type=code&redirect_uri=http://www.library.com/example。其中client_id参数填入平台分配的App key,redirect_uri参数用于指定认证成功后系统回调至图书馆的指定URL。

(3)用户授权完成后授权服务器会将用户的浏览器重定向到redirect_uri,并带上code参数,如http://www.library.com/example?code=CODE。其中code参数值为用来换取Access Token的授权码,有效期为10分钟。

(4)图书馆服务器应在授权码有效期内使用授权码换取Access Token。如调用https://open.t.qq.com/cgi-bin/oauth2/access_token接口,并以GET请求方式提交开放平台分配给图书馆的App key、App Secret以及步骤3中系统返回的授权码。

(5)微博开放平台将对授权码有效性进行验证,若验证成功将返回名为access_token、expires_in和openid的键值对,其中access_token为图书馆后续调用其他微博开放平台API的访问令牌,expires_in为以秒计算的该Access Token过期时间,openid为用户统一标识,用于唯一的标识微博平台的一个用户。

图书馆获取读者的Access Token后,即拥有了对读者微博数据的访问和控制权限。读者首次使用微博账号跨平台登陆时,必须让读者输入读者借阅证号,以实现借阅证号与微博账号的绑定。图书馆可在图书管理系统后台数据库的user表中,针对不同微博入口增加access_token字段,如sina_access_token、tencent_access_token,用于存储读者各微博平台的Access Token,使读者二次登陆时无需重复授权。值得注意的是,为保障用户账号安全,各微博平台分发的Access Token均具有一定的有效期限制,如腾讯微博对已审核应用的Access Token有效期限制为15天,合作伙伴应用有效期为30天。图书馆后台系统必须在Access Token过期后要求用户再次授权以获得新的Access Token。

3.2 以图书馆为中心的社会网络服务

以图书馆为中心的社会网络服务是以图书馆官方微博账户为纽带,将同一图书馆的读者微博账号构成关系链的服务形式。其具体实现步骤为:

(1)图书馆向微博服务提供商注册官方微博账号,该账号既为图书馆发布信息公告、提供读者服务的平台,同时也作为图书馆社会网络服务的中心结点。

(2)使用3.1节所述方法获取图书馆官方账号的Access Token及Open ID。

(3)当读者首次以微博账号登陆图书馆平台并进行账户绑定时,通过微博开放平台提供的用户关系链接口使读者微博账号关注图书馆官方账户。如在腾讯微博平台中,可调用http://open.t.qq.com/api/friends/add接口,并以POST请求提交fopenids参数,参数值为图书馆官方账户的Open ID,实现以图书馆账户为中心的关系链构建。

(4)通过调用微博开放平台提供的账户信息接口,获取图书馆账号的听众总数。例如在腾讯微博平台调用http://open.t.qq.com/api/user/info接口,并以GET请求提交步骤2获取的图书馆Access Token及Open ID等参数,通过XML解析器解析返回的XML文件中〈fansnum〉标签内容,即可获取官方微博听众总数。

(5)通过调用开放平台提供的关系链接口,随机拉取图书馆账号的听众列表。例如通过调用http://open.t.qq.com/api/friends/user_fanslist接口,并以GET请求提交reqnum=10&startindex=0&name=ope n_library&format=json,即可以JSON格式获取图书馆微博账号中前10名听众信息。图书馆服务器可通过伪随机数生成器改变startindex(听众列表起始位置)和reqnum(请求听众信息数量),随机获取本馆读者微博账号,并通过图书馆前台Web服务器将好友列表推送给读者。

以图书馆为中心构建图书馆社会网络服务的实现方式较为简便,但向读者推送的好友针对性有所欠缺。

3.3 以地理区域为中心的社会网络服务

以地理区域为中心的图书馆社会网络服务可以基于部分微博开放平台所提供的LBS(Location Based Services)接口,向读者推送指定地理区域的好友信息,其实现方式为:

(1)通过Google Earth等地理信息系统获取图书馆指定区域的经纬度坐标,并将度分秒单位转换为十进制经纬度。

(2)调用微博开放平台所提供的LBS接口,获取指定地理区域的读者信息。例如通过调用腾讯微博开放平台的https://open.t.qq.com/api/lbs/get_around_people接口,并以POST请求提交longitude(十进制经度)及latitude(十进制纬度)参数键值对,即可获取当前位于某校区图书馆或图书馆指定区域的读者信息。

(3)由于读者进入图书馆指定区域的时间本身具有随机性,图书馆服务器可直接向相关人群推送当前处于热点区域的读者信息。

以地理区域为中心构建的图书馆社会网络服务特别适用于存在分校区或占地面积较大的图书馆,且被推送的读者通常属于图书馆的活跃用户,但该方法仍无法保证推送与被推送对象兴趣的一致性。

3.4 以文献资源为中心的社会网络服务

以文献资源为中心的图书馆社会网络服务将读者的借阅记录与微博开放平台相联接,从而能向对特定文献资源感兴趣的读者推送已借阅读者的微博信息,其实现方式为:

(1)当已绑定有微博账号的读者在图书馆借阅某种文献资源时,图书管理系统自动调用微博开放平台的微博发布API。例如,假设图书馆官方微博账号为open_library,则当读者产生借阅记录时,系统调用腾讯微博开放平台提供的https://open.t.qq.com/api/t/add接口,并以post请求提交content参数值为:我从@open_library借阅了《文献题名》(ISBN:978xxxxxxxxxx),同时附带读者已绑定的微博平台账号授权参数(用户的Access Token和Open ID)。用户所发表的微博content参数值应具有一定的特征标识,如通过@图书馆官方微博账号,既有助于对官方微博起到宣传效应,也为后续借阅记录的筛选起到增强查准率的作用。

(2)当有其他读者通过OPAC检索相关文献资源时,可在该文献资源详细书目信息下方显示已借阅过该文献的读者微博用户列表。微博用户列表可通过调用微博搜索接口实现,如针对腾讯微博平台,可调用https://open.t.qq.com/api/search/t接口,并以GET请求提交参数keyword=open_library ISBN:9787111126768,即检索同时包含官方微博账号标记及指定ISBN号的微博记录,通过XML解析器解析出返回的XML结果中的〈name〉标签,即可获得已借阅过该文献读者的微博账号,进而可通过微博平台的账户接口获取该账号的其他详细信息。

以文献资源为中心构建图书馆社会网络服务,能够从用户共同兴趣出发建立读者关系链,具有较强的针对性,同时图书馆还可基于该方法进一步开展微博书评等服务,但该方法的实现需要对原有图书馆管理系统作部分改造,以便在借阅记录产生时自动触发相应接口。

4 结语

在Web 2.0环境下,以读者为中心的理念已成为图书馆开展数字化服务的重要准则,而以微博开放平台为代表的数字生态环境的出现,极大地简化了虚拟化的读者关系链建立流程。在基于微博开放平台的图书馆社会网络服务的建设模式选择方面,以图书馆为中心、以地理区域为中心和以文献资源为中心三种方式各有利弊,图书馆可针对自身服务模式和现有系统的技术特色进行选择。总体而言,采用微博开放平台的图书馆社会网络服务相对于传统方法,可以充分利用微博平台广泛的用户资源,有助于形成统一的用户体验,对现有系统的改造成本低,且具有较强的灵活性,具有广阔的发展空间。

[1] CNNIC.第31次中国互联网络发展统计报告[EB/OL]. [2013-02-09]. http://www.cnnic.cn/research.

[2] 黄淑敏.图书馆微博使用特征及发展策略研究[J].大学图书馆学报,2012(1):78-83.

[3] 寇小文,吴剑霞.基于SNS的图书馆知识社区构建[J].现代情报,2009(10):99-102.

[4] 苏建华,汪初芸.国内外高校图书馆应用SNS的比较研究[J].情报资料工作,2011(2):102-104.

[5] 新浪微博开放平台.接口访问频次权限[EB/OL]. [2013-01-12]. http://open.weibo.com/wiki/Rate-limiting.

[6] 腾讯微博开放平台.API调用权限[EB/OL]. [2013-1-20]. http://wiki.open.t.qq.com/index.php/API调用权限.

[7] OAuth Community. Outh Introduction [EB/OL]. [2012-06-03]. http://oauth.net/about/.

Construction of an Integrative Library Social Networking Services - Based on Microblogging Open Platform

Lin Zefei / Fujian Normal School, Fuzhou, 350013

This paper surveys the current situation of the library use of microblogging, analyzes the feasibility of the library social networking services based on open microblogging platform, and proposes three social network integration modes illustrated by the case of Tencent microblogging open platform.

Microblogging, Library, Open platform, Social networking services

2013-03-06)

10.3772/j.issn.1673—2286.2013.08.013

林泽斐(1983- ),男,福建福州人,任福建师范大学社会历史学院助教,研究方向:信息管理与信息系统。E-mail:hoyou.lin@gmail.com

猜你喜欢
网络服务开放平台调用
基于百度地图开放平台的导航电子地图课程实践教学研究
网络服务合同的法律问题研究
基于在线开放平台的混合式课堂教学模式构建与实践
核电项目物项调用管理的应用研究
LabWindows/CVI下基于ActiveX技术的Excel调用
基于AliGenie语音开放平台的传统家居智联网解决方案
网络服务行为的可罚性
网络服务安全效率两相宜
基于系统调用的恶意软件检测技术研究
云计算开放平台的知识产权问题研究