Questions tagged [irc]

IRC - Stands for Internet Relay Chat is an internet based chat protocol. Main idea is to have users connect to a server network, where they can then send messages to each other through channels or direct chat. Today there's quite a few different networks, usually each with a main thematic. Stack Overflow got its own channel on the FreeNode network. You can read more about that on the full tag wiki page.

Overview

IRC is an internet chat protocol, first written in 1988. It bascially features IRC servers organized into networks, where an user can send message to other ones. The main feature is the channels that users can join, much like other chat rooms.

Network infrastructure and protocol

A network is generally made of several different servers, linked together through the same IRC protocol, where users and channels are common. Usually, just joining an empty channel will automatically create it, although this might not be the case everywhere. The IRC protocol also features moderators of different levels and channel options, although this has been found to be too weak for general use. Most IRC Networks now feature IRC Services, that enable someone to configure and protect channels in greater detail.

The IRC protocol only uses plaintext, as opposed to XMPP for example that uses XML style, and is therefore very simple to parse and use. Because of the lack of security of this approach, it's now usually used along a SSL connection. A typical IRC query is of the form: :origin KEYWORD contents - with the origin and contents sections being optional : a query could be as much as "LIST" to get a list of current network channels.

The server connection process is also very simple: the user only has to send out information about desired nickname, username, and displayed real name, before being able to use the network. Because of that, there has been quite a few implementation of IRC Bots and scripting platforms for various uses (EG. Eggdrop, Supybot, or simply home-made applications)

One of the big loopholes in the IRC protocol as described by RFC1459 is that it does not specify the use of character encoding past the 7-bit ASCII representation. Channels and users have been known to mostly use either utf-8 or latin-1 (iso8856-1). There's no shortage of problems made by bad software utf-8 parsers, to the extent of being able to crash people's client at will.

Stack Overflow IRC channel

Stack Overflow has an IRC channel on the FreeNode network (irc.freenode.net), #stackoverflow You could join it either by inputing above info in an IRC client, using This kind of browser link, or using a JS Web Applet such as FreeNode's QIRC. FreeNode is also the home of hundreds of community projects, especially open source ones.

More information

Detailed informations about the IRC protocol can be found into the IETF related RFCs, the initial one being RFC1459. Additions were later made, although some of these remain un-supported to this date.

Some popular IRC clients include:

Many other applications such as GNOME's Empathy, or Pidgin, also come with builtin IRC support.

1108 questions
-1
votes
1 answer

Perl Google Yahoo And etc Engine didn't bring results, Need help perl expert

I make the scanner using perl, but when i try to test the script i got blank results on the some engine, didn't give me results, may someone help me to check the script where line is wrong writing in perl? Thanks sub google() { my @list; my $key =…
-1
votes
1 answer

NulPointerException by unknown source

I am trying to make a IRC client. The library i am using(PircBot) works when i try it simply at the main method. Although when i created a more complex GUI for it it gives me a null pointer exception when i try to connect. The…
user36976
  • 322
  • 2
  • 10
-1
votes
1 answer

Use variables in Bot::BasicBot constructor

I'm using Bot::BasicBot to write a bot that logs chat. I have a config hashref that looks like this: my $config = { cryptokey => "a" x 32, nickpass => "password", nick => "loggerbot", server => 'irc.foonetic.net', port…
Lily Hahn
  • 256
  • 1
  • 10
-1
votes
1 answer
-1
votes
1 answer

How to make an add-on for mIRC or any other IRC client that alarms you when a certain string is mentioned in a chat room?

It'd be quite useful to me to have an add-on that alerts me when something specific is said in a chat room, same way you're warned if your nick is mentioned, just for a string you'd like. How would one go about doing this? Is there an interface for…
user1938007
  • 459
  • 1
  • 5
  • 14
-1
votes
2 answers

IRC BOT in Python, if in elif in while-loop

Here is the complete code: #client der mit irc-server kontakt aufnimmt import time import socket from sys import argv script, mitspieler1, mitspieler2 = argv sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) class funktion: def…
JonnyPython
  • 121
  • 1
  • 2
  • 9
-1
votes
2 answers

Trying to join a channel in freenode

I'm trying to connect to a channel in freenode using xchat but I'm getting this: Invalid password for my_nickname. Any idea? NOTE: I'm asking here because I didn't find a good place to ask.. Please, recommend me a place to ask about freenode if you…
tirenweb
  • 30,963
  • 73
  • 183
  • 303
-1
votes
1 answer

Bad link crashes Python IRC bot

My bot uses Beautiful soup to parse HTML, and also prints out the web page title of a link said in IRC. This all works except for one thing: If someone gives a dead/fake link, the bot crashes. The link grabber triggers when "http" is found, so for…
John Garza
  • 94
  • 3
  • 12
-1
votes
1 answer

php IPC script simply quits

I needed a simple php IRC bot that takes messages through POST requests and sends that message to an irc channel. For this purpose I adapted the bot from PHP - IRC Bot Not sending message Help. Then I used message queues to send the POST message to…
navgeet
  • 987
  • 1
  • 10
  • 23
-1
votes
1 answer

Python IRC bot won't exist from chat when receiving “.quit” command

So I asked this a few days ago and the response I got was to This irc bot is not complicated at all. I am just having trouble with a couple lines of code. Basically I added this to the end of the while statement: if ".quit" in readbuffer: …
-1
votes
1 answer

Java irc bot ping pong

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( ); } and if…
Arrin
  • 229
  • 1
  • 2
  • 8
-1
votes
1 answer

IRSSI 'Connection timed out' Issue

I am trying to run IRSSI on my Bluehost account. I have successfully installed IRSSI but cannot connect to any IRC server. I simply get Unable to connect server X port 6667 [Connection timed out]. I have copied my working IRSII config file from a…
edev.io
  • 560
  • 5
  • 21
-2
votes
2 answers

how to set if capture search message is empty

bind pub - "!find" pub:cari proc pub:cari { nick host hand chan text } { set judul [lindex $text 0] if { $judul == ""} { puthelp "notice $nick :ketik !find " return } else { putquick "notice $nick…
Gusman
  • 37
  • 9
-2
votes
2 answers

IRC Bot for Minecraft is not working well

Tried to make an IRC Bot for a Minecraft server called "ORE" (Open Redstone). Btw it is Python. But it doesn't output anything, just empty line. Here is the code: import sys import socket import string import time from time import gmtime, strftime,…
Eldar B.
  • 1,097
  • 9
  • 22
-2
votes
1 answer

Write x y times to text file

I was looking for the cleanest way to accomplish writing $2 to a text file the amount of times specified. I'm sure this is possible and i will provide and example to what I am looking for... on *:text:*write*:?: { write test.txt $2 "$3 times"} so,…
skdfsfwse
  • 19
  • 7
1 2 3
73
74