I would try by using a parameter to tell whether the warning message for the notification has been displayed. First time the notification is being approved the function raises the warning message and sets that attribute to indicate the warning has been displayed. Next attempt to respond the notification your function will check that attribute has been set and will do nothing, just let the notification go responded.
You might as well present the warning message in the notification body and introduce another attribute to get the acknowledgement from the user. Only when that attribute is set to YES (acknowledge) will the post-notification function actually let the notification be approved, otherwise an error is presented for the user to acknowledge.