1 network provide 2+ groups

These are old archives. They are kept for historic purposes only.
Post Reply
Xuefer
Posts: 20
Joined: Wed Apr 14, 2004 4:30 am

1 network provide 2+ groups

Post by Xuefer » Thu Oct 07, 2004 1:40 am

by modifying the code or making a module, is it possible(easy/simple) for 1 irc network to provide 2 or more groups? as if there's many network

i currently implement it by hacking the code, prefixed all nicks/channels with magic "group number", non of them can interchange message between different group, nor see each other

codemastr
Former UnrealIRCd head coder
Posts: 811
Joined: Sat Mar 06, 2004 8:47 pm
Location: United States
Contact:

Post by codemastr » Thu Oct 07, 2004 8:54 pm

Why would you want to do this?
-- codemastr

Xuefer
Posts: 20
Joined: Wed Apr 14, 2004 4:30 am

Post by Xuefer » Fri Oct 08, 2004 1:37 am

have read rfc, it seems hard to do so
but i need your confirm.

i want to do this to provide service to customers(not selling the code)
1. they don't want their users mixed with other customers
2. because of 1, having the nick/chan conflict each other is nighmate
3. setting up separate ircd seems not managable, each of them have to be created manually and have to take 1 port


i'm looking for the most easy way.
for logon:
option 1. let client do "GO 123"(group id), "NICK mynick"
option 2. "NICK 123mynick"
both is ok, at least with mIRC's "on LOGON"
-----------

for implement:
(all below options will check the nick/chan prefix and limit PRIVMSGs/NOTICEs/JOINs/LIST)
option 1. have nicks in the form "mynick" and another groupid variable, modify find_client find_channel, have them find on separate hash table,

but NO, it's hard to modify, each find_** have to know which Group to find. and message between server can't recognize the group of the nick by the protocol(and the mistake will make server mess up)

option 2. have nicks in the form "123mynick" internally, but strip the 123 before sending to client(not server)

seems nice for all client, but i haven't check enough for this way. is it hard? (some mistake is ok)

option 3. ircd do nothing except limit by prefix, but client strip the prefix, this is easy for my own written client, but not for mIRC and others, so many nicks and channels in message

------

this seems i'm modifying the code and should have no support from unreal, but we're just discussing the idea and implement, not the problem implement by modifying the code
just suppose i'm writing a module, but i'll make more HOOKs myself

codemastr
Former UnrealIRCd head coder
Posts: 811
Joined: Sat Mar 06, 2004 8:47 pm
Location: United States
Contact:

Post by codemastr » Fri Oct 08, 2004 3:26 am

Well this couldn't be done through a module. So that's out of the question. But regardless, the whole idea seems stupid to me. Why not just run 2 ircds? It doesn't make sense to try and make 1 IRCd into 2 networks. Just setup two IRCds on either two different IPs, or on 2 different ports and you're good to go. I don't see the problem with that. If you don't want to do that, the only alternative is modifying Unreal which will not be supported.
-- codemastr

Xuefer
Posts: 20
Joined: Wed Apr 14, 2004 4:30 am

Post by Xuefer » Fri Oct 08, 2004 5:09 pm

unfortunately, we'ave planned to setup no less than 100 network
each customer 1 network

unless i have some other solution to solve the "nick/chan conflict" problem

Solutech
Posts: 296
Joined: Thu Mar 18, 2004 11:38 pm

Post by Solutech » Fri Oct 08, 2004 5:14 pm

ok if you want one ircd then maybe try a java client .

Set up a webpage for each customer/network ie http://www.cust1.com http://www.cust2.com etc

Set each java client on each page to connect to #cust1 #cust2 etc . You could even go as far as passwording each channel so the groups cant mix .

Just an idea but its the simplest I can think of .

Xuefer
Posts: 20
Joined: Wed Apr 14, 2004 4:30 am

Post by Xuefer » Sat Oct 09, 2004 1:49 am

thanks Solutech
i've already written my client which not ready for the prefix
i've planned to modify it :)

Post Reply