add message history and unread message function