【问题标题】:Java irc bot ping pongJava irc 机器人乒乓球
【发布时间】:2012-05-29 10:02:50
【问题描述】:
if (serverResponse.contains("PING ")) {
    writer.write("PONG " + serverResponse.substring(5) + "\r\n");
    writer.write("PRIVMSG " + c.getHomechannel() + " :I got pinged!\r\n");
    System.out.println("pinged");
    writer.flush( );
}

if (cmd.equalsIgnoreCase("PING")) {
    TCPRequestManager.sendWrite("PONG " + param);
    TCPRequestManager.doMsg("c.getHomechannel()", ":I got pinged!");
    TCPConnectionManager.getWriter().flush( );
}

两者似乎都在工作并向我发送消息说客户端已被 ping,但我认为由于断开连接,它实际上并没有返回 pong,我做错了什么吗?

【问题讨论】:

    标签: java bots irc


    【解决方案1】:

    PONG message contain a destination 不应该吗?我猜第一个代码块中的serverResponse.substring(5) 是服务器的服务器名称​​pinging 您的服务器。它期待一个 PONG 来自您的服务器 irc服务器。

    通常,事务看起来像这样,a.com 是 irc 服务器的主机名,b.com 是连接到它的机器人的主机名:

    PING :a.com          (sent from a.com to b.com)
    PONG b.com :a.com    (sent from b.com to a.com)
    

    看起来您发送的内容(根据前面的示例)是:

    PING :a.com          (sent from a.com to b.com)
    PONG :a.com          (sent from b.com to a.com, except there's no origin)
    

    【讨论】:

      猜你喜欢
      • 2015-11-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-04-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多