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
3
votes
3 answers

Cannot execute OnItemClick for GridView in PopupWindow

I have a gridView that I display in a popupwindow (the gridview is in a transparent layout, which inherits from linearlayout and just has a partially transparent background). I can never get this GridView's OnItemClick to execute. When I touch an…
k_day
  • 1,379
  • 2
  • 14
  • 19
3
votes
2 answers

Android NDK future extended support for C++

Is there any info about the future of extending the safe C++ header list in the NDK (or maybe some hints to what might be safe to use) ? Or how soon we can expect the next NDK update? Also will there be any tutorials and documentation comming out…
Patrick Kafka
  • 9,795
  • 3
  • 29
  • 44
3
votes
2 answers

Can other users see python printed statements in Hexchat?

Using hexchat (which is based on xchat) with python scripting. Reading the API docs it's not clear to me if other users can see print statements. So can other users in a channel see the following or is it only visible to me: import…
User
  • 62,498
  • 72
  • 186
  • 247
3
votes
3 answers

Setting password in IRC BOT written in C++

I'm trying to make an IRC Bot that will log in to an existing account (on QuakeNet), so the Q bot can grant him the operator rank. I can successfully log in to server with a proper nick, but I don't know how to make my bot actually log in to an…
user2658455
  • 125
  • 1
  • 1
  • 5
3
votes
2 answers

How to programatically send messages to IRC channel

Does anyone know how to programatically: Send messages to an specific IRC (Internet Relay Chat) channel ? or Send a message to all users in a channel ? or Send an automatic message as a reply ? I'm accustomed to use PHP, but doesn't really matter…
Jeflopo
  • 2,192
  • 4
  • 34
  • 46
3
votes
1 answer

Choosing correct Chat Protocol implementation

I am trying to create a forum based group chat application on android.I need to be able to draw and send voice messages over chat. I am confused between IRC and XMPP for chat protocol to use.Can someone please suggest me in this regard. I feel IRC…
witty
  • 95
  • 2
  • 9
3
votes
3 answers

IRC - How to disable invite only on channel?

I have created and registered an IRC channel, that way I can reclaim channel operator status upon re-entry. However, today I noticed this message from the server: Cannot join #my-custom-channel (Channel is invite only). I received this message…
tyler.frankenstein
  • 2,314
  • 1
  • 23
  • 36
3
votes
2 answers

How do you login with node-irc?

It is extremely easy to setup and it works fine. But nowhere in the documentation does it say how to /msg nickserv identify The closest I could find was client.join('#yourchannel yourpass'); or maybe For any commands that there aren’t…
user1873073
  • 3,580
  • 5
  • 46
  • 81
3
votes
2 answers

Implementing IRC RFC: How to respond to MODE?

I'm trying to code my own IRC server. I'm referencing the IRC RFC but it's a little confusing to me. If I were to go strictly off the RFC, I don't think any of the popular clients would work with my server, like mIRC. For example, the RFC says that…
Ryan
  • 7,733
  • 10
  • 61
  • 106
3
votes
1 answer

Issue with hold function in Yatzy bot

I'm stuck with a 'hold' function when developing a Yatzy bot. Everything else works, but the logic for this function seems to fail in some instances. Basically, the idea is to hold all the numbers given, and then roll the dice that don't match the…
Chris Dennett
  • 22,412
  • 8
  • 58
  • 84
3
votes
1 answer

IRCBot C# connection issues

I am having an issue with my IRC Bot I am trying to write in c# just as a way to help get my head around the IRC protocol, I am planning on writing a client/server in the future but as you can prolly guess I am far off this :P using System; using…
Hello World
  • 1,379
  • 4
  • 20
  • 41
3
votes
1 answer

Twisted irc python bot - buffering messages

"Why does it take a long time for data I send with transport.write to arrive at the other side of the connection?" Twisted can only send data after you give up control of execution to the reactor. For example, if you have an infinite loop writing…
Bubo
  • 47
  • 5
3
votes
2 answers

Regex Replace of Mirc Colour Codes

I am making a small / simple IRC client, for a special use case. I would like to strip out the Mirc colour codes other users are typing from their Mirc / other similar clients. Screenshot : I have been trying for approx 1hr without success : string…
sprocket12
  • 5,368
  • 18
  • 64
  • 133
3
votes
2 answers

Is it possible to thread a subclass within a class?

This is for a moderation bot for C&C Renegade, in case anyone wants some background. I have a class which will act as a parent to a load of subclasses that provide IRC connections, connections to the gamelog (UDP socket), etc, and I want to know if…
Tom
  • 81
  • 2
2
votes
2 answers

Which form control to use, for chat window

I'm writing a C Sharp IRC bot, with forms, and not console. I'm kinda confused as to which control I should use, to display the text from the server/channel, as I'm fairly new to forms and all. Also, if anyone knows of source code, of a c sharp bot,…
Conlon
  • 21
  • 2