For me personally, it would be enough to have one message/caption parameter, however since caption is a mandatory parameter, you cannot use an empty string. or omit it
Removing the mandatory aspect would help when using named parameters, however you would still have to supply an empty string when using positional parameters.
The solution for that would be to move the caption parameter to the end (or at least after the message parameter), however this would break backwards compatibility.