Making an IRC chatroom

Started by
6 comments, last by C-Junkie 19 years, 4 months ago
How would i make an IRC chatroom like the one on this web site. I want to do it in vb.net 2003. Any help would be appreciated.
I don't have to do nothing but live and die, everything else i choose to do- I don't know, but my dad says it alot
Advertisement
are you trying to make just a chatroom? or an actual IRC server?

you could start by looking over the IRC protocol

http://www.google.com/search?hl=en&c2coff=1&safe=off&client=firefox-a&rls=org.mozilla:en-US:official&q=irc+protocol&spell=1
I want to make the chatroom
I don't have to do nothing but live and die, everything else i choose to do- I don't know, but my dad says it alot
Quote:Original post by isiahil
I want to make the chatroom

You mean "client". There's a lot going on behind the scenes of an IRC; it's a lot of reading before you actually can get started. I'd personally suggest some basic winsock stuff before you go onto IRC, but.. hey - its your time.
Do you have any tutorials on how to make the client, i have already did projects with sockets and stuff. Correct me if im wrong but like with the chatroom on this website it is on a server and whoever logs into that server can use the chatroom? This is kind of what i want to do. I want to have a server that logs on whoever opens my program and then have a chat board that everyone can chat on.
I don't have to do nothing but live and die, everything else i choose to do- I don't know, but my dad says it alot
AmAzErInG!

IRC Client Programming (Python)

And guess what?
Quote:From that ^ Article
Before we do any programming, I highly suggest that you get your self familiar with the IRC protocol. This is best done by reading a rather large (not to mention boring/confusing as fuck) RFC manual. This manual outlines how the protocol works. Sometimes it also provides basic examples on various situations that come in handy when you are developing an application.

But if you want to go ahead, anyway, feel free. It isn't that hard of a tutorial to follow, but using an IRC channel you'll have to use pre-existing servers. There is a way to create your own (on a channel network) but you'll have to look that up yourself.

IMO, I don't think IRC is the way you want to go for your project. A simple P2P client or a small server app on your personal computer would probably be more appropriate.

EDIT: RFC Documentation
Theres heaps of stuff on irc, and most of it you probably would never need.

I program mostly in vb 6, so [grin]

What i would do, is two things. (server part, i like servers [grin]
)

First, write up a winsock control array, so that it will acept incoming connections, disconnections, ect. Accepts nic's, and parses information to/from the connections, to the rest of the server.

eg. "'SOMEGUY'|Talk hello?"

Where the lhs is the nic, the rhs is what was sent. in this case, the talk command and hello.

Second, build up a scripting language (vbscript control, not too hard), parse subs from a file into the script control, then be able to execute them on demand. (as well as parsing params).
You should also have an interface with the control array, and a memory store, so that the scripts can
1. be changed at runtime (by you)
2. Can store and retrieve information (block lists, it makes it more extendable)
3. Can comminicate to/from clients.

eg.
sub talk(args())
serversay(args, "ALL")
end sub

Where serversay is a comand in the winsock interface to say something to all clients.

From,
Nice coder
Click here to patch the mozilla IDN exploit, or click Here then type in Network.enableidn and set its value to false. Restart the browser for the patches to work.
Um, if you actually just want to connect to an IRC server, ignore what Nice Coder just said.

I wrote irc clients with nothing but the RFC and sniffing another irc client. It wasn't hard that way. the RFC tells you a few nice things, and if you want to figure out how to do some specific things, just do them with the other irc client and watch the network traffic as it happens.

This topic is closed to new replies.

Advertisement