Originally Posted By: maroon
i do not find this to be true. If i set a timer to execute 1 second after joining, i do get $false because it's already finished if the network is fast and the channel is small. But if you put these 3 lines in a script:

Code:
raw 352:*: echo 5 -s raw $numeric $1 / $chan($2).inwho
raw 315:*: echo 5 -s raw $numeric $1 / $chan($2).inwho
on *:JOIN:#:{ who # | timer 1 0 echo 12 -s inwho is $chan(#).inwho }


I am finding that the timer executing zero seconds after join says inwho is $true, and raw 352 says $true and raw 315 says $false

I suggest you trap raw 315 as the earliest indicator that /who is finished, instead of using a timer and hoping it's done


Your on join is actually showing the $chan().inwho state on join as its evaluating at the time you set the timer.

You’d need to use $!chan( # ).inwho to get it to evaluate when the timer fires.