SorceryNet IRC Services - Tasks: task #3256, /ChanServ resynch command to...
You are not allowed to post comments on this tracker with your current authentication level.
task #3256: /ChanServ resynch command to resync channel with ircd
Submitter: | Mysid <Mysid> | ||
Submitted: | Wed 14 Apr 2004 06:31:59 AM UTC | ||
Should Start On: | Wed 14 Apr 2004 12:00:00 AM UTC | Should be Finished on: | Wed 30 Jun 2004 12:00:00 AM UTC |
Category: | Services | Priority: | 7 - High |
Status: | None | Privacy: | Public |
Assigned to: | None | Percent Complete: | 0% |
Open/Closed: | Open | Effort: | 5.00 |
No files currently attached
Depends on the following items: None found
Items that depend on this one: None found
CC list is empty
There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.
Follow 2 latest changes.
Date | Changed by | Updated Field | Previous Value | => | Replaced by |
---|---|---|---|---|---|
2004-06-17 | Mysid | Should be Finished on | 2004-04-14 | 2004-06-30 | |
2004-06-17 | Mysid | Priority | 5 - Normal | 7 - High |
Powered by Savane 3.13-3230.
Corresponding source code
To: coders at sorcery dot net
Subject: cs resynch
From: c`estmoi <cest at flame dot org>
Date: Wed, 24 Jun 1998 00:31:46 +0300
------------------------------------------
The following is a proposal to a new command both for services1 and 2,
I want some feedback before I implement it.
ChanServ resynch #channel is meant to resynch channels w/o shutdown, and to
check a channel for a desynch.
Behaviour:
On cs desynch, services will:
1) add the channel name + timestamp + requester to a desynch list
2) join ChanServ to the channel
3) /msg #chan Deynching #chan (request by (requester))
(this is neccessary as not to alert users)
(*) if there is a way, like /names, to get all ppl in a chan by a server,
including invisibles, it's better.
A simple ircd patch can make chanserv joining un-needed, by showing +i
users in /names to ulined servers. However, we might want a quick and dirty
here, to solve the resynches fast.
4) keep the current "joined" list on the side
On /names reply (what gets sent when a nick joins a chan):
5) compare the 2 lists (irrespective of order)
6) if there is a mismatch, globops desynch on #chan
7) notice the requester that either:
"desynch rtest done - no desynch"
"desynch rtest done - timed out"
"desynch rtest done - +nick(0) +nick(1) -nick(0)" <- diff list
8) delete chan from desynch list
P.S. add special handling for the case 2 opers try to desynch the same channel
at the same time.
c`estmoi on IRC