crude message receiver implementation