def dispatch(self, action: Action) -> Any:
LOG.debug("<STR_LIT>", action["<STR_LIT:type>"], action["<STR_LIT>"])<EOL>if action["<STR_LIT:type>"] == "<STR_LIT>":<EOL><INDENT>yield from self._dispatch_interactive_message(action)<EOL><DEDENT>elif action["<STR_LIT:type>"] in ("<STR_LIT>", "<STR_LIT>"):<EOL><INDENT>yield from self._dispatch_action(action)<EOL><DEDENT>else:<EOL><INDENT>raise UnknownActionType(action)<EOL><DEDENT>
Yields handlers matching the incoming :class:`slack.actions.Action` `callback_id`.

Args:
    action: :class:`slack.actions.Action`

Yields:
    handler