User:Ken Ookami Horo/Sandbox/IRC/Orig
某个胡言乱语爪牙无措不知所云的 IRC 教程
所以 IRC 是个啥?
[编辑]因特网中继聊天(英语:Internet Relay Chat,缩写即IRC)是一种历史悠久、 应用广泛、成熟稳定的网络即时通讯协议,被广泛地应用于在线通讯和网络聊天中。 IRC最早由芬兰人雅尔口·欧伊卡林恁(Jarkko Oikarinen) 1988年8月创造以取代一个叫做MUT的程序,随后便一直在互联网中扮演重要角色。 凡是支持互联网的操作系统,几乎都可以使用IRC。虽然在2003年以后, 许多功能更加丰富的聊天程序和服务取代了只能进行纯文字交流的IRC, 许多曾经的大型IRC服务器日渐式微,但对于许多应用来说,依然是一种方便可靠的通讯方式。
IRC是一种RFC标准公开规定的,分布式的主从式架构—— 即服务端对客户端进行服务的网络即时通讯协议,采用TCP和SSL协议。在IRC协议中, 不同的独立服务器可以互相进行中继,组成一个整体,提供更加大型聊天网络服务, 这也是IRC名字中“中继”的由来。
IRC是一种协议,或者说仅仅是提供了聊天的一种方式, 而不是指单一具体的某个聊天电脑程序、软件或者网络服务器。 换句话说,只要有服务器和客户端软件实现了IRC协议, 就能够以IRC设计的方式进行在线聊天。 例如,IRC服务器可以是某个组织公开所运营的大型网络,不需要客户注册和登录即可使用; 也可以是私自架设的内部IRC服务器,公司内部使用IRC进行交流。
(话说本来想把这个教程写进 Wikibooks 去的但是就是严肃不起来啦 😂)
所以 IRC 就是一个 IM 协议啦,和 XMPP ,Matrix 一类的差不多。 虽然古老但是经久耐用啊(跑
后面都连最大的 IRC 服务器 https://freenode.net 好了 😂
更多的端口和连法(例如 plain、Tor )请参阅 https://freenode.net/kb/answer/chat
更换和注册昵称
[编辑]https://freenode.net/kb/answer/registration
有时汝可能会收到这样的消息:
This nickname is registered. Please choose a different nickname,
or identify via /msg NickServ identify <password>.
这就表示汝现在使用的 nickname 已经有人占啦 😂 这种时候汝首先应该换一个 nickname, 像这样(大部分 IRC 客户端应该都支持):
/nick Foo
然后汝是不是也想注册一个 nickname 呢?那首先汝先 /nick 一个没别人占而且合适的 nickname,然后:
/msg NickServ REGISTER password youremail@example.com
把 password 换成汝自己设置的密码,youremail@example.com 换成汝的一个邮箱。
顺便说一句大部分 IRC 客户端里 /msg 可以向一个用户发送 Private Message (私聊消息)?
然后应该会说些话(具体是啥咱忘了 😂),嘛打开汝的邮箱找 freenode.net 发来的邮件咯。 邮件里应该会有这一行:
/msg NickServ VERIFY REGISTER nick token
nick 是汝注册的 nickname ,token 是一串字母。把这行复制下来发出去就 OK 啦 😄
下次再登录的时候用 /msg NickServ identify <password> 验证(
一个账号上也可以注册多个 nickname:
- 首先先登录上现有的昵称。
- 然后使用 /nick 命令 切换到另一个昵称。
- 最后用 /msg NickServ GROUP 归组昵称。
如果客户端支持的话,可以参考 https://freenode.net/kb/answer/sasl 的文档启用 SASL 登录,就不用每次都输入密码啦 😂 (或者让客户端记住密码)
可以与 NickServ 私聊时输入 HELP 获得更多用法。
加入频道
[编辑]https://freenode.net/kb/answer/findingchannels
像这样搜索频道,不过大多数人应该目标明确……
大部分的客户端都可以用 /join #channel 的命令来加入频道,或者有加入频道的按钮。
进不去? 有的频道有不同的要求(例如只允许注册用户,强制 SSL ,需要邀请等等), 自己看客户端的报错咯 😂
其实还有可能是汝被 ban 啦,但是新人只要不乱说话应该不会 😂 ……
加入频道之后请马上看 topic (可能在加入时以一条消息的方式显示, 或者在客户端的某个位置。或者可以用 /topic 命令查看)。 一个频道的 topic 一般包含 了这个频道的基本规则,新消息和可用的资源(例如相关联的项目的官方网站)。如果汝是 去提问的,可能会在链接的资源里找到答案 :-)
交流
[编辑]- 大部分的频道都建议直奔主题,所以不要问“在不在”,“有人吗”之类的问题,直接提出问题就好啦~
- 不过还是要记得提问的智慧……
- 要提及某个用户(类似于其它 IM 上的 @),习惯上是这样:
- 要提及用户的昵称: 消息文本 大多数的 IRC 客户端会在这种情况下通知被提及的用户,有的客户端只要消息中有用户的 昵称就会通知 😂,不过记得不要滥用(有人觉得频繁的被通知是一种骚扰) 有的客户端会帮汝补全昵称(自动或者按 Tab 键补全),或者点击昵称就会自动添加上面 那样的提及语句,如果有的话可以利用一下。
- 多数IRC客户端具备信息记录功能。不过 IRC 服务器不会。
- 再不过有的频道会使用某些方式(例如机器人)对记录进行存档(可能会在 Topic 上写出来),有需要的话可以问问。
- 千万别刷屏!😂 也就是不要短时间内发好几条消息(或者一条太长的消息)。
- 各个频道具体的限制的话可以去看看 Topic ,或者去问问管理员 (Operator,有时会缩写成 op,汝的 IRC 客户端应该会特别的表示它们)。 刷屏可能(哦不,是一定)会使汝被频道封禁,严重的话可能会被服务器封禁。 如果想发送文件或者一长段文字(例如软件的日志)的话,请使用 Pastebin 服务(一会儿再说)。
- 有的频道里会有机器人,记得遵守频道里怎么用和啥时候用机器人的规则。
- 然后,遵守 freenode 一般规则 ,频道的其它规则和普通的礼仪 😂
使用 Pastebin 类服务
[编辑]Pastebin 是一类服务的称呼,可以叫“网络剪贴板”?
汝可以把信息发表到 Pastebin 上,会得到一个链接。然后把对应的网站链接发表在IRC频道内,解决刷屏问题。
解决刷屏问题。有些Pastebin还支持程序代码高亮,或者张贴图片,这样就可以解决IRC分享图片的问题啦~
嘛咱用过这两个:
- elimage 和 vimergy , 都是 https://github.com/Vim-cn 做的,一个贴图一个贴代码。
- pb ( https://github.com/ptpb/pb )
其实类似的服务有不少,例如 Pastebin.com (但是被墙了), 各种自由软件项目通常也都会有自己的 Pastebin ,例如 GNOME, 和 openSUSE 。
嘛 Pastebin 的网站上一般都有用法介绍,咱就不啰嗦啦 😂
创建和注册频道
[编辑]嘛不知道汝有啥动机要创建频道那就直接上了 😂
加入个没人的频道会让汝自动获得 Operator 权限,但是一掉就丢了…… 所以需要注册一下:
注册前速查表?
[编辑]- 汝已经在 freenode 上注册了?
- 要注册个啥频道?
- https://freenode.net/kb/answer/namespaces
- 以 # 开头的是主要(Primary)频道(实在想不出怎么翻译了 😂), 注册这种频道可能需要一个在 freenode 上注册的组织 ( https://freenode.net/groupreg )。
- 以 ## 开头的是话题(Topical)频道,好像没有啥特殊要求?
- 合不合乎频道政策(https://freenode.net/changuide) 和指导(https://freenode.net/changuide)?
注册频道
[编辑]首先先加入想要注册的频道,这时汝该会自动获得 Operator 权限。
然后和 ChanServ 私聊一下就好:
/msg ChanServ REGISTER ##channel
大概会收到这样的消息:
- channel is now registered to nickname.
Channel guidelines can be found on the freenode website: http://freenode.net/changuide
This is an "about" channel as per http://freenode.net/policies#channel-ownership
这样就表示注册成功啦~
当汝下次加入这个频道时,可以和 ChanServ 私聊重新拿回 Operator 权限。
/msg ChanServ OP ##channel nickname
频道的 Operator 可以用 /mode 命令为频道设置不同的模式 (参见 https://freenode.net/kb/answer/channelmodes )。
和 NickServ 类似,可以与 ChanServ 私聊时输入 HELP 获得更多用法。
最后记得 Freenode 的知识库 是汝的 friends 哦(雾