简介:想要用 Asynchronous JavaScript and XML (Ajax) 聊天么?您是否希望弹出一个专用的、开 源 Web 聊天功能以响应系统事件并使您了解正在发生的事情,比如性能低于服务保证水平? developerWorks 的定期撰稿人 Judith Myerson 为系统管理员介绍了双面板(two-panel)聊天的理念, 这样就可以一方面交换私人消息,一方面向一般用户广播消息。她还提供了针对聊天服务器过载等问题的 解决方案,谈到了下载 Ajax Chat、更改配置以及添加尽量多的频道等问题。
简介
使用过即时消息聊天软件的人,可能都会想要找到一种免费的、开源 Web 聊天软件,在这样的软件中 ,您可以使用自己的代码定制聊天的外观和感受以及它向服务器上的数据库发送消息的方式。有了 Ajax Chat,您就可以停止寻找了,Ajax Chat 是一种用 JavaScript、PHP 和 MySQL 实现的应用程序,在 GNU Affero General Public License 下发布。
Ajax Chat 有两种版本 — 独立版和论坛集成版。您可以随心所欲地添加或减少频道。只要不影响现 有资源,在所托管的环境内就没有最大聊天频道数的限制,并且添加频道(以及用户和数据库)也不会有 任何成本。
借助 Ajax Chat,可以发送私人或广播消息、删除聊天内的消息、定义聊天的开放时间、设置长度计 数器,以及使用 Cascading Style Sheets (CSS) 和模板系统定制布局。Ajax Chat 还具有安全性,能够 防止代码注入、SQL 注入、跨站点脚本攻击、会话偷窃以及其他攻击。只需确保系统能够提供聊天漏洞的 应对之策以防止黑客利用这些漏洞进行攻击。
频道期望清单(wishlist)
可以将其中的一个频道作为系统和用户管理员用来发送和接收系统状态实时告警的专用频道。例如, 可以使此频道由系统事件触发后弹出,然后发出警告声音并在认定您当前刚刚离开客户机后发出呼叫以引 起您的立即注意。以下是系统事件的一些例子:
系统性能下降到服务水平协议(Service Level Agreement,SLA)内定义的服务保证水平之下时
将性能恢复到该服务水平的建议工具
性能恢复的进展状态
性能回到服务保证水平时
性能低于服务水平的时长以及它在系统内发生的位置
期望清单包含了管理员聊天功能的第二个面板以便向用户广播消息,例如,性能等级的状态或 socket 服务器何时需要因维护和修理而关闭,以及它们何时能重新启动。当系统正常运行时,开发人员和管理员 可以使用这个第二个面板来指向行业范围的开源 Ajax 库。
为了侦听聊天消息,必须确保聊天客户机能够建立与此 socket 服务器的永久连接。因为,在默认情 况下,只有本地客户机(127.0.0.1,::1)可以广播消息,若要允许其他客户机(比如,您的系统管理同 事)发送广播消息,就需要更改默认设置。
首先进入 SourceForge.net 的 Blueimp Ajax Chat。这里有几个文件压缩包。应该下载并解压缩的第 一个文件当然是主要的聊天应用程序文件:ajax_chat-0.8.1.2.tar.gz。
这些文件解压缩后会被自动放入如下的文件夹:css、 flash、img、js、lib、socket、sounds 和 src。其他还需下载的文件将集成 Ajax Chat 与 phpBB2、phpBB3、MyBB、PunBB、SMF、vBulletin 和其 他的 PHP 社区文件。
在上传并安装服务器端聊天文件之前,需要编辑三个配置设置:database、channel 和 user。在上传 了这些文件之后,创建数据库表,然后删除安装脚本。此外,在服务器上还必须安装 MySQL。