mIRC Home    About    Download    Register    News    Help

Print Thread
#131935 06/10/05 06:05 AM
Joined: Oct 2005
Posts: 3
S
sanaell Offline OP
Self-satisified door
OP Offline
Self-satisified door
S
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

#131936 06/10/05 11:01 PM
Joined: Sep 2003
Posts: 4,230
D
Hoopy frood
Offline
Hoopy frood
D
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?

#131937 07/10/05 07:04 AM
Joined: Oct 2005
Posts: 3
S
sanaell Offline OP
Self-satisified door
OP Offline
Self-satisified door
S
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)

#131938 07/10/05 08:54 AM
Joined: Sep 2003
Posts: 4,230
D
Hoopy frood
Offline
Hoopy frood
D
Joined: Sep 2003
Posts: 4,230
just put * in there

#131939 07/10/05 12:49 PM
Joined: Oct 2004
Posts: 8,330
Hoopy frood
Offline
Hoopy frood
Joined: Oct 2004
Posts: 8,330
You could put in an alias to do it...

In aliases tab:
Code:
/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
#131940 07/10/05 07:22 PM
Joined: Oct 2005
Posts: 3
S
sanaell Offline OP
Self-satisified door
OP Offline
Self-satisified door
S
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)

#131941 07/10/05 07:41 PM
Joined: Oct 2004
Posts: 8,330
Hoopy frood
Offline
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. laugh


Invision Support
#Invision on irc.irchighway.net
#131942 07/10/05 09:58 PM
Joined: Apr 2004
Posts: 218
P
Fjord artisan
Offline
Fjord artisan
P
Joined: Apr 2004
Posts: 218
You now this could possibly be a IRCd thingy? smirk


Live to Dream & Dream for Life
#131943 08/10/05 12:05 AM
Joined: Aug 2003
Posts: 41
T
Ameglian cow
Offline
Ameglian cow
T
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.
#131944 12/10/05 05:51 AM
Joined: Mar 2003
Posts: 27
Q
Ameglian cow
Offline
Ameglian cow
Q
Joined: Mar 2003
Posts: 27
Quote:
$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
#131945 22/10/05 10:04 PM
Joined: Aug 2005
Posts: 128
S
Vogon poet
Offline
Vogon poet
S
Joined: Aug 2005
Posts: 128
Quote:
You could put in an alias to do it...

In aliases tab:
Code:
/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 smile

#131946 24/10/05 12:44 PM
Joined: Oct 2004
Posts: 8,330
Hoopy frood
Offline
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. laugh


Invision Support
#Invision on irc.irchighway.net
#131947 25/10/05 06:45 AM
Joined: Feb 2005
Posts: 342
R
Fjord artisan
Offline
Fjord artisan
R
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:

Code:
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.

#131948 25/10/05 12:43 PM
Joined: Oct 2004
Posts: 8,330
Hoopy frood
Offline
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. frown


Invision Support
#Invision on irc.irchighway.net
#131949 25/10/05 12:57 PM
Joined: Feb 2005
Posts: 342
R
Fjord artisan
Offline
Fjord artisan
R
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.


Link Copied to Clipboard