I'd say event triggers would be ideal - this way we can use those same events for other stuff - looks like the new logging api stuff will be using event style functions too - so I think it makes sense for generic hooks to go in place (using events) rather than specific badge hooks.
General developer forum
Events vs. function calls in Moodle Core development
This discussion has been locked because a year has elapsed since the last post. Please start a new discussion topic.