【发布时间】:2015-08-11 16:23:42
【问题描述】:
我和一个朋友(还有一个朋友和我一起查看代码以发现任何逻辑上的不一致)正在尝试用 Java 编写一个 IRC 机器人,主要是从头开始(也就是说,不使用 egg drop 或其他流行的起点) .检测成功的服务器加入 (socket.isConnected()) 相当容易,但我正在尝试找出一种检测成功的通道加入的方法。基本上,我希望能够从服务器读取昵称是否被审核或禁止或其他阻止频道加入的原因,而不是仅仅假设加入成功。谢谢!
基本上,如果加入成功,我希望能够打印出“频道 __ 加入”,如果加入不成功,则可以打印出“频道 ___ 加入失败”。有没有办法做到这一点?谢谢!
编辑:经过进一步研究,我现在有兴趣学习如何破译服务器消息代码,特别是它们发送回客户端的格式。谢谢!
【问题讨论】:
-
您可以很容易地解析来自服务器的所有消息,因为它们都遵循相同的格式。如果第一个字符是冒号 (
:),则消息有一个“发件人”部分,以第一个空格结尾。然后,一个命令(单词或数字)后跟以空格分隔的参数(除非有空格冒号 - ` :` - 在这种情况下,冒号后面的字符是最后一个参数)。在我的库中,我将所有这些封装到一个类中,以便于其余代码处理。 -
请将其添加为答案。 Jack 的数字回复链接加上您的解释是最佳答案。