1. A method for providing context based conversations, the method comprising: receiving, by a processor, user data pertaining to a user, wherein the user data comprises registration information of the user and metadata associated with the user; determining, by the processor, a role of the user, wherein the role of the user is pre-defined based on the registration information; providing, by the processor, restricted access to a users' data repository to the user, based on the role of the user; obtaining, by the processor, a text input from the user, wherein the text input pertains to a conversation; generating, by the processor, an expression, based on the text input; invoking, by the processor, one of a discussion service, a learning service, and an unlearning service, based on the expression and the metadata associated with the user; and retrieving a response, by the processor, based on at least one of the invoked services, and the metadata associated with the user, wherein the response is shared with the user.