I had never heard of the write command until this thread. But I figure, since other interactive stuff occurs in scripts, then why not? Though it really doesn't appear to need a script to be used, as it's kind of a one-shot deal:
23:43:54 up 18:58, 2 users, load average: 0.12, 0.08, 0.08
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
sasha tty2 - 04:47 18:54m 15:08 0.00s /bin/sh /usr/bin/startx
sasha pts/0 :0.0 23:38 0.00s 0.21s 0.06s /usr/bin/xterm -fn -misc-Fixed-Med
sasha@reactor: write sasha /dev/pts/0 << EOF
causes this in my xterm:
Message from sasha@reactor on pts/0 at 23:44 ...
It appears to work
assuming you know which console a user is logged in on (try the `w` command to see).