add message type
return sticky messages
create message with message type
cleanup useless codes