读者通过此文可以了解到 StatusNet 的安装、部署知识,而 API 及相关 demo 开发的介绍可以让开发人员学习到怎样快速的制作企业或个人需要的微博应用程序。
什么是微博(Microblogging)
几年前,所有人还在兴致勃勃的谈论博客的流行和发展趋势,众多门户网站、科技公司及开发人员也都先后进入到这个领域,传统报刊杂志和专栏作家们的命运一夜间变得岌岌可危,但谁也没有想到的是短短几年间那些长篇大论、排版华丽的博客文章被一种只有 140 字节限制,类似于短消息形式的信息发布方式所取代,它的名字叫做"微博(Microblogging)"。我们在这里不更多的去探究微博的起源和发展,多数人只要知道微博可以让我们更加便捷的通过邮件、即时通讯工具甚至短信将所见所闻所感与他人分享即可。在微博世界,每个人都是信息的制造者,每个人也都是信息的消费者与传播者,有人打趣的说"140 字的限制将平民和莎士比亚拉回到了同一起跑线上"。
一种新的企业沟通工具
现代的企业和各种组织大多数时间都使用 Email、IM 或专业的 OA 系统进行协同办公与信息交流,但我们也发现由于传统工具局限性所带来的沟通效率低下的问题。你有没有遇到发出一封邮件却迟迟得不到答复的情况?有没有在几十万员工的企业中却找不到与自己兴趣相投的人?有没有因为出差而无法及时报告状态的时候?有没有希望在组织内部调换岗位却发愁找不到适合自己的职位? ...... 而微博信息发布的快速便捷、信息共享的多对多关系、基于标签或话题的信息粘合性以及微博生态环境的社会性都会为企业人员之间的沟通带来提升与帮助,随着加入微博系统的人数与日俱增,微博也将成为企业信息社会化软件的核心构件之一。
开源微博系统 StatusNet
由于微博带来的信息共享方式的种种变革,更多的个人及企业也都在试图构件自己的微博系统,各种 Open Source 的微博服务软件也随之孕育而生,基于 PHP 语言编写的 StatusNet 便是其中之一,很多国外知名微博网站也都是使用 StatusNet 架设。下面是 StatusNet 官方网站列举出的一些关键功能:
共享文件 自定义小组 追踪流行话题 添加自定义组件和扩展 自定义页面风格 连接其他社会化网络 桌面或移动设备的多种访问方式
StatusNet 的安装及部署
下载安装源
用户可以选择注册为 StateNet 会员,直接享受部署在其云计算平台上的微博服务。此外也可以从其官方网站下载源文件,将系统部署在自己的网络上,最新的软件版本为 0.9.6 "Man on the Moon"。
图 1. StatusNet 首页
安装前的准备工作
必要的软件包
PHP 5.2.3+ MySQL 5.x Web Server,
例如 Apache 2.2.x(安装并开启 mod_rewrite 扩展)
PHP 安装必须包含的扩展
Curl - 用 HTTP 方式传输文件 XMLWriter - 格式化 XML 和 HTML 输出 MySQL - 访问数据库 GD - 压缩图片 Mbstring - 处理 Unicode (UTF-8) 编码字符 .
针对一些额外功能的扩展
Memcache - memcached server 客户端,可以帮助缓存数据库信息以减少频繁的数据库操作带来的性能问题 Mailparse - 解析来自于邮件的服务请求
Sphinx Search - sphinx server 客户端,针对 MySQL 或 Postgresql 的全文检索 Bcmath 或 gmp - 针对 Salmon signatures (OStatus 协议的一部分 ) Gettext - 针对多语言环境
StatusNet 所需的其他外部库文件都放置在安装源的 extlib 目录下,用户不需要另外的下载和安装,只需要在今后根据新版本的要求升级这些库文件即可。而 StatusNet 也宣称其设计目标是让最基本的功能能够工作在绝大多数主机服务商的平台上。有关 Jabber/GTalk 或者 Email/SMS 关联配置的信息将不在本文中进行具体讲解。