标签: irc

使用PHP连接到IRC服务器时连接超时

我正在尝试将我的PHP脚本连接到IRC,但它会保持超时.我服务器上,所以我知道它已启动并运行,我无法分辨出问题所在.

这可能是我的代码中的错误吗?

<?php

/**
 * Configuration.
 * Pretty self-explanatory
 */

$ircServer = "hub.malvager.com";
$ircPort = "6667";
$ircChannel = "#hackforums";

set_time_limit(0);

$ircSocket = fsockopen($ircServer, $ircPort, $eN, $eS);

if ($ircSocket)
{

    fwrite($ircSocket, "USER Orgy orgy.test hfcoder :twBooter\n");
    fwrite($ircSocket, "NICK OrgyBot|" . rand() . "\n");
    fwrite($ircSocket, "JOIN " . $ircChannel . "\n");

    while(1)
    {
        while($data = fgets($ircSocket, 128))
        {
            echo nl2br($data);
            flush();

            // Separate all data
            $exData = explode(' ', $data);

            // Send PONG back to the server
            if($exData[0] == "PING") …
Run Code Online (Sandbox Code Playgroud)

php irc

8
推荐指数
1
解决办法
1799
查看次数

IRC USER消息对我没有意义

首先,请告诉我,如果我不允许在这里询问这个协议......这似乎是最好的地方.对不起,如果我错了.

因此根据维基百科,USER消息如下所示:

USER username hostname servername :realname
Run Code Online (Sandbox Code Playgroud)

hostname和servername之间有什么区别?谢谢.

irc

8
推荐指数
1
解决办法
3885
查看次数

为什么我的IRC机器人没有连接?

public static string SERVER = "irc.rizon.net";
private static int PORT = 6667;
private static string USER = "Test C# Irc bot";
private static string NICK = "Testing";
private static string CHANNEL = "#Test0x40"; 

public static void Main(string[] args)
{
    NetworkStream stream;
    TcpClient irc;
    StreamReader reader;
    StreamWriter writer;

    irc = new TcpClient(SERVER, PORT);
    stream = irc.GetStream();
    reader = new StreamReader(stream);
    writer = new StreamWriter(stream);

    writer.WriteLine("NICK " + NICK);
    writer.Flush();
    writer.WriteLine("JOIN " + CHANNEL);
    writer.Flush(); 

    Console.ReadKey(true);
}
Run Code Online (Sandbox Code Playgroud)

为什么我的IRC机器人没有连接?

.net c# irc bots

7
推荐指数
1
解决办法
1937
查看次数

用Java构建IRC bot

经过一些谷歌搜索,一个明显的答案或Java IRC机器人的起点没有出现,我的问题; 是否有一个现有的框架来帮助我建立一个IRC机器人?如果不这样做,这是否可以使用Java中的套接字执行此操作,并且有人在网络上看到过一个例子吗?

欢呼的家伙.

java sockets irc

7
推荐指数
2
解决办法
1万
查看次数

正常关闭TCP套接字

我正在用C++编写一个IRC客户端,目前我遇到了一个问题,退出后,我做了:

Send("QUIT :Quit\r\n"); // just an inline, variadic send() wrapper
shutdown(m_hSocket, SD_BOTH);
closesocket(m_hSocket);

WSAShutdown();

但是,问题是没有发送QUIT消息.我嗅到了来自客户端的数据包,实际上这条消息从未发送过.我认为这是套接字没有被刷新的问题,但我不知道如何做到这一点,谷歌建议禁用Nagle算法,但我怀疑这是一个好习惯.

提前致谢.

c++ sockets irc tcp winsock

7
推荐指数
1
解决办法
6664
查看次数

检测IRC用户是否为"语音"或更高[C#irc bot]

我有一个命令,我想只限制某些等级.我正在使用unreal3.2.6 IRC.

我看了这个: 在此输入图像描述

但我仍然不确定我能做些什么来检查用户排名.

我想看看用户是否是"语音"或更高.什么可以查找用户,我该怎么做才能检查他们是否是一个声音或更高的声音?为了让我检查,每个等级的价值是多少?

我只是想检查当前的频道,而不是整个IRC服务器.

例如:

当用户尝试执行命令!roll (Rolls a dice)而不是语音或更高级别时,不会发生任何事情.

if (data.Equals("!roll"))
{
    //Check if user contains (@,+,etc?) 
    if(nickname.StartsWith(@..+..etc))
    {
        roll(nickname);
    }
}
Run Code Online (Sandbox Code Playgroud)

c# irc

7
推荐指数
2
解决办法
2655
查看次数

Node.js JavaScript:在服务器上模拟Keypress(像宏一样)

我正在尝试使用node.js脚本来模拟按键,例如向上箭头或按钮.具体来说,我正在尝试克隆Twitch Plays Pokemon.基本上,每当通过IRC发送命令(向上,向下,向左,向右,a,b,选择,开始)时,服务器模拟按键,按键控制游戏模拟器.到目前为止,我已经用node.js的IRC模块编写了这个:

var config = {
    channels: ["#tron"],
    server: "irc.freenode.net",
    botName: "wyatt"
};

var irc = require("irc");

var bot = new irc.Client(config.server, config.botName, {
    channels: config.channels
});

var commandHandler = function(from, text) {
    if(text.toLowerCase() === "up"||text.toLowerCase() === "down"||text.toLowerCase() === "left"||text.toLowerCase() === "right"||text.toLowerCase() === "a"||text.toLowerCase() === "b"||text.toLowerCase() === "select"||text.toLowerCase() === "start") {
        bot.say(config.channels[0], from.toUpperCase() + " sent the " + text.toUpperCase() + " command!");
    } else {
        bot.say(config.channels[0], from.toUpperCase() + ", that wasn't a valid command!");
    }
}; …
Run Code Online (Sandbox Code Playgroud)

javascript irc node.js

7
推荐指数
2
解决办法
2万
查看次数

应用程序多播的最佳教程?

我最近意识到IP多播(显然在公共互联网上效果不佳)和应用程序多播(根据http://en.wikipedia.org显然在IRC和PSYC中使用)之间存在区别./ wiki/Multicast).

有没有关于实现应用程序级多播的好教程?

我认为组播的重点是减少普通网段的带宽,因此我很难理解应用级组播的作用.

irc ip multicast

6
推荐指数
1
解决办法
2619
查看次数

试图编写IRC客户端,但努力寻找有关代码和连接协议的良好资源

我看过RFC,但我仍然在苦苦挣扎.我在C#中编写了一个基本客户端,但是找不到正确连接的文档.

一旦我连接并传输NICK和USER信息,我就需要加入一个频道.如果我马上加入,没有任何反应 - 大概是因为它太快了.我必须推迟它,但我不知道我需要等待哪个命令才能知道它可以继续.

我得到的东西:

:irc.fish.net注意AUTH:查找你的主机名......

:irc.fish.net 001 FishBot:欢迎

以及代码002,003,005,251,252等的东西,但我找不到在线的任何地方,告诉我这些是什么.

所以我的基本2个问题是:你发送了什么JOIN作为回应,我在哪里可以找到上面的IRC代码对应的内容?RFC文档没用!

c# irc

6
推荐指数
1
解决办法
4420
查看次数

Python,重新创建套接字并自动重新连接

我正在用Python编写一个IRC bot.

来源:http://pastebin.com/gBrzMFmA(对不起,我不知道如何在这里有效/正确地使用代码标签)

当"irc"插座死机时,无论如何我可以去检测它是否死了然后自动重新连接?

我现在谷歌搜索了一段时间,发现我必须创建一个新的套接字.我正在尝试并添加一些东西,比如在正确的时候捕捉socket.error:但它似乎只是挂起而没有正确重新连接..

提前感谢您的帮助

python irc

6
推荐指数
1
解决办法
1万
查看次数

标签 统计

irc ×10

c# ×3

sockets ×2

.net ×1

bots ×1

c++ ×1

ip ×1

java ×1

javascript ×1

multicast ×1

node.js ×1

php ×1

python ×1

tcp ×1

winsock ×1