def send(self, message):
raise NotImplementedError('<STR_LIT>')<EOL>
Send a message

            Providers are required to:
            * Populate `message.msgid` and `message.meta` on completion
            * Expect that `message.src` can be empty
            * Support both ASCII and Unicode messages
            * Use `message.params` for provider-dependent configuration
            * Raise exceptions from `exc.py` for errors

            :type message: data.OutgoingMessage
            :param message: The message to send
            :rtype: OutgoingMessage
            :returns: The sent message with populated fields
            :raises MessageSendError: sending errors