Documentation about scripting could be improved. In the mean time, the following resources might help.
Scripting Tutorial, by Juerd
this (dated) resource contains a simple tutorial to making a “Hello, World!” script with a script header. Its style is not quite following Modern Perl, so it’s best combined with some modern Perl knowledge.
the most official Perl scripting documentation produced so far, it contains a short introduction to signals and a
/hellocommand example. Furthermore, it aims to list all available functions as well as explain some of the object hash’ contents that one can use.
signals are all of the events that happen in Irssi which one can react to, using the
Irssi::signal_addfamily of functions. This list can help to discover the available signals and their parameters. Unfortunately, it’s sometimes still hard to know what signal one needs.
(Unofficial) Irssi Scripting and Documentation Wiki
the unofficial wiki was an attempt to improve the (scripting) documentation. It was last updated in 2014 but might still contain some useful information (and maybe some outdated).
Furthermore, one could look at the existing scripts to see how they do things, but their quality may vary.
The Python module is supposed to be modeled after the Perl scripting, however it is also in low maintenance mode.
the most official Python documentation produced so far is this auto-generated module documentation.
Unlike Perl, Python might have embedded help:
/py exec import irssi;help(irssi.Window)
there are more sample scripts but only the hello script has been ported to Python 3 so far.
The (third party) Tcl module is not modeled after the Perl or Python
scripting. It only implements the
signals and only a small subset of the other Irssi API. With a little
bit of C skills it could be extended to cover more Irssi signals.