in reply to Use of uninitialized value in substitution (s///)

The reason for the error is as Mad Hatter stated:
$message = s/<[>]*>//g;
The reason is that the above code is short for the following:
$message = $_ =~ s/<[>]*//g;
and you do not have anything in $_

That said, I would follow Limbic~Region's advice and check out CPAN modules for parsing out HTML.

update: There were my's in front of $message that were dropped. Also that as Limbic~Region already mentioned that you probably wanted the negated character class.

-enlil