I think there are a couple of ways to do that. You can put a wait after the message, but you will need to have the Task Cancellation Policy set to Never cancel task. If not then the trigger will halt the wait and it will give you the message again.
Another way would be to use a date/time variable. Set it to $now when the message is spoken. You would then put an additional IF around the message command.
If $now after addminutes(yourvarible,2) then
[edit]Actually the TCP does not work as I thought it did. So probably using the variable method is best. Something like this