Catchall

The catchall matcher is a special case which is called only when no other skills were matched.

This matcher catches everything - messages and events, if you want to catch only messages you can set the flag messages_only to True.

It is useful for displaying a help message to the user to show available commands that the bot replies to, for example:

opsdroid.matchers.match_catchall(func=None, messages_only=False)

Return catch-all match decorator.

Decorator that runs the function only if no other skills were matched for a message

Parameters

messages_only (bool) – Whether to match only on messages, or on all events. Defaults to False.

Returns

Decorated Function

Example

from opsdroid.skill import Skill
from opsdroid.matchers import match_catchall

class HelpMessageSkill(Skill):
    @match_catchall
    async def help_handler(self, message):
        # Called when no other skills were matched