Notification parameter can now be null

if null, it will just send a message.
If message is null it will throw IllegalArgumentException