add thrift definition
actually do something with messages