from enum import Enum

class Stages(Enum):
    presentation = "Faz perguntas do usuário para saber se está falando com o cliente alvo, pode receber respostas do tipo: sim, não, sou eu, espere um pouco etc."
    argumentation = "Conversa com o usuário tentando vender um plano de telefone, possui algumas tentativas de vendas, pode receber respostas do tipo: tipo: sim, não, aceito comprar, não quero, não tenho interesse etc."
    data_confirmation = "Confirma os dados do cliente, pode receber nomes, datas e números."
    formalization = "Faz a confirmação final da venda, vocalizando um pedindo para o cliente confirmar, pode receber respostas do tipo: sim, não, aceito comprar, não quero, não tenho interesse etc."

    @classmethod
    def get_value(cls, key: str = "") -> str:
        """
        Retorna o value (descrição) direto a partir do nome da stage.
        Ex: Stages.get_value("formalization")
        """
        try:
            return cls[key].value
        except KeyError:
            return ""
