mIRC Homepage
Posted By: Volt9000 Forcing update of the IAL - 15/03/05 01:08 AM
Is it possible to force the IAL to update? I know the IAL only gets updated with a specific user when that user talks in a channel or performs an action or mode chnage, but is it possible to add a user (or all users in a channel for that matter) to the IAL without resorting to a whois lookup?
Posted By: FiberOPtics Re: Forcing update of the IAL - 15/03/05 01:11 AM
Yes, by doing a /who on the channel/nickname. /who != /whois if you're wondering btw.
Posted By: Volt9000 Re: Forcing update of the IAL - 16/03/05 06:35 AM
Ah, great! Thanks!
Ok, this leads me to my next question...

When I right-click on a user, I want it to show their hostmask. However I first have to detect if their hostmask is in the IAL, and if not, add it in there, so the address will show up. But it doesn't quite work out the way I want. Here's what I have...

Code:
menu nicklist {
    Sample menu : .
    $submenu($testing($1))
}

alias -l testing {
    if (($1 == begin) || ($1 == end) || ($1 > 1)) { return - }
    if (!$ial($snick(#, 1))) { who $snick(#, 1) }
    return $address($snick(#, 1)) : .
}


Now, if I right-click on a nickname not in the IAL, nothing shows up under "Sample Menu." But if I right-click agian, then the address will show up (because it gets updated during the first right-click.)
Is there any way to update the IAL "on the fly" when I right-click on a username for the first time?
Posted By: Relinsquish Re: Forcing update of the IAL - 16/03/05 06:44 AM
Realistically, you should always have an accurate hostmask of the user in your common channels. Unless you have tampered with /ial or /ialclear OR the user's hostmask has changed to a custom virtual host, you shouldn't need to update the IAL.

Code:
menu nicklist {
  Sample menu:
  .$ial($$1,1).host
}
Posted By: DaveC Re: Forcing update of the IAL - 16/03/05 09:11 AM
You dont get the users host mask unless they say something in channel, or u whois them or who them, or maybe something else them, but by default there isnt anything in there.
Posted By: DaveC Re: Forcing update of the IAL - 16/03/05 09:37 AM
Quote:
Is there any way to update the IAL "on the fly" when I right-click on a username for the first time?


no

[edit]

Well actuall there is, but i dont know if i would advise it. It flys in the face of good manners.
You well need the WhileFix.dll as well.

Code:
menu nicklist {
  hostmask for $1 is $gethostmask($1) : { }
}
alias -l gethostmask {
  if ($ial($1,1)) return $address($1,2)
  who $1
  .enable #who.haltdef
  %t = $ticks + 1000
  while (($ticks <= %t) && (!$ial($1,1)) && ($file(whilefix.dll))) { dll WhileFix.dll WhileFix }
  if ($ial($1,1)) return $address($1,2)
  return Unknown
}
#who.haltdef off
raw 352:*:{ haltdef }
raw 315:*:{ haltdef | .disable #who.haltdef }
#who.haltdef end


Simply put if there isnt a hostmask im doing a /WHO then just waiting around tell the server responds smile
Posted By: Brax Re: Forcing update of the IAL - 16/03/05 11:29 AM
but why not just add little thing like:
Code:
on *:JOIN:#: {
if ($nick == $me) {
who #
}
return
}

Takes bit time with bigger channels... but you will have always 'up to date' IAL blush
Posted By: Volt9000 Re: Forcing update of the IAL - 17/03/05 03:26 AM
Quote:
Realistically, you should always have an accurate hostmask of the user in your common channels. Unless you have tampered with /ial or /ialclear OR the user's hostmask has changed to a custom virtual host, you shouldn't need to update the IAL.

Code:
menu nicklist {
  Sample menu:
  .$ial($$1,1).host
}


That doesn't work unless the user already is in the IAL, hence the problem.

DaveC: What is this WhileFix DLL for? What does it do?

Brax: Yeah that's what I thought of doing originally, but it isn't very efficient. smile
Posted By: Relinsquish Re: Forcing update of the IAL - 17/03/05 02:30 PM
WhileFix.dll allows you to run scripts without freezing mIRC. For example, you could have a variable incremented to one million in a while loop and still be able to do things in mIRC. You can download it here.

By the way, I was thinking of Brax's idea when I posted my suggestion (unfortunately mistaking /names for /who on join). I don't see why it's inefficient. It beats having to /who each person when right clicking their nickname.
© mIRC Discussion Forums