abstract sendMessage