'Initiate the enrollment process.
We do not sent more than one enrollment request every 10 minutes. Note that
we still communicate to the server in fast poll mode, but these requests are
not carrying any payload.'

def InitiateEnrolment(self):

    logging.debug('sending    enrollment    request')
    now = time.time()
    if (now > (self.last_enrollment_time + (10 * 60))):
        if (not self.last_enrollment_time):
            self.timer.FastPoll()
        self.last_enrollment_time = now
        self.client_worker.SendReply(rdf_crypto.Certificate(type=rdf_crypto.Certificate.Type.CSR, pem=self.communicator.GetCSRAsPem()), session_id=rdfvalue.SessionID(queue=queues.ENROLLMENT, flow_name='Enrol'))
