|
Joined: Oct 2005
Posts: 3
Self-satisified door
|
OP
Self-satisified door
Joined: Oct 2005
Posts: 3 |
the $address return is limited to 10char in ident can we have the extension of that return (coz when we whois someone who have an ident more big that 10 char we can t retreive all char in the $address remote
whois : get all char $address : not get all char
|
|
|
|
Joined: Sep 2003
Posts: 4,230
Hoopy frood
|
Hoopy frood
Joined: Sep 2003
Posts: 4,230 |
Every whois I have ever done has matched up. As far as im aware the ident is only 10 characters long. If your getting more back in whois then maybe its a modified irc server?
|
|
|
|
Joined: Oct 2005
Posts: 3
Self-satisified door
|
OP
Self-satisified door
Joined: Oct 2005
Posts: 3 |
so can we have less limitations for that command i need it for ban some person on full ident (and i don t want type /whois every time i must ban someone)
|
|
|
|
Joined: Sep 2003
Posts: 4,230
Hoopy frood
|
Hoopy frood
Joined: Sep 2003
Posts: 4,230 |
|
|
|
|
Joined: Oct 2004
Posts: 8,330
Hoopy frood
|
Hoopy frood
Joined: Oct 2004
Posts: 8,330 |
You could put in an alias to do it... In aliases tab:
/bn {
if ($2 == $null) { echo -a Please specify a nick. | return }
if ($2 !ison $chan) { echo -a $2 is not in this channel. | return }
ban -k $chan $gettok($address($nick,1),1,64) $+ @*
}
Use: /bn nick Note that the person must be in the channel for it to work. This will ban using this format (which I assumed from your description is what you wanted): *!*ident@* I can't test this on a network with over 10 letters in the ident, so you need to test it yourself. As long as $address shows all the letters, it should work just fine. Feel free to change "/bn" to whatever you want to use if you don't like /bn.
Invision Support #Invision on irc.irchighway.net
|
|
|
|
Joined: Oct 2005
Posts: 3
Self-satisified door
|
OP
Self-satisified door
Joined: Oct 2005
Posts: 3 |
that doesnt work ex: my whois give my that () Address: (021APantin_A_Coter_D@632049528.fr)
i need : 021APantin_A_Coter_D and when i type $address, or your alias i get only *!*A_Coter_D@*
i need the 4th first char.... how i can get ? or does it corrected in next version ?
it s not only for ban (sorry)
|
|
|
|
Joined: Oct 2004
Posts: 8,330
Hoopy frood
|
Hoopy frood
Joined: Oct 2004
Posts: 8,330 |
Type //echo -a $address( somenick,5) (replace the red with a nick that has more than 10 letters) See if it gives you everything or not. If not, I don't think there is any way around it other than to use /whois. I'm not sure if that will be included in the next version. I've never seen this situation before, so it probably isn't common. If your network stuck to the standard limit on idents, there wouldn't be an issue. Heh.
Invision Support #Invision on irc.irchighway.net
|
|
|
|
Joined: Apr 2004
Posts: 218
Fjord artisan
|
Fjord artisan
Joined: Apr 2004
Posts: 218 |
You now this could possibly be a IRCd thingy?
Live to Dream & Dream for Life
|
|
|
|
Joined: Aug 2003
Posts: 41
Ameglian cow
|
Ameglian cow
Joined: Aug 2003
Posts: 41 |
There is an alternative to $address if you just want to get the address of a nick that performed the event that was triggered, such as a join/part/quit/msg/action/ctcp/notice etc.
$gettok($rawmsg, 1, 32) will return the *!*@* formatted name as the server is reporting it. If this shows an ident that is 10 chars max, it is an IRCd issue you are experiencing, and mIRC is correctly intercepting idents for it's $address array as best as it can be expected to.
Last edited by The_Mega_ZZTer; 08/10/05 12:06 AM.
|
|
|
|
Joined: Mar 2003
Posts: 27
Ameglian cow
|
Ameglian cow
Joined: Mar 2003
Posts: 27 |
$gettok($rawmsg, 1, 32) will return the *!*@* formatted name as the server is reporting it Easier yet, use $fulladdress.
* Quietust, QMT Productions P.S. If you don't get this note, let me know and I'll write you another
|
|
|
|
Joined: Aug 2005
Posts: 128
Vogon poet
|
Vogon poet
Joined: Aug 2005
Posts: 128 |
You could put in an alias to do it... In aliases tab:
/bn {
if ($2 == $null) { echo -a Please specify a nick. | return }
if ($2 !ison $chan) { echo -a $2 is not in this channel. | return }
ban -k $chan $gettok($address($nick,1),1,64) $+ @*
}
Use: /bn nick Note that the person must be in the channel for it to work. This will ban using this format (which I assumed from your description is what you wanted): *!*ident@* I can't test this on a network with over 10 letters in the ident, so you need to test it yourself. As long as $address shows all the letters, it should work just fine. Feel free to change "/bn" to whatever you want to use if you don't like /bn. You meant $1 instead of $2 on code
|
|
|
|
Joined: Oct 2004
Posts: 8,330
Hoopy frood
|
Hoopy frood
Joined: Oct 2004
Posts: 8,330 |
Yes, I did. I always end up messing up the aliases... so used to using $2 for the first item that I forget about aliases using $1.
Invision Support #Invision on irc.irchighway.net
|
|
|
|
Joined: Feb 2005
Posts: 342
Fjord artisan
|
Fjord artisan
Joined: Feb 2005
Posts: 342 |
Er, that /ban -k, will not effectively kick the nick. It should ban the nick, but unless you specify a nick, it won't be kicked. /ban -k # $nick 2 As for this particular post, I looked at his user profile and what network he uses. The idents there don't seem to use your normal ident (since mine showed up as "guest"). Furthermore, he is correct about the limit. $address($nick,5) does cut the ident off. However, as The_Mega mentioned, you can get the "full" ident by using $rawmsg. An easy way to do this would be: if ($regex($rawmsg,/^:[^!]+!([^@]+)@/)) { var %ident = $regml(1) } Unfortunately, you'll only be able to use that on events. But, the $ial() does store the proper address and ident. (you'll probably have to /who the channel so that everyone in it will be added to the $ial() ) So, if you want to make an alias, just to echo or return the address on a nick like this, you would want to use something like: alias findaddy {
if ($1) {
var %nicka = $1 $+ !*@*
if ($regex($ial(%nicka),/^([^!]+)!([^\@]+)@(.+)$/)) {
var %nick = $regml(1) , %ident = $regml(2) , %address = $regml(3)
}
if ($isid) {
if ($prop == full) { return $+(%nick,!,%ident,@,%address) }
elseif ($prop == ident) { return %ident }
elseif ($prop == host) { return %address }
}
else { echo -a $+(%nick,!,%ident,@,%address) }
}
} You can type: //echo -atg $findaddy( Nick).ident To show the persons full ident. Hope this helps until $address($nick,*) gets fixed up.
|
|
|
|
Joined: Oct 2004
Posts: 8,330
Hoopy frood
|
Hoopy frood
Joined: Oct 2004
Posts: 8,330 |
That's what I get for trying to remove a line of code. I always ban with the standard masks, so never tried -k without a nick. I didn't realize it wouldn't work, but when you mention it, it is obvious.
Invision Support #Invision on irc.irchighway.net
|
|
|
|
Joined: Feb 2005
Posts: 342
Fjord artisan
|
Fjord artisan
Joined: Feb 2005
Posts: 342 |
Hehe yeah, I probably wouldn't have noticed it either. Only reason I think I caught it when I looked at it, was because the other night, when I was playing with my own code, I was testing the -k option, I tried it to see if it'd work with just the address cause that would have been nice.
|
|
|
|
|