I'm trying to get the systemmonitoring module working and it's driving me absolutely CRAZY.

Maybe I simply misunderstand how it's supposed to work, but I thought that it would scan the incoming message(s) for a Host/State pair and act accordingly - 1. It makes a new ticket, if it's a new Host and a State of CRITICAL or DOWN. 2. It updates an existing ticket, by adding an article, if it finds an existing ticket that matches the Host/State pair. or 3. It closes the ticket if it finds one with a matching Host and the new State in the new message is UP or OK.
Am I mistaken on how it should work?
Any help would be appreciated. I've been messing with it off and on for days now with no luck.
Thank you in advance.
Jeff