This is the new home of the egghelp.org community forum.
All data has been migrated (including user logins/passwords) to a new phpBB version.


For more information, see this announcement post. Click the X in the top right-corner of this box to dismiss this message.

2 channels problem check user status

Old posts that have not been replied to for several years.
w
willienl
Voice
Posts: 21
Joined: Mon Jan 10, 2005 3:55 am

2 channels problem check user status

Post by willienl »

when i connect 2 channels and try this script
it say all users arr normal user
when i join one channel it tell the good status

i have try to replace $chan with
$chann
set chann "#testchannel"
but don't work when i join 2 channels how to do this ?

Code: Select all

bind pub - "!stat" pub:status
proc pub:status {nick host hand chan arg} {
	if {[isop $nick $chan]} {
      putquick "PRIVMSG $chan :$nick is Op "  
	} elseif {[ishalfop $nick $chan]} {
      putquick "PRIVMSG $chan :$nick is Halfop "  
	} elseif {[isvoice $nick $chan]} {
      putquick "PRIVMSG $chan :$nick is Voice "  	  
	} else {
      putquick "PRIVMSG $chan :$nick dunno ?!?!?!"  
	}
	return 0 
}
User avatar
caesar
Mint Rubber
Posts: 3778
Joined: Sun Oct 14, 2001 8:00 pm
Location: Mint Factory

Post by caesar »

You want this to run only on two specific channels or what do you mean?
Once the game is over, the king and the pawn go back in the same box.
w
willienl
Voice
Posts: 21
Joined: Mon Jan 10, 2005 3:55 am

Post by willienl »

i want to run my eggdrop in 2 or 3 channels
it must do some bot detect and kick stuff in 2 channels no problem
and respond to his triggers in 2 channels one channel is for
kick ban log only
but when i run eggdrop in 2 or 3 channels it do not detect the user as an op or halfop anymore :/ dunno why
but when it not detect an user as op or halfop it reply (for debug i have set when no status detect send msg you are no op)
that i have no status and not listen to the commands
is an user is op or halfop it do what the op ask
User avatar
awyeah
Revered One
Posts: 1580
Joined: Mon Apr 26, 2004 2:37 am
Location: Switzerland
Contact:

Post by awyeah »

Hmm, to me this code looks correct, so it should work. Not sure why the bot isn't detecting the ops, halfops and voices correctly.

What IRCd is the network you use running on? What eggdrop version and tcl version are you running?

This script has no channel limitations currently so it can be run on any channel and with the "-" flag it can be run by absolutely anyone. Meaning it can be run by anyone on any channel.

Code: Select all

bind pub - "!stat" pub:status
proc pub:status {nick host hand chan arg} {
   if {[isop $nick $chan]} {
      putquick "PRIVMSG $chan :$nick is Op " 
   } elseif {[ishalfop $nick $chan]} {
      putquick "PRIVMSG $chan :$nick is Halfop " 
   } elseif {[isvoice $nick $chan]} {
      putquick "PRIVMSG $chan :$nick is Voice "      
   } else {
      putquick "PRIVMSG $chan :$nick dunno ?!?!?!" 
   }
   return 0
} 
·­awyeah·

==================================
Facebook: jawad@idsia.ch (Jay Dee)
PS: Guys, I don't accept script helps or requests personally anymore.
==================================
w
willienl
Voice
Posts: 21
Joined: Mon Jan 10, 2005 3:55 am

Post by willienl »

i whas thinking the same thing
i have all my triggers like this
but when i run it in one channel it works great fast responce`s
no problemo
when i run it in 2 or 3 channels it will nog work any more
when i remove the isop ishalfop part it work
it seems to be that the op halfop/isvoice filtering not work on 2 channels or more
maby i have done some wrong in this ??
i run windrop 1.6.17
thnx for the support on this forum
where others stick there haeds in the ground :(
here the help
:wink:
User avatar
awyeah
Revered One
Posts: 1580
Joined: Mon Apr 26, 2004 2:37 am
Location: Switzerland
Contact:

Post by awyeah »

Clearly as I said I really don't see anything wrong in the script, neither syntax nor structure wise. Maybe your windrop has a problem recognizing them, maybe the channels or something else could be the problem.
·­awyeah·

==================================
Facebook: jawad@idsia.ch (Jay Dee)
PS: Guys, I don't accept script helps or requests personally anymore.
==================================
User avatar
De Kus
Revered One
Posts: 1361
Joined: Sun Dec 15, 2002 11:41 am
Location: Germany

Post by De Kus »

if the bot has recently joint, he might have (or better: it WILL have) problems seeing halfops as ops, but real ops should be recognized correctly. This is a eggdrop intern problem, fix: let him see the MODE command for the users getting halfop ^^. This bug is still present in 1.6.18 CVS.

PS: hmm, I can't find a bugzilla entry for that, is this issue unreported?
De Kus
StarZ|De_Kus, De_Kus or DeKus on IRC
Copyright © 2005-2009 by De Kus - published under The MIT License
Love hurts, love strengthens...
w
willienl
Voice
Posts: 21
Joined: Mon Jan 10, 2005 3:55 am

Post by willienl »

not that i know
i go test again but i'm shure it won't work in 2 channels
i whas shouting afther adding some functions in an 100% working tcl
damned again debuging all the stuff then i let it join one channel and work
when i set an user mode +h or +o in the channel when the eggdrop is in 2 channels
it still say the user have no status :(
new bug :?:
and i must run windrop with -n param else
it suck`s 90% cpu resources :?
User avatar
De Kus
Revered One
Posts: 1361
Joined: Sun Dec 15, 2002 11:41 am
Location: Germany

Post by De Kus »

ahh, I just see, this is no eggdrop problem, this is an IRCd problem, which seems so simply be worked around in other clients.
You may see the bots intern channel list via the partyline command .channeö #channel. but really strange. maybe you check the raw log when your bot enter the channel and check if it should recognize them. If the IRC server tells the bot having op, its no wonder the bots assumes they have :D.
De Kus
StarZ|De_Kus, De_Kus or DeKus on IRC
Copyright © 2005-2009 by De Kus - published under The MIT License
Love hurts, love strengthens...
w
willienl
Voice
Posts: 21
Joined: Mon Jan 10, 2005 3:55 am

Post by willienl »

the bot don't se the user status and think the are all normal users
when i join 2 channels
[01:33] scan-egg joined #testbla.
[01:33] scan-egg joined #testbl.
[01:35] #testbla (+trn) : [m/4 o/3 h/0 v/0 n/1 b/0 e/0 I/0]
[01:35] #testbl (+) : [m/2 o/1 h/0 v/0 n/1 b/0 e/0 I/0]

like normal ok
when i ask the server for my op status it say in the raw log
[01:36] #testbla: mode change '+o ^Willie^aFk' by Tech[bot]!none@services.*****IRC.com
it still not se me as an operator
when i kick scan-egg from one of the 2 channels it do
detect i'm an op
it`s like when it join`s 2 channels at the same time it do not se the user status of the users on the channels
here some log of an situation it`s an blob of text sorry :oops:
  • Joins: scan-egg (~willbot@nohost) It's only a clone ofs: ^Willie^aFk
    [01:30:46] <!^Willie^aFk> !stat
    [01:30:46] <scan-egg> ^Willie^aFk dunno ?!?!?! on #testbla
    [01:32:11] * scan-egg was kicked by ^Willie^aFk (^Willie^aFk)
    Joins: scan-egg (~willbot@nohost) It's only a clone ofs: ^Willie^aFk
    [01:32:14] <!^Willie^aFk> !stat
    [01:32:16] <scan-egg> ^Willie^aFk is Op on #testbla
    [01:33:20] * Quits: scan-egg (~willbot@nohost) (Client closed connection)

    Joins: scan-egg (~willbot@nohost) It's only a clone ofs: ^Willie^aFk
    [01:34:08] <!^Willie^aFk> !stat
    [01:34:08] <scan-egg> ^Willie^aFk dunno ?!?!?! on #testbla
    [01:34:35] * scan-egg was kicked by ^Willie^aFk (^Willie^aFk)
    Joins: scan-egg (~willbot@nohost) It's only a clone ofs: ^Willie^aFk
    [01:34:37] <!^Willie^aFk> !stat
    [01:34:41] <scan-egg> ^Willie^aFk dunno ?!?!?! on #testbla
    [01:34:44] <!^Willie^aFk> !op
    [01:34:44] * Tech[bot] sets mode: +o ^Willie^aFk
    [01:34:45] <!^Willie^aFk> !stat
    [01:34:46] <scan-egg> ^Willie^aFk is Op on #testbla
    [01:35:28] * Quits: scan-egg (~willbot@nohost) (Client closed connection)

    Joins: scan-egg (~willbot@nohost) It's only a clone ofs: ^Willie^aFk
    [01:36:39] <!^Willie^aFk> !stat
    [01:36:39] <scan-egg> ^Willie^aFk dunno ?!?!?! on #testbla
    [01:38:38] <!^Willie^aFk> !op
    [01:38:39] * Tech[bot] sets mode: +o ^Willie^aFk
    [01:38:40] <!^Willie^aFk> !stat
    [01:38:40] <scan-egg> ^Willie^aFk dunno ?!?!?! on #testbla
    [01:38:50] * scan-egg was kicked by ^Willie^aFk (^Willie^aFk)
    Joins: scan-egg (~willbot@nohost) It's only a clone ofs: ^Willie^aFk
    [01:38:52] <!^Willie^aFk> !stat
    [01:38:56] <scan-egg> ^Willie^aFk is Op on #testbla
    [01:39:11] * Quits: scan-egg (~willbot@nohost) (Client closed connection)
User avatar
De Kus
Revered One
Posts: 1361
Joined: Sun Dec 15, 2002 11:41 am
Location: Germany

Post by De Kus »

do you have any script with a RAW bind to 352 or 353 that might be active at the first channel initiation?
server response part of /join

Code: Select all

[13:04] [@] irc.ffm.de.euirc.net 353 eggi_ReConnecting = #rns :eggi_ReConnecting ... @De_Kus ...
server response part of /who

Code: Select all

[13:04] [@] irc.ffm.de.euirc.net 352 eggi_ReConnecting #rns DeKus dekus.dnsa1ias.net irc.ber.de.euirc.net De_Kus H@ :2 Markus
[13:04] [@] irc.ffm.de.euirc.net 352 eggi_ReConnecting #rns ~eggi euirc-6494132a.dip0.t-ipconnect.de irc.ffm.de.euirc.net eggi_ReConnecting H@ :0 channel eggdrop bot
2 short log snips from raw-log. the bot should read at join the ops on lines like these, if they are cut away from a tcl script, the bot cannot phrase them further :).
(note, probably from the join list and the /who list there is so much time left, that chanserv already opped the bot ^^).
De Kus
StarZ|De_Kus, De_Kus or DeKus on IRC
Copyright © 2005-2009 by De Kus - published under The MIT License
Love hurts, love strengthens...
w
willienl
Voice
Posts: 21
Joined: Mon Jan 10, 2005 3:55 am

Post by willienl »

it`s not about the status of the bot
thats not what i want to know
the thing that is case nr 1 in this script is simply
when an user in the channel use the triggers of my script
the user must have op status or halfop status
else it don't respond
i think ppl here don't understand what i want to do
for me it is clear that this script is checking the status of the user
that triggers the trigger
dunno how others read it
but i want that it detect in the right way is user X op or halfop
if he is parse else die
simply that an noob user not can abuse my bot
only operators en halfops can command the bot
it is working ok when it is in one channel but not when it
is in 2 or 3 channels and i need this in 3 channels
User avatar
awyeah
Revered One
Posts: 1580
Joined: Mon Apr 26, 2004 2:37 am
Location: Switzerland
Contact:

Post by awyeah »

I rest my case, ah.
·­awyeah·

==================================
Facebook: jawad@idsia.ch (Jay Dee)
PS: Guys, I don't accept script helps or requests personally anymore.
==================================
User avatar
De Kus
Revered One
Posts: 1361
Joined: Sun Dec 15, 2002 11:41 am
Location: Germany

Post by De Kus »

you want to replace "nick" with "args" within the scripts body? You are very confusing ^-^.
De Kus
StarZ|De_Kus, De_Kus or DeKus on IRC
Copyright © 2005-2009 by De Kus - published under The MIT License
Love hurts, love strengthens...
w
willienl
Voice
Posts: 21
Joined: Mon Jan 10, 2005 3:55 am

Post by willienl »

lets begin again :!: :cry:
from start
look at this script

Code: Select all

bind pub - "!stat" pub:status
proc pub:status {nick host hand chan arg} {
	if {[isop $nick $chan]} {
      putquick "PRIVMSG $chan :$nick is Op on $chan "  
	} elseif {[ishalfop $nick $chan]} {
      putquick "PRIVMSG $chan :$nick is Halfop on $chan "  
	} elseif {[isvoice $nick $chan]} {
      putquick "PRIVMSG $chan :$nick is Voice on $chan "  	  
	} else {
      putquick "PRIVMSG $chan :$nick dunno ?!?!?! on $chan "  
	}
	return 0 
} 
when load this script and a user type !stat
in the channel it tells the status the user have
[21:34] <@^Willie^> !stat
[21:34] <scan-egg> ^Willie^ is Op on #testbla
or
[21:34] <%^Willie^> !stat
[21:34] <scan-egg> ^Willie^ is Halfop on #testbla
or
[21:34] <+^Willie^> !stat
[21:34] <scan-egg> ^Willie^ is Voice on #testbla
else
[21:34] <^Willie^> !stat
[21:34] <scan-egg> ^Willie^ dunno ?!?!?! on #testbla
the eggdrop bot reply the user status this works ok when it is on one channel when it join`s 2 chan`s at one time on boot
it detect no status at all
when it join one and then join the second channel it detect all status types
( op halfop voice ) in the first channel en in the second only (op voice)
when i set mode +h for those halfop users it do detect them as halfop %
how can i let eggdrop join 3 channels at once and afther sync detect the user`s status
some resync script or some ??
Locked