You can, but the timer command basically execute a simple line of code, and by design, the timer command
double evaluate the content of that new line of code. To play safe, just call an alias and work in that alias, however, if you must use values which are local to the event, such as $chan or $nick, the alias called by the timer won't be able to access them, therefore you must pass them to the alias, read carefully the link and use $safe accordingly if the value is unknown :
on *:join:#channel:{
;associate the nick to the timer
;$nick cannot be used to exploit you unless the irc server allows character such as '$' or '%'
.timer $+ $nick 1 7 dosomstuff $nick
}
alias dosomestuff {
;$1 is $nick
echo -a $1
}