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.

need autoop on join only for authed people

Requests for complete scripts or modifications/fixes for scripts you didn't write. Response not guaranteed, and no thread bumping!
Post Reply
n
noobman
Voice
Posts: 29
Joined: Fri Nov 23, 2007 8:47 am

need autoop on join only for authed people

Post by noobman »

Hi, i know and ive got a lot of autoop tcl scripts on join but i'd like that only users authed that join my channel get +o, then i no need to set +r mode in the channel and all people can join.

It's for QuakeNet network. For example, a whois from an user :

[ont]zENT`OFF is zENTION@zenti0n.users.quakenet.org * ...
[ont]zENT`OFF on #one
[ont]zENT`OFF using *.quakenet.org QuakeNet IRC Server
[ont]zENT`OFF is authed as zenti0n
[ont]zENT`OFF End of /WHOIS list.

The bot should check the nick when it joins my channel, and if he detects the four line where it shows : [ont]zENT`OFF is authed as zenti0n

Then it gets +o.

No matters if the ip is hidden like : @zenti0n.users.quakenet.org or it has the ip XX.XXX.XXX.XX, the bot must know if he has auth or not.

Thanks a lot!
n
noobman
Voice
Posts: 29
Joined: Fri Nov 23, 2007 8:47 am

please

Post by noobman »

please if you can when you have time, it would be nice if you can, try to make that script because autoop scripts for all joiners are not good because people that join proxys can make takeovers.
Thanks mates!
r
r0t3n
Owner
Posts: 507
Joined: Tue May 31, 2005 6:56 pm
Location: UK

Post by r0t3n »

EDIT: Edited the WHO request arguments

Code: Select all

bind join -|- {*} auth:check
bind raw -|- {354} auth:raw

proc auth:check {nick host hand chan} {
    if {![string equal -nocase #mychannel $chan]} { return }
    if {[string match -nocase *.users.quakenet.org $host]} {
        utimer 5 [list auth:op $chan $nick]
    } else {
        puthelp "WHO $nick n%nat,167"
    }
}

proc auth:raw {from raw arg} {
    if {[lindex [split $arg] 1] == "167"} {
        set nick [lindex [split $arg] 2]
        set auth [lindex [split $arg] 3]
        if {$auth != "" || $auth != "0"} {
            utimer 5 [list auth:op #mychannel $nick]
        }
    }
}

proc auth:op {chan nick} {
    if {[onchan $nick $chan] && ![isop $nick $chan]} {
        pushmode $chan +o $nick
        flushmode $chan
    }
}
This is basic, and untested.

Make sure you edit all the #mychannel to the name of the channel you want it to work for!
Last edited by r0t3n on Wed Mar 19, 2008 11:59 am, edited 1 time in total.
r0t3n @ #r0t3n @ Quakenet
n
noobman
Voice
Posts: 29
Joined: Fri Nov 23, 2007 8:47 am

wrong

Post by noobman »

Hi again, ive tested it and it doesnt work, when an authed user join, it gets +o, thats good, but when a normal user without auth joins the channel, he gets +o too. So, all users get +o. Please check it and try to make that only people with auth gets +o . Bot must check on join if the user has auth, not necessary to be +x and show .users.quakenet.org , if the user has auth but has not +x mode setted, he should get +o too.
Please someone that can fix the script.
Thanks masters!
Last edited by noobman on Fri Apr 11, 2008 5:55 am, edited 1 time in total.
g
garfwen
Halfop
Posts: 61
Joined: Wed Mar 12, 2008 5:16 pm

Post by garfwen »

Exacly..( the bot is oping by the host.. and not by the "authed as" message)... can any 1 fix it?

Regards,
garfwen
n
noobman
Voice
Posts: 29
Joined: Fri Nov 23, 2007 8:47 am

please

Post by noobman »

please it would be nice if someone of you could fix the script to dont give +o to all who joins. Only to authed people, doesnt matter iff who joins have ip hidden or not, the bot should detect if who joins has auth setted.
Thanks masters!
Post Reply