黑客与 / - 真正困扰我的 IRC:即时消息
对我而言,IRC 是与朋友快速沟通的理想界面。我始终在我的服务器上通过 screen 运行一个控制台 IRC 会话 (irssi)。通过这种设置,我可以持续潜伏在所有我想关注的频道中,并重新连接到会话,无论我使用哪台机器。因为我的许多朋友都使用 IRC,所以保持联系非常容易。我可以每天与他们聊天,如果当我不在线时他们需要告诉我一些事情,他们可以给我留言,下次当我坐在电脑前时我会看到它。对我来说,IRC 界面最适合群聊和私聊——以至于我更喜欢它胜过即时消息。
当然,并非我所有的朋友都使用 IRC。即使是那些使用 IRC 的朋友,他们也并非都喜欢在那里进行所有的沟通。因此,除了 IRC 之外,我还维护着即时消息帐户。这意味着为了与所有人保持联系,我需要同时打开 IRC 和即时消息程序。此外,除非我在我的服务器上设置一个基于文本的 IM 客户端,否则我必须在我面前的任何计算机上启动一个本地客户端,当我在使用别人的计算机时,这是不可能的。最重要的是,我的一些朋友已经用 Twitter 取代了聊天和 IM,这意味着又一个帐户和又一个程序在我的桌面上打开——至少理论上是这样。相反,我发现了一些程序,它们让我可以将所有内容都整合到 IRC 会话中,因此给某人发送 IM 就像发送 IRC 私人消息一样简单,并且每个人的 Twitter feed 都变成了 IRC 频道中的另一个评论。在本专栏中,我将讨论如何从 IRC 内部访问您的 IM 帐户,在后续专栏中,我将讨论如何访问 Twitter,因为它们各自需要不同的程序。
使 IM 在 IRC 中成为可能的程序是一个名为 Bitlbee (www.bitlbee.org) 的 IM 到 IRC 网关。基本上,Bitlbee 在您的本地机器上设置一个 IRC 服务器,您可以像连接到您可能已经使用的任何其他 IRC 服务器一样连接到该服务器。连接到服务器后,您可以加入 #bitlbee 频道并使用其中的机器人进行身份验证。然后,您可以使用您的 Jabber、MSN、Yahoo 或 Oscar (AIM/ICQ) 帐户配置 Bitlbee。设置完成后,当您的朋友在线时,他们会加入频道,当您在 IRC 频道内与他们交谈或私聊时,它会将其转换为即时消息。
Bitlbee 应该已针对大多数主要发行版打包,因此您可以像安装任何其他程序一样安装它。否则,只需从主项目页面拉取并编译源代码。Bitlbee 使用 inetd,因此一旦您连接到 IRC 端口,inetd 会自动生成一个 Bitlbee 进程。根据您的发行版,安装后脚本可能会或可能不会自动在 inetd.conf 中设置行。如果它没有设置,请将以下行添加到 /etc/inetd.conf
6667 stream tcp nowait bitlbee /usr/sbin/tcpd /usr/sbin/bitlbee
安装 Bitlbee 后,转到您的 IRC 程序并连接到新服务器,但将 localhost 替换为典型的主机名。连接到服务器后,加入 #bitlbee 频道。Bitlbee 包含一个内置的帮助程序。只需输入帮助即可查看帮助主题列表,或输入帮助后跟特定的 Bitlbee 机器人命令,以查看该命令的帮助。除了这些帮助主题之外,Bitlbee 还包含一个快速入门主题(输入帮助 quickstart),它将引导您完成设置 Bitlbee 帐户和添加 IM 帐户的过程(我在下面介绍了相同的步骤)。
在您可以使用 Bitlbee 进行 IM 之前,您需要做的第一件事是在服务器上注册一个帐户,以便它可以保存您的所有 IM 帐户设置、联系人和其他信息,并使用密码保护它。输入
register password
注册后,您可以开始添加 IM 帐户。account 命令允许您从 Bitlbee 添加或删除帐户,添加帐户的语法是
account add protocol username password server
这个协议上面应替换为 jabber、msn、yahoo 或 oscar,具体取决于您的 IM 帐户使用的聊天协议。然后,列出您的 IM 帐户的用户名和密码。最后一个服务器字段仅在 oscar 协议中需要,因此它知道是连接到 AOL Instant Messenger 服务器 (login.oscar.aol.com) 还是 ICQ 服务器 (login.icq.com)。其余协议不需要它。因此,例如,如果我有一个名为 test 的 AOL Instant Messenger 帐户,密码为 mypassword,我将使用以下命令添加它
account add oscar test mypassword login.oscar.aol.com
添加完所有 IM 帐户后,在 #bitlbee 频道中输入
account on
,Bitlbee 将启用并登录到您的所有帐户。Bitlbee 应该会自动下载您的联系人列表,并且那些在线的联系人将显示为他们加入了频道。由于 Bitlbee 会重命名您的联系人列表中的人员,以便他们拥有更友好的 IRC 名称,因此您最终可能会遇到来自不同帐户的人员,他们的名称相似或至少令人困惑。要澄清问题,只需使用 rename 命令,后跟旧昵称,然后是您要使用的新昵称。
设置好您的帐户后,您可以与当前在 #bitlbee 频道中的任何人聊天。只需输入他们的昵称,后跟冒号 (:),然后说出您想说的话。或者,您可以像使用任何其他 IRC 频道一样使用 /msg 设置私人聊天。
以获取您已注册的帐户列表及其 Bitlbee 编号。然后,要添加用户,请输入添加,通过您在与帐户关联的帐户列表中看到的编号,最后,添加用户的句柄。因此,如果我想将名为 mybuddy 的用户添加到我设置的第一个帐户(因此它将是帐户 0),我将输入
add 0 mybuddy
要从我的联系人列表中删除该用户,我将输入
remove mybuddy
因为 Bitlbee 在频道中为每个用户提供唯一的昵称,所以当您删除昵称时,您不必指定与昵称关联的 IM 帐户。
就是这样。现在您已准备好在您的 IRC 会话中进行所有 IM 聊天。当然,您可以在 Bitlbee 中调整许多其他命令和设置。首先,输入帮助并查看频道内所有可用的帮助主题和教程。我建议您首先通读所有快速入门主题,然后扩展到其余命令。至于我,我将像往常一样潜伏在 IRC 中(例如 irc.freenode.net 上的 #linuxjournal 频道)。
Kyle Rankin 是旧金山湾区的一名高级系统管理员,也是多本书籍的作者,包括 O'Reilly Media 出版的 Knoppix Hacks 和 Ubuntu Hacks。他目前是 North Bay Linux Users' Group 的总裁。