message cotroller