Remaking messages controller